|
chombo-discharge
|
Declaration of a straightforward state for advancing with the Kinetic Monte Carlo module. More...
#include <CD_KMCSingleState.H>
Public Types | |
| using | State = std::vector< T > |
Public Member Functions | |
| KMCSingleState ()=delete | |
| Disallowed weak construction. | |
| KMCSingleState (const KMCSingleState &a_state)=default | |
| Copy constructor. | |
| KMCSingleState (const KMCSingleState &&)=delete | |
| Disallowed move constructor. | |
| KMCSingleState (const size_t a_numSpecies) noexcept | |
| Full constructor. | |
| virtual | ~KMCSingleState () |
| Destructor. | |
| KMCSingleState & | operator= (const KMCSingleState &)=default |
| Copy assignment constructor. | |
| KMCSingleState & | operator= (const KMCSingleState &&)=delete |
| Disallowed move assignement. | |
| T & | operator[] (const size_t a_idx) noexcept |
| Get the population of the input index. | |
| const T & | operator[] (const size_t a_idx) const noexcept |
| Get the population of the input index. | |
| bool | isValidState () const noexcept |
| Check if state is a valid 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. | |
| State & | getState () noexcept |
| Get modifiable state. | |
| const State & | getState () const noexcept |
| Get state. | |
Protected Attributes | |
| State | m_state |
| State vector. | |
Declaration of a straightforward state for advancing with the Kinetic Monte Carlo module.
The state is simply a vector of integers (default long long type ints).
|
inlinedefault |
Copy constructor.
| [in] | a_other | Other state |
|
inlinenoexcept |
Full constructor.
| [in] | a_numSpecies | Number of reactive species in the allocated state vector. |
|
inlinenoexcept |
Get state.
|
inlinenoexcept |
Get modifiable state.
|
inlinenoexcept |
Check if state is a valid state.
|
inlinenoexcept |
Linearize the input buffer.
This routine should take the input vector and linearize it onto the current state. This is mostly used by KMCSolver when computing the Jacobians for implicit updates.
| [in] | a_linearizedState | Linearized state vector |
|
inlinenoexcept |
Linearize the state onto an output vector.
This is mostly by KMCSolver when computing the necessary Jacobians for implicit updates
|
inlinenoexcept |
Get the population of the input index.
| [in] | a_idx | Index in state vector |
|
inlinenoexcept |
Get the population of the input index.
| [in] | a_idx | Index in state vector |