 |
ProSHADE
0.7.6.2 (DEC 2021)
Protein Shape Detection
|
Go to the documentation of this file.
26 #ifndef PROSHADE_SETTINGS
27 #define PROSHADE_SETTINGS
129 bool axisErrToleranceDefault;
167 void determineAllSHValues ( proshade_unsign xDim, proshade_unsign yDim, proshade_single xDimAngs,
168 proshade_single yDimAngs, proshade_single zDimAngs );
173 #if defined ( _WIN64 ) || defined ( _WIN32 )
186 #if defined ( _WIN64 ) || defined ( _WIN32 )
187 void __declspec(dllexport)
addStructure ( std::string structure );
188 void __declspec(dllexport)
setResolution ( proshade_single resolution );
189 void __declspec(dllexport)
setPDBBFactor ( proshade_double newBF );
192 void __declspec(dllexport)
setVerbosity ( proshade_signed verbosity );
194 void __declspec(dllexport)
setMaskIQR ( proshade_single noIQRs );
195 void __declspec(dllexport)
setMasking (
bool mask );
204 void __declspec(dllexport)
setBoundsSpace ( proshade_single boundsExSp );
211 void __declspec(dllexport)
setExtraSpace ( proshade_single exSpace );
213 void __declspec(dllexport)
setBoxCentering ( proshade_double xPos, proshade_double yPos, proshade_double zPos );
214 void __declspec(dllexport)
setBandwidth ( proshade_unsign band );
224 void __declspec(dllexport)
setPhaseUsage (
bool phaseUsage );
271 void setBoxCentering ( proshade_double xPos, proshade_double yPos, proshade_double zPos );
305 #if defined ( _WIN64 ) || defined ( _WIN32 )
312 #if defined ( _WIN64 ) || defined ( _WIN32 )
proshade_double noIQRsFromMedianNaivePeak
When doing peak searching, how many IQRs from the median the threshold for peak height should be (in ...
void setOverlayJsonFile(std::string filename)
Sets the filename to which the overlay operations are to be save into.
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.
proshade_unsign maxBandwidth
The bandwidth of spherical harmonics decomposition for the largest sphere.
proshade_unsign integOrder
The order required for full Gauss-Legendre integration between the spheres.
std::string recommendedSymmetryType
The symmetry type that ProSHADE finds the best fitting for the structure. Possible values are "" for ...
std::string rotTrsJSONFile
The filename to which the rotation and translation operations are to be saved into.
void setEnLevShellWeight(proshade_double mPower)
Sets the weight of shell position for the energy levels computation.
bool computeTraceSigmaDesc
If true, the trace sigma descriptor will be computed, otherwise all its computations will be omitted.
bool findSymCentre
Should phase-less map be used to determine centre of symmetry?
void setTraceSigmaComputation(bool trSigVal)
Sets whether the trace sigma distance descriptor should be computed.
bool computeRotationFuncDesc
If true, the rotation function descriptor will be computed, otherwise all its computations will be om...
void setSameBoundaries(bool sameB)
Sets whether same boundaries should be used in the appropriate variable.
proshade_unsign maxSymmetryFold
The highest symmetry fold to search for.
proshade_unsign taylorSeriesCap
The max limit on the Taylor series expansion done for the abscissas of the Gauss-Legendre integration...
void setMinimumMaskSize(proshade_single minMS)
Sets the requested minimum mask size.
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.
void setAppliedMaskFilename(std::string mskFln)
Sets the filename of the mask data that should be applied to the input map.
proshade_single boundsExtraSpace
The number of extra angstroms to be added to all re-boxing bounds just for safety.
void setBicubicInterpolationSearch(bool bicubPeaks)
Sets the bicubic interpolation on peaks.
void setPeakNaiveNoIQR(proshade_double noIQRs)
Sets the number of IQRs from the median for threshold height a peak needs to be considered a peak.
std::string outName
The file name where the output structure(s) should be saved.
void setMapInversion(bool mInv)
Sets the requested map inversion value in the appropriate variable.
void setMapResolutionChange(bool mrChange)
Sets the requested map resolution change decision in the appropriate variable.
void setPeakNeighboursNumber(proshade_unsign pkS)
Sets the number of neighbour values that have to be smaller for an index to be considered a peak.
std::vector< std::vector< proshade_unsign > > allDetectedDAxes
The vector of all detected dihedral symmetry axes indices in allDetectedCAxes.
proshade_single blurFactor
This is the amount by which B-factors should be increased to create the blurred map for masking.
bool maskMap
Should the map be masked from noise?
proshade_unsign requestedSymmetryFold
The fold of the requested symmetry (only applicable to C and D symmetry types).
std::string requestedSymmetryType
The symmetry type requested by the user. Allowed values are C, D, T, O and I.
void setSphereDistances(proshade_single sphDist)
Sets the requested distance between spheres in the appropriate variable.
void setVerbosity(proshade_signed verbosity)
Sets the requested verbosity in the appropriate variable.
bool removeNegativeDensity
Should the negative density be removed from input files?
void setMinimumPeakForAxis(proshade_double minSP)
Sets the minimum peak height for symmetry axis to be considered.
This header file declares all the functions required for computing various information from the ProSH...
bool saveMask
Should the mask be saved?
proshade_single requestedResolution
The resolution to which the calculations are to be done.
proshade_double minSymPeak
Minimum average peak for symmetry axis to be considered as "real".
void setAxisComparisonThresholdBehaviour(bool behav)
Sets the automatic symmetry axis tolerance decreasing.
void setDetectedSymmetry(proshade_double *sym)
Sets the final detected symmetry axes information.
bool progressiveSphereMapping
If true, each shell will have its own angular resolution dependent on the actual number of map points...
proshade_single maxSphereDists
The distance between spheres in spherical mapping for the largest sphere.
proshade_double symMissPeakThres
Percentage of peaks that could be missing that would warrant starting the missing peaks search proced...
void setPDBBFactor(proshade_double newBF)
Sets the requested B-factor value for PDB files in the appropriate variable.
void addStructure(std::string structure)
Adds a structure file name to the appropriate variable.
void determineIntegrationOrder(proshade_single maxMapRange)
This function determines the integration order for the between spheres integration.
void setMaskIQR(proshade_single noIQRs)
Sets the requested number of IQRs for masking threshold in the appropriate variable.
void setMissingPeakThreshold(proshade_double mpThres)
Sets the threshold for starting the missing peaks procedure.
proshade_single maskingThresholdIQRs
Number of inter-quartile ranges from the median to be used for thresholding the blurred map for maski...
bool useCorrelationMasking
Should the blurring masking (false) or the correlation masking (true) be used?
bool usePhase
If true, the full data will be used, if false, Patterson maps will be used instead and phased data wi...
void setSymmetryCentreSearch(bool sCen)
Sets the symmetry centre search on or off.
void setMapCentering(bool com)
Sets the requested map centering decision value in the appropriate variable.
void setMaskBlurFactor(proshade_single blurFac)
Sets the requested map blurring factor in the appropriate variable.
std::vector< proshade_unsign > allDetectedTAxes
The vector of all detected tetrahedral symmetry axes indices in allDetectedCAxes.
void setPeakThreshold(proshade_double peakThr)
Sets the minimum peak height threshold for axis to be considered possible.
void setPhaseUsage(bool phaseUsage)
Sets whether the phase information will be used.
std::string maskFileName
The filename to which mask should be saved.
std::vector< proshade_unsign > allDetectedOAxes
The vector of all detected octahedral symmetry axes indices in allDetectedCAxes.
proshade_signed verbose
Should the software report on the progress, or just be quiet? Value between -1 (nothing) and 4 (loud)
void setFSCThreshold(proshade_double fscThr)
Sets the minimum FSC threshold for axis to be considered detected.
void setBandwidth(proshade_unsign band)
Sets the requested spherical harmonics bandwidth in the appropriate variable.
proshade_signed messageShift
This value allows shifting the messages to create more readable log for sub-processes.
void setBoundsSpace(proshade_single boundsExSp)
Sets the requested number of angstroms for extra space in re-boxing in the appropriate variable.
bool changeMapResolutionTriLinear
Should maps be re-sampled to obtain the required resolution?
void setOutputFilename(std::string oFileName)
Sets the requested output file name in the appropriate variable.
bool useBiCubicInterpolationOnPeaks
This variable switch decides whether best symmetry is detected from peak indices, or whether bicubic ...
void setAxisComparisonThreshold(proshade_double axThres)
Sets the threshold for matching symmetry axes.
proshade_double peakThresholdMin
The threshold for peak height above which axes are considered possible.
bool forceP1
Should the P1 spacegroup be forced on the input PDB files?
void setTypicalNoiseSize(proshade_single typNoi)
Sets the requested "fake" half-map kernel in the appropriate variable.
ProSHADE_Task task
This custom type variable determines which task to perfom (i.e. symmetry detection,...
void setMaskFilename(std::string mskFln)
Sets where the mask should be saved.
void setCoordExtraSpace(proshade_single exSpace)
Sets the requested co-ordinates extra space value in the appropriate variable.
bool reBoxMap
This switch decides whether re-boxing is needed.
std::string appliedMaskFileName
The filename from which mask data will be read from.
proshade_single coOrdsExtraSpace
This number of Angstroms will be added before and any co-ordinates to make sure there is no atom dire...
bool normaliseMap
Should the map be normalised to mean 0 sd 1?
proshade_single addExtraSpace
If this value is non-zero, this many angstroms of empty space will be added to the internal map.
void setRequestedFold(proshade_unsign val)
Sets the user requested symmetry fold.
This class stores all the settings and is passed to the executive classes instead of a multitude of p...
proshade_double fscThreshold
The threshold for FSC value under which the axis is considered to be likely noise.
void determineBandwidthFromAngle(proshade_double uncertainty)
This function determines the bandwidth for the spherical harmonics computation from the allowed rotat...
void getCommandLineParams(int argc, char **argv)
This function parses the command line arguments into the settings object.
void setMapReboxing(bool reBx)
Sets whether re-boxing needs to be done in the appropriate variable.
void setRecommendedSymmetry(std::string val)
Sets the ProSHADE detected symmetry type.
void setMaxSymmetryFold(proshade_unsign maxFold)
Sets the maximum symmetry fold (well, the maximum prime symmetry fold).
proshade_single correlationKernel
This value in Angstrom will be used as the kernel for the map-FHM correlation computation.
void setNegativeDensity(bool nDens)
Sets the internal variable deciding whether input files negative density should be removed.
bool invertMap
Should the map be inverted? Only use this if you think you have the wrong hand in your map.
void setTaylorSeriesCap(proshade_unsign tayCap)
Sets the requested Taylor series cap for the Gauss-Legendre integration in the appropriate variable.
std::vector< proshade_double > centrePosition
The position of the centre of the map in "real space" co-ordinates.
proshade_signed boundsSimilarityThreshold
Number of indices which can be added just to make sure same size in indices is achieved.
void setCorrelationMasking(bool corMask)
Sets the requested map masking type in the appropriate variable.
void setProgressiveSphereMapping(bool progSphMap)
Sets the requested sphere mapping value settings approach in the appropriate variable.
bool changeMapResolution
Should maps be re-sampled to obtain the required resolution?
void setIntegrationOrder(proshade_unsign intOrd)
Sets the requested order for the Gauss-Legendre integration in the appropriate variable.
void setRotationFunctionComputation(bool rotfVal)
Sets whether the rotation function distance descriptor should be computed.
proshade_double rotationUncertainty
Alternative to bandwidth - the angle in degrees to which the rotation function accuracy should be com...
~ProSHADE_settings(void)
Destructor for the ProSHADE_settings class.
void setOverlaySaveFile(std::string filename)
Sets the filename to which the overlay structure is to be save into.
std::string overlayStructureName
The filename to which the rotated and translated moving structure is to be saved.
void determineBandwidth(proshade_unsign circumference)
This function determines the bandwidth for the spherical harmonics computation.
bool moveToCOM
Logical value stating whether the structure should be moved to have its Centre Of Mass (COM) in the m...
proshade_unsign peakNeighbours
Number of points in any direction that have to be lower than the considered index in order to conside...
proshade_double smoothingFactor
This factor decides how small the group sizes should be - larger factor means more smaller groups.
void setFourierWeightsFilename(std::string fWgFln)
Sets the filename of the mask data that should be applied to the input map.
proshade_single halfMapKernel
This value in Angstrom will be used as the kernel for the "fake half-map" computation.
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...
void determineSphereDistances(proshade_single maxMapRange)
This function determines the sphere distances for sphere mapping.
void setGroupingSmoothingFactor(proshade_double smFact)
Sets the grouping smoothing factor into the proper variable.
void setRequestedSymmetry(std::string val)
Sets the user requested symmetry type.
void setExtraSpace(proshade_single exSpace)
Sets the requested map extra space value in the appropriate variable.
std::vector< proshade_unsign > allDetectedIAxes
The vector of all detected icosahedral symmetry axes indices in allDetectedCAxes.
proshade_signed * forceBounds
These will be the boundaries to be forced upon the map.
std::string fourierWeightsFileName
The filename from which Fourier weights data will be read from.
std::vector< proshade_double * > detectedSymmetry
The vector of detected symmetry axes.
proshade_unsign recommendedSymmetryFold
The fold of the recommended symmetry C or D type, 0 otherwise.
std::vector< std::string > inputFiles
This vector contains the filenames of all input structure files.
void setMapResolutionChangeTriLinear(bool mrChange)
Sets the requested map resolution change decision using tri-linear interpolation in the appropriate v...
void setMaskSaving(bool savMsk)
Sets whether the mask should be saved.
ProSHADE_settings(void)
Contructor for the ProSHADE_settings class.
bool firstModelOnly
Shoud only the first PDB model be used, or should all models be used?
void setBoundsThreshold(proshade_signed boundsThres)
Sets the threshold for number of indices difference acceptable to make index sizes same in the approp...
proshade_double axisErrTolerance
Allowed error on vector axis in in dot product ( acos ( 1 - axErr ) is the allowed difference in radi...
bool useSameBounds
Switch to say that the same boundaries as used for the first should be used for all input maps.
void setMasking(bool mask)
Sets the requested map masking decision value in the appropriate variable.
proshade_double pdbBFactorNewVal
Change all PDB B-factors to this value (for smooth maps).
void setRecommendedFold(proshade_unsign val)
Sets the ProSHADE detected symmetry fold.
void setVariablesLeftOnAuto(void)
Function to determine general values that the user left on auto-determination.
bool removeWaters
Should all waters be removed from input PDB files?
void setResolution(proshade_single resolution)
Sets the requested resolution in the appropriate variable.
std::vector< std::vector< proshade_double > > allDetectedCAxes
The vector of all detected cyclic symmetry axes.
void printSettings(void)
This function prints the current values in the settings object.
bool fastISearch
Should FSC be computed for all possible I matches, or just for the best one according to FR?
proshade_double enLevMatrixPowerWeight
If RRP matrices shell position is to be weighted by putting the position as an exponent,...
void setNormalisation(bool normalise)
Sets the requested map normalisation value in the appropriate variable.
void setEnergyLevelsComputation(bool enLevDesc)
Sets whether the energy level distance descriptor should be computed.
bool computeEnergyLevelsDesc
If true, the energy levels descriptor will be computed, otherwise all its computations will be omitte...