votca 2024-dev
Loading...
Searching...
No Matches
Classes | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | List of all members
votca::csg::RDFCalculator Class Reference

class to calculate distribution functions and cross correlations for inverse monte carlo More...

#include <rdf_calculator.h>

Collaboration diagram for votca::csg::RDFCalculator:
Collaboration graph
[legend]

Classes

struct  group_t
 struct to store collected information for groups (e.g. crosscorrelations) More...
 
struct  interaction_t
 struct to store collected information for interactions More...
 
struct  pair_t
 
class  Worker
 

Public Member Functions

 RDFCalculator ()
 
 ~RDFCalculator ()
 
void Initialize (void)
 
void LoadOptions (const std::string &file)
 load cg definitions file
 
void BeginEvaluate (Topology *top, Topology *top_atom)
 begin coarse graining a trajectory
 
void EndEvaluate ()
 end coarse graining a trajectory
 
void WriteEvery (Index write_every)
 
void DoBlocks (bool do_blocks)
 
void DoVolumeCorrection (bool do_vol_corr)
 
void SetSubvolRadius (double r)
 
double AnalyticVolumeCorrection (double t)
 
std::unique_ptr< CsgApplication::WorkerForkWorker ()
 
void MergeWorker (CsgApplication::Worker *worker_)
 

Protected Types

using group_matrix = Eigen::MatrixXd
 
using pair_matrix = Eigen::Block< group_matrix >
 

Protected Member Functions

interaction_tAddInteraction (Property *p)
 create a new interaction entry based on given options
 
group_tgetGroup (const std::string &name)
 get group by name, creates one if it doesn't exist
 
void WriteDist (const std::string &suffix="")
 
void ClearAverages ()
 
void DoCorrelations (RDFCalculator::Worker *worker)
 update the correlations after interations were processed
 

Protected Attributes

Average< double > avg_vol_
 
Property options_
 the options parsed from cg definition file
 
Index write_every_
 
bool do_blocks_
 
Index nframes_
 
Index nblock_
 
double subvol_rad_
 
Eigen::Vector3d boxc_
 
bool do_vol_corr_
 
std::vector< Property * > bonded_
 list of bonded interactions
 
std::vector< Property * > nonbonded_
 list of non-bonded interactions
 
std::map< std::string, std::unique_ptr< interaction_t > > interactions_
 std::map ineteractionm-name to interaction
 
std::map< std::string, std::unique_ptr< group_t > > groups_
 std::map group-name to group
 
bool processed_some_frames_
 

Detailed Description

class to calculate distribution functions and cross correlations for inverse monte carlo

This class calculates distribution functions as well as cross-correlations for specific groups of interactions based on a given trajectory.

Definition at line 53 of file rdf_calculator.h.

Member Typedef Documentation

◆ group_matrix

using votca::csg::RDFCalculator::group_matrix = Eigen::MatrixXd
protected

Definition at line 85 of file rdf_calculator.h.

◆ pair_matrix

using votca::csg::RDFCalculator::pair_matrix = Eigen::Block<group_matrix>
protected

Definition at line 86 of file rdf_calculator.h.

Constructor & Destructor Documentation

◆ RDFCalculator()

votca::csg::RDFCalculator::RDFCalculator ( )

Definition at line 41 of file rdf_calculator.cc.

◆ ~RDFCalculator()

votca::csg::RDFCalculator::~RDFCalculator ( )
default

Member Function Documentation

◆ AddInteraction()

RDFCalculator::interaction_t * votca::csg::RDFCalculator::AddInteraction ( Property p)
protected

create a new interaction entry based on given options

Definition at line 120 of file rdf_calculator.cc.

◆ AnalyticVolumeCorrection()

double votca::csg::RDFCalculator::AnalyticVolumeCorrection ( double  t)
inline

Definition at line 73 of file rdf_calculator.h.

◆ BeginEvaluate()

void votca::csg::RDFCalculator::BeginEvaluate ( Topology top,
Topology top_atom 
)

begin coarse graining a trajectory

Definition at line 72 of file rdf_calculator.cc.

◆ ClearAverages()

void votca::csg::RDFCalculator::ClearAverages ( )
protected

Definition at line 179 of file rdf_calculator.cc.

◆ DoBlocks()

void votca::csg::RDFCalculator::DoBlocks ( bool  do_blocks)
inline

Definition at line 70 of file rdf_calculator.h.

◆ DoCorrelations()

void votca::csg::RDFCalculator::DoCorrelations ( RDFCalculator::Worker worker)
protected

update the correlations after interations were processed

◆ DoVolumeCorrection()

void votca::csg::RDFCalculator::DoVolumeCorrection ( bool  do_vol_corr)
inline

Definition at line 71 of file rdf_calculator.h.

◆ EndEvaluate()

void votca::csg::RDFCalculator::EndEvaluate ( )

end coarse graining a trajectory

Definition at line 147 of file rdf_calculator.cc.

◆ ForkWorker()

std::unique_ptr< CsgApplication::Worker > votca::csg::RDFCalculator::ForkWorker ( )

Definition at line 362 of file rdf_calculator.cc.

◆ getGroup()

RDFCalculator::group_t * votca::csg::RDFCalculator::getGroup ( const std::string &  name)
protected

get group by name, creates one if it doesn't exist

Definition at line 321 of file rdf_calculator.cc.

◆ Initialize()

void votca::csg::RDFCalculator::Initialize ( void  )

Definition at line 53 of file rdf_calculator.cc.

◆ LoadOptions()

void votca::csg::RDFCalculator::LoadOptions ( const std::string &  file)

load cg definitions file

Definition at line 163 of file rdf_calculator.cc.

◆ MergeWorker()

void votca::csg::RDFCalculator::MergeWorker ( CsgApplication::Worker worker_)

Definition at line 376 of file rdf_calculator.cc.

◆ SetSubvolRadius()

void votca::csg::RDFCalculator::SetSubvolRadius ( double  r)
inline

Definition at line 72 of file rdf_calculator.h.

◆ WriteDist()

void votca::csg::RDFCalculator::WriteDist ( const std::string &  suffix = "")
protected

Definition at line 331 of file rdf_calculator.cc.

◆ WriteEvery()

void votca::csg::RDFCalculator::WriteEvery ( Index  write_every)
inline

Definition at line 69 of file rdf_calculator.h.

Member Data Documentation

◆ avg_vol_

Average<double> votca::csg::RDFCalculator::avg_vol_
protected

Definition at line 83 of file rdf_calculator.h.

◆ bonded_

std::vector<Property *> votca::csg::RDFCalculator::bonded_
protected

list of bonded interactions

Definition at line 132 of file rdf_calculator.h.

◆ boxc_

Eigen::Vector3d votca::csg::RDFCalculator::boxc_
protected

Definition at line 128 of file rdf_calculator.h.

◆ do_blocks_

bool votca::csg::RDFCalculator::do_blocks_
protected

Definition at line 122 of file rdf_calculator.h.

◆ do_vol_corr_

bool votca::csg::RDFCalculator::do_vol_corr_
protected

Definition at line 129 of file rdf_calculator.h.

◆ groups_

std::map<std::string, std::unique_ptr<group_t> > votca::csg::RDFCalculator::groups_
protected

std::map group-name to group

Definition at line 139 of file rdf_calculator.h.

◆ interactions_

std::map<std::string, std::unique_ptr<interaction_t> > votca::csg::RDFCalculator::interactions_
protected

std::map ineteractionm-name to interaction

Definition at line 137 of file rdf_calculator.h.

◆ nblock_

Index votca::csg::RDFCalculator::nblock_
protected

Definition at line 126 of file rdf_calculator.h.

◆ nframes_

Index votca::csg::RDFCalculator::nframes_
protected

Definition at line 125 of file rdf_calculator.h.

◆ nonbonded_

std::vector<Property *> votca::csg::RDFCalculator::nonbonded_
protected

list of non-bonded interactions

Definition at line 134 of file rdf_calculator.h.

◆ options_

Property votca::csg::RDFCalculator::options_
protected

the options parsed from cg definition file

Definition at line 118 of file rdf_calculator.h.

◆ processed_some_frames_

bool votca::csg::RDFCalculator::processed_some_frames_
protected

Definition at line 170 of file rdf_calculator.h.

◆ subvol_rad_

double votca::csg::RDFCalculator::subvol_rad_
protected

Definition at line 127 of file rdf_calculator.h.

◆ write_every_

Index votca::csg::RDFCalculator::write_every_
protected

Definition at line 120 of file rdf_calculator.h.


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