votca 2026-dev
Loading...
Searching...
No Matches
votca::xtp::ThinningWaitingTime Class Referencefinal

Thinning (Lewis-Shedler) for any rates with time-independent upper bounds B_e >= w_e(t): candidate events at the constant rate sum_e B_e, destination proposed with probability B_e / sum B, accepted with probability w_e(t)/B_e. Exact for every time dependence; the cost grows with the ratio bound / mean rate. More...

#include <kmcwaitingtime.h>

Inheritance diagram for votca::xtp::ThinningWaitingTime:
Collaboration diagram for votca::xtp::ThinningWaitingTime:

Public Member Functions

std::string Name () const override
void Prepare (const TimeDependentRates &rates) override
double NextTime (Index site, double t, KMCRandom &random) const override
Index ChooseHop (Index site, double t, KMCRandom &random) const override
Public Member Functions inherited from votca::xtp::WaitingTimeStrategy
virtual ~WaitingTimeStrategy ()=default

Private Attributes

const TimeDependentRates * rates_ = nullptr
std::vector< double > bound_escape_
std::vector< double > cumulative_

Detailed Description

Thinning (Lewis-Shedler) for any rates with time-independent upper bounds B_e >= w_e(t): candidate events at the constant rate sum_e B_e, destination proposed with probability B_e / sum B, accepted with probability w_e(t)/B_e. Exact for every time dependence; the cost grows with the ratio bound / mean rate.

Definition at line 102 of file kmcwaitingtime.h.

Member Function Documentation

◆ ChooseHop()

Index votca::xtp::ThinningWaitingTime::ChooseHop ( Index site,
double t,
KMCRandom & random ) const
overridevirtual

Implements votca::xtp::WaitingTimeStrategy.

Definition at line 120 of file kmcwaitingtime.cc.

◆ Name()

std::string votca::xtp::ThinningWaitingTime::Name ( ) const
inlineoverridevirtual

Implements votca::xtp::WaitingTimeStrategy.

Definition at line 104 of file kmcwaitingtime.h.

◆ NextTime()

double votca::xtp::ThinningWaitingTime::NextTime ( Index site,
double t,
KMCRandom & random ) const
overridevirtual

Implements votca::xtp::WaitingTimeStrategy.

Definition at line 114 of file kmcwaitingtime.cc.

◆ Prepare()

void votca::xtp::ThinningWaitingTime::Prepare ( const TimeDependentRates & rates)
overridevirtual

Implements votca::xtp::WaitingTimeStrategy.

Definition at line 101 of file kmcwaitingtime.cc.

Member Data Documentation

◆ bound_escape_

std::vector<double> votca::xtp::ThinningWaitingTime::bound_escape_
private

Definition at line 111 of file kmcwaitingtime.h.

◆ cumulative_

std::vector<double> votca::xtp::ThinningWaitingTime::cumulative_
private

Definition at line 112 of file kmcwaitingtime.h.

◆ rates_

const TimeDependentRates* votca::xtp::ThinningWaitingTime::rates_ = nullptr
private

Definition at line 110 of file kmcwaitingtime.h.


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