votca 2025.1-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.

◆ 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: