#include <MultiDomainRMSD.h>
Public Member Functions | |
MultiDomainRMSD (const ReferenceConfigurationOptions &ro) | |
~MultiDomainRMSD () | |
void | read (const PDB &) |
Read in the input from a pdb. More... | |
void | setReferenceAtoms (const std::vector< Vector > &conf, const std::vector< double > &align_in, const std::vector< double > &displace_in) |
Set the input from an analysis object (don't know how this will work yet so currently just a plumed_error) More... | |
double | calc (const std::vector< Vector > &pos, const Pbc &pbc, const std::vector< Value * > &vals, const std::vector< double > &arg, ReferenceValuePack &myder, const bool &squared) const |
Calculate. More... | |
double | calculate (const std::vector< Vector > &pos, const Pbc &pbc, ReferenceValuePack &myder, const bool &squared) const |
bool | pcaIsEnabledForThisReference () |
Stuff for pca. More... | |
double | projectAtomicDisplacementOnVector (const unsigned &iv, const Matrix< Vector > &vecs, const std::vector< Vector > &pos, ReferenceValuePack &mypack) const |
void | setupPCAStorage (ReferenceValuePack &mypack) |
Stuff to setup pca. More... | |
unsigned | getNumberOfReferencePositions () const |
This returns the number of reference atom positions. More... | |
unsigned | getAtomIndex (const unsigned &) const |
This allows us to use a single pos array with RMSD objects using different atom indexes. More... | |
virtual void | getAtomRequests (std::vector< AtomNumber > &, bool disable_checks=false) |
Get the atoms required (additional checks are required when we have multiple domains) More... | |
void | setAtomNumbers (const std::vector< AtomNumber > &numbers) |
Set the indices of the reference atoms. More... | |
void | printAtoms (OFile &ofile, const double &lunits) const |
Print the atomic positions. More... | |
const std::vector< AtomNumber > & | getAbsoluteIndexes () |
Return all atom indexes. More... | |
unsigned | getNumberOfAtoms () const |
This returns how many atoms there should be. More... | |
std::string | getName () const |
Return the name of this metric. More... | |
virtual unsigned | getNumberOfReferenceArguments () const |
virtual void | getArgumentRequests (std::vector< std::string > &, bool disable_checks=false) |
Retrieve the arguments that are required for this guy. More... | |
virtual void | set (const PDB &) |
Set the final number of arguments. More... | |
void | setWeight (const double &ww) |
Set the weight for this frame. More... | |
double | getWeight () const |
Return the weight for this frame. More... | |
double | calculate (const std::vector< Vector > &pos, const Pbc &pbc, const std::vector< Value * > &vals, ReferenceValuePack &myder, const bool &squared=false) const |
Calculate the distance from the reference configuration. More... | |
template<class T > | |
bool | parse (const std::string &key, T &t, bool ignore_missing=false) |
Return the derivatives of the distance wrt the cell vectors. More... | |
template<class T > | |
bool | parseVector (const std::string &key, std::vector< T > &t, bool ignore_missing=false) |
Parse vector from the pdb remarks. More... | |
void | parseFlag (const std::string &key, bool &t) |
Parse a flag. More... | |
void | checkRead () |
Check that all the remarks in the pdb have been read in. More... | |
void | copyDerivatives (const ReferenceConfiguration *) |
Copy derivatives from one frame to this frame. More... | |
void | setNamesAndAtomNumbers (const std::vector< AtomNumber > &numbers, const std::vector< std::string > &arg) |
Set the atom numbers and the argument names. More... | |
void | setReferenceConfig (const std::vector< Vector > &pos, const std::vector< double > &arg, const std::vector< double > &metric) |
Set the reference structure (perhaps should also pass the pbc and align and displace ) More... | |
void | print (OFile &ofile, const double &time, const double &weight, const double &lunits, const double &old_norm) |
Print a pdb file containing the reference configuration. More... | |
void | print (OFile &ofile, const std::string &fmt, const double &lunits) |
virtual double | getReferenceArgument (const unsigned &i) const |
Get one of the referene arguments. More... | |
virtual const std::vector< double > & | getReferenceArguments () |
virtual const std::vector< double > & | getReferenceMetric () |
virtual const std::vector< std::string > & | getArgumentNames () |
bool | isDirection () const |
Stuff for sanity checks on distance. More... | |
Protected Member Functions | |
void | readAtomsFromPDB (const PDB &) |
Read in the atoms from the pdb file. More... | |
void | setAtomIndices (const std::vector< AtomNumber > &atomnumbers) |
Add atom indices to list. More... | |
bool | parseAtomList (const std::string &, std::vector< unsigned > &) |
Read a list of atoms from the pdb input file. More... | |
const std::vector< double > & | getAlign () const |
Get the vector of alignment weights. More... | |
const std::vector< double > & | getDisplace () const |
Get the vector of displacement weights. More... | |
Vector | getReferencePosition (const unsigned &iatom) const |
Get the position of the ith atom. More... | |
const std::vector< Vector > & | getReferencePositions () const |
Get the reference positions. More... | |
void | singleDomainRequests (std::vector< AtomNumber > &, bool disable_checks) |
Add derivatives to iatom th atom in list. More... | |
void | error (const std::string &msg) |
Derivatives wrt to the arguments. More... | |
Private Attributes | |
std::string | ftype |
The type of RMSD we are using. More... | |
std::vector< double > | weights |
The weight of a block. More... | |
std::vector< unsigned > | blocks |
Blocks containing start and end points for all the domains. More... | |
std::vector< SingleDomainRMSD * > | domains |
Each of the domains we are calculating the distance from. More... | |
|
explicit |
PLMD::MultiDomainRMSD::~MultiDomainRMSD | ( | ) |
|
virtual |
Calculate.
Implements PLMD::ReferenceConfiguration.
double PLMD::MultiDomainRMSD::calculate | ( | const std::vector< Vector > & | pos, |
const Pbc & | pbc, | ||
ReferenceValuePack & | myder, | ||
const bool & | squared | ||
) | const |
|
inherited |
Calculate the distance from the reference configuration.
|
inherited |
Check that all the remarks in the pdb have been read in.
|
inherited |
Copy derivatives from one frame to this frame.
|
protectedinherited |
Derivatives wrt to the arguments.
The virial contribution has to be stored Derivatives wrt to the atoms Crash with an error
|
inlinevirtualinherited |
Return all atom indexes.
Reimplemented from PLMD::ReferenceConfiguration.
|
inlineprotectedinherited |
Get the vector of alignment weights.
|
inlinevirtualinherited |
Reimplemented in PLMD::ReferenceArguments.
|
inlinevirtualinherited |
Retrieve the arguments that are required for this guy.
Reimplemented in PLMD::ReferenceArguments.
|
inlineinherited |
This allows us to use a single pos array with RMSD objects using different atom indexes.
|
virtualinherited |
Get the atoms required (additional checks are required when we have multiple domains)
Reimplemented from PLMD::ReferenceConfiguration.
|
inlineprotectedinherited |
Get the vector of displacement weights.
|
inherited |
Return the name of this metric.
|
inlineinherited |
This returns how many atoms there should be.
|
inlinevirtualinherited |
Reimplemented in PLMD::ReferenceArguments.
|
inlinevirtualinherited |
This returns the number of reference atom positions.
Reimplemented from PLMD::ReferenceConfiguration.
|
inlinevirtualinherited |
Get one of the referene arguments.
Reimplemented in PLMD::ReferenceArguments.
|
inlinevirtualinherited |
Reimplemented in PLMD::ReferenceArguments.
|
inlinevirtualinherited |
Reimplemented in PLMD::ReferenceArguments.
|
inlineprotectedinherited |
Get the position of the ith atom.
|
inlineprotectedvirtualinherited |
Get the reference positions.
Reimplemented from PLMD::ReferenceConfiguration.
|
inlineinherited |
Return the weight for this frame.
|
inherited |
Stuff for sanity checks on distance.
|
inherited |
|
protectedinherited |
Read a list of atoms from the pdb input file.
|
inherited |
Parse a flag.
|
inherited |
Parse vector from the pdb remarks.
|
virtual |
Stuff for pca.
Reimplemented from PLMD::ReferenceConfiguration.
|
inherited |
Print a pdb file containing the reference configuration.
|
inherited |
|
inherited |
Print the atomic positions.
|
virtual |
Reimplemented from PLMD::ReferenceConfiguration.
|
virtual |
Read in the input from a pdb.
Implements PLMD::ReferenceConfiguration.
|
protectedinherited |
Read in the atoms from the pdb file.
|
virtualinherited |
Set the final number of arguments.
Set the final number of atoms Set the reference configuration using a PDB
|
protectedinherited |
Add atom indices to list.
|
inherited |
Set the indices of the reference atoms.
|
inherited |
Set the atom numbers and the argument names.
|
virtual |
Set the input from an analysis object (don't know how this will work yet so currently just a plumed_error)
Implements PLMD::ReferenceAtoms.
|
inherited |
Set the reference structure (perhaps should also pass the pbc and align and displace )
|
virtual |
Stuff to setup pca.
Reimplemented from PLMD::ReferenceConfiguration.
|
inlineinherited |
Set the weight for this frame.
|
protectedinherited |
Add derivatives to iatom th atom in list.
Get the atomic derivatives on the ith atom in the list Add derivatives to the viral This does the checks that are always required
|
private |
Blocks containing start and end points for all the domains.
|
private |
Each of the domains we are calculating the distance from.
|
private |
The type of RMSD we are using.
|
private |
The weight of a block.
Hosted by GitHub | 1.8.10 |