Public Member Functions | Protected Member Functions | List of all members
PLMD::FakeFrame Class Reference

#include <FakeFrame.h>

Inheritance diagram for PLMD::FakeFrame:
Inheritance graph
[legend]

Public Member Functions

 FakeFrame (const ReferenceConfigurationOptions &ro)
 
void read (const PDB &)
 Do all local business for setting the configuration. 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 the distance from the reference configuration. More...
 
std::string getName () const
 Return the name of this metric. More...
 
virtual unsigned getNumberOfReferencePositions () const
 
virtual unsigned getNumberOfReferenceArguments () const
 
virtual void getAtomRequests (std::vector< AtomNumber > &, bool disable_checks=false)
 Retrieve the atoms that are required for this guy. More...
 
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< Vector > & getReferencePositions () const
 These are overwritten in ReferenceArguments and ReferenceAtoms but are required here to make PLMD::distance work. More...
 
virtual const std::vector< double > & getReferenceArguments () const
 
virtual const std::vector< double > & getReferenceMetric ()
 
virtual const std::vector< AtomNumber > & getAbsoluteIndexes ()
 These are overwritten in ReferenceArguments and ReferenceAtoms to make frame copying work. More...
 
virtual const std::vector< std::string > & getArgumentNames ()
 
void extractDisplacementVector (const std::vector< Vector > &pos, const std::vector< Value *> &vals, const std::vector< double > &arg, const bool &nflag, Direction &mydir) const
 Extract a Direction giving you the displacement from some position. More...
 
virtual bool pcaIsEnabledForThisReference ()
 Stuff for pca. More...
 
double projectDisplacementOnVector (const Direction &mydir, const std::vector< Value *> &vals, const std::vector< double > &arg, ReferenceValuePack &mypack) const
 
virtual void setupPCAStorage (ReferenceValuePack &mypack)
 Stuff to setup pca. More...
 
void displaceReferenceConfiguration (const double &weight, Direction &dir)
 Move the reference configuration by an ammount specified using a Direction. More...
 

Protected Member Functions

void error (const std::string &msg)
 Derivatives wrt to the arguments. More...
 

Constructor & Destructor Documentation

◆ FakeFrame()

PLMD::FakeFrame::FakeFrame ( const ReferenceConfigurationOptions ro)
inlineexplicit

Member Function Documentation

◆ calc()

double PLMD::FakeFrame::calc ( const std::vector< Vector > &  pos,
const Pbc pbc,
const std::vector< Value *> &  vals,
const std::vector< double > &  args,
ReferenceValuePack myder,
const bool &  squared 
) const
inlinevirtual

Calculate the distance from the reference configuration.

Implements PLMD::ReferenceConfiguration.

◆ calculate()

double PLMD::ReferenceConfiguration::calculate ( const std::vector< Vector > &  pos,
const Pbc pbc,
const std::vector< Value *> &  vals,
ReferenceValuePack myder,
const bool &  squared = false 
) const
inherited

Calculate the distance from the reference configuration.

◆ checkRead()

void PLMD::ReferenceConfiguration::checkRead ( )
inherited

Check that all the remarks in the pdb have been read in.

◆ copyDerivatives()

void PLMD::ReferenceConfiguration::copyDerivatives ( const ReferenceConfiguration )
inherited

Copy derivatives from one frame to this frame.

◆ displaceReferenceConfiguration()

void PLMD::ReferenceConfiguration::displaceReferenceConfiguration ( const double &  weight,
Direction dir 
)
inherited

Move the reference configuration by an ammount specified using a Direction.

◆ error()

void PLMD::ReferenceConfiguration::error ( const std::string &  msg)
protectedinherited

Derivatives wrt to the arguments.

The virial contribution has to be stored Derivatives wrt to the atoms Crash with an error

◆ extractDisplacementVector()

void PLMD::ReferenceConfiguration::extractDisplacementVector ( const std::vector< Vector > &  pos,
const std::vector< Value *> &  vals,
const std::vector< double > &  arg,
const bool &  nflag,
Direction mydir 
) const
inherited

Extract a Direction giving you the displacement from some position.

◆ getAbsoluteIndexes()

const std::vector< AtomNumber > & PLMD::ReferenceConfiguration::getAbsoluteIndexes ( )
inlinevirtualinherited

These are overwritten in ReferenceArguments and ReferenceAtoms to make frame copying work.

Reimplemented in PLMD::ReferenceAtoms.

◆ getArgumentNames()

const std::vector< std::string > & PLMD::ReferenceConfiguration::getArgumentNames ( )
inlinevirtualinherited

Reimplemented in PLMD::ReferenceArguments.

◆ getArgumentRequests()

virtual void PLMD::ReferenceConfiguration::getArgumentRequests ( std::vector< std::string > &  ,
bool  disable_checks = false 
)
inlinevirtualinherited

Retrieve the arguments that are required for this guy.

Reimplemented in PLMD::ReferenceArguments.

◆ getAtomRequests()

virtual void PLMD::ReferenceConfiguration::getAtomRequests ( std::vector< AtomNumber > &  ,
bool  disable_checks = false 
)
inlinevirtualinherited

Retrieve the atoms that are required for this guy.

Reimplemented in PLMD::ReferenceAtoms.

◆ getName()

std::string PLMD::ReferenceConfiguration::getName ( ) const
inherited

Return the name of this metric.

◆ getNumberOfReferenceArguments()

unsigned PLMD::ReferenceConfiguration::getNumberOfReferenceArguments ( ) const
inlinevirtualinherited

Reimplemented in PLMD::ReferenceArguments.

◆ getNumberOfReferencePositions()

unsigned PLMD::ReferenceConfiguration::getNumberOfReferencePositions ( ) const
inlinevirtualinherited

Reimplemented in PLMD::ReferenceAtoms.

◆ getReferenceArgument()

virtual double PLMD::ReferenceConfiguration::getReferenceArgument ( const unsigned &  i) const
inlinevirtualinherited

Get one of the referene arguments.

Reimplemented in PLMD::ReferenceArguments.

◆ getReferenceArguments()

const std::vector< double > & PLMD::ReferenceConfiguration::getReferenceArguments ( ) const
inlinevirtualinherited

Reimplemented in PLMD::ReferenceArguments.

◆ getReferenceMetric()

const std::vector< double > & PLMD::ReferenceConfiguration::getReferenceMetric ( )
inlinevirtualinherited

Reimplemented in PLMD::ReferenceArguments.

◆ getReferencePositions()

const std::vector< Vector > & PLMD::ReferenceConfiguration::getReferencePositions ( ) const
inlinevirtualinherited

These are overwritten in ReferenceArguments and ReferenceAtoms but are required here to make PLMD::distance work.

Reimplemented in PLMD::ReferenceAtoms.

◆ getWeight()

double PLMD::ReferenceConfiguration::getWeight ( ) const
inlineinherited

Return the weight for this frame.

◆ parse()

template<class T >
bool PLMD::ReferenceConfiguration::parse ( const std::string &  key,
T &  t,
bool  ignore_missing = false 
)
inherited

Return the derivatives of the distance wrt the cell vectors.

This returns false for everything other than DRMSD as these sort of calculations have to be done separately when you use RMSD Parse something from the pdb remarks

◆ parseFlag()

void PLMD::ReferenceConfiguration::parseFlag ( const std::string &  key,
bool &  t 
)
inherited

Parse a flag.

◆ parseVector()

template<class T >
bool PLMD::ReferenceConfiguration::parseVector ( const std::string &  key,
std::vector< T > &  t,
bool  ignore_missing = false 
)
inherited

Parse vector from the pdb remarks.

◆ pcaIsEnabledForThisReference()

virtual bool PLMD::ReferenceConfiguration::pcaIsEnabledForThisReference ( )
inlinevirtualinherited

◆ print() [1/2]

void PLMD::ReferenceConfiguration::print ( OFile ofile,
const double &  time,
const double &  weight,
const double &  lunits,
const double &  old_norm 
)
inherited

Print a pdb file containing the reference configuration.

◆ print() [2/2]

void PLMD::ReferenceConfiguration::print ( OFile ofile,
const std::string &  fmt,
const double &  lunits 
)
inherited

◆ projectDisplacementOnVector()

double PLMD::ReferenceConfiguration::projectDisplacementOnVector ( const Direction mydir,
const std::vector< Value *> &  vals,
const std::vector< double > &  arg,
ReferenceValuePack mypack 
) const
inherited

◆ read()

void PLMD::FakeFrame::read ( const PDB )
inlinevirtual

Do all local business for setting the configuration.

Implements PLMD::ReferenceConfiguration.

◆ set()

void PLMD::ReferenceConfiguration::set ( const PDB pdb)
virtualinherited

Set the final number of arguments.

Set the final number of atoms Set the reference configuration using a PDB

◆ setNamesAndAtomNumbers()

void PLMD::ReferenceConfiguration::setNamesAndAtomNumbers ( const std::vector< AtomNumber > &  numbers,
const std::vector< std::string > &  arg 
)
inherited

Set the atom numbers and the argument names.

◆ setReferenceConfig()

void PLMD::ReferenceConfiguration::setReferenceConfig ( const std::vector< Vector > &  pos,
const std::vector< double > &  arg,
const std::vector< double > &  metric 
)
inherited

Set the reference structure (perhaps should also pass the pbc and align and displace )

◆ setupPCAStorage()

virtual void PLMD::ReferenceConfiguration::setupPCAStorage ( ReferenceValuePack mypack)
inlinevirtualinherited

◆ setWeight()

void PLMD::ReferenceConfiguration::setWeight ( const double &  ww)
inlineinherited

Set the weight for this frame.


The documentation for this class was generated from the following file: