Declaration of a "dual state" for advancing with the Kinetic Monte Carlo module.
More...
|
|
| KMCDualState ()=default |
| | Default constructor.
|
| |
|
| KMCDualState (const KMCDualState &)=default |
| | Copy constructor.
|
| |
|
| KMCDualState (const KMCDualState &&)=delete |
| | Disallowed move constructor.
|
| |
| | KMCDualState (const size_t a_numReactiveSpecies, const size_t a_numNonReactiveSpecies) noexcept |
| | Full constructor.
|
| |
|
virtual | ~KMCDualState () |
| | Destructor.
|
| |
| KMCDualState & | operator= (const KMCDualState &a_other)=default |
| | Copy assignment operator.
|
| |
|
KMCDualState & | operator= (const KMCDualState &&)=delete |
| | Disallowed move assignment.
|
| |
| void | define (const size_t a_numReactiveSpecies, const size_t a_numNonReactiveSpecies) noexcept |
| | Define function.
|
| |
| bool | isValidState () const noexcept |
| | Check if state is a valid state. An invalid state will have a negative number of reactants/non-reactants.
|
| |
| State & | getReactiveState () noexcept |
| | Get modifiable reactive state.
|
| |
| const State & | getReactiveState () const noexcept |
| | Get reactive state.
|
| |
| State & | getNonReactiveState () noexcept |
| | Get modifiable non-reactive state.
|
| |
| const State & | getNonReactiveState () const noexcept |
| | Get non-reactive state.
|
| |
| std::vector< T > | linearOut () const noexcept |
| | Linearize the state onto an output vector.
|
| |
| void | linearIn (const std::vector< T > &a_linearizedState) noexcept |
| | Linearize the input buffer onto the current state.
|
| |
template<typename T = long long>
class KMCDualState< T >
Declaration of a "dual state" for advancing with the Kinetic Monte Carlo module.
This state consists of both reactive and non-reactive species. The reactive species can appear on the left- and right-hand side of the reaction. The non-reactive species can only appear on the right-hand side of the reaction.
- Note
- The template parameter indicates the integer type used for tracking the states.