|
votca 2026-dev
|
The periodic Ewald background, as a Region. More...
#include <ewaldregion.h>


Public Member Functions | |
| EwaldRegion (Index id, Logger &log) | |
| ~EwaldRegion () override=default | |
| std::string | identify () const override |
| void | Initialize (const tools::Property &prop) override |
| bool | Converged () const override |
| void | Evaluate (std::vector< std::unique_ptr< Region > > ®ions) override |
| void | Reset () override |
| Index | size () const override |
| double | charge () const override |
| double | Etotal () const override |
| void | WriteToCpt (CheckpointWriter &w) const override |
| void | ReadFromCpt (CheckpointReader &r) override |
| void | WritePDB (csg::PDBWriter &writer) const override |
| const EwaldRegistry & | Registry () const |
| const EwaldParameters & | Parameters () const |
| double | ApplyFieldTo (std::vector< PolarSegment > &foreground) const |
| void | RegisterForeground (const std::vector< std::pair< Index, Eigen::Vector3d > > &foreground) |
| Eigen::VectorXd | PotentialAt (const std::vector< Eigen::Vector3d > &points) const |
| void | ApplyPotentialTo (std::vector< PolarSegment > &foreground) const |
| Public Member Functions inherited from votca::xtp::Region | |
| Region (Index id, Logger &log) | |
| virtual | ~Region ()=default |
| bool | Successful () const |
| std::string | ErrorMsg () const |
| void | AddResults (tools::Property &prop) const |
| Index | getId () const |
Protected Member Functions | |
| void | AppendResult (tools::Property &prop) const override |
| double | InteractwithQMRegion (const QMRegion &) override |
| double | InteractwithPolarRegion (const PolarRegion &) override |
| double | InteractwithStaticRegion (const StaticRegion &) override |
| double | InteractwithEwaldRegion (const EwaldRegion &) override |
| Protected Member Functions inherited from votca::xtp::Region | |
| std::vector< double > | ApplyInfluenceOfOtherRegions (std::vector< std::unique_ptr< Region > > ®ions) |
Private Member Functions | |
| Eigen::VectorXd | PotentialAtPoints (const std::vector< Eigen::Vector3d > &points) const |
| void | BuildSums (const std::vector< PolarSegment > &fallback) const |
| void | CheckForegroundIsSubset (const std::vector< PolarSegment > &foreground) const |
Private Attributes | |
| std::unique_ptr< EwaldRealSpaceSum > | real_sum_ |
| std::unique_ptr< EwaldReciprocalSpaceSum > | recip_sum_ |
| std::unique_ptr< EwaldShapeCorrection > | shape_ |
| std::unique_ptr< EwaldRealSpaceInteractor > | interactor_ |
| std::vector< std::pair< Index, Eigen::Vector3d > > | foreground_copies_ |
| std::vector< std::pair< Index, Eigen::Vector3d > > | built_foreground_ |
| std::vector< std::pair< Index, Eigen::Vector3d > > | registered_foreground_ |
| bool | warned_no_energy_ = false |
| std::string | checkpoint_file_ |
| EwaldRegistry | registry_ |
| EwaldParameters | params_ |
| bool | loaded_ = false |
Additional Inherited Members | |
| Protected Attributes inherited from votca::xtp::Region | |
| bool | info_ = true |
| std::string | errormsg_ = "" |
| Index | id_ = -1 |
| Logger & | log_ |
The periodic Ewald background, as a Region.
The periodic field and potential are implemented (ApplyFieldTo, PotentialAt, ApplyPotentialTo); the background energy is not yet.
This region is unlike the others in three ways, all consequences of the same fact – it represents an environment that was converged once, beforehand, by the ewaldbackground calculator:
The influence in the other direction – this region acting ON a polar or QM region – is implemented by THAT region's InteractwithEwaldRegion, following the existing convention in Region::ApplyInfluenceOfOtherRegions, where each region computes the influence of others upon itself.
Definition at line 74 of file ewaldregion.h.
Definition at line 76 of file ewaldregion.h.
|
overridedefault |
|
overrideprotectedvirtual |
Implements votca::xtp::Region.
Definition at line 151 of file ewaldregion.cc.
| double votca::xtp::EwaldRegion::ApplyFieldTo | ( | std::vector< PolarSegment > & | foreground | ) | const |
Definition at line 433 of file ewaldregion.cc.
| void votca::xtp::EwaldRegion::ApplyPotentialTo | ( | std::vector< PolarSegment > & | foreground | ) | const |
Definition at line 340 of file ewaldregion.cc.
|
private |
Definition at line 238 of file ewaldregion.cc.
|
overridevirtual |
Implements votca::xtp::Region.
Definition at line 87 of file ewaldregion.cc.
|
private |
Definition at line 203 of file ewaldregion.cc.
|
inlineoverridevirtual |
Implements votca::xtp::Region.
Definition at line 84 of file ewaldregion.h.
|
overridevirtual |
Implements votca::xtp::Region.
Definition at line 103 of file ewaldregion.cc.
|
overridevirtual |
Implements votca::xtp::Region.
Definition at line 72 of file ewaldregion.cc.
|
inlineoverridevirtual |
Implements votca::xtp::Region.
Definition at line 79 of file ewaldregion.h.
|
overridevirtual |
Implements votca::xtp::Region.
Definition at line 52 of file ewaldregion.cc.
|
inlineoverrideprotectedvirtual |
Implements votca::xtp::Region.
Definition at line 111 of file ewaldregion.h.
|
inlineoverrideprotectedvirtual |
Implements votca::xtp::Region.
Definition at line 109 of file ewaldregion.h.
|
inlineoverrideprotectedvirtual |
Implements votca::xtp::Region.
Definition at line 108 of file ewaldregion.h.
|
inlineoverrideprotectedvirtual |
Implements votca::xtp::Region.
Definition at line 110 of file ewaldregion.h.
|
inline |
Definition at line 121 of file ewaldregion.h.
| Eigen::VectorXd votca::xtp::EwaldRegion::PotentialAt | ( | const std::vector< Eigen::Vector3d > & | points | ) | const |
Definition at line 321 of file ewaldregion.cc.
|
private |
Definition at line 368 of file ewaldregion.cc.
|
overridevirtual |
Implements votca::xtp::Region.
Definition at line 120 of file ewaldregion.cc.
| void votca::xtp::EwaldRegion::RegisterForeground | ( | const std::vector< std::pair< Index, Eigen::Vector3d > > & | foreground | ) |
Definition at line 174 of file ewaldregion.cc.
|
inline |
Definition at line 116 of file ewaldregion.h.
|
inlineoverridevirtual |
Implements votca::xtp::Region.
Definition at line 89 of file ewaldregion.h.
|
overridevirtual |
Implements votca::xtp::Region.
Definition at line 81 of file ewaldregion.cc.
|
overridevirtual |
Implements votca::xtp::Region.
Definition at line 145 of file ewaldregion.cc.
|
overridevirtual |
Implements votca::xtp::Region.
Definition at line 111 of file ewaldregion.cc.
|
mutableprivate |
Definition at line 247 of file ewaldregion.h.
|
private |
Definition at line 253 of file ewaldregion.h.
|
mutableprivate |
Definition at line 241 of file ewaldregion.h.
|
mutableprivate |
Definition at line 237 of file ewaldregion.h.
|
private |
Definition at line 256 of file ewaldregion.h.
|
private |
Definition at line 255 of file ewaldregion.h.
|
mutableprivate |
Definition at line 234 of file ewaldregion.h.
|
mutableprivate |
Definition at line 235 of file ewaldregion.h.
|
private |
Definition at line 250 of file ewaldregion.h.
|
private |
Definition at line 254 of file ewaldregion.h.
|
mutableprivate |
Definition at line 236 of file ewaldregion.h.
|
mutableprivate |
Definition at line 251 of file ewaldregion.h.