C++QEDCore  v2 Milestone 10
a framework for simulating open quantum dynamics – core
quantumtrajectory::master::Base< RANK > Class Template Reference

The actual working base of Master in the case when blitzplusplus::basi::Iterator is used for implementing multi-matrix multiplications. More...

#include <Master.h>

+ Inheritance diagram for quantumtrajectory::master::Base< RANK >:
+ Collaboration diagram for quantumtrajectory::master::Base< RANK >:

Public Types

typedef structure::QuantumSystem< RANK > QuantumSystem
 
typedef structure::Exact< RANK > Exact
 
typedef structure::Hamiltonian< RANK > Hamiltonian
 
typedef structure::Liouvillean< RANK > Liouvillean
 
typedef structure::Averaged< RANK > Averaged
 
typedef quantumdata::Types< RANK >::DensityOperatorLow DensityOperatorLow
 
typedef quantumdata::Types< RANK >::StateVectorLow StateVectorLow
 
typedef trajectory::Adaptive< DensityOperatorLow > Adaptive
 
typedef quantumtrajectory::QuantumTrajectory< RANK, AdaptiveQuantumTrajectory
 
typedef quantumdata::DensityOperator< RANK > DensityOperator
 
- Public Types inherited from trajectory::Adaptive< quantumdata::Types< RANK >::DensityOperatorLow >
typedef evolved::Evolved< quantumdata::Types< RANK >::DensityOperatorLow > Evolved
 

Public Member Functions

void derivs (double, const DensityOperatorLow &, DensityOperatorLow &) const
 The actual function calculating the time derivative for ODE evolution.
 
- Public Member Functions inherited from trajectory::Adaptive< quantumdata::Types< RANK >::DensityOperatorLow >
void step (double deltaT)
 corresponding to Evolved::step, it takes a single adaptive step More...
 
- Public Member Functions inherited from trajectory::AdaptiveIO< quantumdata::Types< RANK >::DensityOperatorLow >
 AdaptiveIO (Ptr)
 
cpputils::iarchivereadState (cpputils::iarchive &iar)
 Read in the EvolvedIO from a cpputils::iarchive. More...
 
cpputils::oarchivewriteState (cpputils::oarchive &oar) const
 Write the EvolvedIO to a cpputils::oarchive.
 
double getTime () const
 Returns the time of the underlying EvolvedIO.
 
- Public Member Functions inherited from trajectory::Trajectory
void evolve (double deltaT)
 Propagation for a time interval of exactly deltaT.
 
std::ostream & display (std::ostream &, int precision) const
 Displays a limited set of relevant physical and numerical information about the actual state of Trajectory at the actual time instant. More...
 
std::ostream & displayParameters (std::ostream &os) const
 print header
 
std::ostream & logOnEnd (std::ostream &os) const
 print a log at the end summarizing overall (e.g. time-averaged) physical and numerical data during the run
 
double getTime () const
 actual time instant
 
double getDtDid () const
 last perfomed timestep
 
cpputils::iarchivereadState (cpputils::iarchive &iar)
 read from an archive
 
cpputils::oarchivewriteState (cpputils::oarchive &oar) const
 write to an archive
 

Protected Types

typedef boost::function< void(StateVectorLow &)> UnaryFunction
 
typedef boost::function< void(const StateVectorLow &, StateVectorLow &)> BinaryFunction
 
- Protected Types inherited from quantumtrajectory::QuantumTrajectory< RANK, trajectory::Adaptive< quantumdata::Types< RANK >::DensityOperatorLow > >
typedef structure::QuantumSystemWrapper< RANK, true > QuantumSystemWrapper
 
- Protected Types inherited from trajectory::Adaptive< quantumdata::Types< RANK >::DensityOperatorLow >
typedef Evolved::ConstPtr ConstPtr
 
typedef Evolved::Ptr Ptr
 

Protected Member Functions

 Base (DensityOperator &, typename QuantumSystem::Ptr, const Pars &, const DensityOperatorLow &=DensityOperatorLow())
 
const Averaged::Ptr getAv () const
 
- Protected Member Functions inherited from quantumtrajectory::QuantumTrajectory< RANK, trajectory::Adaptive< quantumdata::Types< RANK >::DensityOperatorLow > >
 QuantumTrajectory (typename structure::QuantumSystem< RANK >::Ptr qs, bool isNoisy, ArgumentPack &&...argumentPack)
 Constructor forwarding to BASE and QuantumSystemWrapper.
 
const QuantumSystemWrapper getQSW () const
 
cpputils::iarchivereadStateMore_v (cpputils::iarchive &iar) override
 Forwards to BASE, but also sets t0.
 
double getT0 () const
 The time instant of the beginning of the current time step. More...
 
void setT0 (double t0) const
 The time instant of the beginning of the current time step. More...
 
void setT0 () const
 The time instant of the beginning of the current time step. Sets to the current time.
 
void checkDimension (const CONSTRUCT &construct) const
 Check the dimensions of the stored quantum system against construct More...
 
- Protected Member Functions inherited from trajectory::Adaptive< quantumdata::Types< RANK >::DensityOperatorLow >
 Adaptive (quantumdata::Types< RANK >::DensityOperatorLow &, typename Evolved::Derivs, double, double, double, const quantumdata::Types< RANK >::DensityOperatorLow &, const evolved::Maker< quantumdata::Types< RANK >::DensityOperatorLow > &)
 Constructor taking the same parameters as needed to operate evolved::Maker.
 
 Adaptive (quantumdata::Types< RANK >::DensityOperatorLow &, typename Evolved::Derivs, double, const ParsEvolved &, const quantumdata::Types< RANK >::DensityOperatorLow &, const evolved::Maker< quantumdata::Types< RANK >::DensityOperatorLow > &)
 
const std::string trajectoryID () const
 redirected to a pure virtual, this is needed for serialization of trajectory metadata
 
std::ostream & displayParameters_v (std::ostream &) const override
 
virtual cpputils::oarchivewriteStateMore_v (cpputils::oarchive &oar) const
 hook into Trajectory::writeState
 
const ConstPtr getEvolved () const
 
const Ptr getEvolved ()
 
double getDtTry () const
 
- Protected Member Functions inherited from trajectory::AdaptiveIO< quantumdata::Types< RANK >::DensityOperatorLow >
const Ptr getEvolvedIO () const
 note: not the same const-correctness as in Adaptive
 

Protected Attributes

DensityOperatorrho_
 
- Protected Attributes inherited from trajectory::AdaptiveIO< quantumdata::Types< RANK >::DensityOperatorLow >
SerializationMetadata meta_
 

Additional Inherited Members

Detailed Description

template<int RANK>
class quantumtrajectory::master::Base< RANK >

The actual working base of Master in the case when blitzplusplus::basi::Iterator is used for implementing multi-matrix multiplications.

Template Parameters
RANKarity of the Hilbert space

Definition at line 42 of file Master.h.


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