votca 2024.2-dev
Loading...
Searching...
No Matches
votca::xtp::PolarSite Class Referencefinal

Class to represent Atom/Site in electrostatic+polarization. More...

#include <polarsite.h>

Inheritance diagram for votca::xtp::PolarSite:
Collaboration diagram for votca::xtp::PolarSite:

Classes

struct  data
 

Public Member Functions

void WriteData (StaticSite::data &d) const =delete
 
void ReadData (StaticSite::data &d)=delete
 
 PolarSite (Index id, std::string element, Eigen::Vector3d pos)
 
 PolarSite (Index id, std::string element)
 
 ~PolarSite () final=default
 
void setpolarization (const Eigen::Matrix3d &pol) final
 
Eigen::Matrix3d getpolarization () const
 
const Eigen::Matrix3d & getPInv () const
 
Eigen::Vector3d getDipole () const final
 
double getSqrtInvEigenDamp () const
 
void Rotate (const Eigen::Matrix3d &R, const Eigen::Vector3d &ref_pos) final
 
const Eigen::Vector3d & V () const
 
Eigen::Vector3d & V ()
 
const Eigen::Vector3d & V_noE () const
 
Eigen::Vector3d & V_noE ()
 
void Reset ()
 
double deltaQ_V_ext () const
 
double InternalEnergy () const
 
const Eigen::Vector3d & Induced_Dipole () const
 
void setInduced_Dipole (const Eigen::Vector3d &induced_dipole)
 
 PolarSite (const data &d)
 
double DipoleChange () const
 
void WriteData (data &d) const
 
void ReadData (const data &d)
 
std::string identify () const final
 
- Public Member Functions inherited from votca::xtp::StaticSite
 StaticSite (Index id, std::string element, Eigen::Vector3d pos)
 
 StaticSite (Index id, std::string element)
 
 StaticSite (const data &d)
 
 StaticSite (const QMAtom &atom, double charge)
 
virtual ~StaticSite ()=default
 
Index getId () const
 
Index getRank () const
 
const std::string & getElement () const
 
const Eigen::Vector3d & getPos () const
 
void setMultipole (const Vector9d &multipole, Index rank)
 
void setCharge (double q)
 
void setPos (const Eigen::Vector3d &position)
 
void Translate (const Eigen::VectorXd &shift)
 
double getCharge () const
 
const Vector9dQ () const
 
Eigen::Matrix3d CalculateCartesianMultipole () const
 
std::string WriteMpsLine (std::string unit="bohr") const
 
void WriteData (data &d) const
 
void ReadData (const data &d)
 

Static Public Member Functions

static void SetupCptTable (CptTable &table)
 
- Static Public Member Functions inherited from votca::xtp::StaticSite
static Eigen::VectorXd CalculateSphericalMultipole (const Eigen::Matrix3d &quad_cart)
 
static void SetupCptTable (CptTable &table)
 

Private Member Functions

std::string writepolarization () const final
 

Private Attributes

Eigen::Vector3d V_ = Eigen::Vector3d::Zero()
 
Eigen::Vector3d V_noE_ = Eigen::Vector3d::Zero()
 
Eigen::Vector3d induced_dipole_ = Eigen::Vector3d::Zero()
 
Eigen::Matrix3d pinv_ = Eigen::Matrix3d::Zero()
 
double eigendamp_invsqrt_ = 0.0
 

Friends

std::ostream & operator<< (std::ostream &out, const PolarSite &site)
 

Additional Inherited Members

- Protected Member Functions inherited from votca::xtp::StaticSite
 StaticSite ()=default
 
- Protected Attributes inherited from votca::xtp::StaticSite
Index id_ = -1
 
std::string element_ = ""
 
Eigen::Vector3d pos_ = Eigen::Vector3d::Zero()
 
Index rank_ = 0
 
Vector9d Q_ = Vector9d::Zero()
 

Detailed Description

Class to represent Atom/Site in electrostatic+polarization.

The units are atomic units, e.g. Bohr, Hartree.

Definition at line 36 of file polarsite.h.

Constructor & Destructor Documentation

◆ PolarSite() [1/3]

votca::xtp::PolarSite::PolarSite ( Index id,
std::string element,
Eigen::Vector3d pos )

Definition at line 39 of file polarsite.cc.

◆ PolarSite() [2/3]

votca::xtp::PolarSite::PolarSite ( Index id,
std::string element )
inline

Definition at line 45 of file polarsite.h.

◆ ~PolarSite()

votca::xtp::PolarSite::~PolarSite ( )
finaldefault

◆ PolarSite() [3/3]

votca::xtp::PolarSite::PolarSite ( const data & d)

Definition at line 52 of file polarsite.cc.

Member Function Documentation

◆ deltaQ_V_ext()

double votca::xtp::PolarSite::deltaQ_V_ext ( ) const
inline

Definition at line 79 of file polarsite.h.

◆ DipoleChange()

double votca::xtp::PolarSite::DipoleChange ( ) const

◆ getDipole()

Eigen::Vector3d votca::xtp::PolarSite::getDipole ( ) const
finalvirtual

Reimplemented from votca::xtp::StaticSite.

Definition at line 54 of file polarsite.cc.

◆ getPInv()

const Eigen::Matrix3d & votca::xtp::PolarSite::getPInv ( ) const
inline

Definition at line 54 of file polarsite.h.

◆ getpolarization()

Eigen::Matrix3d votca::xtp::PolarSite::getpolarization ( ) const
inline

Definition at line 52 of file polarsite.h.

◆ getSqrtInvEigenDamp()

double votca::xtp::PolarSite::getSqrtInvEigenDamp ( ) const
inline

Definition at line 59 of file polarsite.h.

◆ identify()

std::string votca::xtp::PolarSite::identify ( ) const
inlinefinalvirtual

Reimplemented from votca::xtp::StaticSite.

Definition at line 137 of file polarsite.h.

◆ Induced_Dipole()

const Eigen::Vector3d & votca::xtp::PolarSite::Induced_Dipole ( ) const
inline

Definition at line 85 of file polarsite.h.

◆ InternalEnergy()

double votca::xtp::PolarSite::InternalEnergy ( ) const
inline

Definition at line 81 of file polarsite.h.

◆ ReadData() [1/2]

void votca::xtp::PolarSite::ReadData ( const data & d)

Definition at line 155 of file polarsite.cc.

◆ ReadData() [2/2]

void votca::xtp::PolarSite::ReadData ( StaticSite::data & d)
delete

◆ Reset()

void votca::xtp::PolarSite::Reset ( )
inline

Definition at line 74 of file polarsite.h.

◆ Rotate()

void votca::xtp::PolarSite::Rotate ( const Eigen::Matrix3d & R,
const Eigen::Vector3d & ref_pos )
inlinefinalvirtual

Reimplemented from votca::xtp::StaticSite.

Definition at line 61 of file polarsite.h.

◆ setInduced_Dipole()

void votca::xtp::PolarSite::setInduced_Dipole ( const Eigen::Vector3d & induced_dipole)
inline

Definition at line 86 of file polarsite.h.

◆ setpolarization()

void votca::xtp::PolarSite::setpolarization ( const Eigen::Matrix3d & pol)
finalvirtual

Reimplemented from votca::xtp::StaticSite.

Definition at line 58 of file polarsite.cc.

◆ SetupCptTable()

void votca::xtp::PolarSite::SetupCptTable ( CptTable & table)
static

Definition at line 75 of file polarsite.cc.

◆ V() [1/2]

Eigen::Vector3d & votca::xtp::PolarSite::V ( )
inline

Definition at line 68 of file polarsite.h.

◆ V() [2/2]

const Eigen::Vector3d & votca::xtp::PolarSite::V ( ) const
inline

Definition at line 66 of file polarsite.h.

◆ V_noE() [1/2]

Eigen::Vector3d & votca::xtp::PolarSite::V_noE ( )
inline

Definition at line 72 of file polarsite.h.

◆ V_noE() [2/2]

const Eigen::Vector3d & votca::xtp::PolarSite::V_noE ( ) const
inline

Definition at line 70 of file polarsite.h.

◆ WriteData() [1/2]

void votca::xtp::PolarSite::WriteData ( data & d) const

Definition at line 115 of file polarsite.cc.

◆ WriteData() [2/2]

void votca::xtp::PolarSite::WriteData ( StaticSite::data & d) const
delete

◆ writepolarization()

std::string votca::xtp::PolarSite::writepolarization ( ) const
finalprivatevirtual

Reimplemented from votca::xtp::StaticSite.

Definition at line 66 of file polarsite.cc.

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream & out,
const PolarSite & site )
friend

Definition at line 139 of file polarsite.h.

Member Data Documentation

◆ eigendamp_invsqrt_

double votca::xtp::PolarSite::eigendamp_invsqrt_ = 0.0
private

Definition at line 160 of file polarsite.h.

◆ induced_dipole_

Eigen::Vector3d votca::xtp::PolarSite::induced_dipole_ = Eigen::Vector3d::Zero()
private

Definition at line 158 of file polarsite.h.

◆ pinv_

Eigen::Matrix3d votca::xtp::PolarSite::pinv_ = Eigen::Matrix3d::Zero()
private

Definition at line 159 of file polarsite.h.

◆ V_

Eigen::Vector3d votca::xtp::PolarSite::V_ = Eigen::Vector3d::Zero()
private

Definition at line 152 of file polarsite.h.

◆ V_noE_

Eigen::Vector3d votca::xtp::PolarSite::V_noE_ = Eigen::Vector3d::Zero()
private

Definition at line 156 of file polarsite.h.


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