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

QM/MM with different regions around. More...

#include <qmmm.h>

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

Public Member Functions

std::string Identify () const
 Calculator name.
 
Job::JobResult EvalJob (const Topology &top, Job &job, QMThread &Thread)
 
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

bool hasQMRegion () const
 
Job createJob (const Segment &seg, const QMState &state, Index jobid) const
 
std::string getFirstRegionName () const
 

Private Attributes

std::pair< std::string, tools::Propertyregions_def_
 
Index max_iterations_
 
bool print_regions_pdb_ = false
 
bool use_gs_for_ex_ = false
 
std::vector< QMStatestates_
 
std::string which_segments_
 

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

QM/MM with different regions around.

Calculates properties of different regions inside a multiregion calculation

Callname: qmmm

Definition at line 38 of file qmmm.h.

Member Function Documentation

◆ createJob()

Job votca::xtp::QMMM::createJob ( const Segment seg,
const QMState state,
Index  jobid 
) const
private

Definition at line 257 of file qmmm.cc.

◆ EvalJob()

Job::JobResult votca::xtp::QMMM::EvalJob ( const Topology top,
Job job,
QMThread Thread 
)

Definition at line 63 of file qmmm.cc.

◆ getFirstRegionName()

std::string votca::xtp::QMMM::getFirstRegionName ( ) const
private

Definition at line 209 of file qmmm.cc.

◆ hasQMRegion()

bool votca::xtp::QMMM::hasQMRegion ( ) const
private

Definition at line 200 of file qmmm.cc.

◆ Identify()

std::string votca::xtp::QMMM::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 40 of file qmmm.h.

◆ ParseSpecificOptions()

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

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

Definition at line 44 of file qmmm.cc.

◆ ReadJobFile()

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

Implements votca::xtp::JobCalculator.

Definition at line 281 of file qmmm.cc.

◆ WriteJobFile()

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

Implements votca::xtp::JobCalculator.

Definition at line 219 of file qmmm.cc.

Member Data Documentation

◆ max_iterations_

Index votca::xtp::QMMM::max_iterations_
private

Definition at line 55 of file qmmm.h.

◆ print_regions_pdb_

bool votca::xtp::QMMM::print_regions_pdb_ = false
private

Definition at line 56 of file qmmm.h.

◆ regions_def_

std::pair<std::string, tools::Property> votca::xtp::QMMM::regions_def_
private

Definition at line 53 of file qmmm.h.

◆ states_

std::vector<QMState> votca::xtp::QMMM::states_
private

Definition at line 58 of file qmmm.h.

◆ use_gs_for_ex_

bool votca::xtp::QMMM::use_gs_for_ex_ = false
private

Definition at line 57 of file qmmm.h.

◆ which_segments_

std::string votca::xtp::QMMM::which_segments_
private

Definition at line 59 of file qmmm.h.


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