C++QEDCore  v2 Milestone 10
a framework for simulating open quantum dynamics – core
ParsTrajectory.h
Go to the documentation of this file.
1 // Copyright András Vukics 2006–2014. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE.txt)
3 // -*- C++ -*-
4 #ifndef CPPQEDCORE_UTILS_PARSTRAJECTORY_H_INCLUDED
5 #define CPPQEDCORE_UTILS_PARSTRAJECTORY_H_INCLUDED
6 
7 #include "TrajectoryFwd.h"
8 
9 #include "Evolved.h"
10 #include "FormDoubleFwd.h"
11 #include "Pars.h"
12 
13 
14 namespace trajectory {
15 
17 
39 {
40  static const double epsRelDefault;
41  static const double epsAbsDefault;
42 
43  double
44  &epsRel,
45  &epsAbs;
46 
49 
51 
56  const std::string& mod=""
57  );
58 
59 };
60 
61 
63 
64 struct ParsRun
65 {
66  double &T;
67  int &dc;
68  double &Dt;
69  long &NDt;
70  std::string &ofn, &initialFileName;
71 
73 
74  bool &displayInfo, &firstStateDisplay;
75 
76  unsigned &sdf;
77 
78  double &autoStopEpsilon;
79 
80  unsigned &autoStopRepetition;
81 
82  ParsRun(parameters::ParameterTable&, const std::string& mod="");
83 
85  const std::string getParsedCommandLine() const {return *parsedCommandLine_;}
86 
87 private:
88  const parameters::ParameterTable::ParsedCommandLine parsedCommandLine_;
89 
90 };
91 
92 
95 {
96  Pars(parameters::ParameterTable& p, const std::string& mod="") : ParsRun(p,mod), ParsEvolved(p,mod) {}
97 };
98 
99 
100 } // trajectory
101 
102 #endif // CPPQEDCORE_UTILS_PARSTRAJECTORY_H_INCLUDED
double & epsRel
relative precision of ODE stepping (cf. evolved::TimeStepBookkeeper)
const std::string getParsedCommandLine() const
Corresponds to parameters::ParameterTable::getParsedCommandLine.
The trajectory-bundle.
The parameter-bundle.
SteppingFunction
Enumeration for different stepping-function types, for i/o operations.
Definition: Evolved.h:29
Parameters corresponding to the different versions of run()
static const double epsRelDefault
The ultimate default of epsRel in the framework.
ParsEvolved(parameters::ParameterTable &, const std::string &mod="")
All Pars… classes are constructed taking a parameters::ParameterTable, to register the parameters on...
Aggregate condensing parameters concerning adaptive ODE evolution (cf. Adaptive::Adaptive()) in the s...
The parameter table according to which the command line will be parsed by update() ...
Definition: Pars.h:134
Defines class of the same name.
evolved::SteppingFunction & sf
stepping-function type
An example of a simple unification of Pars… classes, here ParsRun & ParsEvolved. ...
double & nextDtTryCorrectionFactor
cf. evolved::MakerGSL::MakerGSL()
double & T
endtime of the run
static const double epsAbsDefault
” for epsAbs
std::shared_ptr< std::string > ParsedCommandLine
Type for passing the parsed command line throughout the framework.
Definition: Pars.h:137
double & epsAbs
absolute precision ”
A dummy FormDouble used mainly for setting/getting the overallPrecision.
Definition: FormDouble.h:110
long & NDt
number of deltaT intervals in deltaT-mode
formdouble::Zero & precision
the overall precision of trajectory display