Xmipp  v3.23.11-Nereus
angular_project_library.h
Go to the documentation of this file.
1 /***************************************************************************
2  *
3  * Authors: Roberto Marabini
4  *
5  * Unidad de Bioinformatica of Centro Nacional de Biotecnologia , CSIC
6  *
7  * This program is free software; you can redistribute it and/or modify
8  * it under the terms of the GNU General Public License as published by
9  * the Free Software Foundation; either version 2 of the License, or
10  * (at your option) any later version.
11  *
12  * This program is distributed in the hope that it will be useful,
13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15  * GNU General Public License for more details.
16  *
17  * You should have received a copy of the GNU General Public License
18  * along with this program; if not, write to the Free Software
19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
20  * 02111-1307 USA
21  *
22  * All comments concerning this program package may be sent to the
23  * e-mail address 'xmipp@cnb.csic.es'
24  ***************************************************************************/
25 #ifndef _PROG_ANGULAR_PROJECT_LIBRARY_HH
26 #define _PROG_ANGULAR_PROJECT_LIBRARY_HH
27 
28 #include <data/sampling.h>
29 #include <core/symmetries.h>
30 #include <core/args.h>
31 #include <fstream>
32 #include <iostream>
33 #include <string>
34 #include <data/projection.h>
35 #include <core/xmipp_image.h>
36 #include <core/xmipp_funcs.h>
37 #include <core/xmipp_program.h>
41 #include <reconstruction/project.h>
42 
45 /* PDB Phantom Program Parameters ------------------------------------------ */
48 {
49 public:
52 
54  double sampling;
55 
58 
60  double psi_sampling;
61 
64 
67 
70 
73 
76 
80  double paddFactor;
82  double maxFrequency;
85 
86 #ifdef NEVERDEFINED
87 
90  std::vector <Matrix1D<double> > close_points_angles;
91 #endif
92 
96 
99 
102 
105 
108 
111 
115  int symmetry;
116 
119 
122 
125 
128 
131 
133  int Xdim;
134 
136  int Ydim;
140 
141  /* Volume for shear projection */
143 
144  /* Volume for fourier projection */
146 
148  // std::vector <Matrix1D<double> > symmetry_vectors;
149 public:
154 
159 
164  void readParams();
165 
168  void defineParams();
169 
171  void show();
172 
174  void run();
175 
177  void createGroupSamplingFiles(void);
178 
180  void get_sym_vectors(std::vector< Matrix1D<double > > &sym_points);
181 
183  void project_angle_vector(int my_init, int my_end, bool verbose = true);
184 #ifdef NEVERDEFINED
185 
186  void remove_points_not_close_to_experimental_points(void);
187 #endif
188 };
190 #endif
int BSplineDeg
The type of interpolation (NEAR.
FileName fn_sym
symmetry file for sampling
ProgAngularProjectLibrary & operator=(const ProgAngularProjectLibrary &)=delete
projectionType
Type of projection.
Definition: project.h:42
FileName fn_sym_neigh
symmetry file for heighbors computation
double paddFactor
The padding factor for Fourier projection.
void project_angle_vector(int my_init, int my_end, bool verbose=true)
Structure for holding a volume.
int verbose
Verbosity level.
void get_sym_vectors(std::vector< Matrix1D< double > > &sym_points)
projectionType projType
Type of projection algorithm:
double maxFrequency
The maximum frequency for Fourier projection.