ProSHADE  0.7.6.6 (JUL 2022)
Protein Shape Detection
ProSHADE_settings.hpp
Go to the documentation of this file.
1 
22 //==================================================== ProSHADE
23 #include "ProSHADE_maths.hpp"
24 
25 //==================================================== Overinclusion protection
26 #ifndef PROSHADE_SETTINGS
27 #define PROSHADE_SETTINGS
28 
37 {
38 public:
39  //================================================ Settings regarding the task at hand
40  ProSHADE_Task task;
41 
42  //================================================ Settings regarding the input files
43  std::vector < std::string > inputFiles;
44  bool forceP1;
45  bool removeWaters;
48 
49  //================================================ Settings regarding the resolution of calculations
50  proshade_single requestedResolution;
53  proshade_single resolutionOversampling;
54 
55  //================================================ Settings regarding the PDB B-factor change
56  proshade_double pdbBFactorNewVal;
57 
58  //================================================ Settings regarding the bandwidth of calculations
59  proshade_unsign maxBandwidth;
60  proshade_double rotationUncertainty;
61  proshade_double maxRadius;
62 
63  //================================================ Settings regarding the phase
64  bool usePhase;
65 
66  //================================================ Settings regarding the spheres
67  proshade_single maxSphereDists;
68 
69  //================================================ Settings regarding the Gauss-Legendre integration
70  proshade_unsign integOrder;
71  proshade_unsign integApproxSteps;
73 
74  //================================================ Settings regarding map normalisation
75  bool normaliseMap;
76 
77  //================================================ Settings regarding map inversion
78  bool invertMap;
79 
80  //================================================ Settings regarding map masking
81  proshade_single blurFactor;
82  proshade_single maskingThresholdIQRs;
83  bool maskMap;
85  proshade_single halfMapKernel;
86  proshade_single correlationKernel;
87  bool saveMask;
88  std::string maskFileName;
89  std::string appliedMaskFileName;
90  std::vector< proshade_double > calcBounds;
91 
92  //================================================ Settings regarding map weighting
93  std::string fourierWeightsFileName;
94 
95  //================================================ Settings regarding re-boxing
96  bool reBoxMap;
97  proshade_single boundsExtraSpace;
98  proshade_signed boundsSimilarityThreshold;
100  proshade_signed* forceBounds;
101 
102  //================================================ Settings regarding COM
103  bool moveToCOM;
104  std::vector< proshade_double > boxCentre;
105 
106  //================================================ Settings regarding extra cell space
107  proshade_single addExtraSpace;
108  proshade_single coOrdsExtraSpace;
109 
110  //================================================ Settings regarding shell settings
112 
113  //================================================ Settings regarding output file name
114  std::string outName;
115 
116  //================================================ Settings regarding distances computation
118  proshade_double enLevMatrixPowerWeight;
121 
122  //================================================ Settings regarding peak searching
123  proshade_unsign peakNeighbours;
124  proshade_double noIQRsFromMedianNaivePeak;
125 
126  //================================================ Settings regarding 1D grouping
127  proshade_double smoothingFactor;
128 
129  //================================================ Settings regarding the symmetry detection
131  proshade_double symMissPeakThres;
132  proshade_double axisErrTolerance;
133  bool axisErrToleranceDefault;
134  proshade_double minSymPeak;
135  std::string requestedSymmetryType;
136  proshade_unsign requestedSymmetryFold;
138  proshade_unsign maxSymmetryFold;
139  proshade_unsign supportedSymmetryFold;
140  proshade_double fscThreshold;
141  proshade_double peakThresholdMin;
142  bool fastISearch;
143 
144  //================================================ Settings regarding centre of map
145  std::vector < proshade_double > centrePosition;
146 
147  //================================================ Settings regarding the structure overlay
148  std::string overlayStructureName;
149  std::string rotTrsJSONFile;
150 
151  //================================================ Settings regarding verbosity of the program
152  proshade_signed verbose;
153  proshade_signed messageShift;
154 
155 public: // maybe make this protected?
156  //================================================ Variable modifying functions
157  void determineBandwidthFromAngle ( proshade_double uncertainty );
158  void determineBandwidth ( proshade_unsign circumference );
159  void determineSphereDistances ( proshade_single maxMapRange );
160  void determineIntegrationOrder ( proshade_single maxMapRange );
161  void determineAllSHValues ( proshade_unsign xDim, proshade_unsign yDim, proshade_single xDimAngs,
162  proshade_single yDimAngs, proshade_single zDimAngs );
163  void setVariablesLeftOnAuto ( void );
164 
165 public:
166  //================================================ Constructors / Destructors
167 #if defined ( _WIN64 ) || defined ( _WIN32 )
168  __declspec(dllexport) ProSHADE_settings ( );
169  __declspec(dllexport) ProSHADE_settings ( ProSHADE_settings* settings );
170  __declspec(dllexport) ProSHADE_settings ( ProSHADE_Task task );
171  __declspec(dllexport) ~ProSHADE_settings ( );
172 #else
173  ProSHADE_settings ( void );
174  ProSHADE_settings ( ProSHADE_settings* settings );
175  ProSHADE_settings ( ProSHADE_Task task );
176  ~ProSHADE_settings ( void );
177 #endif
178 
179  //================================================ Variable setting functions
180 #if defined ( _WIN64 ) || defined ( _WIN32 )
181  void __declspec(dllexport) addStructure ( std::string structure );
182  void __declspec(dllexport) setResolution ( proshade_single resolution );
183  void __declspec(dllexport) setPDBBFactor ( proshade_double newBF );
184  void __declspec(dllexport) setNormalisation ( bool normalise );
185  void __declspec(dllexport) setMapInversion ( bool mInv );
186  void __declspec(dllexport) setVerbosity ( proshade_signed verbosity );
187  void __declspec(dllexport) setMaskBlurFactor ( proshade_single blurFac );
188  void __declspec(dllexport) setMaskIQR ( proshade_single noIQRs );
189  void __declspec(dllexport) setMasking ( bool mask );
190  void __declspec(dllexport) setCorrelationMasking ( bool corMask );
191  void __declspec(dllexport) setTypicalNoiseSize ( proshade_single typNoi );
192  void __declspec(dllexport) setMinimumMaskSize ( proshade_single minMS );
193  void __declspec(dllexport) setMaskSaving ( bool savMsk );
194  void __declspec(dllexport) setMaskFilename ( std::string mskFln );
195  void __declspec(dllexport) setAppliedMaskFilename ( std::string mskFln );
196  void __declspec(dllexport) setFourierWeightsFilename ( std::string fWgFln );
197  void __declspec(dllexport) setMapReboxing ( bool reBx );
198  void __declspec(dllexport) setBoundsSpace ( proshade_single boundsExSp );
199  void __declspec(dllexport) setBoundsThreshold ( proshade_signed boundsThres );
200  void __declspec(dllexport) setSameBoundaries ( bool sameB );
201  void __declspec(dllexport) setOutputFilename ( std::string oFileName );
202  void __declspec(dllexport) setMapResolutionChange ( bool mrChange );
203  void __declspec(dllexport) setMapResolutionChangeTriLinear ( bool mrChange );
204  void __declspec(dllexport) setMapResolutionOverSampling ( proshade_single overS );
205  void __declspec(dllexport) setMapCentering ( bool com );
206  void __declspec(dllexport) setExtraSpace ( proshade_single exSpace );
207  void __declspec(dllexport) setCoordExtraSpace ( proshade_single exSpace );
208  void __declspec(dllexport) setBoxCentering ( proshade_double xPos, proshade_double yPos, proshade_double zPos );
209  void __declspec(dllexport) setBandwidth ( proshade_unsign band );
210  void __declspec(dllexport) setSphereDistances ( proshade_single sphDist );
211  void __declspec(dllexport) setIntegrationOrder ( proshade_unsign intOrd );
212  void __declspec(dllexport) setIntegrationApproxSteps ( proshade_unsign noSteps );
213  void __declspec(dllexport) setIntegrationSpeedUp ( bool speedup );
214  void __declspec(dllexport) setProgressiveSphereMapping ( bool progSphMap );
215  void __declspec(dllexport) setEnergyLevelsComputation ( bool enLevDesc );
216  void __declspec(dllexport) setTraceSigmaComputation ( bool trSigVal );
217  void __declspec(dllexport) setRotationFunctionComputation ( bool rotfVal );
218  void __declspec(dllexport) setPeakNeighboursNumber ( proshade_unsign pkS );
219  void __declspec(dllexport) setPeakNaiveNoIQR ( proshade_double noIQRs );
220  void __declspec(dllexport) setPhaseUsage ( bool phaseUsage );
221  void __declspec(dllexport) setEnLevShellWeight ( proshade_double mPower );
222  void __declspec(dllexport) setGroupingSmoothingFactor ( proshade_double smFact );
223  void __declspec(dllexport) setSymmetryCentreSearch ( bool sCen );
224  void __declspec(dllexport) setMissingPeakThreshold ( proshade_double mpThres );
225  void __declspec(dllexport) setAxisComparisonThreshold ( proshade_double axThres );
226  void __declspec(dllexport) setAxisComparisonThresholdBehaviour ( bool behav );
227  void __declspec(dllexport) setMinimumPeakForAxis ( proshade_double minSP );
228  void __declspec(dllexport) setRequestedSymmetry ( std::string val );
229  void __declspec(dllexport) setRequestedFold ( proshade_unsign val );
230  void __declspec(dllexport) setOverlaySaveFile ( std::string filename );
231  void __declspec(dllexport) setOverlayJsonFile ( std::string filename );
232  void __declspec(dllexport) setBicubicInterpolationSearch ( bool bicubPeaks );
233  void __declspec(dllexport) setMaxSymmetryFold ( proshade_unsign maxFold );
234  void __declspec(dllexport) setFSCThreshold ( proshade_double fscThr );
235  void __declspec(dllexport) setPeakThreshold ( proshade_double peakThr );
236  void __declspec(dllexport) setNegativeDensity ( bool nDens );
237 #else
238  void addStructure ( std::string structure );
239  void setResolution ( proshade_single resolution );
240  void setPDBBFactor ( proshade_double newBF );
241  void setNormalisation ( bool normalise );
242  void setMapInversion ( bool mInv );
243  void setVerbosity ( proshade_signed verbosity );
244  void setMaskBlurFactor ( proshade_single blurFac );
245  void setMaskIQR ( proshade_single noIQRs );
246  void setMasking ( bool mask );
247  void setCorrelationMasking ( bool corMask );
248  void setTypicalNoiseSize ( proshade_single typNoi );
249  void setMinimumMaskSize ( proshade_single minMS );
250  void setMaskSaving ( bool savMsk );
251  void setMaskFilename ( std::string mskFln );
252  void setAppliedMaskFilename ( std::string mskFln );
253  void setFourierWeightsFilename ( std::string fWgFln );
254  void setMapReboxing ( bool reBx );
255  void setBoundsSpace ( proshade_single boundsExSp );
256  void setBoundsThreshold ( proshade_signed boundsThres );
257  void setSameBoundaries ( bool sameB );
258  void setOutputFilename ( std::string oFileName );
259  void setMapResolutionChange ( bool mrChange );
260  void setMapResolutionChangeTriLinear ( bool mrChange );
261  void setMapResolutionOverSampling ( proshade_single overS );
262  void setMapCentering ( bool com );
263  void setExtraSpace ( proshade_single exSpace );
264  void setCoordExtraSpace ( proshade_single exSpace );
265  void setBoxCentering ( proshade_double xPos, proshade_double yPos, proshade_double zPos );
266  void setBandwidth ( proshade_unsign band );
267  void setSphereDistances ( proshade_single sphDist );
268  void setIntegrationOrder ( proshade_unsign intOrd );
269  void setIntegrationApproxSteps ( proshade_unsign noSteps );
270  void setIntegrationSpeedUp ( bool speedup );
271  void setProgressiveSphereMapping ( bool progSphMap );
272  void setEnergyLevelsComputation ( bool enLevDesc );
273  void setTraceSigmaComputation ( bool trSigVal );
274  void setRotationFunctionComputation ( bool rotfVal );
275  void setPeakNeighboursNumber ( proshade_unsign pkS );
276  void setPeakNaiveNoIQR ( proshade_double noIQRs );
277  void setPhaseUsage ( bool phaseUsage );
278  void setEnLevShellWeight ( proshade_double mPower );
279  void setGroupingSmoothingFactor ( proshade_double smFact );
280  void setMissingPeakThreshold ( proshade_double mpThres );
281  void setSymmetryCentreSearch ( bool sCen );
282  void setAxisComparisonThreshold ( proshade_double axThres );
283  void setAxisComparisonThresholdBehaviour ( bool behav );
284  void setMinimumPeakForAxis ( proshade_double minSP );
285  void setRequestedSymmetry ( std::string val );
286  void setRequestedFold ( proshade_unsign val );
287  void setOverlaySaveFile ( std::string filename );
288  void setOverlayJsonFile ( std::string filename );
289  void setBicubicInterpolationSearch ( bool bicubPeaks );
290  void setMaxSymmetryFold ( proshade_unsign maxFold );
291  void setFSCThreshold ( proshade_double fscThr );
292  void setPeakThreshold ( proshade_double peakThr );
293  void setNegativeDensity ( bool nDens );
294 #endif
295 
296  //================================================ Command line options parsing
297 #if defined ( _WIN64 ) || defined ( _WIN32 )
298  void __declspec(dllexport) getCommandLineParams ( int argc, char** argv );
299 #else
300  void getCommandLineParams ( int argc, char** argv );
301 #endif
302 
303  //================================================ Debugging
304 #if defined ( _WIN64 ) || defined ( _WIN32 )
305  void __declspec(dllexport) printSettings ( void );
306 #else
307  void printSettings ( void );
308 #endif
309 };
310 
311 #endif
ProSHADE_settings::noIQRsFromMedianNaivePeak
proshade_double noIQRsFromMedianNaivePeak
When doing peak searching, how many IQRs from the median the threshold for peak height should be (in ...
Definition: ProSHADE_settings.hpp:124
ProSHADE_settings::setOverlayJsonFile
void setOverlayJsonFile(std::string filename)
Sets the filename to which the overlay operations are to be save into.
Definition: ProSHADE.cpp:1564
ProSHADE_settings::setBoxCentering
void setBoxCentering(proshade_double xPos, proshade_double yPos, proshade_double zPos)
Sets the requested centre of box to be at the real space co-ordinates supplied.
Definition: ProSHADE.cpp:1041
ProSHADE_settings::maxBandwidth
proshade_unsign maxBandwidth
The bandwidth of spherical harmonics decomposition for the largest sphere.
Definition: ProSHADE_settings.hpp:59
ProSHADE_settings::integOrder
proshade_unsign integOrder
The order required for full Gauss-Legendre integration between the spheres.
Definition: ProSHADE_settings.hpp:70
ProSHADE_settings::rotTrsJSONFile
std::string rotTrsJSONFile
The filename to which the rotation and translation operations are to be saved into.
Definition: ProSHADE_settings.hpp:149
ProSHADE_settings::setEnLevShellWeight
void setEnLevShellWeight(proshade_double mPower)
Sets the weight of shell position for the energy levels computation.
Definition: ProSHADE.cpp:1359
ProSHADE_settings::computeTraceSigmaDesc
bool computeTraceSigmaDesc
If true, the trace sigma descriptor will be computed, otherwise all its computations will be omitted.
Definition: ProSHADE_settings.hpp:119
ProSHADE_settings::findSymCentre
bool findSymCentre
Should phase-less map be used to determine centre of symmetry?
Definition: ProSHADE_settings.hpp:130
ProSHADE_settings::setTraceSigmaComputation
void setTraceSigmaComputation(bool trSigVal)
Sets whether the trace sigma distance descriptor should be computed.
Definition: ProSHADE.cpp:1251
ProSHADE_settings::computeRotationFuncDesc
bool computeRotationFuncDesc
If true, the rotation function descriptor will be computed, otherwise all its computations will be om...
Definition: ProSHADE_settings.hpp:120
ProSHADE_settings::setSameBoundaries
void setSameBoundaries(bool sameB)
Sets whether same boundaries should be used in the appropriate variable.
Definition: ProSHADE.cpp:918
ProSHADE_settings::maxSymmetryFold
proshade_unsign maxSymmetryFold
The highest symmetry fold to search for.
Definition: ProSHADE_settings.hpp:138
ProSHADE_settings::setMinimumMaskSize
void setMinimumMaskSize(proshade_single minMS)
Sets the requested minimum mask size.
Definition: ProSHADE.cpp:756
ProSHADE_settings::determineAllSHValues
void determineAllSHValues(proshade_unsign xDim, proshade_unsign yDim, proshade_single xDimAngs, proshade_single yDimAngs, proshade_single zDimAngs)
This function determines all the required values for spherical harmonics computation.
Definition: ProSHADE.cpp:1817
ProSHADE_settings::setAppliedMaskFilename
void setAppliedMaskFilename(std::string mskFln)
Sets the filename of the mask data that should be applied to the input map.
Definition: ProSHADE.cpp:816
ProSHADE_settings::boundsExtraSpace
proshade_single boundsExtraSpace
The number of extra angstroms to be added to all re-boxing bounds just for safety.
Definition: ProSHADE_settings.hpp:97
ProSHADE_settings::setBicubicInterpolationSearch
void setBicubicInterpolationSearch(bool bicubPeaks)
Sets the bicubic interpolation on peaks.
Definition: ProSHADE.cpp:1582
ProSHADE_settings::setPeakNaiveNoIQR
void setPeakNaiveNoIQR(proshade_double noIQRs)
Sets the number of IQRs from the median for threshold height a peak needs to be considered a peak.
Definition: ProSHADE.cpp:1315
ProSHADE_settings::outName
std::string outName
The file name where the output structure(s) should be saved.
Definition: ProSHADE_settings.hpp:114
ProSHADE_settings::setMapInversion
void setMapInversion(bool mInv)
Sets the requested map inversion value in the appropriate variable.
Definition: ProSHADE.cpp:612
ProSHADE_settings::setMapResolutionChange
void setMapResolutionChange(bool mrChange)
Sets the requested map resolution change decision in the appropriate variable.
Definition: ProSHADE.cpp:959
ProSHADE_settings::setPeakNeighboursNumber
void setPeakNeighboursNumber(proshade_unsign pkS)
Sets the number of neighbour values that have to be smaller for an index to be considered a peak.
Definition: ProSHADE.cpp:1293
ProSHADE_settings::blurFactor
proshade_single blurFactor
This is the amount by which B-factors should be increased to create the blurred map for masking.
Definition: ProSHADE_settings.hpp:81
ProSHADE_settings::maskMap
bool maskMap
Should the map be masked from noise?
Definition: ProSHADE_settings.hpp:83
ProSHADE_settings::requestedSymmetryFold
proshade_unsign requestedSymmetryFold
The fold of the requested symmetry (only applicable to C and D symmetry types).
Definition: ProSHADE_settings.hpp:136
ProSHADE_settings::requestedSymmetryType
std::string requestedSymmetryType
The symmetry type requested by the user. Allowed values are C, D, T, O and I.
Definition: ProSHADE_settings.hpp:135
ProSHADE_settings::setSphereDistances
void setSphereDistances(proshade_single sphDist)
Sets the requested distance between spheres in the appropriate variable.
Definition: ProSHADE.cpp:1130
ProSHADE_settings::setVerbosity
void setVerbosity(proshade_signed verbosity)
Sets the requested verbosity in the appropriate variable.
Definition: ProSHADE.cpp:632
ProSHADE_settings::removeNegativeDensity
bool removeNegativeDensity
Should the negative density be removed from input files?
Definition: ProSHADE_settings.hpp:47
ProSHADE_settings::setMinimumPeakForAxis
void setMinimumPeakForAxis(proshade_double minSP)
Sets the minimum peak height for symmetry axis to be considered.
Definition: ProSHADE.cpp:1488
ProSHADE_maths.hpp
This header file declares all the functions required for computing various information from the ProSH...
ProSHADE_settings::saveMask
bool saveMask
Should the mask be saved?
Definition: ProSHADE_settings.hpp:87
ProSHADE_settings::requestedResolution
proshade_single requestedResolution
The resolution to which the calculations are to be done.
Definition: ProSHADE_settings.hpp:50
ProSHADE_settings::minSymPeak
proshade_double minSymPeak
Minimum average peak for symmetry axis to be considered as "real".
Definition: ProSHADE_settings.hpp:134
ProSHADE_settings::setAxisComparisonThresholdBehaviour
void setAxisComparisonThresholdBehaviour(bool behav)
Sets the automatic symmetry axis tolerance decreasing.
Definition: ProSHADE.cpp:1467
ProSHADE_settings::progressiveSphereMapping
bool progressiveSphereMapping
If true, each shell will have its own angular resolution dependent on the actual number of map points...
Definition: ProSHADE_settings.hpp:111
ProSHADE_settings::maxSphereDists
proshade_single maxSphereDists
The distance between spheres in spherical mapping for the largest sphere.
Definition: ProSHADE_settings.hpp:67
ProSHADE_settings::symMissPeakThres
proshade_double symMissPeakThres
Percentage of peaks that could be missing that would warrant starting the missing peaks search proced...
Definition: ProSHADE_settings.hpp:131
ProSHADE_settings::setPDBBFactor
void setPDBBFactor(proshade_double newBF)
Sets the requested B-factor value for PDB files in the appropriate variable.
Definition: ProSHADE.cpp:572
ProSHADE_settings::addStructure
void addStructure(std::string structure)
Adds a structure file name to the appropriate variable.
Definition: ProSHADE.cpp:532
ProSHADE_settings::determineIntegrationOrder
void determineIntegrationOrder(proshade_single maxMapRange)
This function determines the integration order for the between spheres integration.
Definition: ProSHADE.cpp:1773
ProSHADE_settings::setMaskIQR
void setMaskIQR(proshade_single noIQRs)
Sets the requested number of IQRs for masking threshold in the appropriate variable.
Definition: ProSHADE.cpp:673
ProSHADE_settings::setMissingPeakThreshold
void setMissingPeakThreshold(proshade_double mpThres)
Sets the threshold for starting the missing peaks procedure.
Definition: ProSHADE.cpp:1402
ProSHADE_settings::maskingThresholdIQRs
proshade_single maskingThresholdIQRs
Number of inter-quartile ranges from the median to be used for thresholding the blurred map for maski...
Definition: ProSHADE_settings.hpp:82
ProSHADE_settings::useCorrelationMasking
bool useCorrelationMasking
Should the blurring masking (false) or the correlation masking (true) be used?
Definition: ProSHADE_settings.hpp:84
ProSHADE_settings::usePhase
bool usePhase
If true, the full data will be used, if false, Patterson maps will be used instead and phased data wi...
Definition: ProSHADE_settings.hpp:64
ProSHADE_settings::setSymmetryCentreSearch
void setSymmetryCentreSearch(bool sCen)
Sets the symmetry centre search on or off.
Definition: ProSHADE.cpp:1423
ProSHADE_settings::setMapCentering
void setMapCentering(bool com)
Sets the requested map centering decision value in the appropriate variable.
Definition: ProSHADE.cpp:1019
ProSHADE_settings::setMaskBlurFactor
void setMaskBlurFactor(proshade_single blurFac)
Sets the requested map blurring factor in the appropriate variable.
Definition: ProSHADE.cpp:652
ProSHADE_settings::setPeakThreshold
void setPeakThreshold(proshade_double peakThr)
Sets the minimum peak height threshold for axis to be considered possible.
Definition: ProSHADE.cpp:1636
ProSHADE_settings::setPhaseUsage
void setPhaseUsage(bool phaseUsage)
Sets whether the phase information will be used.
Definition: ProSHADE.cpp:1337
ProSHADE_settings::maskFileName
std::string maskFileName
The filename to which mask should be saved.
Definition: ProSHADE_settings.hpp:88
ProSHADE_settings::verbose
proshade_signed verbose
Should the software report on the progress, or just be quiet? Value between -1 (nothing) and 4 (loud)
Definition: ProSHADE_settings.hpp:152
ProSHADE_settings::setFSCThreshold
void setFSCThreshold(proshade_double fscThr)
Sets the minimum FSC threshold for axis to be considered detected.
Definition: ProSHADE.cpp:1618
ProSHADE_settings::setBandwidth
void setBandwidth(proshade_unsign band)
Sets the requested spherical harmonics bandwidth in the appropriate variable.
Definition: ProSHADE.cpp:1110
ProSHADE_settings::messageShift
proshade_signed messageShift
This value allows shifting the messages to create more readable log for sub-processes.
Definition: ProSHADE_settings.hpp:153
ProSHADE_settings::setBoundsSpace
void setBoundsSpace(proshade_single boundsExSp)
Sets the requested number of angstroms for extra space in re-boxing in the appropriate variable.
Definition: ProSHADE.cpp:877
ProSHADE_settings::changeMapResolutionTriLinear
bool changeMapResolutionTriLinear
Should maps be re-sampled to obtain the required resolution?
Definition: ProSHADE_settings.hpp:52
ProSHADE_settings::setOutputFilename
void setOutputFilename(std::string oFileName)
Sets the requested output file name in the appropriate variable.
Definition: ProSHADE.cpp:939
ProSHADE_settings::useBiCubicInterpolationOnPeaks
bool useBiCubicInterpolationOnPeaks
This variable switch decides whether best symmetry is detected from peak indices, or whether bicubic ...
Definition: ProSHADE_settings.hpp:137
ProSHADE_settings::setAxisComparisonThreshold
void setAxisComparisonThreshold(proshade_double axThres)
Sets the threshold for matching symmetry axes.
Definition: ProSHADE.cpp:1444
ProSHADE_settings::peakThresholdMin
proshade_double peakThresholdMin
The threshold for peak height above which axes are considered possible.
Definition: ProSHADE_settings.hpp:141
ProSHADE_settings::forceP1
bool forceP1
Should the P1 spacegroup be forced on the input PDB files?
Definition: ProSHADE_settings.hpp:44
ProSHADE_settings::setTypicalNoiseSize
void setTypicalNoiseSize(proshade_single typNoi)
Sets the requested "fake" half-map kernel in the appropriate variable.
Definition: ProSHADE.cpp:736
ProSHADE_settings::calcBounds
std::vector< proshade_double > calcBounds
The boundaries to be used for deciding the calculation thresholds (band, integration order,...
Definition: ProSHADE_settings.hpp:90
ProSHADE_settings::task
ProSHADE_Task task
This custom type variable determines which task to perfom (i.e. symmetry detection,...
Definition: ProSHADE_settings.hpp:40
ProSHADE_settings::setMaskFilename
void setMaskFilename(std::string mskFln)
Sets where the mask should be saved.
Definition: ProSHADE.cpp:796
ProSHADE_settings::setCoordExtraSpace
void setCoordExtraSpace(proshade_single exSpace)
Sets the requested co-ordinates extra space value in the appropriate variable.
Definition: ProSHADE.cpp:1090
ProSHADE_settings::reBoxMap
bool reBoxMap
This switch decides whether re-boxing is needed.
Definition: ProSHADE_settings.hpp:96
ProSHADE_settings::appliedMaskFileName
std::string appliedMaskFileName
The filename from which mask data will be read from.
Definition: ProSHADE_settings.hpp:89
ProSHADE_settings::resolutionOversampling
proshade_single resolutionOversampling
How much (%) should the requested resolution be over-sampled by map re-sampling?
Definition: ProSHADE_settings.hpp:53
ProSHADE_settings::coOrdsExtraSpace
proshade_single coOrdsExtraSpace
This number of Angstroms will be added before and any co-ordinates to make sure there is no atom dire...
Definition: ProSHADE_settings.hpp:108
ProSHADE_settings::normaliseMap
bool normaliseMap
Should the map be normalised to mean 0 sd 1?
Definition: ProSHADE_settings.hpp:75
ProSHADE_settings::addExtraSpace
proshade_single addExtraSpace
If this value is non-zero, this many angstroms of empty space will be added to the internal map.
Definition: ProSHADE_settings.hpp:107
ProSHADE_settings::setRequestedFold
void setRequestedFold(proshade_unsign val)
Sets the user requested symmetry fold.
Definition: ProSHADE.cpp:1528
ProSHADE_settings
This class stores all the settings and is passed to the executive classes instead of a multitude of p...
Definition: ProSHADE_settings.hpp:37
ProSHADE_settings::fscThreshold
proshade_double fscThreshold
The threshold for FSC value under which the axis is considered to be likely noise.
Definition: ProSHADE_settings.hpp:140
ProSHADE_settings::determineBandwidthFromAngle
void determineBandwidthFromAngle(proshade_double uncertainty)
This function determines the bandwidth for the spherical harmonics computation from the allowed rotat...
Definition: ProSHADE.cpp:1710
ProSHADE_settings::setIntegrationSpeedUp
void setIntegrationSpeedUp(bool speedup)
Sets the variable deciding if integration speedup should be used or not.
Definition: ProSHADE.cpp:1189
ProSHADE_settings::integApproxSteps
proshade_unsign integApproxSteps
The number of steps taken in the approximation of Legendre polynomial decomposition to terms.
Definition: ProSHADE_settings.hpp:71
ProSHADE_settings::getCommandLineParams
void getCommandLineParams(int argc, char **argv)
This function parses the command line arguments into the settings object.
Definition: ProSHADE.cpp:2112
ProSHADE_settings::supportedSymmetryFold
proshade_unsign supportedSymmetryFold
Maximum supported fold by the map.
Definition: ProSHADE_settings.hpp:139
ProSHADE_settings::setMapReboxing
void setMapReboxing(bool reBx)
Sets whether re-boxing needs to be done in the appropriate variable.
Definition: ProSHADE.cpp:856
ProSHADE_settings::setMaxSymmetryFold
void setMaxSymmetryFold(proshade_unsign maxFold)
Sets the maximum symmetry fold (well, the maximum prime symmetry fold).
Definition: ProSHADE.cpp:1600
ProSHADE_settings::correlationKernel
proshade_single correlationKernel
This value in Angstrom will be used as the kernel for the map-FHM correlation computation.
Definition: ProSHADE_settings.hpp:86
ProSHADE_settings::setNegativeDensity
void setNegativeDensity(bool nDens)
Sets the internal variable deciding whether input files negative density should be removed.
Definition: ProSHADE.cpp:1654
ProSHADE_settings::invertMap
bool invertMap
Should the map be inverted? Only use this if you think you have the wrong hand in your map.
Definition: ProSHADE_settings.hpp:78
ProSHADE_settings::centrePosition
std::vector< proshade_double > centrePosition
The position of the centre of the map in "real space" co-ordinates.
Definition: ProSHADE_settings.hpp:145
ProSHADE_settings::boundsSimilarityThreshold
proshade_signed boundsSimilarityThreshold
Number of indices which can be added just to make sure same size in indices is achieved.
Definition: ProSHADE_settings.hpp:98
ProSHADE_settings::setCorrelationMasking
void setCorrelationMasking(bool corMask)
Sets the requested map masking type in the appropriate variable.
Definition: ProSHADE.cpp:714
ProSHADE_settings::setProgressiveSphereMapping
void setProgressiveSphereMapping(bool progSphMap)
Sets the requested sphere mapping value settings approach in the appropriate variable.
Definition: ProSHADE.cpp:1209
ProSHADE_settings::setIntegrationApproxSteps
void setIntegrationApproxSteps(proshade_unsign noSteps)
Sets the requested number of steps used in approximating Legendre polynomial decomposition to steps i...
Definition: ProSHADE.cpp:1171
ProSHADE_settings::changeMapResolution
bool changeMapResolution
Should maps be re-sampled to obtain the required resolution?
Definition: ProSHADE_settings.hpp:51
ProSHADE_settings::setIntegrationOrder
void setIntegrationOrder(proshade_unsign intOrd)
Sets the requested order for the Gauss-Legendre integration in the appropriate variable.
Definition: ProSHADE.cpp:1150
ProSHADE_settings::setRotationFunctionComputation
void setRotationFunctionComputation(bool rotfVal)
Sets whether the rotation function distance descriptor should be computed.
Definition: ProSHADE.cpp:1272
ProSHADE_settings::rotationUncertainty
proshade_double rotationUncertainty
Alternative to bandwidth - the angle in degrees to which the rotation function accuracy should be com...
Definition: ProSHADE_settings.hpp:60
ProSHADE_settings::~ProSHADE_settings
~ProSHADE_settings(void)
Destructor for the ProSHADE_settings class.
Definition: ProSHADE.cpp:494
ProSHADE_settings::setOverlaySaveFile
void setOverlaySaveFile(std::string filename)
Sets the filename to which the overlay structure is to be save into.
Definition: ProSHADE.cpp:1546
ProSHADE_settings::overlayStructureName
std::string overlayStructureName
The filename to which the rotated and translated moving structure is to be saved.
Definition: ProSHADE_settings.hpp:148
ProSHADE_settings::determineBandwidth
void determineBandwidth(proshade_unsign circumference)
This function determines the bandwidth for the spherical harmonics computation.
Definition: ProSHADE.cpp:1673
ProSHADE_settings::moveToCOM
bool moveToCOM
Logical value stating whether the structure should be moved to have its Centre Of Mass (COM) in the m...
Definition: ProSHADE_settings.hpp:103
ProSHADE_settings::peakNeighbours
proshade_unsign peakNeighbours
Number of points in any direction that have to be lower than the considered index in order to conside...
Definition: ProSHADE_settings.hpp:123
ProSHADE_settings::maxRadius
proshade_double maxRadius
The maximum distance from centre in Angstroms for a map value to still be used.
Definition: ProSHADE_settings.hpp:61
ProSHADE_settings::smoothingFactor
proshade_double smoothingFactor
This factor decides how small the group sizes should be - larger factor means more smaller groups.
Definition: ProSHADE_settings.hpp:127
ProSHADE_settings::setMapResolutionOverSampling
void setMapResolutionOverSampling(proshade_single overS)
Sets the requested map resolution over-sampling.
Definition: ProSHADE.cpp:999
ProSHADE_settings::setFourierWeightsFilename
void setFourierWeightsFilename(std::string fWgFln)
Sets the filename of the mask data that should be applied to the input map.
Definition: ProSHADE.cpp:836
ProSHADE_settings::halfMapKernel
proshade_single halfMapKernel
This value in Angstrom will be used as the kernel for the "fake half-map" computation.
Definition: ProSHADE_settings.hpp:85
ProSHADE_settings::boxCentre
std::vector< proshade_double > boxCentre
If box centre is to be in any other location, this variable will hold the real space location that sh...
Definition: ProSHADE_settings.hpp:104
ProSHADE_settings::determineSphereDistances
void determineSphereDistances(proshade_single maxMapRange)
This function determines the sphere distances for sphere mapping.
Definition: ProSHADE.cpp:1741
ProSHADE_settings::setGroupingSmoothingFactor
void setGroupingSmoothingFactor(proshade_double smFact)
Sets the grouping smoothing factor into the proper variable.
Definition: ProSHADE.cpp:1381
ProSHADE_settings::setRequestedSymmetry
void setRequestedSymmetry(std::string val)
Sets the user requested symmetry type.
Definition: ProSHADE.cpp:1508
ProSHADE_settings::setExtraSpace
void setExtraSpace(proshade_single exSpace)
Sets the requested map extra space value in the appropriate variable.
Definition: ProSHADE.cpp:1070
ProSHADE_settings::forceBounds
proshade_signed * forceBounds
These will be the boundaries to be forced upon the map.
Definition: ProSHADE_settings.hpp:100
ProSHADE_settings::fourierWeightsFileName
std::string fourierWeightsFileName
The filename from which Fourier weights data will be read from.
Definition: ProSHADE_settings.hpp:93
ProSHADE_settings::inputFiles
std::vector< std::string > inputFiles
This vector contains the filenames of all input structure files.
Definition: ProSHADE_settings.hpp:43
ProSHADE_settings::setMapResolutionChangeTriLinear
void setMapResolutionChangeTriLinear(bool mrChange)
Sets the requested map resolution change decision using tri-linear interpolation in the appropriate v...
Definition: ProSHADE.cpp:979
ProSHADE_settings::setMaskSaving
void setMaskSaving(bool savMsk)
Sets whether the mask should be saved.
Definition: ProSHADE.cpp:776
ProSHADE_settings::ProSHADE_settings
ProSHADE_settings(void)
Contructor for the ProSHADE_settings class.
Definition: ProSHADE.cpp:37
ProSHADE_settings::firstModelOnly
bool firstModelOnly
Shoud only the first PDB model be used, or should all models be used?
Definition: ProSHADE_settings.hpp:46
ProSHADE_settings::setBoundsThreshold
void setBoundsThreshold(proshade_signed boundsThres)
Sets the threshold for number of indices difference acceptable to make index sizes same in the approp...
Definition: ProSHADE.cpp:897
ProSHADE_settings::axisErrTolerance
proshade_double axisErrTolerance
Allowed error on vector axis in in dot product ( acos ( 1 - axErr ) is the allowed difference in radi...
Definition: ProSHADE_settings.hpp:132
ProSHADE_settings::useSameBounds
bool useSameBounds
Switch to say that the same boundaries as used for the first should be used for all input maps.
Definition: ProSHADE_settings.hpp:99
ProSHADE_settings::setMasking
void setMasking(bool mask)
Sets the requested map masking decision value in the appropriate variable.
Definition: ProSHADE.cpp:693
ProSHADE_settings::pdbBFactorNewVal
proshade_double pdbBFactorNewVal
Change all PDB B-factors to this value (for smooth maps).
Definition: ProSHADE_settings.hpp:56
ProSHADE_settings::setVariablesLeftOnAuto
void setVariablesLeftOnAuto(void)
Function to determine general values that the user left on auto-determination.
Definition: ProSHADE.cpp:506
ProSHADE_settings::noIntegrationSpeedup
bool noIntegrationSpeedup
This option turns off the integration speedup (only using abscissas and weights up to appropriate l f...
Definition: ProSHADE_settings.hpp:72
ProSHADE_settings::removeWaters
bool removeWaters
Should all waters be removed from input PDB files?
Definition: ProSHADE_settings.hpp:45
ProSHADE_settings::setResolution
void setResolution(proshade_single resolution)
Sets the requested resolution in the appropriate variable.
Definition: ProSHADE.cpp:552
ProSHADE_settings::printSettings
void printSettings(void)
This function prints the current values in the settings object.
Definition: ProSHADE.cpp:2716
ProSHADE_settings::fastISearch
bool fastISearch
Should FSC be computed for all possible I matches, or just for the best one according to FR?
Definition: ProSHADE_settings.hpp:142
ProSHADE_settings::enLevMatrixPowerWeight
proshade_double enLevMatrixPowerWeight
If RRP matrices shell position is to be weighted by putting the position as an exponent,...
Definition: ProSHADE_settings.hpp:118
ProSHADE_settings::setNormalisation
void setNormalisation(bool normalise)
Sets the requested map normalisation value in the appropriate variable.
Definition: ProSHADE.cpp:592
ProSHADE_settings::setEnergyLevelsComputation
void setEnergyLevelsComputation(bool enLevDesc)
Sets whether the energy level distance descriptor should be computed.
Definition: ProSHADE.cpp:1230
ProSHADE_settings::computeEnergyLevelsDesc
bool computeEnergyLevelsDesc
If true, the energy levels descriptor will be computed, otherwise all its computations will be omitte...
Definition: ProSHADE_settings.hpp:117