Class defining the virtual functions corresponding to a single Lindblad… More...
#include <ElementLiouvillean.h>
Public Types | |
typedef time::DispatcherIsTimeDependent< IS_TIME_DEPENDENT >::type | Time |
Public Member Functions | |
void | typeErasedActWithJ (Time t, typename quantumdata::Types< RANK >::StateVectorLow &psi) const |
calls the virtual doActWithJ for the given LINDBLAD_ORDINAL | |
double | typeErasedRate (Time t, const quantumdata::LazyDensityOperator< RANK > &matrix) const |
calls the virtual rate for the given LINDBLAD_ORDINAL | |
Class defining the virtual functions corresponding to a single Lindblad…
… and all the Lindblads with lesser index, since the class uses base-class chaining. At the bottom of the chain sits Base<NLINDBLADS>
RANK | arity of the Hilbert space |
LINDBLAD_ORDINAL | the index of the given Lindblad |
IS_TIME_DEPENDENT | governs time dependence |
NLINDBLADS | the total number of Lindblads |
In the case of the _::typeErasedActWithJ and _::typeErasedRate functions, the simultaneous use of the type-erasure & non-virtual interface idioms is notable
Definition at line 50 of file ElementLiouvillean.h.