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

DFT & GWBSE-based coupling elements. More...

#include <iqm.h>

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

Public Member Functions

std::string Identify () const
 Calculator name.
 
Job::JobResult EvalJob (const Topology &top, Job &job, QMThread &opThread)
 
void WriteJobFile (const Topology &top)
 
void ReadJobFile (Topology &top)
 
- Public Member Functions inherited from votca::xtp::ParallelXJobCalc< std::vector< Job > >
 ParallelXJobCalc ()=default
 
 ~ParallelXJobCalc () override=default
 
std::string Identify () const override=0
 Calculator name.
 
void ParseOptions (const tools::Property &opt) final
 
bool Evaluate (const Topology &top) final
 
virtual void CustomizeLogger (QMThread &thread)
 
virtual Result EvalJob (const Topology &top, Job &job, QMThread &thread)=0
 
void LockCout ()
 
void UnlockCout ()
 
void LockLog ()
 
void UnlockLog ()
 
- Public Member Functions inherited from votca::xtp::JobCalculator
 JobCalculator ()=default
 
 ~JobCalculator () override=default
 
std::string Identify () const override=0
 Calculator name.
 
std::string Package () const final
 Package name.
 
bool EvaluateFrame (const Topology &top)
 
void Initialize (const tools::Property &opt) final
 Initializes a calculator from an XML file with options.
 
virtual void WriteJobFile (const Topology &top)=0
 
virtual void ReadJobFile (Topology &top)=0
 
void setOpenMPThreads (Index ompthreads)
 
void setProgObserver (ProgObserver< std::vector< Job > > *obs)
 
- Public Member Functions inherited from votca::tools::Calculator
 Calculator ()=default
 
virtual ~Calculator ()=default
 
virtual std::string Identify () const =0
 Calculator name.
 
virtual std::string Package () const =0
 Package name.
 
virtual void Initialize (const Property &user_options)=0
 Initializes a calculator from an XML file with options.
 
void setnThreads (Index nThreads)
 Sets number of threads to use.
 

Protected Member Functions

void ParseSpecificOptions (const tools::Property &user_options)
 
- Protected Member Functions inherited from votca::xtp::ParallelXJobCalc< std::vector< Job > >
virtual void ParseSpecificOptions (const tools::Property &options)=0
 
tools::Property UpdateDFTOptions (const tools::Property &options)
 
tools::Property UpdateGWBSEOptions (const tools::Property &options)
 
virtual void ParseOptions (const tools::Property &opt)=0
 
virtual bool Evaluate (const Topology &top)=0
 

Private Member Functions

double GetBSECouplingFromProp (const tools::Property &bseprop, const QMState &stateA, const QMState &stateB)
 
double GetDFTCouplingFromProp (const tools::Property &dftprop, Index stateA, Index stateB)
 
void SetJobToFailed (Job::JobResult &jres, Logger &pLog, const std::string &errormessage)
 
void WriteLoggerToFile (const std::string &logfile, Logger &logger)
 
void addLinkers (std::vector< const Segment * > &segments, const Topology &top)
 
bool isLinker (const std::string &name)
 
std::map< std::string, QMStateFillParseMaps (const std::string &Mapstring)
 
QMState GetElementFromMap (const std::map< std::string, QMState > &elementmap, const std::string &elementname) const
 

Private Attributes

tools::Property dftpackage_options_
 
tools::Property gwbse_options_
 
tools::Property bsecoupling_options_
 
tools::Property dftcoupling_options_
 
bool do_dft_input_ = false
 
bool do_dft_run_ = false
 
bool do_dft_parse_ = false
 
bool do_dftcoupling_ = false
 
bool do_gwbse_ = false
 
bool do_bsecoupling_ = false
 
std::map< std::string, QMStatelinkers_
 
bool store_dft_ = false
 
bool store_gw_ = false
 
std::map< std::string, QMStatesinglet_levels_
 
std::map< std::string, QMStatetriplet_levels_
 
std::map< std::string, QMStatehole_levels_
 
std::map< std::string, QMStateelectron_levels_
 

Additional Inherited Members

- Public Types inherited from votca::xtp::ParallelXJobCalc< std::vector< Job > >
using Job = typename JobContainer::value_type
 
using Result = typename Job::JobResult
 
- Protected Attributes inherited from votca::xtp::ParallelXJobCalc< std::vector< Job > >
std::vector< JobXJobs_
 
tools::Mutex coutMutex_
 
tools::Mutex logMutex_
 
std::string mapfile_
 
std::string jobfile_
 
- Protected Attributes inherited from votca::xtp::JobCalculator
Index openmp_threads_
 
ProgObserver< std::vector< Job > > * progObs_
 
- Protected Attributes inherited from votca::tools::Calculator
Index nThreads_
 
bool maverick_
 

Detailed Description

DFT & GWBSE-based coupling elements.

Evaluates DFT & GWBSE-based coupling elements for all conjugated segments from the neighbor list. Requires molecular orbitals of two monomers and a dimer in ORCA format.

Callname: iqm

Definition at line 51 of file iqm.h.

Member Function Documentation

◆ addLinkers()

void votca::xtp::IQM::addLinkers ( std::vector< const Segment * > &  segments,
const Topology top 
)
private

Definition at line 136 of file iqm.cc.

◆ EvalJob()

Job::JobResult votca::xtp::IQM::EvalJob ( const Topology top,
Job job,
QMThread opThread 
)

Definition at line 174 of file iqm.cc.

◆ FillParseMaps()

std::map< std::string, QMState > votca::xtp::IQM::FillParseMaps ( const std::string &  Mapstring)
private

Definition at line 119 of file iqm.cc.

◆ GetBSECouplingFromProp()

double votca::xtp::IQM::GetBSECouplingFromProp ( const tools::Property bseprop,
const QMState stateA,
const QMState stateB 
)
private

Definition at line 630 of file iqm.cc.

◆ GetDFTCouplingFromProp()

double votca::xtp::IQM::GetDFTCouplingFromProp ( const tools::Property dftprop,
Index  stateA,
Index  stateB 
)
private

Definition at line 610 of file iqm.cc.

◆ GetElementFromMap()

QMState votca::xtp::IQM::GetElementFromMap ( const std::map< std::string, QMState > &  elementmap,
const std::string &  elementname 
) const
private

Definition at line 652 of file iqm.cc.

◆ Identify()

std::string votca::xtp::IQM::Identify ( ) const
inlinevirtual

Calculator name.

This name is used to register a calculator in a Factory It the name of the XML file with the default calculator options stored in VOTCASHARE

Returns
calculator name

Implements votca::xtp::ParallelXJobCalc< std::vector< Job > >.

Definition at line 53 of file iqm.h.

◆ isLinker()

bool votca::xtp::IQM::isLinker ( const std::string &  name)
private

Definition at line 152 of file iqm.cc.

◆ ParseSpecificOptions()

void votca::xtp::IQM::ParseSpecificOptions ( const tools::Property user_options)
protectedvirtual

Implements votca::xtp::ParallelXJobCalc< std::vector< Job > >.

Definition at line 44 of file iqm.cc.

◆ ReadJobFile()

void votca::xtp::IQM::ReadJobFile ( Topology top)
virtual

Implements votca::xtp::JobCalculator.

Definition at line 669 of file iqm.cc.

◆ SetJobToFailed()

void votca::xtp::IQM::SetJobToFailed ( Job::JobResult jres,
Logger pLog,
const std::string &  errormessage 
)
private

Definition at line 156 of file iqm.cc.

◆ WriteJobFile()

void votca::xtp::IQM::WriteJobFile ( const Topology top)
virtual

Implements votca::xtp::JobCalculator.

Definition at line 557 of file iqm.cc.

◆ WriteLoggerToFile()

void votca::xtp::IQM::WriteLoggerToFile ( const std::string &  logfile,
Logger logger 
)
private

Definition at line 164 of file iqm.cc.

Member Data Documentation

◆ bsecoupling_options_

tools::Property votca::xtp::IQM::bsecoupling_options_
private

Definition at line 78 of file iqm.h.

◆ dftcoupling_options_

tools::Property votca::xtp::IQM::dftcoupling_options_
private

Definition at line 79 of file iqm.h.

◆ dftpackage_options_

tools::Property votca::xtp::IQM::dftpackage_options_
private

Definition at line 76 of file iqm.h.

◆ do_bsecoupling_

bool votca::xtp::IQM::do_bsecoupling_ = false
private

Definition at line 87 of file iqm.h.

◆ do_dft_input_

bool votca::xtp::IQM::do_dft_input_ = false
private

Definition at line 82 of file iqm.h.

◆ do_dft_parse_

bool votca::xtp::IQM::do_dft_parse_ = false
private

Definition at line 84 of file iqm.h.

◆ do_dft_run_

bool votca::xtp::IQM::do_dft_run_ = false
private

Definition at line 83 of file iqm.h.

◆ do_dftcoupling_

bool votca::xtp::IQM::do_dftcoupling_ = false
private

Definition at line 85 of file iqm.h.

◆ do_gwbse_

bool votca::xtp::IQM::do_gwbse_ = false
private

Definition at line 86 of file iqm.h.

◆ electron_levels_

std::map<std::string, QMState> votca::xtp::IQM::electron_levels_
private

Definition at line 100 of file iqm.h.

◆ gwbse_options_

tools::Property votca::xtp::IQM::gwbse_options_
private

Definition at line 77 of file iqm.h.

◆ hole_levels_

std::map<std::string, QMState> votca::xtp::IQM::hole_levels_
private

Definition at line 99 of file iqm.h.

◆ linkers_

std::map<std::string, QMState> votca::xtp::IQM::linkers_
private

Definition at line 89 of file iqm.h.

◆ singlet_levels_

std::map<std::string, QMState> votca::xtp::IQM::singlet_levels_
private

Definition at line 96 of file iqm.h.

◆ store_dft_

bool votca::xtp::IQM::store_dft_ = false
private

Definition at line 92 of file iqm.h.

◆ store_gw_

bool votca::xtp::IQM::store_gw_ = false
private

Definition at line 93 of file iqm.h.

◆ triplet_levels_

std::map<std::string, QMState> votca::xtp::IQM::triplet_levels_
private

Definition at line 97 of file iqm.h.


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