Xmipp
v3.23.11-Nereus
|
Classes | |
struct | pdbInfo |
class | Atom |
class | PDBPhantom |
class | RichAtom |
class | PDBRichPhantom |
class | AtomInterpolator |
Functions | |
int | atomCharge (const std::string &atom) |
double | atomRadius (const std::string &atom) |
double | atomCovalentRadius (const std::string &atom) |
void | computePDBgeometry (const std::string &fnPDB, Matrix1D< double > ¢erOfMass, Matrix1D< double > &limit0, Matrix1D< double > &limitF, const std::string &intensityColumn) |
void | applyGeometryToPDBFile (const std::string &fn_in, const std::string &fn_out, const Matrix2D< double > &A, bool centerPDB=true, const std::string &intensityColumn="occupancy") |
void | analyzePDBAtoms (const FileName &fn_pdb, const std::string &typeOfAtom, int &numberOfAtoms, pdbInfo &at_pos) |
void | atomDescriptors (const std::string &atom, Matrix1D< double > &descriptors) |
double | electronFormFactorFourier (double f, const Matrix1D< double > &descriptors) |
double | electronFormFactorRealSpace (double r, const Matrix1D< double > &descriptors) |
void | atomRadialProfile (int M, double T, const std::string &atom, Matrix1D< double > &profile) |
void | atomProjectionRadialProfile (int M, const Matrix1D< double > &profileCoefficients, Matrix1D< double > &projectionProfile) |
void | projectPDB (const PDBPhantom &phantomPDB, const AtomInterpolator &interpolator, Projection &proj, int Ydim, int Xdim, double rot, double tilt, double psi) |
void | distanceHistogramPDB (const PDBPhantom &phantomPDB, size_t Nnearest, double maxDistance, int Nbins, Histogram1D &hist) |
void analyzePDBAtoms | ( | const FileName & | fn_pdb, |
const std::string & | typeOfAtom, | ||
int & | numberOfAtoms, | ||
pdbInfo & | at_pos | ||
) |
ANALYZEPDBDATA takes as input a filename of a pdb file (atomic model) and selects only the typeOfAtom, (for instance the C-alpha atoms) storing the atom positions, b- factor, the residue of each atom, and the covalent radiues in a struct vector at_pos. Also the number of atoms is kept.
Definition at line 64 of file pdb.cpp.
void applyGeometryToPDBFile | ( | const std::string & | fn_in, |
const std::string & | fn_out, | ||
const Matrix2D< double > & | A, | ||
bool | centerPDB = true , |
||
const std::string & | intensityColumn = "occupancy" |
||
) |
Apply geometry transformation to an input PDB. The result is written in the output PDB. Set centerPDB if you want to compute the center of mass first and apply the transformation after centering the PDB.
Definition at line 294 of file pdb.cpp.
int atomCharge | ( | const std::string & | atom | ) |
double atomCovalentRadius | ( | const std::string & | atom | ) |
Returns the covalent radius of an atom. Returns 0 if the atom is not within the short list (H, C, N, O, S, P, Fe) of valid atoms. The radius data is taken from http://www.webelements.com as the empirical radius.
void atomDescriptors | ( | const std::string & | atom, |
Matrix1D< double > & | descriptors | ||
) |
Description of the electron scattering factors. The returned descriptor is descriptor(0)=Z (number of electrons of the atom), descriptor(1-5)=a1-5, descriptor(6-10)=b1-5. The electron scattering factor at a frequency f (Angstroms^-1) is computed as f_el(f)=sum_i(ai exp(-bi*x^2)). Use the function electronFormFactorFourier or
See Peng, Ren, Dudarev, Whelan. Robust parameterization of elastic and absorptive electron atomic scattering factors. Acta Cryst. A52: 257-276 (1996). Table 3 and equation 3.
Definition at line 883 of file pdb.cpp.
void atomProjectionRadialProfile | ( | int | M, |
const Matrix1D< double > & | profileCoefficients, | ||
Matrix1D< double > & | projectionProfile | ||
) |
Atom projection radial profile. Returns the radial profile of the atom described by its profileCoefficients (Bspline coefficients).
void atomRadialProfile | ( | int | M, |
double | T, | ||
const std::string & | atom, | ||
Matrix1D< double > & | profile | ||
) |
Atom radial profile. Returns the radial profile of a given atom, i.e., the electron scattering factor convolved with a suitable low pass filter for sampling the volume at a sampling rate M*T. The radial profile is sampled at T Angstroms/pixel.
double atomRadius | ( | const std::string & | atom | ) |
Returns the radius of an atom. Returns 0 if the atom is not within the short list (H, C, N, O, S, P, Fe) of valid atoms.
The radius data is taken from http://www.webelements.com as the empirical radius.
Definition at line 168 of file pdb.cpp.
void computePDBgeometry | ( | const std::string & | fnPDB, |
Matrix1D< double > & | centerOfMass, | ||
Matrix1D< double > & | limit0, | ||
Matrix1D< double > & | limitF, | ||
const std::string & | intensityColumn | ||
) |
Compute the center of mass and limits of a PDB file. The intensity column is used only for the pseudoatoms. It specifies from which column we should read the intensity. Valid columns are Bfactor or occupancy.
Definition at line 238 of file pdb.cpp.
void distanceHistogramPDB | ( | const PDBPhantom & | phantomPDB, |
size_t | Nnearest, | ||
double | maxDistance, | ||
int | Nbins, | ||
Histogram1D & | hist | ||
) |
Compute distance histogram of a PDB phantom. Consider the distance between each atom and its N nearest neighbours. Then, compute the histogram of these distances with Nbin samples.
Definition at line 1627 of file pdb.cpp.
double electronFormFactorFourier | ( | double | f, |
const Matrix1D< double > & | descriptors | ||
) |
double electronFormFactorRealSpace | ( | double | r, |
const Matrix1D< double > & | descriptors | ||
) |
void projectPDB | ( | const PDBPhantom & | phantomPDB, |
const AtomInterpolator & | interpolator, | ||
Projection & | proj, | ||
int | Ydim, | ||
int | Xdim, | ||
double | rot, | ||
double | tilt, | ||
double | psi | ||
) |
Project PDB. Project the PDB following a certain projection direction.
Definition at line 1603 of file pdb.cpp.