Xmipp
v3.23.11-Nereus
|
#include <art_crystal.h>
Public Member Functions | |
void | readParams (XmippProgram *program) |
void | print (std::ostream &o) const |
std::cout << crystal_prm; More... | |
void | preProcess (GridVolume &vol_basis0, int level=FULL, int rank=-1) |
void | singleStep (GridVolume &vol_in, GridVolume *vol_out, Projection &theo_proj, Projection &read_proj, int sym_no, Projection &diff_proj, Projection &corr_proj, Projection &alig_proj, double &mean_error, int numIMG, double lambda, int act_proj, const FileName &fn_ctf, const MultidimArray< int > *maskPtr, bool refine) |
void | postProcess (GridVolume &vol_basis) |
void | applySymmetry (GridVolume &vol_in, GridVolume *vol_out, int grid_type) |
Public Member Functions inherited from ARTReconsBase | |
virtual | ~ARTReconsBase () |
void | initHistory (const GridVolume &vol_basis0) |
void | iterations (GridVolume &vol_basis, int rank=-1) |
Static Public Member Functions | |
static void | defineParams (XmippProgram *program, const char *prefix=nullptr, const char *comment=nullptr) |
Static Public Member Functions inherited from ARTReconsBase | |
static void | defineParams (XmippProgram *program, bool mpiMode=false) |
Public Attributes | |
double | a_mag |
double | b_mag |
double | ang_a2b_deg |
angle from a to b (degrees) More... | |
double | ang_x2a_deg |
angle from x axis to a (degrees) More... | |
Matrix1D< double > | avox |
First lattice vector (voxel units) More... | |
Matrix1D< double > | bvox |
Second lattice vector (voxel units) More... | |
bool | fill_space |
Fill space, repeat unit cell all over the space. More... | |
Matrix1D< double > | a |
First lattice vector (BCC units) More... | |
Matrix1D< double > | b |
Second lattice vector (BCC units) More... | |
Matrix1D< double > | aint |
First lattice vector approximated to integer numbers (BCC units) More... | |
Matrix1D< double > | bint |
Second lattice vector approximated to integer numbers (BCC units) More... | |
Matrix1D< double > | ai |
ai=aint/2 as double numbers More... | |
Matrix1D< double > | bi |
bi=aint/2 as double numbers More... | |
int | space_group |
space_group More... | |
MultidimArray< int > | unit_cell_mask |
Public Attributes inherited from ARTReconsBase | |
BasicARTParameters | artPrm |
ART+crystal parameters. Here only those specific parameters for crystals are found, the rest of parameters common with normal ART should be looked up in BasicARTParameters
Definition at line 43 of file art_crystal.h.
|
virtual |
Force the trial volume to be symmetric.
Reimplemented from ARTReconsBase.
Definition at line 388 of file art_crystal.cpp.
|
static |
Definition at line 36 of file art_crystal.cpp.
|
virtual |
Finish iterations. For WLS: delete residual images Else: do nothing.
Reimplemented from ARTReconsBase.
Definition at line 382 of file art_crystal.cpp.
|
virtual |
Produce Initial and Side information for ART+crystal. This function computes from the ART+crystal parameters things like the integer<–>float lattice vector matrices, the unit cell mask. The reconstructed volume size can be modified such that the unit cell mask fits.
Reimplemented from ARTReconsBase.
Definition at line 114 of file art_crystal.cpp.
|
virtual |
std::cout << crystal_prm;
Reimplemented from ARTReconsBase.
Definition at line 89 of file art_crystal.cpp.
|
virtual |
Read special parameters from command line.
Reimplemented from ARTReconsBase.
Definition at line 54 of file art_crystal.cpp.
|
virtual |
Run a single step of ART. An ART iteration is compound of as many steps as projections, this function runs a single step of the process. In ART the pointer to the output volume must point to the same vol_in, while in SIRT it should point to a second volume. The read projection must be provided to the algorithm but the rest of projections are output by the routine. The mean error is also an output. numIMG is a normalizing factor to be used in SIRT, if you are running pure ART then this factor should be 1.
The symmetry matrix from which the view is derived must be given in sym_no.
Reimplemented from ARTReconsBase.
Definition at line 267 of file art_crystal.cpp.
Matrix1D<double> CrystalARTRecons::a |
First lattice vector (BCC units)
Definition at line 66 of file art_crystal.h.
double CrystalARTRecons::a_mag |
First lattice vector module (user supplies it in arbitrary units but it is divided by sampling as soon as it is initialized)
Definition at line 49 of file art_crystal.h.
Matrix1D<double> CrystalARTRecons::ai |
ai=aint/2 as double numbers
Definition at line 74 of file art_crystal.h.
Matrix1D<double> CrystalARTRecons::aint |
First lattice vector approximated to integer numbers (BCC units)
Definition at line 70 of file art_crystal.h.
double CrystalARTRecons::ang_a2b_deg |
angle from a to b (degrees)
Definition at line 54 of file art_crystal.h.
double CrystalARTRecons::ang_x2a_deg |
angle from x axis to a (degrees)
Definition at line 56 of file art_crystal.h.
Matrix1D<double> CrystalARTRecons::avox |
First lattice vector (voxel units)
Definition at line 58 of file art_crystal.h.
Matrix1D<double> CrystalARTRecons::b |
Second lattice vector (BCC units)
Definition at line 68 of file art_crystal.h.
double CrystalARTRecons::b_mag |
Second lattice vector module (user supplies it in arbitrary units but it is divided by sampling as soon as it is initialized)
Definition at line 52 of file art_crystal.h.
Matrix1D<double> CrystalARTRecons::bi |
bi=aint/2 as double numbers
Definition at line 76 of file art_crystal.h.
Matrix1D<double> CrystalARTRecons::bint |
Second lattice vector approximated to integer numbers (BCC units)
Definition at line 72 of file art_crystal.h.
Matrix1D<double> CrystalARTRecons::bvox |
Second lattice vector (voxel units)
Definition at line 60 of file art_crystal.h.
bool CrystalARTRecons::fill_space |
Fill space, repeat unit cell all over the space.
Definition at line 62 of file art_crystal.h.
int CrystalARTRecons::space_group |
space_group
Definition at line 78 of file art_crystal.h.
MultidimArray<int> CrystalARTRecons::unit_cell_mask |
Unit cell mask. This mask is defined in the BCC space and it represent a parallelogram defined by points (-a-b)/2, (-a+b)/2, (a-b)/2, (a+b)/2. The reconstruction will be only performed for the basis inside this mask. Be careful that this is a 2D mask for a 3D reconstruction.
Definition at line 85 of file art_crystal.h.