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
evolved Namespace Reference

Comprises utilities related to ODE adaptive evolution. More...

Classes

class  Evolved
 A common interface for (adaptive stepsize) ODE drivers. More...
 
class  EvolvedIO
 Class for serialization of Evolved states. More...
 
class  Maker
 Factory class for Evolved types. More...
 
class  MakerGSL
 Implements Maker and incorporates MakerGSL::_, the actual GSL-based implementation of the Evolved interface. More...
 
class  NonContiguousStorageException
 Thrown if the array supplied to MakerGSL has non contiguous storage. More...
 
class  TimeStepBookkeeper
 Bookkeeps the timestep-data of Evolved. More...
 

Enumerations

enum  SteppingFunction { SF_RKCK, SF_RK8PD }
 Enumeration for different stepping-function types, for i/o operations. More...
 

Functions

I/O operations for SteppingFunction
std::ostream & operator<< (std::ostream &, SteppingFunction)
 
std::istream & operator>> (std::istream &, SteppingFunction &)
 
Generic evolution functions
template<typename E >
void evolve (E &, double deltaT)
 evolves for exactly time deltaT More...
 
template<typename E >
void evolveTo (E &e, double t)
 evolves up to exactly time t More...
 

Detailed Description

Comprises utilities related to ODE adaptive evolution.

Enumeration Type Documentation

Enumeration for different stepping-function types, for i/o operations.

At the moment, Runge-Kutta Cash-Karp (4,5) and Runge-Kutta Prince-Dormand (8,9) are defined, cf. http://www.gnu.org/software/gsl/manual/html_node/Stepping-Functions.html

Definition at line 29 of file Evolved.h.

Function Documentation

template<typename E >
void evolved::evolve ( E &  ,
double  deltaT 
)

evolves for exactly time deltaT

Template Parameters
Etype of the object to evolve. Implicit interface assumed: member function named step with signature ...(double)
template<typename E >
void evolved::evolveTo ( E &  e,
double  t 
)

evolves up to exactly time t

Template Parameters
Etype of the object to evolve. Implicit interface assumed: member function named step with signature ...(double)

Definition at line 220 of file Evolved.h.