Xmipp
v3.23.11-Nereus
|
#include <mpi_angular_class_average.h>
Public Member Functions | |
MpiProgAngularClassAverage () | |
MpiProgAngularClassAverage (int argc, char **argv) | |
void | readParams () |
void | defineParams () |
void | run () |
void | mpi_process_loop (double *Def_3Dref_2Dref_JobNo) |
void | mpi_process (double *Def_3Dref_2Dref_JobNo) |
void | mpi_produceSideInfo () |
void | mpi_preprocess () |
void | filterInputMetadata () |
void | saveDiscardedImages () |
void | initFileNames () |
void | initDimentions () |
void | initWeights () |
void | initOutputFiles () |
void | mpi_postprocess () |
void | createJobList () |
void | mpi_write (size_t dirno, int ref3dIndex, Image< double > avg, Image< double > avg1, Image< double > avg2, double w1, double w2, double old_w, double old_w1, double old_w2) |
void | mpi_writeController (size_t dirno, Image< double > avg, Image< double > avg1, Image< double > avg2, const MetaDataDb &SFclass, const MetaDataDb &SFclass1, const MetaDataDb &SFclass2, const MetaDataDb &SFclassDiscarded, const MetaDataDb &_DF, double w1, double w2, double w, int lockIndex) |
void | mpi_writeFile (Image< double > avg, size_t dirno, FileName fileNameStk, double w_old) |
void | getPolar (MultidimArray< double > &img, Polar< std::complex< double > > &fP, bool conjugated=false, float xoff=0., float yoff=0.) |
void | reAlignClass (Image< double > &avg1, Image< double > &avg2, MetaData &SFclass1, MetaData &SFclass2, std::vector< Image< double > > imgs, std::vector< int > splits, std::vector< int > numbers, size_t dirno, double *my_output) |
void | applyWienerFilter (MultidimArray< double > &img) |
Public Member Functions inherited from XmippMpiProgram | |
void | read (int argc, char **argv) |
virtual int | tryRun () |
Public Member Functions inherited from XmippProgram | |
const char * | getParam (const char *param, int arg=0) |
const char * | getParam (const char *param, const char *subparam, int arg=0) |
int | getIntParam (const char *param, int arg=0) |
int | getIntParam (const char *param, const char *subparam, int arg=0) |
double | getDoubleParam (const char *param, int arg=0) |
double | getDoubleParam (const char *param, const char *subparam, int arg=0) |
float | getFloatParam (const char *param, int arg=0) |
float | getFloatParam (const char *param, const char *subparam, int arg=0) |
void | getListParam (const char *param, StringVector &list) |
int | getCountParam (const char *param) |
bool | checkParam (const char *param) |
bool | existsParam (const char *param) |
void | addParamsLine (const String &line) |
void | addParamsLine (const char *line) |
ParamDef * | getParamDef (const char *param) const |
virtual void | quit (int exit_code=0) const |
void | initProgress (size_t total, size_t stepBin=60) |
void | setProgress (size_t value=0) |
void | endProgress () |
void | processDefaultComment (const char *param, const char *left) |
void | setDefaultComment (const char *param, const char *comment) |
virtual void | initComments () |
void | setProgramName (const char *name) |
void | addUsageLine (const char *line, bool verbatim=false) |
void | clearUsage () |
void | addExampleLine (const char *example, bool verbatim=true) |
void | addSeeAlsoLine (const char *seeAlso) |
void | addKeywords (const char *keywords) |
const char * | name () const |
virtual void | usage (int verb=0) const |
virtual void | usage (const String ¶m, int verb=2) |
int | version () const |
virtual void | show () const |
virtual void | read (int argc, const char **argv, bool reportErrors=true) |
virtual void | read (int argc, char **argv, bool reportErrors=true) |
void | read (const String &argumentsLine) |
XmippProgram () | |
XmippProgram (int argc, const char **argv) | |
virtual | ~XmippProgram () |
Additional Inherited Members | |
Protected Member Functions inherited from XmippMpiProgram | |
void | setNode (const std::shared_ptr< MpiNode > &node) |
Protected Member Functions inherited from XmippProgram | |
void | defineCommons () |
Protected Attributes inherited from XmippMpiProgram | |
std::shared_ptr< MpiNode > | node |
size_t | nProcs |
size_t | numberOfJobs |
MPI_Status | status |
Protected Attributes inherited from XmippProgram | |
int | errorCode |
ProgramDef * | progDef |
Program definition and arguments parser. More... | |
std::map< String, CommentList > | defaultComments |
int | argc |
Original command line arguments. More... | |
const char ** | argv |
Definition at line 71 of file mpi_angular_class_average.h.
MpiProgAngularClassAverage::MpiProgAngularClassAverage | ( | ) |
Definition at line 35 of file mpi_angular_class_average.cpp.
MpiProgAngularClassAverage::MpiProgAngularClassAverage | ( | int | argc, |
char ** | argv | ||
) |
Definition at line 38 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::applyWienerFilter | ( | MultidimArray< double > & | img | ) |
Apply Wiener filter
Definition at line 1685 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::createJobList | ( | ) |
Compute list of parallel jobs to be performed
Definition at line 1501 of file mpi_angular_class_average.cpp.
|
virtual |
Function in which the param of each Program are defined.
Reimplemented from XmippProgram.
Definition at line 124 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::filterInputMetadata | ( | ) |
Read input metadata and filter following the user define constraints
a take 1: using a copy of mdJobList
Definition at line 1118 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::getPolar | ( | MultidimArray< double > & | img, |
Polar< std::complex< double > > & | fP, | ||
bool | conjugated = false , |
||
float | xoff = 0. , |
||
float | yoff = 0. |
||
) |
Definition at line 1520 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::initDimentions | ( | ) |
Get file and stack dimensions, and number of 3d references and number of defocus groups.
Definition at line 1287 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::initFileNames | ( | ) |
void MpiProgAngularClassAverage::initOutputFiles | ( | ) |
Delete output files if they exist and init stacks.
Definition at line 1328 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::initWeights | ( | ) |
Initialize weights matrices.
Definition at line 1319 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::mpi_postprocess | ( | ) |
Definition at line 1358 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::mpi_preprocess | ( | ) |
Initialize variables, create infrastructure for mpi job submission, and delete output files.
Definition at line 1059 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::mpi_process | ( | double * | Def_3Dref_2Dref_JobNo | ) |
Process a single job (ref3d - ctfGroup - ref2d)
Definition at line 368 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::mpi_process_loop | ( | double * | Def_3Dref_2Dref_JobNo | ) |
Process a job list (ref3d - ctfGroup - ref2d)
Definition at line 357 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::mpi_produceSideInfo | ( | ) |
Initialize
Definition at line 1020 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::mpi_write | ( | size_t | dirno, |
int | ref3dIndex, | ||
Image< double > | avg, | ||
Image< double > | avg1, | ||
Image< double > | avg2, | ||
double | w1, | ||
double | w2, | ||
double | old_w, | ||
double | old_w1, | ||
double | old_w2 | ||
) |
Write output files
Definition at line 859 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::mpi_writeController | ( | size_t | dirno, |
Image< double > | avg, | ||
Image< double > | avg1, | ||
Image< double > | avg2, | ||
const MetaDataDb & | SFclass, | ||
const MetaDataDb & | SFclass1, | ||
const MetaDataDb & | SFclass2, | ||
const MetaDataDb & | SFclassDiscarded, | ||
const MetaDataDb & | _DF, | ||
double | w1, | ||
double | w2, | ||
double | w, | ||
int | lockIndex | ||
) |
Block output file to avoid concurrent writing
Definition at line 894 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::mpi_writeFile | ( | Image< double > | avg, |
size_t | dirno, | ||
FileName | fileNameStk, | ||
double | w_old | ||
) |
Called by mpi_write does the actual writing
Definition at line 972 of file mpi_angular_class_average.cpp.
|
virtual |
Redefine read
Reimplemented from XmippProgram.
Definition at line 44 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::reAlignClass | ( | Image< double > & | avg1, |
Image< double > & | avg2, | ||
MetaData & | SFclass1, | ||
MetaData & | SFclass2, | ||
std::vector< Image< double > > | imgs, | ||
std::vector< int > | splits, | ||
std::vector< int > | numbers, | ||
size_t | dirno, | ||
double * | my_output | ||
) |
Definition at line 1533 of file mpi_angular_class_average.cpp.
|
virtual |
This function will be start running the program. it also should be implemented by derived classes.
Reimplemented from XmippProgram.
Definition at line 162 of file mpi_angular_class_average.cpp.
void MpiProgAngularClassAverage::saveDiscardedImages | ( | ) |
Save discarded images
Definition at line 1251 of file mpi_angular_class_average.cpp.
std::string MpiProgAngularClassAverage::col_select |
Column numbers
Definition at line 87 of file mpi_angular_class_average.h.
MultidimArray<double> MpiProgAngularClassAverage::corr |
Definition at line 130 of file mpi_angular_class_average.h.
int MpiProgAngularClassAverage::ctfNum |
number of Ctf groups
Definition at line 133 of file mpi_angular_class_average.h.
MetaDataDb MpiProgAngularClassAverage::DF |
Input and library docfiles
Definition at line 81 of file mpi_angular_class_average.h.
MetaDataDb MpiProgAngularClassAverage::DFclassesExp |
metadata with classes which have experimental images applied to them
Definition at line 83 of file mpi_angular_class_average.h.
MetaDataDb MpiProgAngularClassAverage::DFlib |
Definition at line 81 of file mpi_angular_class_average.h.
MetaDataDb MpiProgAngularClassAverage::DFscore |
Definition at line 81 of file mpi_angular_class_average.h.
bool MpiProgAngularClassAverage::do_add |
Add output to existing files
Definition at line 105 of file mpi_angular_class_average.h.
bool MpiProgAngularClassAverage::do_limit0 |
Flags wether to use limit0, limitF and limitR selection
Definition at line 91 of file mpi_angular_class_average.h.
bool MpiProgAngularClassAverage::do_limitF |
Definition at line 91 of file mpi_angular_class_average.h.
bool MpiProgAngularClassAverage::do_limitR0class |
Definition at line 91 of file mpi_angular_class_average.h.
bool MpiProgAngularClassAverage::do_limitR0per |
Definition at line 91 of file mpi_angular_class_average.h.
bool MpiProgAngularClassAverage::do_limitRFclass |
Definition at line 91 of file mpi_angular_class_average.h.
bool MpiProgAngularClassAverage::do_limitRFper |
Definition at line 91 of file mpi_angular_class_average.h.
bool MpiProgAngularClassAverage::do_mirrors |
Flag whether to apply mirror operations. By default set to True
Definition at line 93 of file mpi_angular_class_average.h.
bool MpiProgAngularClassAverage::do_pcaSorting |
Perform PCA sorting to obtain the average classes
Definition at line 107 of file mpi_angular_class_average.h.
bool MpiProgAngularClassAverage::do_save_images_assigned_to_classes |
Do write images assigned to each class
Definition at line 103 of file mpi_angular_class_average.h.
bool MpiProgAngularClassAverage::do_split |
Flag whether also to write out class averages of random halves of the data
Definition at line 95 of file mpi_angular_class_average.h.
double MpiProgAngularClassAverage::eps |
Convergence criterion
Definition at line 122 of file mpi_angular_class_average.h.
FileName MpiProgAngularClassAverage::fn_out |
Output rootnames
Definition at line 85 of file mpi_angular_class_average.h.
FileName MpiProgAngularClassAverage::fn_out1 |
Definition at line 85 of file mpi_angular_class_average.h.
FileName MpiProgAngularClassAverage::fn_out2 |
Definition at line 85 of file mpi_angular_class_average.h.
FileName MpiProgAngularClassAverage::fn_ref |
Definition at line 85 of file mpi_angular_class_average.h.
FileName MpiProgAngularClassAverage::fn_wien |
Definition at line 85 of file mpi_angular_class_average.h.
Polar_fftw_plans MpiProgAngularClassAverage::global_plans |
transformers for all rings
Definition at line 128 of file mpi_angular_class_average.h.
Image<double> MpiProgAngularClassAverage::Iempty |
One empty image with correct dimensions
Definition at line 101 of file mpi_angular_class_average.h.
FileName MpiProgAngularClassAverage::inFile |
Re-alignment of classes Input file
Definition at line 116 of file mpi_angular_class_average.h.
double MpiProgAngularClassAverage::limit0 |
Upper and lower absolute and relative selection limits
Definition at line 89 of file mpi_angular_class_average.h.
double MpiProgAngularClassAverage::limitF |
Definition at line 89 of file mpi_angular_class_average.h.
double MpiProgAngularClassAverage::limitRclass |
Definition at line 89 of file mpi_angular_class_average.h.
double MpiProgAngularClassAverage::limitRper |
Definition at line 89 of file mpi_angular_class_average.h.
MultidimArray<bool> MpiProgAngularClassAverage::lockArray |
Definition at line 143 of file mpi_angular_class_average.h.
unsigned int MpiProgAngularClassAverage::master_seed |
Definition at line 75 of file mpi_angular_class_average.h.
double MpiProgAngularClassAverage::max_psi_change |
Definition at line 126 of file mpi_angular_class_average.h.
double MpiProgAngularClassAverage::max_shift |
Search shift (shifts larger than this will be set to 0)
Definition at line 124 of file mpi_angular_class_average.h.
double MpiProgAngularClassAverage::max_shift_change |
Maximum allowed shift in last iteration (shifts larger than this will be set to 0)
Definition at line 126 of file mpi_angular_class_average.h.
MetaDataDb MpiProgAngularClassAverage::mdJobList |
Definition at line 78 of file mpi_angular_class_average.h.
size_t MpiProgAngularClassAverage::mpi_job_size |
Divide the job in this number block with this number of images
Definition at line 140 of file mpi_angular_class_average.h.
MultidimArray<double> MpiProgAngularClassAverage::Mwien |
Wiener filter image
Definition at line 109 of file mpi_angular_class_average.h.
size_t MpiProgAngularClassAverage::Ndim |
Definition at line 137 of file mpi_angular_class_average.h.
int MpiProgAngularClassAverage::nr_iter |
Number of iterations
Definition at line 120 of file mpi_angular_class_average.h.
double MpiProgAngularClassAverage::pad |
Padding factor
Definition at line 99 of file mpi_angular_class_average.h.
size_t MpiProgAngularClassAverage::paddim |
Image dimensions before and after padding (only for Wiener correction)
Definition at line 97 of file mpi_angular_class_average.h.
int MpiProgAngularClassAverage::ref3dNum |
Number of 3D references
Definition at line 135 of file mpi_angular_class_average.h.
FileName MpiProgAngularClassAverage::refGroup |
Definition at line 116 of file mpi_angular_class_average.h.
int MpiProgAngularClassAverage::Ri |
Inner and outer radius for rotational alignment
Definition at line 118 of file mpi_angular_class_average.h.
int MpiProgAngularClassAverage::Ro |
Definition at line 118 of file mpi_angular_class_average.h.
RotationalCorrelationAux MpiProgAngularClassAverage::rotAux |
Definition at line 129 of file mpi_angular_class_average.h.
MetaDataDb MpiProgAngularClassAverage::SFclasses |
Selfiles containing all class averages
Definition at line 111 of file mpi_angular_class_average.h.
MetaDataDb MpiProgAngularClassAverage::SFclasses1 |
Definition at line 111 of file mpi_angular_class_average.h.
MetaDataDb MpiProgAngularClassAverage::SFclasses2 |
Definition at line 111 of file mpi_angular_class_average.h.
MultidimArray<double> MpiProgAngularClassAverage::weightArray |
Definition at line 144 of file mpi_angular_class_average.h.
MultidimArray<double> MpiProgAngularClassAverage::weightArrays1 |
Definition at line 145 of file mpi_angular_class_average.h.
MultidimArray<double> MpiProgAngularClassAverage::weightArrays2 |
Definition at line 146 of file mpi_angular_class_average.h.
size_t MpiProgAngularClassAverage::Xdim |
Image dimensions
Definition at line 137 of file mpi_angular_class_average.h.
size_t MpiProgAngularClassAverage::Ydim |
Definition at line 137 of file mpi_angular_class_average.h.
size_t MpiProgAngularClassAverage::Zdim |
Definition at line 137 of file mpi_angular_class_average.h.