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

#include <ctf_show.h>

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

Public Member Functions

void defineParams ()
 
void readParams ()
 
void run ()
 
void show ()
 
- 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

FileName fn_in
 
FileName fn_out
 
int dim
 
- 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

Definition at line 37 of file ctf_show.h.

Member Function Documentation

◆ defineParams()

void ProgCTFShow::defineParams ( )
virtual

Define parameters

Reimplemented from XmippProgram.

Definition at line 30 of file ctf_show.cpp.

31 {
32  addUsageLine("Convert parametric CTF into image");
33  addParamsLine(" -i <file> : parametric_CTF");
34  addParamsLine(" -o <file> : image CTF");
35  addParamsLine(" --dim <xdim> : image size");
36  addExampleLine("Create CTF image from parametric CTF file ctf.param and with dimension 256 pixels:", false);
37  addExampleLine("xmipp_ctf_show -i ctf.param -o 20.mrc --dim 256");
38 }
void addExampleLine(const char *example, bool verbatim=true)
void addUsageLine(const char *line, bool verbatim=false)
void addParamsLine(const String &line)

◆ readParams()

void ProgCTFShow::readParams ( )
virtual

Read parameters

Reimplemented from XmippProgram.

Definition at line 40 of file ctf_show.cpp.

41 {
42  fn_in = getParam("-i");
43  fn_out = getParam("-o");
44  dim = getIntParam("--dim");
45 }
FileName fn_in
Definition: ctf_show.h:41
const char * getParam(const char *param, int arg=0)
FileName fn_out
Definition: ctf_show.h:43
int getIntParam(const char *param, int arg=0)

◆ run()

void ProgCTFShow::run ( )
virtual

Do_all.

Reimplemented from XmippProgram.

Definition at line 58 of file ctf_show.cpp.

59 {
60  show();
61 
62  // Read CTF
63  CTFDescription ctf;
64  ctf.clear();
65  ctf.read(fn_in);
66  ctf.produceSideInfo();
67 
68  Matrix1D<double> freq(2); // Frequencies for Fourier plane
69  int yDim=dim;
70  int xDim=dim;
71  double iTm=1.0/ctf.Tm;
72  Image<double> img(xDim,yDim);
73  MultidimArray<double> &dummy = img.data;
74  int x2Dim = xDim / 2 ;
75  int y2Dim = yDim / 2 ;
76 
77  for (int i=0; i<yDim; ++i)
78  {
79  FFT_IDX2DIGFREQ(i, yDim, YY(freq));
80  YY(freq) *= iTm;
81  for (int j=0; j<xDim; ++j)
82  {
83  FFT_IDX2DIGFREQ(j, xDim, XX(freq));
84  XX(freq) *= iTm;
85  ctf.precomputeValues(XX(freq),YY(freq));
86  DIRECT_A2D_ELEM(dummy,intWRAP(i+x2Dim,0,xDim-1),
87  intWRAP(j+y2Dim,0,yDim-1))
89  }
90  }
91 
92  // Perform inverse Fourier transform and finish
93  img.write(fn_out);
94 }
#define yDim
Definition: projection.cpp:42
#define xDim
Definition: projection.cpp:41
#define DIRECT_A2D_ELEM(v, i, j)
#define i
void read(const FileName &fn, bool disable_if_not_K=true)
Definition: ctf.cpp:1220
FileName fn_in
Definition: ctf_show.h:41
#define XX(v)
Definition: matrix1d.h:85
void show()
Definition: ctf_show.cpp:48
double Tm
Sampling rate (A/pixel)
Definition: ctf.h:240
void precomputeValues(double X, double Y)
Precompute values for a given frequency.
Definition: ctf.h:1002
double dummy
double getValuePureWithoutDampingAt(bool show=false) const
Compute pure CTF without damping at (U,V). Continuous frequencies.
Definition: ctf.h:542
__device__ float FFT_IDX2DIGFREQ(int idx, int size)
#define j
#define YY(v)
Definition: matrix1d.h:93
void produceSideInfo()
Produce Side information.
Definition: ctf.cpp:1392
FileName fn_out
Definition: ctf_show.h:43
void clear()
Clear.
Definition: ctf.cpp:1366
#define intWRAP(x, x0, xF)
Definition: xmipp_macros.h:272

◆ show()

void ProgCTFShow::show ( )

Show parameters.

Definition at line 48 of file ctf_show.cpp.

49 {
50  if (verbose==0)
51  return;
52  std::cout
53  << "parametric CTF: " << fn_in << std::endl
54  << "image CTF: " << fn_out << std::endl
55  ;
56 }
FileName fn_in
Definition: ctf_show.h:41
int verbose
Verbosity level.
FileName fn_out
Definition: ctf_show.h:43

Member Data Documentation

◆ dim

int ProgCTFShow::dim

Image dim

Definition at line 45 of file ctf_show.h.

◆ fn_in

FileName ProgCTFShow::fn_in

Input CTF param file

Definition at line 41 of file ctf_show.h.

◆ fn_out

FileName ProgCTFShow::fn_out

Out CTF image

Definition at line 43 of file ctf_show.h.


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