Xmipp  v3.23.11-Nereus
ctf_estimate_from_psd_fast.h
Go to the documentation of this file.
1 /***************************************************************************
2  *
3  * Authors: Javier Mota Garcia jmota@cnb.csic.es
4  * Carlos Oscar S. Sorzano (coss@cnb.csic.es)
5  *
6  * Unidad de Bioinformatica of Centro Nacional de Biotecnologia , CSIC
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License as published by
10  * the Free Software Foundation; either version 2 of the License, or
11  * (at your option) any later version.
12  *
13  * This program is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * GNU General Public License for more details.
17  *
18  * You should have received a copy of the GNU General Public License
19  * along with this program; if not, write to the Free Software
20  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
21  * 02111-1307 USA
22  *
23  * All comments concerning this program package may be sent to the
24  * e-mail address 'xmipp@cnb.csic.es'
25  ***************************************************************************/
26 
27 #ifndef _ADJUST_CTF_FAST_HH
28 #define _ADJUST_CTF_FAST_HH
29 
31 #include "data/ctf.h"
32 
38 {
39 public:
40 
43 
45 
46 public:
47 
49  void readBasicParams(XmippProgram *program);
50 
51  void readParams();
53  static void defineBasicParams(XmippProgram * program);
54 
56  void defineParams();
57 
59  void produceSideInfo();
60 
62  void run();
63 
64  /* Assign ctfmodel from a vector and viceversa ----------------------------- */
65  void assignCTFfromParameters_fast(double *p, CTFDescription1D &ctf1Dmodel, int ia, int l);
66 
67  void assignParametersFromCTF_fast(const CTFDescription1D &ctfmodel, double *p, int ia, int l);
68 
69  /* Center focus ----------------------------------------------------------- */
70  void center_optimization_focus_fast(bool adjust_th, double margin);
71 
72  /* The model is taken from global_adjust and global_ctfmodel is modified */
73  void generateModelSoFar_fast(MultidimArray<double> &I, bool apply_log);
74 
75  /* Compute central region -------------------------------------------------- */
76  void compute_central_region_fast(double &w1, double &w2, double ang);
77 
78  /* Save intermediate results ----------------------------------------------- */
79  /* First call to generate model so far and then save the image, and a couple
80  of cuts along X and Y.
81  This function returns the fitting error.*/
82  void saveIntermediateResults_fast(const FileName &fn_root, bool generate_profiles);
83 
85  double CTF_fitness_object_fast(double *p);
86 
87  // Estimate sqrt parameters
89 
90  // Estimate first gaussian parameters ------------------------------------- */
92 
93  // Estimate second gaussian parameters ------------------------------------- */
95 
96  // Estimate envelope parameters -------------------------------------------- */
98 
99  // Estimate defoci --------------------------------------------------------- */
100  void showFirstDefoci_fast();
101  void estimate_defoci_fast();
102 
103 };
104 
109  bool standalone = true);
111 #endif
void center_optimization_focus_fast(bool adjust_th, double margin)
void defineParams()
Define Parameters.
void readBasicParams(XmippProgram *program)
Read parameters.
void produceSideInfo()
Produce side information.
void compute_central_region_fast(double &w1, double &w2, double ang)
double ROUT_Adjust_CTFFast(ProgCTFEstimateFromPSDFast &prm, CTFDescription1D &output_ctfmodel, bool standalone=true)
void generateModelSoFar_fast(MultidimArray< double > &I, bool apply_log)
static void defineBasicParams(XmippProgram *program)
Define basic parameters.
void saveIntermediateResults_fast(const FileName &fn_root, bool generate_profiles)
void assignCTFfromParameters_fast(double *p, CTFDescription1D &ctf1Dmodel, int ia, int l)
void assignParametersFromCTF_fast(const CTFDescription1D &ctfmodel, double *p, int ia, int l)
ProgClassifyCL2D * prm