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

#include <kmccalculator.h>

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

Public Member Functions

 ~KMCCalculator () override=default
 
void ParseOptions (const tools::Property &options) final
 
- Public Member Functions inherited from votca::xtp::QMCalculator
 QMCalculator ()=default
 
 ~QMCalculator () override=default
 
std::string Identify () const override=0
 Calculator name.
 
std::string Package () const final
 Package name.
 
virtual bool WriteToStateFile () const =0
 
bool EvaluateFrame (Topology &top)
 
void Initialize (const tools::Property &opt) final
 Initializes a calculator from an XML file with options.
 
- 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

virtual void ParseSpecificOptions (const tools::Property &options)=0
 
void LoadGraph (Topology &top)
 
virtual void RunVSSM ()=0
 
void ParseCommonOptions (const tools::Property &options)
 
double Promotetime (double cumulated_rate)
 
void ResetForbiddenlist (std::vector< GNode * > &forbiddenid) const
 
void AddtoForbiddenlist (GNode &node, std::vector< GNode * > &forbiddenid) const
 
bool CheckForbidden (const GNode &node, const std::vector< GNode * > &forbiddenlist) const
 
bool CheckSurrounded (const GNode &node, const std::vector< GNode * > &forbiddendests) const
 
const GLinkChooseHoppingDest (const GNode &node)
 
ChargecarrierChooseAffectedCarrier (double cumulated_rate)
 
void WriteOccupationtoFile (double simtime, std::string filename)
 
void WriteRatestoFile (std::string filename, const QMNBList &nblist)
 
void RandomlyCreateCharges ()
 
void RandomlyAssignCarriertoSite (Chargecarrier &Charge)
 
- Protected Member Functions inherited from votca::xtp::QMCalculator
virtual void ParseOptions (const tools::Property &opt)=0
 
virtual bool Evaluate (Topology &top)=0
 

Protected Attributes

QMStateType carriertype_
 
std::vector< GNodenodes_
 
std::vector< Chargecarriercarriers_
 
tools::Random RandomVariable_
 
std::string injection_name_
 
std::string injectionmethod_
 
Index seed_
 
Index numberofcarriers_
 
Eigen::Vector3d field_ = Eigen::Vector3d::Zero()
 
double maxrealtime_
 
std::string trajectoryfile_
 
std::string ratefile_
 
std::string occfile_
 
std::string ignoresegments_
 
Logger log_
 
double temperature_
 
- Protected Attributes inherited from votca::tools::Calculator
Index nThreads_
 
bool maverick_
 

Detailed Description

Definition at line 37 of file kmccalculator.h.

Constructor & Destructor Documentation

◆ ~KMCCalculator()

votca::xtp::KMCCalculator::~KMCCalculator ( )
overridedefault

Member Function Documentation

◆ AddtoForbiddenlist()

void votca::xtp::KMCCalculator::AddtoForbiddenlist ( GNode node,
std::vector< GNode * > &  forbiddenid 
) const
protected

Definition at line 174 of file kmccalculator.cc.

◆ CheckForbidden()

bool votca::xtp::KMCCalculator::CheckForbidden ( const GNode node,
const std::vector< GNode * > &  forbiddenlist 
) const
protected

Definition at line 180 of file kmccalculator.cc.

◆ CheckSurrounded()

bool votca::xtp::KMCCalculator::CheckSurrounded ( const GNode node,
const std::vector< GNode * > &  forbiddendests 
) const
protected

Definition at line 192 of file kmccalculator.cc.

◆ ChooseAffectedCarrier()

Chargecarrier * votca::xtp::KMCCalculator::ChooseAffectedCarrier ( double  cumulated_rate)
protected

Definition at line 253 of file kmccalculator.cc.

◆ ChooseHoppingDest()

const GLink & votca::xtp::KMCCalculator::ChooseHoppingDest ( const GNode node)
protected

Definition at line 248 of file kmccalculator.cc.

◆ LoadGraph()

void votca::xtp::KMCCalculator::LoadGraph ( Topology top)
protected

Definition at line 58 of file kmccalculator.cc.

◆ ParseCommonOptions()

void votca::xtp::KMCCalculator::ParseCommonOptions ( const tools::Property options)
protected

Definition at line 41 of file kmccalculator.cc.

◆ ParseOptions()

void votca::xtp::KMCCalculator::ParseOptions ( const tools::Property options)
inlinefinalvirtual

Implements votca::xtp::QMCalculator.

Definition at line 41 of file kmccalculator.h.

◆ ParseSpecificOptions()

virtual void votca::xtp::KMCCalculator::ParseSpecificOptions ( const tools::Property options)
protectedpure virtual

◆ Promotetime()

double votca::xtp::KMCCalculator::Promotetime ( double  cumulated_rate)
protected

Definition at line 241 of file kmccalculator.cc.

◆ RandomlyAssignCarriertoSite()

void votca::xtp::KMCCalculator::RandomlyAssignCarriertoSite ( Chargecarrier Charge)
protected

Definition at line 226 of file kmccalculator.cc.

◆ RandomlyCreateCharges()

void votca::xtp::KMCCalculator::RandomlyCreateCharges ( )
protected

Definition at line 211 of file kmccalculator.cc.

◆ ResetForbiddenlist()

void votca::xtp::KMCCalculator::ResetForbiddenlist ( std::vector< GNode * > &  forbiddenid) const
protected

Definition at line 168 of file kmccalculator.cc.

◆ RunVSSM()

virtual void votca::xtp::KMCCalculator::RunVSSM ( )
protectedpure virtual

◆ WriteOccupationtoFile()

void votca::xtp::KMCCalculator::WriteOccupationtoFile ( double  simtime,
std::string  filename 
)
protected

Definition at line 289 of file kmccalculator.cc.

◆ WriteRatestoFile()

void votca::xtp::KMCCalculator::WriteRatestoFile ( std::string  filename,
const QMNBList nblist 
)
protected

Definition at line 268 of file kmccalculator.cc.

Member Data Documentation

◆ carriers_

std::vector<Chargecarrier> votca::xtp::KMCCalculator::carriers_
protected

Definition at line 72 of file kmccalculator.h.

◆ carriertype_

QMStateType votca::xtp::KMCCalculator::carriertype_
protected

Definition at line 49 of file kmccalculator.h.

◆ field_

Eigen::Vector3d votca::xtp::KMCCalculator::field_ = Eigen::Vector3d::Zero()
protected

Definition at line 79 of file kmccalculator.h.

◆ ignoresegments_

std::string votca::xtp::KMCCalculator::ignoresegments_
protected

Definition at line 84 of file kmccalculator.h.

◆ injection_name_

std::string votca::xtp::KMCCalculator::injection_name_
protected

Definition at line 75 of file kmccalculator.h.

◆ injectionmethod_

std::string votca::xtp::KMCCalculator::injectionmethod_
protected

Definition at line 76 of file kmccalculator.h.

◆ log_

Logger votca::xtp::KMCCalculator::log_
protected

Definition at line 86 of file kmccalculator.h.

◆ maxrealtime_

double votca::xtp::KMCCalculator::maxrealtime_
protected

Definition at line 80 of file kmccalculator.h.

◆ nodes_

std::vector<GNode> votca::xtp::KMCCalculator::nodes_
protected

Definition at line 71 of file kmccalculator.h.

◆ numberofcarriers_

Index votca::xtp::KMCCalculator::numberofcarriers_
protected

Definition at line 78 of file kmccalculator.h.

◆ occfile_

std::string votca::xtp::KMCCalculator::occfile_
protected

Definition at line 83 of file kmccalculator.h.

◆ RandomVariable_

tools::Random votca::xtp::KMCCalculator::RandomVariable_
protected

Definition at line 74 of file kmccalculator.h.

◆ ratefile_

std::string votca::xtp::KMCCalculator::ratefile_
protected

Definition at line 82 of file kmccalculator.h.

◆ seed_

Index votca::xtp::KMCCalculator::seed_
protected

Definition at line 77 of file kmccalculator.h.

◆ temperature_

double votca::xtp::KMCCalculator::temperature_
protected

Definition at line 88 of file kmccalculator.h.

◆ trajectoryfile_

std::string votca::xtp::KMCCalculator::trajectoryfile_
protected

Definition at line 81 of file kmccalculator.h.


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