Xmipp  v3.23.11-Nereus
Public Member Functions | Public Attributes | List of all members

#include <matrix_dimred.h>

Inheritance diagram for ProgMatrixDimRed:
Inheritance graph
[legend]
Collaboration diagram for ProgMatrixDimRed:
Collaboration graph
[legend]

Public Member Functions

void readParams ()
 Read argument from command line. More...
 
void show ()
 Show. More...
 
void defineParams ()
 Define parameters. More...
 
void produceSideInfo ()
 Produce side info. More...
 
void run ()
 Main routine. More...
 
- Public Member Functions inherited from ProgDimRed
 ProgDimRed ()
 Empty constructor. More...
 
void estimateDimension ()
 Estimate dimensionality. More...
 
- 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)
 
ParamDefgetParamDef (const char *param) const
 
virtual void quit (int exit_code=0) const
 
virtual int tryRun ()
 
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 &param, 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 ()
 

Public Attributes

int inputDim
 
int Nsamples
 
- Public Attributes inherited from ProgDimRed
FileName fnIn
 
FileName fnOut
 
FileName fnMapping
 
int outputDim
 
String dimRefMethod
 
String dimEstMethod
 
int kNN
 
int Niter
 
double t
 
double sigma
 
bool global
 
Matrix2D< double > X
 
DimRedAlgorithmalgorithm
 
PCA algorithmPCA
 
LTSA algorithmLTSA
 
DiffusionMaps algorithmDiffusionMaps
 
LLTSA algorithmLLTSA
 
LPP algorithmLPP
 
KernelPCA algorithmKernelPCA
 
ProbabilisticPCA algorithmProbabilisticPCA
 
LaplacianEigenmap algorithmLaplacianEigenmap
 
HessianLLE algorithmHessianLLE
 
NPE algorithmNPE
 
SPE algorithmSPE
 
- Public Attributes inherited from XmippProgram
bool doRun
 
bool runWithoutArgs
 
int verbose
 Verbosity level. More...
 
int debug
 

Additional Inherited Members

- Protected Member Functions inherited from XmippProgram
void defineCommons ()
 
- Protected Attributes inherited from XmippProgram
int errorCode
 
ProgramDefprogDef
 Program definition and arguments parser. More...
 
std::map< String, CommentListdefaultComments
 
int argc
 Original command line arguments. More...
 
const char ** argv
 

Detailed Description

Dimensionality reduction for matrices

Definition at line 101 of file matrix_dimred.h.

Member Function Documentation

◆ defineParams()

void ProgMatrixDimRed::defineParams ( )
virtual

Define parameters.

Reimplemented from ProgDimRed.

Definition at line 198 of file matrix_dimred.cpp.

199 {
200  addUsageLine("This program takes an input matrix, whose rows are individual observations and ");
201  addUsageLine("projects each sample onto a lower dimensional space using the selected method. Note: ");
202  addUsageLine("that each observation component in a row should be separated by white spaces.");
203  setDefaultComment("-i","Input matrix with data. Each observation is a row.");
204  setDefaultComment("-o","Output matrix with projected data");
206  addParamsLine(" --din <d> : Input dimension");
207  addParamsLine(" --samples <N> : Number of observations in the input matrix");
208  addExampleLine("xmipp_matrix_dimred -i matrixIn.txt -o matrixOut.txt --din 30 --dout 2 --samples 1000");
209 }
void setDefaultComment(const char *param, const char *comment)
void addExampleLine(const char *example, bool verbatim=true)
virtual void defineParams()
Define parameters.
void addUsageLine(const char *line, bool verbatim=false)
void addParamsLine(const String &line)

◆ produceSideInfo()

void ProgMatrixDimRed::produceSideInfo ( )
virtual

Produce side info.

Reimplemented from ProgDimRed.

Definition at line 212 of file matrix_dimred.cpp.

213 {
216  X.read(fnIn);
218 }
virtual void produceSideInfo()
Produce side info.
void setInputData(Matrix2D< double > &X)
Set input data.
DimRedAlgorithm * algorithm
Definition: matrix_dimred.h:68
FileName fnIn
Definition: matrix_dimred.h:51
void resizeNoCopy(int Ydim, int Xdim)
Definition: matrix2d.h:534
Matrix2D< double > X
Definition: matrix_dimred.h:67
void read(const FileName &fn)
Definition: matrix2d.cpp:101

◆ readParams()

void ProgMatrixDimRed::readParams ( )
virtual

Read argument from command line.

Reimplemented from ProgDimRed.

Definition at line 175 of file matrix_dimred.cpp.

176 {
178  inputDim = getIntParam("--din");
179  Nsamples = getIntParam("--samples");
180 
181  if (outputDim != -1 && outputDim > inputDim)
182  throw std::invalid_argument("Error, output dimension should be smaller or equal to input dimension");
183 
184 }
virtual void readParams()
Read argument from command line.
int getIntParam(const char *param, int arg=0)

◆ run()

void ProgMatrixDimRed::run ( )
virtual

Main routine.

Reimplemented from XmippProgram.

Definition at line 221 of file matrix_dimred.cpp.

222 {
223  show();
224  produceSideInfo();
225  if (outputDim<0)
229 }
const Matrix2D< double > & getReducedData()
Get reduced data.
DimRedAlgorithm * algorithm
Definition: matrix_dimred.h:68
void show()
Show.
virtual void reduceDimensionality()=0
Reduce dimensionality.
void produceSideInfo()
Produce side info.
void estimateDimension()
Estimate dimensionality.
void write(const FileName &fn) const
Definition: matrix2d.cpp:113
FileName fnOut
Definition: matrix_dimred.h:53

◆ show()

void ProgMatrixDimRed::show ( )
virtual

Show.

Reimplemented from ProgDimRed.

Definition at line 186 of file matrix_dimred.cpp.

187 {
188  if (verbose>0)
189  {
191  std::cerr
192  << "Dimension in: " << inputDim << std::endl
193  << "Number of samples: " << Nsamples << std::endl
194  ;
195  }
196 }
int verbose
Verbosity level.
virtual void show()
Show.

Member Data Documentation

◆ inputDim

int ProgMatrixDimRed::inputDim

Definition at line 104 of file matrix_dimred.h.

◆ Nsamples

int ProgMatrixDimRed::Nsamples

Definition at line 104 of file matrix_dimred.h.


The documentation for this class was generated from the following files: