C++QEDCore  v2 Milestone 10
a framework for simulating open quantum dynamics – core
structure::AveragedCommon Class Referenceabstract

The template-parameter independent base of Averaged. More...

#include <Averaged.h>

+ Inheritance diagram for structure::AveragedCommon:

Public Types

typedef boost::shared_ptr< const AveragedCommonPtr
 
typedef LiouvilleanAveragedCommon::DArray1D Averages
 The 1D real array storing the calculated quantum averages (perhaps in real-imaginary pairs if a given average is complex).
 

Public Member Functions

void process (Averages &averages) const
 This function is a hook between LiouvilleanAveragedCommonRanked::average and display. More...
 
std::ostream & display (const Averages &averages, std::ostream &os, int precision) const
 Displays the system characteristics in a nicely tabulated format. More...
 

Detailed Description

The template-parameter independent base of Averaged.

Definition at line 28 of file Averaged.h.

Member Function Documentation

std::ostream& structure::AveragedCommon::display ( const Averages averages,
std::ostream &  os,
int  precision 
) const
inline

Displays the system characteristics in a nicely tabulated format.

Calculated (& processed) quantum averages (or higher moments or any other system characteristics that can be calculated on the basis of quantum averages) are displayed.

The display format greatly depends on what kind of system is in question (in particular, elementary system or Composite).

Todo:
The precision argument is obsolete after rev. #04265ae since precision might be propagated just via FormDouble::overallPrecision throughout the whole framework.

Definition at line 58 of file Averaged.h.

void structure::AveragedCommon::process ( Averages averages) const
inline

This function is a hook between LiouvilleanAveragedCommonRanked::average and display.

It allows for arbitrary manipulations with the already calculated set of averages before displaying them.

The most common usage is for calculation of higher moments of a quantum operator $\Ob$. In this case, since the Averages array returned by LiouvilleanAveragedCommonRanked::average must depend linearly on $\rho,$ it may contain $\avr{\Ob}=\Tr{\Ob\rho}$ and $\avr{\Ob^2}=\Tr{\Ob^2\rho},$ but it cannot contain e.g. the variance $\avr{\Ob^2}-\avr{\Ob}^2$ because this depends quadratically on $\rho$. The variance can be calculated by this function.

Definition at line 46 of file Averaged.h.


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