C++QEDCore  2.100.2 (v2 Milestone 10 Development branch)
a framework for simulating open quantum dynamics – core
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
quantumtrajectory::mcwf::Logger Class Reference

Essentially an aggregate of data fields for logging during a MCWF_Trajectory run. More...

#include <MCWF_TrajectoryLogger.h>

Public Types

typedef std::list< std::pair< double, size_t > > MCWF_Trajectory
 Stores <time instant, lindbladNo> pairs, that is, the complete stochastic MCWF trajectory (the rest is deterministic)
 

Public Member Functions

 Logger (int logLevel, bool isHamiltonian, size_t nLindblads)
 Straightforward constructor. More...
 
void step ()
 registers an MCWF step
 
void stepBack (double dp, double dtDid, double newDtTry, double t, bool logControl)
 registers a step-back upon tolerance-overshoot
 
void overshot (double dp, double oldDtTry, double newDtTry, bool logControl)
 registers a dpLimit overshoot
 
void processNorm (double norm)
 bookkeeps maximal deviation of the stochastic state vector from norm 1
 
void jumpOccured (double t, size_t lindbladNo)
 registers a jump at time t with its identifying ordinal
 
void logFailedSteps (size_t)
 registers number of failed ODE step
 
void hamiltonianCalled ()
 registers number of structure::Hamiltonian::addContribution calls
 
std::ostream & onEnd (std::ostream &) const
 displays summary log information at the end (called by MCWF_Trajectory::logOnEnd_v)
 

Friends

class boost::serialization::access
 
std::ostream & ensemble::displayLog (std::ostream &, const ensemble::LoggerList &, size_t, size_t)
 

Detailed Description

Essentially an aggregate of data fields for logging during a MCWF_Trajectory run.

Different log levels are to be supplied as the first parameter to Logger::Logger, and mean the following:

logLevel effect
<=1 No log output during the trajectory.
>0 Summary log information at the end of the trajectory display
>1 Reporting jumps on std::cout also during trajectory evolution.
>2 Reporting dpLimit overshoots and the resulting stepsize decrease also during trajectory evolution.
>3 Reporting number of failed ODE steps in the given step of the trajectory evolution.

Definition at line 52 of file MCWF_TrajectoryLogger.h.

Constructor & Destructor Documentation

quantumtrajectory::mcwf::Logger::Logger ( int  logLevel,
bool  isHamiltonian,
size_t  nLindblads 
)

Straightforward constructor.

Parameters
logLevelgoverns amount of log output during trajectory display
isHamiltoniansome log information (logFailedSteps & hamiltonianCalled) makes sense only if the simulated system is derived from structure::Hamiltonian
nLindbladsnumber of Lindblad operators

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