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

#include <kmcmultiple.h>

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

Public Member Functions

 KMCMultiple ()=default
 
 ~KMCMultiple ()=default
 
bool WriteToStateFile () const
 
std::string Identify () const
 Calculator name.
 
- Public Member Functions inherited from votca::xtp::KMCCalculator
 ~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

void ParseSpecificOptions (const tools::Property &user_options)
 
bool Evaluate (Topology &top)
 
- Protected Member Functions inherited from votca::xtp::KMCCalculator
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)
 
virtual void ParseOptions (const tools::Property &opt)=0
 
virtual bool Evaluate (Topology &top)=0
 

Private Member Functions

void RunVSSM ()
 
void PrintChargeVelocity (double simtime)
 
void PrintDiagDandMu (const Eigen::Matrix3d &avgdiffusiontensor, double simtime, unsigned long step)
 
void WriteToEnergyFile (std::fstream &tfile, double simtime, unsigned long step) const
 
void WriteToTrajectory (std::fstream &traj, std::vector< Eigen::Vector3d > &startposition, double simtime, unsigned long step) const
 
void PrintDiffandMu (const Eigen::Matrix3d &avgdiffusiontensor, double simtime, unsigned long step)
 

Private Attributes

double runtime_
 
double outputtime_
 
std::string timefile_ = ""
 
Index intermediateoutput_frequency_ = 10000
 
unsigned long diffusionresolution_ = 1000
 

Additional Inherited Members

- Protected Attributes inherited from votca::xtp::KMCCalculator
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 31 of file kmcmultiple.h.

Constructor & Destructor Documentation

◆ KMCMultiple()

votca::xtp::KMCMultiple::KMCMultiple ( )
default

◆ ~KMCMultiple()

votca::xtp::KMCMultiple::~KMCMultiple ( )
default

Member Function Documentation

◆ Evaluate()

bool votca::xtp::KMCMultiple::Evaluate ( Topology top)
protectedvirtual

Implements votca::xtp::QMCalculator.

Definition at line 457 of file kmcmultiple.cc.

◆ Identify()

std::string votca::xtp::KMCMultiple::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::QMCalculator.

Definition at line 36 of file kmcmultiple.h.

◆ ParseSpecificOptions()

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

Implements votca::xtp::KMCCalculator.

Definition at line 39 of file kmcmultiple.cc.

◆ PrintChargeVelocity()

void votca::xtp::KMCMultiple::PrintChargeVelocity ( double  simtime)
private

Definition at line 181 of file kmcmultiple.cc.

◆ PrintDiagDandMu()

void votca::xtp::KMCMultiple::PrintDiagDandMu ( const Eigen::Matrix3d &  avgdiffusiontensor,
double  simtime,
unsigned long  step 
)
private

Definition at line 146 of file kmcmultiple.cc.

◆ PrintDiffandMu()

void votca::xtp::KMCMultiple::PrintDiffandMu ( const Eigen::Matrix3d &  avgdiffusiontensor,
double  simtime,
unsigned long  step 
)
private

Definition at line 62 of file kmcmultiple.cc.

◆ RunVSSM()

void votca::xtp::KMCMultiple::RunVSSM ( )
privatevirtual

Implements votca::xtp::KMCCalculator.

Definition at line 199 of file kmcmultiple.cc.

◆ WriteToEnergyFile()

void votca::xtp::KMCMultiple::WriteToEnergyFile ( std::fstream &  tfile,
double  simtime,
unsigned long  step 
) const
private

Definition at line 116 of file kmcmultiple.cc.

◆ WriteToStateFile()

bool votca::xtp::KMCMultiple::WriteToStateFile ( ) const
inlinevirtual

Implements votca::xtp::QMCalculator.

Definition at line 35 of file kmcmultiple.h.

◆ WriteToTrajectory()

void votca::xtp::KMCMultiple::WriteToTrajectory ( std::fstream &  traj,
std::vector< Eigen::Vector3d > &  startposition,
double  simtime,
unsigned long  step 
) const
private

Definition at line 98 of file kmcmultiple.cc.

Member Data Documentation

◆ diffusionresolution_

unsigned long votca::xtp::KMCMultiple::diffusionresolution_ = 1000
private

Definition at line 63 of file kmcmultiple.h.

◆ intermediateoutput_frequency_

Index votca::xtp::KMCMultiple::intermediateoutput_frequency_ = 10000
private

Definition at line 62 of file kmcmultiple.h.

◆ outputtime_

double votca::xtp::KMCMultiple::outputtime_
private

Definition at line 60 of file kmcmultiple.h.

◆ runtime_

double votca::xtp::KMCMultiple::runtime_
private

Definition at line 59 of file kmcmultiple.h.

◆ timefile_

std::string votca::xtp::KMCMultiple::timefile_ = ""
private

Definition at line 61 of file kmcmultiple.h.


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