votca 2024-dev
Loading...
Searching...
No Matches
Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes | List of all members
votca::xtp::PolarRegion Class Reference

#include <polarregion.h>

Inheritance diagram for votca::xtp::PolarRegion:
Inheritance graph
[legend]
Collaboration diagram for votca::xtp::PolarRegion:
Collaboration graph
[legend]

Public Member Functions

 PolarRegion (Index id, Logger &log)
 
std::string identify () const override
 
void Initialize (const tools::Property &prop) override
 
bool Converged () const override
 
void Evaluate (std::vector< std::unique_ptr< Region > > &regions) override
 
void Reset () override
 
double Etotal () const override
 
void WriteToCpt (CheckpointWriter &w) const override
 
void ReadFromCpt (CheckpointReader &r) override
 
- Public Member Functions inherited from votca::xtp::MMRegion< PolarSegment >
 MMRegion (Index id, Logger &log)
 
void WriteToCpt (CheckpointWriter &w) const override
 
void ReadFromCpt (CheckpointReader &r) override
 
Index size () const override
 
void Initialize (const tools::Property &prop) override=0
 
bool Converged () const override=0
 
void Evaluate (std::vector< std::unique_ptr< Region > > &regions) override=0
 
std::string identify () const override=0
 
const PolarSegmentoperator[] (Index index) const
 
PolarSegmentoperator[] (Index index)
 
std::vector< PolarSegment >::iterator begin ()
 
std::vector< PolarSegment >::const_iterator begin () const
 
std::vector< PolarSegment >::iterator end ()
 
std::vector< PolarSegment >::const_iterator end () const
 
double Etotal () const override=0
 
void Reset () override=0
 
double charge () const override
 
void WritePDB (csg::PDBWriter &writer) const override
 
void push_back (const PolarSegment &seg)
 
- Public Member Functions inherited from votca::xtp::Region
 Region (Index id, Logger &log)
 
virtual ~Region ()=default
 
virtual void WriteToCpt (CheckpointWriter &w) const =0
 
virtual void ReadFromCpt (CheckpointReader &r)=0
 
virtual void Initialize (const tools::Property &prop)=0
 
virtual bool Converged () const =0
 
virtual void Evaluate (std::vector< std::unique_ptr< Region > > &regions)=0
 
virtual Index size () const =0
 
virtual std::string identify () const =0
 
virtual void WritePDB (csg::PDBWriter &writer) const =0
 
virtual void Reset ()=0
 
virtual double charge () const =0
 
bool Successful () const
 
std::string ErrorMsg () const
 
void AddResults (tools::Property &prop) const
 
Index getId () const
 
virtual double Etotal () const =0
 

Protected Member Functions

void AppendResult (tools::Property &prop) const override
 
double InteractwithQMRegion (const QMRegion &region) override
 
double InteractwithPolarRegion (const PolarRegion &region) override
 
double InteractwithStaticRegion (const StaticRegion &region) override
 
void AppendResult (tools::Property &prop) const override=0
 
double InteractwithQMRegion (const QMRegion &region) override=0
 
double InteractwithPolarRegion (const PolarRegion &region) override=0
 
double InteractwithStaticRegion (const StaticRegion &region) override=0
 
- Protected Member Functions inherited from votca::xtp::Region
std::vector< double > ApplyInfluenceOfOtherRegions (std::vector< std::unique_ptr< Region > > &regions)
 
virtual void AppendResult (tools::Property &prop) const =0
 
virtual double InteractwithQMRegion (const QMRegion &region)=0
 
virtual double InteractwithPolarRegion (const PolarRegion &region)=0
 
virtual double InteractwithStaticRegion (const StaticRegion &region)=0
 

Private Member Functions

void CalcInducedDipoles ()
 
double StaticInteraction ()
 
void PolarInteraction_scf ()
 
double PolarEnergy_extern () const
 
eeInteractor::E_terms PolarEnergy () const
 
Index CalcPolDoF () const
 
Eigen::VectorXd CalcInducedDipoleInsideSegments () const
 
Eigen::VectorXd ReadInducedDipolesFromLastIteration () const
 
Eigen::VectorXd CalcInducedDipolesViaPCG (const Eigen::VectorXd &initial_guess)
 
void WriteInducedDipolesToSegments (const Eigen::VectorXd &x)
 

Private Attributes

hist< Energy_termsE_hist_
 
double deltaE_ = 1e-5
 
double deltaD_ = 1e-5
 
Index max_iter_ = 100
 
double exp_damp_ = 0.39
 

Additional Inherited Members

- Public Types inherited from votca::xtp::MMRegion< PolarSegment >
using SegmentType = PolarSegment
 
using iterator = typename std::vector< PolarSegment >::iterator
 
- Protected Attributes inherited from votca::xtp::MMRegion< PolarSegment >
std::vector< PolarSegmentsegments_
 
- Protected Attributes inherited from votca::xtp::Region
bool info_ = true
 
std::string errormsg_ = ""
 
Index id_ = -1
 
Loggerlog_
 

Detailed Description

Definition at line 44 of file polarregion.h.

Constructor & Destructor Documentation

◆ PolarRegion()

votca::xtp::PolarRegion::PolarRegion ( Index  id,
Logger log 
)
inline

Definition at line 46 of file polarregion.h.

Member Function Documentation

◆ AppendResult()

void votca::xtp::PolarRegion::AppendResult ( tools::Property prop) const
overrideprotectedvirtual

Implements votca::xtp::MMRegion< PolarSegment >.

Definition at line 128 of file polarregion.cc.

◆ CalcInducedDipoleInsideSegments()

Eigen::VectorXd votca::xtp::PolarRegion::CalcInducedDipoleInsideSegments ( ) const
private

Definition at line 143 of file polarregion.cc.

◆ CalcInducedDipoles()

void votca::xtp::PolarRegion::CalcInducedDipoles ( )
private

◆ CalcInducedDipolesViaPCG()

Eigen::VectorXd votca::xtp::PolarRegion::CalcInducedDipolesViaPCG ( const Eigen::VectorXd &  initial_guess)
private

Definition at line 181 of file polarregion.cc.

◆ CalcPolDoF()

Index votca::xtp::PolarRegion::CalcPolDoF ( ) const
private

Definition at line 135 of file polarregion.cc.

◆ Converged()

bool votca::xtp::PolarRegion::Converged ( ) const
overridevirtual

Implements votca::xtp::MMRegion< PolarSegment >.

Definition at line 41 of file polarregion.cc.

◆ Etotal()

double votca::xtp::PolarRegion::Etotal ( ) const
inlineoverridevirtual

Implements votca::xtp::MMRegion< PolarSegment >.

Definition at line 58 of file polarregion.h.

◆ Evaluate()

void votca::xtp::PolarRegion::Evaluate ( std::vector< std::unique_ptr< Region > > &  regions)
overridevirtual

Implements votca::xtp::MMRegion< PolarSegment >.

Definition at line 218 of file polarregion.cc.

◆ identify()

std::string votca::xtp::PolarRegion::identify ( ) const
inlineoverridevirtual

Implements votca::xtp::MMRegion< PolarSegment >.

Definition at line 48 of file polarregion.h.

◆ Initialize()

void votca::xtp::PolarRegion::Initialize ( const tools::Property prop)
overridevirtual

Implements votca::xtp::MMRegion< PolarSegment >.

Definition at line 34 of file polarregion.cc.

◆ InteractwithPolarRegion()

double votca::xtp::PolarRegion::InteractwithPolarRegion ( const PolarRegion region)
overrideprotectedvirtual

Implements votca::xtp::MMRegion< PolarSegment >.

Definition at line 308 of file polarregion.cc.

◆ InteractwithQMRegion()

double votca::xtp::PolarRegion::InteractwithQMRegion ( const QMRegion region)
overrideprotectedvirtual

Implements votca::xtp::MMRegion< PolarSegment >.

Definition at line 303 of file polarregion.cc.

◆ InteractwithStaticRegion()

double votca::xtp::PolarRegion::InteractwithStaticRegion ( const StaticRegion region)
overrideprotectedvirtual

Implements votca::xtp::MMRegion< PolarSegment >.

Definition at line 334 of file polarregion.cc.

◆ PolarEnergy()

eeInteractor::E_terms votca::xtp::PolarRegion::PolarEnergy ( ) const
private

Definition at line 79 of file polarregion.cc.

◆ PolarEnergy_extern()

double votca::xtp::PolarRegion::PolarEnergy_extern ( ) const
private

Definition at line 109 of file polarregion.cc.

◆ PolarInteraction_scf()

void votca::xtp::PolarRegion::PolarInteraction_scf ( )
private

◆ ReadFromCpt()

void votca::xtp::PolarRegion::ReadFromCpt ( CheckpointReader r)
overridevirtual

Reimplemented from votca::xtp::MMRegion< PolarSegment >.

Definition at line 356 of file polarregion.cc.

◆ ReadInducedDipolesFromLastIteration()

Eigen::VectorXd votca::xtp::PolarRegion::ReadInducedDipolesFromLastIteration ( ) const
private

Definition at line 157 of file polarregion.cc.

◆ Reset()

void votca::xtp::PolarRegion::Reset ( )
overridevirtual

Implements votca::xtp::MMRegion< PolarSegment >.

Definition at line 120 of file polarregion.cc.

◆ StaticInteraction()

double votca::xtp::PolarRegion::StaticInteraction ( )
private

Definition at line 59 of file polarregion.cc.

◆ WriteInducedDipolesToSegments()

void votca::xtp::PolarRegion::WriteInducedDipolesToSegments ( const Eigen::VectorXd &  x)
private

Definition at line 171 of file polarregion.cc.

◆ WriteToCpt()

void votca::xtp::PolarRegion::WriteToCpt ( CheckpointWriter w) const
overridevirtual

Reimplemented from votca::xtp::MMRegion< PolarSegment >.

Definition at line 352 of file polarregion.cc.

Member Data Documentation

◆ deltaD_

double votca::xtp::PolarRegion::deltaD_ = 1e-5
private

Definition at line 88 of file polarregion.h.

◆ deltaE_

double votca::xtp::PolarRegion::deltaE_ = 1e-5
private

Definition at line 87 of file polarregion.h.

◆ E_hist_

hist<Energy_terms> votca::xtp::PolarRegion::E_hist_
private

Definition at line 86 of file polarregion.h.

◆ exp_damp_

double votca::xtp::PolarRegion::exp_damp_ = 0.39
private

Definition at line 90 of file polarregion.h.

◆ max_iter_

Index votca::xtp::PolarRegion::max_iter_ = 100
private

Definition at line 89 of file polarregion.h.


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