Loading...
Searching...
No Matches
PLMD::ves::LinearBasisSetExpansion Class Reference

#include <LinearBasisSetExpansion.h>

Public Member Functions

 LinearBasisSetExpansion (const std::string &, const double, Communicator &, const std::vector< Value * > &, std::vector< BasisFunctions * > &, CoeffsVector *bias_coeffs_pntr_in=NULL)
 ~LinearBasisSetExpansion ()
double beta () const
CoeffsVectorBiasCoeffs () const
bool biasCutoffActive () const
double calculateReweightFactor () const
double getBasisSetConstant ()
double getBasisSetValue (const std::vector< double > &, const size_t)
void getBasisSetValues (const std::vector< double > &, std::vector< double > &, const bool parallel=true)
double getBeta () const
double getBias (const std::vector< double > &, bool &, const bool parallel=true)
double getBiasAndForces (const std::vector< double > &, bool &, std::vector< double > &)
double getBiasAndForces (const std::vector< double > &, bool &, std::vector< double > &, std::vector< double > &)
std::vector< unsigned int > getGridBins () const
double getKbT () const
unsigned int getNumberOfArguments () const
std::vector< unsigned int > getNumberOfBasisFunctions () const
size_t getNumberOfCoeffs () const
std::vector< Value * > getPntrsToArguments () const
std::vector< BasisFunctions * > getPntrsToBasisFunctions () const
CoeffsVectorgetPntrToBiasCoeffs () const
GridgetPntrToBiasGrid () const
long long int getStepOfLastBiasGridUpdate () const
long long int getStepOfLastBiasWithoutCutoffGridUpdate () const
long long int getStepOfLastFesGridUpdate () const
double kBT () const
void linkAction (Action *)
void linkVesBias (VesBias *)
void readInRestartTargetDistribution (const std::string &)
void resetStepOfLastBiasGridUpdate ()
void resetStepOfLastBiasWithoutCutoffGridUpdate ()
void resetStepOfLastFesGridUpdate ()
void restartTargetDistribution ()
void setBiasMaximumToZero ()
void setBiasMinimumToZero ()
void setGridBins (const std::vector< unsigned int > &)
void setGridBins (const unsigned int)
void setParallel ()
void setSerial ()
void setStepOfLastBiasGridUpdate (long long int step)
void setStepOfLastBiasWithoutCutoffGridUpdate (long long int step)
void setStepOfLastFesGridUpdate (long long int step)
void setupBiasGrid (const bool usederiv=false)
void setupFesGrid ()
void setupFesProjGrid ()
void setupTargetDistribution (TargetDistribution *)
void setupUniformTargetDistribution ()
CoeffsVectorTargetDistAverages () const
void updateBiasGrid ()
void updateBiasWithoutCutoffGrid ()
void updateFesGrid ()
void updateTargetDistribution ()
void writeBiasGridToFile (OFile &, const bool append=false) const
void writeBiasWithoutCutoffGridToFile (OFile &, const bool append=false) const
void writeFesGridToFile (OFile &, const bool append=false) const
void writeFesProjGridToFile (const std::vector< std::string > &, OFile &, const bool append=false) const
void writeLogTargetDistGridToFile (OFile &, const bool append=false) const
void writeTargetDistGridToFile (OFile &, const bool append=false) const
void writeTargetDistProjGridToFile (const std::vector< std::string > &, OFile &, const bool append=false) const
void writeTargetDistributionToFile (const std::string &) const

Static Public Member Functions

static double getBasisSetValue (const std::vector< double > &, const size_t, std::vector< BasisFunctions * > &, CoeffsVector *)
static void getBasisSetValues (const std::vector< double > &, std::vector< double > &, std::vector< BasisFunctions * > &, CoeffsVector *, Communicator *comm_in=NULL)
static double getBiasAndForces (const std::vector< double > &, bool &, std::vector< double > &, std::vector< double > &, std::vector< BasisFunctions * > &, CoeffsVector *, Communicator *comm_in=NULL)
static void registerKeywords (Keywords &keys)

Private Member Functions

 LinearBasisSetExpansion (const LinearBasisSetExpansion &)
void calculateTargetDistAveragesFromGrid (const Grid *)
bool isStaticTargetDistFileOutputActive () const
LinearBasisSetExpansionoperator= (const LinearBasisSetExpansion &)=delete
std::unique_ptr< GridsetupGeneralGrid (const std::string &, const bool usederiv=false)

Private Attributes

Actionaction_pntr_
std::vector< Value * > args_pntrs_
std::vector< BasisFunctions * > basisf_pntrs_
double beta_
CoeffsVectorbias_coeffs_pntr_
std::unique_ptr< Gridbias_grid_pntr_
std::unique_ptr< Gridbias_withoutcutoff_grid_pntr_
std::unique_ptr< Gridfes_grid_pntr_
std::vector< unsigned int > grid_bins_
std::vector< std::string > grid_max_
std::vector< std::string > grid_min_
double kbt_
std::string label_
Gridlog_targetdist_grid_pntr_
Communicatormycomm_
unsigned int nargs_
std::vector< unsigned int > nbasisf_
size_t ncoeffs_
bool serial_
long long int step_of_last_biasgrid_update
long long int step_of_last_biaswithoutcutoffgrid_update
long long int step_of_last_fesgrid_update
std::unique_ptr< CoeffsVectortargetdist_averages_pntr_
std::string targetdist_grid_label_
Gridtargetdist_grid_pntr_
TargetDistributiontargetdist_pntr_
VesBiasvesbias_pntr_

Constructor & Destructor Documentation

◆ LinearBasisSetExpansion() [1/2]

PLMD::ves::LinearBasisSetExpansion::LinearBasisSetExpansion ( const std::string & label,
const double beta_in,
Communicator & cc,
const std::vector< Value * > & args_pntrs_in,
std::vector< BasisFunctions * > & basisf_pntrs_in,
CoeffsVector * bias_coeffs_pntr_in = NULL )
explicit

◆ LinearBasisSetExpansion() [2/2]

PLMD::ves::LinearBasisSetExpansion::LinearBasisSetExpansion ( const LinearBasisSetExpansion & )
explicitprivate

◆ ~LinearBasisSetExpansion()

PLMD::ves::LinearBasisSetExpansion::~LinearBasisSetExpansion ( )

Member Function Documentation

◆ beta()

double PLMD::ves::LinearBasisSetExpansion::beta ( ) const
inline

◆ BiasCoeffs()

CoeffsVector & PLMD::ves::LinearBasisSetExpansion::BiasCoeffs ( ) const
inline

◆ biasCutoffActive()

bool PLMD::ves::LinearBasisSetExpansion::biasCutoffActive ( ) const

◆ calculateReweightFactor()

double PLMD::ves::LinearBasisSetExpansion::calculateReweightFactor ( ) const

◆ calculateTargetDistAveragesFromGrid()

void PLMD::ves::LinearBasisSetExpansion::calculateTargetDistAveragesFromGrid ( const Grid * targetdist_grid_pntr)
private

◆ getBasisSetConstant()

double PLMD::ves::LinearBasisSetExpansion::getBasisSetConstant ( )
inline

◆ getBasisSetValue() [1/2]

double PLMD::ves::LinearBasisSetExpansion::getBasisSetValue ( const std::vector< double > & args_values,
const size_t basisset_index )
inline

◆ getBasisSetValue() [2/2]

double PLMD::ves::LinearBasisSetExpansion::getBasisSetValue ( const std::vector< double > & args_values,
const size_t index,
std::vector< BasisFunctions * > & basisf_pntrs_in,
CoeffsVector * coeffs_pntr_in )
static

◆ getBasisSetValues() [1/2]

void PLMD::ves::LinearBasisSetExpansion::getBasisSetValues ( const std::vector< double > & args_values,
std::vector< double > & basisset_values,
const bool parallel = true )
inline

◆ getBasisSetValues() [2/2]

void PLMD::ves::LinearBasisSetExpansion::getBasisSetValues ( const std::vector< double > & args_values,
std::vector< double > & basisset_values,
std::vector< BasisFunctions * > & basisf_pntrs_in,
CoeffsVector * coeffs_pntr_in,
Communicator * comm_in = NULL )
static

◆ getBeta()

double PLMD::ves::LinearBasisSetExpansion::getBeta ( ) const
inline

◆ getBias()

double PLMD::ves::LinearBasisSetExpansion::getBias ( const std::vector< double > & args_values,
bool & all_inside,
const bool parallel = true )
inline

◆ getBiasAndForces() [1/3]

double PLMD::ves::LinearBasisSetExpansion::getBiasAndForces ( const std::vector< double > & args_values,
bool & all_inside,
std::vector< double > & forces )
inline

◆ getBiasAndForces() [2/3]

double PLMD::ves::LinearBasisSetExpansion::getBiasAndForces ( const std::vector< double > & args_values,
bool & all_inside,
std::vector< double > & forces,
std::vector< double > & coeffsderivs_values )
inline

◆ getBiasAndForces() [3/3]

double PLMD::ves::LinearBasisSetExpansion::getBiasAndForces ( const std::vector< double > & args_values,
bool & all_inside,
std::vector< double > & forces,
std::vector< double > & coeffsderivs_values,
std::vector< BasisFunctions * > & basisf_pntrs_in,
CoeffsVector * coeffs_pntr_in,
Communicator * comm_in = NULL )
static

◆ getGridBins()

std::vector< unsigned int > PLMD::ves::LinearBasisSetExpansion::getGridBins ( ) const
inline

◆ getKbT()

double PLMD::ves::LinearBasisSetExpansion::getKbT ( ) const
inline

◆ getNumberOfArguments()

unsigned int PLMD::ves::LinearBasisSetExpansion::getNumberOfArguments ( ) const
inline

◆ getNumberOfBasisFunctions()

std::vector< unsigned int > PLMD::ves::LinearBasisSetExpansion::getNumberOfBasisFunctions ( ) const
inline

◆ getNumberOfCoeffs()

size_t PLMD::ves::LinearBasisSetExpansion::getNumberOfCoeffs ( ) const
inline

◆ getPntrsToArguments()

std::vector< Value * > PLMD::ves::LinearBasisSetExpansion::getPntrsToArguments ( ) const
inline

◆ getPntrsToBasisFunctions()

std::vector< BasisFunctions * > PLMD::ves::LinearBasisSetExpansion::getPntrsToBasisFunctions ( ) const
inline

◆ getPntrToBiasCoeffs()

CoeffsVector * PLMD::ves::LinearBasisSetExpansion::getPntrToBiasCoeffs ( ) const
inline

◆ getPntrToBiasGrid()

Grid * PLMD::ves::LinearBasisSetExpansion::getPntrToBiasGrid ( ) const
inline

◆ getStepOfLastBiasGridUpdate()

long long int PLMD::ves::LinearBasisSetExpansion::getStepOfLastBiasGridUpdate ( ) const
inline

◆ getStepOfLastBiasWithoutCutoffGridUpdate()

long long int PLMD::ves::LinearBasisSetExpansion::getStepOfLastBiasWithoutCutoffGridUpdate ( ) const
inline

◆ getStepOfLastFesGridUpdate()

long long int PLMD::ves::LinearBasisSetExpansion::getStepOfLastFesGridUpdate ( ) const
inline

◆ isStaticTargetDistFileOutputActive()

bool PLMD::ves::LinearBasisSetExpansion::isStaticTargetDistFileOutputActive ( ) const
private

◆ kBT()

double PLMD::ves::LinearBasisSetExpansion::kBT ( ) const
inline

◆ linkAction()

void PLMD::ves::LinearBasisSetExpansion::linkAction ( Action * action_pntr_in)

◆ linkVesBias()

void PLMD::ves::LinearBasisSetExpansion::linkVesBias ( VesBias * vesbias_pntr_in)

◆ operator=()

LinearBasisSetExpansion & PLMD::ves::LinearBasisSetExpansion::operator= ( const LinearBasisSetExpansion & )
privatedelete

◆ readInRestartTargetDistribution()

void PLMD::ves::LinearBasisSetExpansion::readInRestartTargetDistribution ( const std::string & grid_fname)

◆ registerKeywords()

void PLMD::ves::LinearBasisSetExpansion::registerKeywords ( Keywords & keys)
static

◆ resetStepOfLastBiasGridUpdate()

void PLMD::ves::LinearBasisSetExpansion::resetStepOfLastBiasGridUpdate ( )
inline

◆ resetStepOfLastBiasWithoutCutoffGridUpdate()

void PLMD::ves::LinearBasisSetExpansion::resetStepOfLastBiasWithoutCutoffGridUpdate ( )
inline

◆ resetStepOfLastFesGridUpdate()

void PLMD::ves::LinearBasisSetExpansion::resetStepOfLastFesGridUpdate ( )
inline

◆ restartTargetDistribution()

void PLMD::ves::LinearBasisSetExpansion::restartTargetDistribution ( )

◆ setBiasMaximumToZero()

void PLMD::ves::LinearBasisSetExpansion::setBiasMaximumToZero ( )

◆ setBiasMinimumToZero()

void PLMD::ves::LinearBasisSetExpansion::setBiasMinimumToZero ( )

◆ setGridBins() [1/2]

void PLMD::ves::LinearBasisSetExpansion::setGridBins ( const std::vector< unsigned int > & grid_bins_in)

◆ setGridBins() [2/2]

void PLMD::ves::LinearBasisSetExpansion::setGridBins ( const unsigned int nbins)

◆ setParallel()

void PLMD::ves::LinearBasisSetExpansion::setParallel ( )
inline

◆ setSerial()

void PLMD::ves::LinearBasisSetExpansion::setSerial ( )
inline

◆ setStepOfLastBiasGridUpdate()

void PLMD::ves::LinearBasisSetExpansion::setStepOfLastBiasGridUpdate ( long long int step)
inline

◆ setStepOfLastBiasWithoutCutoffGridUpdate()

void PLMD::ves::LinearBasisSetExpansion::setStepOfLastBiasWithoutCutoffGridUpdate ( long long int step)
inline

◆ setStepOfLastFesGridUpdate()

void PLMD::ves::LinearBasisSetExpansion::setStepOfLastFesGridUpdate ( long long int step)
inline

◆ setupBiasGrid()

void PLMD::ves::LinearBasisSetExpansion::setupBiasGrid ( const bool usederiv = false)

◆ setupFesGrid()

void PLMD::ves::LinearBasisSetExpansion::setupFesGrid ( )

◆ setupFesProjGrid()

void PLMD::ves::LinearBasisSetExpansion::setupFesProjGrid ( )

◆ setupGeneralGrid()

std::unique_ptr< Grid > PLMD::ves::LinearBasisSetExpansion::setupGeneralGrid ( const std::string & label_suffix,
const bool usederiv = false )
private

◆ setupTargetDistribution()

void PLMD::ves::LinearBasisSetExpansion::setupTargetDistribution ( TargetDistribution * targetdist_pntr_in)

◆ setupUniformTargetDistribution()

void PLMD::ves::LinearBasisSetExpansion::setupUniformTargetDistribution ( )

◆ TargetDistAverages()

CoeffsVector & PLMD::ves::LinearBasisSetExpansion::TargetDistAverages ( ) const
inline

◆ updateBiasGrid()

void PLMD::ves::LinearBasisSetExpansion::updateBiasGrid ( )

◆ updateBiasWithoutCutoffGrid()

void PLMD::ves::LinearBasisSetExpansion::updateBiasWithoutCutoffGrid ( )

◆ updateFesGrid()

void PLMD::ves::LinearBasisSetExpansion::updateFesGrid ( )

◆ updateTargetDistribution()

void PLMD::ves::LinearBasisSetExpansion::updateTargetDistribution ( )

◆ writeBiasGridToFile()

void PLMD::ves::LinearBasisSetExpansion::writeBiasGridToFile ( OFile & ofile,
const bool append = false ) const

◆ writeBiasWithoutCutoffGridToFile()

void PLMD::ves::LinearBasisSetExpansion::writeBiasWithoutCutoffGridToFile ( OFile & ofile,
const bool append = false ) const

◆ writeFesGridToFile()

void PLMD::ves::LinearBasisSetExpansion::writeFesGridToFile ( OFile & ofile,
const bool append = false ) const

◆ writeFesProjGridToFile()

void PLMD::ves::LinearBasisSetExpansion::writeFesProjGridToFile ( const std::vector< std::string > & proj_arg,
OFile & ofile,
const bool append = false ) const

◆ writeLogTargetDistGridToFile()

void PLMD::ves::LinearBasisSetExpansion::writeLogTargetDistGridToFile ( OFile & ofile,
const bool append = false ) const

◆ writeTargetDistGridToFile()

void PLMD::ves::LinearBasisSetExpansion::writeTargetDistGridToFile ( OFile & ofile,
const bool append = false ) const

◆ writeTargetDistProjGridToFile()

void PLMD::ves::LinearBasisSetExpansion::writeTargetDistProjGridToFile ( const std::vector< std::string > & proj_arg,
OFile & ofile,
const bool append = false ) const

◆ writeTargetDistributionToFile()

void PLMD::ves::LinearBasisSetExpansion::writeTargetDistributionToFile ( const std::string & filename) const

Member Data Documentation

◆ action_pntr_

Action* PLMD::ves::LinearBasisSetExpansion::action_pntr_
private

◆ args_pntrs_

std::vector<Value*> PLMD::ves::LinearBasisSetExpansion::args_pntrs_
private

◆ basisf_pntrs_

std::vector<BasisFunctions*> PLMD::ves::LinearBasisSetExpansion::basisf_pntrs_
private

◆ beta_

double PLMD::ves::LinearBasisSetExpansion::beta_
private

◆ bias_coeffs_pntr_

CoeffsVector* PLMD::ves::LinearBasisSetExpansion::bias_coeffs_pntr_
private

◆ bias_grid_pntr_

std::unique_ptr<Grid> PLMD::ves::LinearBasisSetExpansion::bias_grid_pntr_
private

◆ bias_withoutcutoff_grid_pntr_

std::unique_ptr<Grid> PLMD::ves::LinearBasisSetExpansion::bias_withoutcutoff_grid_pntr_
private

◆ fes_grid_pntr_

std::unique_ptr<Grid> PLMD::ves::LinearBasisSetExpansion::fes_grid_pntr_
private

◆ grid_bins_

std::vector<unsigned int> PLMD::ves::LinearBasisSetExpansion::grid_bins_
private

◆ grid_max_

std::vector<std::string> PLMD::ves::LinearBasisSetExpansion::grid_max_
private

◆ grid_min_

std::vector<std::string> PLMD::ves::LinearBasisSetExpansion::grid_min_
private

◆ kbt_

double PLMD::ves::LinearBasisSetExpansion::kbt_
private

◆ label_

std::string PLMD::ves::LinearBasisSetExpansion::label_
private

◆ log_targetdist_grid_pntr_

Grid* PLMD::ves::LinearBasisSetExpansion::log_targetdist_grid_pntr_
private

◆ mycomm_

Communicator& PLMD::ves::LinearBasisSetExpansion::mycomm_
private

◆ nargs_

unsigned int PLMD::ves::LinearBasisSetExpansion::nargs_
private

◆ nbasisf_

std::vector<unsigned int> PLMD::ves::LinearBasisSetExpansion::nbasisf_
private

◆ ncoeffs_

size_t PLMD::ves::LinearBasisSetExpansion::ncoeffs_
private

◆ serial_

bool PLMD::ves::LinearBasisSetExpansion::serial_
private

◆ step_of_last_biasgrid_update

long long int PLMD::ves::LinearBasisSetExpansion::step_of_last_biasgrid_update
private

◆ step_of_last_biaswithoutcutoffgrid_update

long long int PLMD::ves::LinearBasisSetExpansion::step_of_last_biaswithoutcutoffgrid_update
private

◆ step_of_last_fesgrid_update

long long int PLMD::ves::LinearBasisSetExpansion::step_of_last_fesgrid_update
private

◆ targetdist_averages_pntr_

std::unique_ptr<CoeffsVector> PLMD::ves::LinearBasisSetExpansion::targetdist_averages_pntr_
private

◆ targetdist_grid_label_

std::string PLMD::ves::LinearBasisSetExpansion::targetdist_grid_label_
private

◆ targetdist_grid_pntr_

Grid* PLMD::ves::LinearBasisSetExpansion::targetdist_grid_pntr_
private

◆ targetdist_pntr_

TargetDistribution* PLMD::ves::LinearBasisSetExpansion::targetdist_pntr_
private

◆ vesbias_pntr_

VesBias* PLMD::ves::LinearBasisSetExpansion::vesbias_pntr_
private

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