In the language of the framework, a free system is a unary system (arity 1, RANK=1
)
More...
#include <Free.h>
Public Types | |
typedef boost::shared_ptr< const Free > | Ptr |
Public Types inherited from structure::QuantumSystem< 1 > | |
typedef boost::shared_ptr< const QuantumSystem > | Ptr |
Many of the basic template classes in the framework act as template metafunctions returning a shared pointer to their own type. More... | |
typedef Base::Dimensions | Dimensions |
Public Types inherited from DimensionsBookkeeper< RANK > | |
typedef ExtTiny< RANK > | Dimensions |
The dimensions as a static vector of size N_RANK. | |
Public Types inherited from structure::DynamicsBase | |
typedef boost::shared_ptr< const DynamicsBase > | Ptr |
typedef std::tuple< std::string, double, double > | RF |
name-value-multiplier tuple for a real frequency-like parameter | |
typedef std::tuple< std::string, dcomp,double > | CF |
same for complex | |
typedef std::list< RF > | RealFreqs |
list of real frequency-like parameters | |
typedef std::list< CF > | ComplexFreqs |
same for complex | |
typedef std::initializer_list< RF > | RealFreqsInitializer |
typedef std::initializer_list< CF > | ComplexFreqsInitializer |
Public Member Functions | |
Free (size_t dim, const RealFreqs &realFreqs=emptyRF, const ComplexFreqs &complexFreqs=emptyCF) | |
A single dimension to initialise QuantumSystem<1> and the lists of real and complex name-frequency-multiplier tuples for DynamicsBase. | |
Free (size_t dim, const ComplexFreqs &complexFreqs) | |
Free (size_t dim, RealFreqsInitializer rf, ComplexFreqsInitializer cf={}) | |
Free (size_t dim, ComplexFreqsInitializer cf) | |
Free (size_t dim, RF rf, CF cf=CF()) | |
Free (size_t dim, CF cf) | |
Free (size_t dim, RealFreqsInitializer rf, CF cf) | |
Free (size_t dim, RF rf, ComplexFreqsInitializer cf) | |
Implementating inherited virtuals | |
double | highestFrequency () const |
Simply connects the pure virtual QuantumSystem::highestFrequency to the implementation DynamicsBase::highestFrequency. More... | |
std::ostream & | displayParameters (std::ostream &os) const |
” | |
Public Member Functions inherited from structure::QuantumSystem< 1 > | |
QuantumSystem (const Dimensions &dimensions) | |
Construction from a set of Dimensions. | |
double | highestFrequency () const |
The fastest timescale of the system for ODE stepping. | |
std::ostream & | displayParameters (std::ostream &os) const |
Communicating system parameters towards the user. | |
Public Member Functions inherited from DimensionsBookkeeper< RANK > | |
DimensionsBookkeeper (mpl::bool_< IS_CONST >=mpl::false_()) | |
Constructor usable only in the IS_CONST=false case. More... | |
DimensionsBookkeeper (const Dimensions &dimensions) | |
Standard constructor usable also in the IS_CONST=true case. | |
const Dimensions & | getDimensions () const |
Get the Dimensions vector. | |
size_t | getTotalDimension () const |
Get the total dimension of a system of arbitrary arity. | |
size_t | getDimension (mpl::int_< RANK >=mpl::int_< 1 >()) const |
Get the (single) dimension for a unary system. | |
size_t | getDimension (size_t i) const |
void | setDimensions (const Dimensions &dimensions) |
This will work only in the non-const case. | |
Public Member Functions inherited from structure::DynamicsBase | |
DynamicsBase (const RealFreqs &=emptyRF, const ComplexFreqs &=emptyCF) | |
Straightforward constructor. | |
DynamicsBase (const ComplexFreqs &complexFreqs) | |
DynamicsBase (RealFreqsInitializer rf, ComplexFreqsInitializer cf={}) | |
Constructor with initializer lists. | |
DynamicsBase (ComplexFreqsInitializer cf) | |
DynamicsBase (RF rf, CF cf=CF()) | |
DynamicsBase (CF cf) | |
DynamicsBase (RealFreqsInitializer rf, CF cf) | |
DynamicsBase (RF rf, ComplexFreqsInitializer cf) | |
double | highestFrequency () const |
Calculates the fastest timescale of the system from the frequencies stored in the lists. | |
std::ostream & | displayParameters (std::ostream &) const |
Displays the content of the stored ostringstream followed by a call to displayMoreParameters. | |
Additional Inherited Members | |
Static Public Attributes inherited from DimensionsBookkeeper< RANK > | |
static const int | N_RANK |
Arity of the Hilbert space. | |
static const int | DIMESIONS_BOOKKEEPER_RANK |
Ditto (to break ambiguity if a class is derived from another base featuring N_RANK ). | |
Static Public Attributes inherited from structure::DynamicsBase | |
static const RealFreqs | emptyRF |
static const ComplexFreqs | emptyCF |
Protected Member Functions inherited from structure::DynamicsBase | |
std::ostringstream & | getParsStream () |
The stored std::ostringstream object, for constructors of clients to write parameters on. | |
RealFreqs & | getRealFreqs () |
ComplexFreqs & | getComplexFreqs () |
Related Functions inherited from structure::DynamicsBase | |
template<int RANK> | |
const Exact< RANK >::Ptr | qse (DynamicsBase::Ptr base) |
Dynamic cast to a shared pointer to Exact More... | |
template<int RANK> | |
const Hamiltonian< RANK >::Ptr | qsh (DynamicsBase::Ptr base) |
Dynamic cast to a shared pointer to Hamiltonian More... | |
template<int RANK> | |
const Liouvillean< RANK >::Ptr | qsl (DynamicsBase::Ptr base) |
Dynamic cast to a shared pointer to Liouvillean More... | |
template<int RANK> | |
const Averaged< RANK >::Ptr | qsa (DynamicsBase::Ptr base) |
Dynamic cast to a shared pointer to Averaged More... | |
In the language of the framework, a free system is a unary system (arity 1, RANK=1
)
|
inline |
Simply connects the pure virtual QuantumSystem::highestFrequency to the implementation DynamicsBase::highestFrequency.
An exception to the rule “never redefine an inherited non-virtual function” is taken because these functions are called the same in the two bases of Free, which would otherwise create ambiguities.