votca 2024.2-dev
Loading...
Searching...
No Matches
votca::xtp::Segment Class Reference

#include <segment.h>

Inheritance diagram for votca::xtp::Segment:
Collaboration diagram for votca::xtp::Segment:

Public Member Functions

 Segment (std::string name, Index id)
 
 Segment (CheckpointReader &r)
 
 ~Segment () override=default
 
void setU_xX_nN (double dU, QMStateType state)
 UxX - UnN.
 
void setU_nX_nN (double dU, QMStateType state)
 UnX - UnN.
 
void setU_xN_xX (double dU, QMStateType state)
 UxN - UxX.
 
const AtomgetAtom (Index id) const
 
double getU_xX_nN (QMStateType state) const
 
double getU_nX_nN (QMStateType state) const
 
double getU_xN_xX (QMStateType state) const
 
double getSiteEnergy (QMStateType state) const
 
double getEMpoles (QMStateType state) const
 
void setEMpoles (QMStateType state, double energy)
 
void AddMoleculeId (Index id)
 
const std::vector< Index > & getMoleculeIds () const
 
double getApproxSize () const
 
void WriteToCpt (CheckpointWriter &w) const override
 
void ReadFromCpt (CheckpointReader &r) override
 
- Public Member Functions inherited from votca::xtp::AtomContainer< Atom >
 AtomContainer (std::string type, Index id)
 
 AtomContainer (CheckpointReader &r)
 
virtual ~AtomContainer ()=default
 
const std::string & getType () const
 
void setType (std::string type)
 
void clearAtoms ()
 
Index getId () const
 
Index size () const
 
void push_back (const Atom &atom)
 
void push_back (Atom &&atom)
 
const Atomat (Index index) const
 
Atomat (Index index)
 
const Atomoperator[] (Index index) const
 
Atomoperator[] (Index index)
 
std::vector< Atom >::iterator begin ()
 
std::vector< Atom >::const_iterator begin () const
 
std::vector< Atom >::iterator end ()
 
std::vector< Atom >::const_iterator end () const
 
const Eigen::Vector3d & getPos () const
 
std::pair< Eigen::Vector3d, Eigen::Vector3d > CalcSpatialMinMax () const
 
std::vector< std::string > FindUniqueElements () const
 
void Translate (const Eigen::Vector3d &shift)
 
void Rotate (const Eigen::Matrix3d &R, const Eigen::Vector3d &ref_pos)
 
void calcPos ()
 

Private Attributes

std::vector< Indexmolecule_ids_ = std::vector<Index>(0)
 
QMStateCarrierStorage< double > U_xX_nN_
 
QMStateCarrierStorage< double > U_nX_nN_
 
QMStateCarrierStorage< double > U_xN_xX_
 
QMStateCarrierStorage< double > site_eng_
 

Friends

std::ostream & operator<< (std::ostream &out, const Segment &container)
 

Additional Inherited Members

- Public Types inherited from votca::xtp::AtomContainer< Atom >
using Atom_Type
 
using iterator
 
- Protected Attributes inherited from votca::xtp::AtomContainer< Atom >
std::vector< Atomatomlist_
 
std::string type_
 
Index id_
 

Detailed Description

Definition at line 36 of file segment.h.

Constructor & Destructor Documentation

◆ Segment() [1/2]

votca::xtp::Segment::Segment ( std::string name,
Index id )
inline

Definition at line 38 of file segment.h.

◆ Segment() [2/2]

votca::xtp::Segment::Segment ( CheckpointReader & r)
inline

Definition at line 41 of file segment.h.

◆ ~Segment()

votca::xtp::Segment::~Segment ( )
overridedefault

Member Function Documentation

◆ AddMoleculeId()

void votca::xtp::Segment::AddMoleculeId ( Index id)
inline

Definition at line 91 of file segment.h.

◆ getApproxSize()

double votca::xtp::Segment::getApproxSize ( ) const

Definition at line 27 of file segment.cc.

◆ getAtom()

const Atom * votca::xtp::Segment::getAtom ( Index id) const

Definition at line 32 of file segment.cc.

◆ getEMpoles()

double votca::xtp::Segment::getEMpoles ( QMStateType state) const
inline

Definition at line 83 of file segment.h.

◆ getMoleculeIds()

const std::vector< Index > & votca::xtp::Segment::getMoleculeIds ( ) const
inline

Definition at line 93 of file segment.h.

◆ getSiteEnergy()

double votca::xtp::Segment::getSiteEnergy ( QMStateType state) const
inline

Definition at line 79 of file segment.h.

◆ getU_nX_nN()

double votca::xtp::Segment::getU_nX_nN ( QMStateType state) const
inline

Definition at line 71 of file segment.h.

◆ getU_xN_xX()

double votca::xtp::Segment::getU_xN_xX ( QMStateType state) const
inline

Definition at line 75 of file segment.h.

◆ getU_xX_nN()

double votca::xtp::Segment::getU_xX_nN ( QMStateType state) const
inline

Definition at line 67 of file segment.h.

◆ ReadFromCpt()

void votca::xtp::Segment::ReadFromCpt ( CheckpointReader & r)
overridevirtual

Reimplemented from votca::xtp::AtomContainer< Atom >.

Definition at line 64 of file segment.cc.

◆ setEMpoles()

void votca::xtp::Segment::setEMpoles ( QMStateType state,
double energy )
inline

Definition at line 87 of file segment.h.

◆ setU_nX_nN()

void votca::xtp::Segment::setU_nX_nN ( double dU,
QMStateType state )
inline

UnX - UnN.

Definition at line 57 of file segment.h.

◆ setU_xN_xX()

void votca::xtp::Segment::setU_xN_xX ( double dU,
QMStateType state )
inline

UxN - UxX.

Definition at line 61 of file segment.h.

◆ setU_xX_nN()

void votca::xtp::Segment::setU_xX_nN ( double dU,
QMStateType state )
inline

UxX - UnN.

Following notation can be observed in: [1. Victor, R. et al. Microscopic Simulations of Charge Transport in Disordered Organic Semiconductors. J. Chem. Theory Comput. 7, 3335–3345 (2011).] Labeling of the following methods follows the following semantics: U - Energy n - neutral geometry N - neutral state x - excited geometry X - excited state

Definition at line 53 of file segment.h.

◆ WriteToCpt()

void votca::xtp::Segment::WriteToCpt ( CheckpointWriter & w) const
overridevirtual

Reimplemented from votca::xtp::AtomContainer< Atom >.

Definition at line 42 of file segment.cc.

Friends And Related Symbol Documentation

◆ operator<<

std::ostream & operator<< ( std::ostream & out,
const Segment & container )
friend

Definition at line 101 of file segment.h.

Member Data Documentation

◆ molecule_ids_

std::vector<Index> votca::xtp::Segment::molecule_ids_ = std::vector<Index>(0)
private

Definition at line 111 of file segment.h.

◆ site_eng_

QMStateCarrierStorage<double> votca::xtp::Segment::site_eng_
private

Definition at line 116 of file segment.h.

◆ U_nX_nN_

QMStateCarrierStorage<double> votca::xtp::Segment::U_nX_nN_
private

Definition at line 114 of file segment.h.

◆ U_xN_xX_

QMStateCarrierStorage<double> votca::xtp::Segment::U_xN_xX_
private

Definition at line 115 of file segment.h.

◆ U_xX_nN_

QMStateCarrierStorage<double> votca::xtp::Segment::U_xX_nN_
private

Definition at line 113 of file segment.h.


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