faudes::DiscreteDensityFunction Class Reference

Density Function. More...

#include <sp_densityfnct.h>

List of all members.

Classes

struct  Entry

Public Types

typedef std::map< tpTime::Type,
Entry >::const_iterator 
CIterator
typedef std::map< tpTime::Type,
Entry >::iterator 
Iterator

Public Member Functions

 DiscreteDensityFunction (void)
virtual ~DiscreteDensityFunction (void)
virtual void Clear (void)
double Value (tpTime::Type time) const
const TimeIntervalTimeInt (tpTime::Type time) const
CIterator Begin (void) const
CIterator End (void) const
CIterator At (tpTime::Type time) const
const TimeIntervalTimeInt (CIterator mit) const
const double & Value (CIterator mit) const
Iterator Begin (void)
Iterator End (void)
Iterator At (tpTime::Type time)
const Entry EntryAt (tpTime::Type time) const
const std::string & Name (void) const
void Name (const std::string &rName)
int Count (void) const
void Count (int count)
double MaxValue (void) const
double MinValue (void) const
tpTime::Type MaxTime (void) const
tpTime::Type MinTime (void) const
double Sum (void) const
double SquareSum (void) const
double Average (void) const
double Variance (void) const
double Quantile05 (void) const
double Quantile95 (void) const
void Write (TokenWriter &rTw) const
void Write (void) const
std::string ToString (void) const
void Read (TokenReader &rTr)
void Compile (void) const
std::string Str (void) const

Protected Member Functions

virtual void CompileNonConst (void)

Protected Attributes

std::map< tpTime::Type, EntrymValueMap
std::string mName
int mCount
double mMaxValue
double mMinValue
tpTime::Type mMaxTime
tpTime::Type mMinTime
double mSum
double mSquareSum
double mAverage
double mVariance
double mQuantile05
double mQuantile95

Detailed Description

Density Function.

A DiscreteDensityFnction models a piecewise constant map with non-negative support. It consists of a sorted vector (aka map) of disjoint time intervals with one associated value each.

The current implementation is rather incomplete, inefficient, and buggy. The ToDo list includes

  • we assume consecutive right open intervals, so either assert the restriction or implement more general
  • we assume an integer time type, so either assert the restriction or implement more general
  • fix token io
  • need proper access methods
  • implement method to evaluate random variable with given density
  • generalise to class DensityFunction to include some continuous functions eg exponential, gauss
  • have this a proper faudes type

Definition at line 42 of file sp_densityfnct.h.


Member Typedef Documentation

Definition at line 64 of file sp_densityfnct.h.

Definition at line 65 of file sp_densityfnct.h.


Constructor & Destructor Documentation

faudes::DiscreteDensityFunction::DiscreteDensityFunction ( void   ) 

Definition at line 26 of file sp_densityfnct.cpp.

virtual faudes::DiscreteDensityFunction::~DiscreteDensityFunction ( void   )  [inline, virtual]

Definition at line 48 of file sp_densityfnct.h.


Member Function Documentation

Iterator faudes::DiscreteDensityFunction::At ( tpTime::Type  time  )  [inline]

Definition at line 77 of file sp_densityfnct.h.

CIterator faudes::DiscreteDensityFunction::At ( tpTime::Type  time  )  const [inline]

Definition at line 70 of file sp_densityfnct.h.

double faudes::DiscreteDensityFunction::Average ( void   )  const [inline]

Definition at line 95 of file sp_densityfnct.h.

Iterator faudes::DiscreteDensityFunction::Begin ( void   )  [inline]

Definition at line 75 of file sp_densityfnct.h.

CIterator faudes::DiscreteDensityFunction::Begin ( void   )  const [inline]

Definition at line 68 of file sp_densityfnct.h.

void faudes::DiscreteDensityFunction::Clear ( void   )  [virtual]

Reimplemented in faudes::SampledDensityFunction.

Definition at line 71 of file sp_densityfnct.cpp.

void faudes::DiscreteDensityFunction::Compile ( void   )  const

Definition at line 88 of file sp_densityfnct.cpp.

void faudes::DiscreteDensityFunction::CompileNonConst ( void   )  [protected, virtual]

Reimplemented in faudes::SampledDensityFunction.

Definition at line 94 of file sp_densityfnct.cpp.

void faudes::DiscreteDensityFunction::Count ( int  count  )  [inline]

Definition at line 86 of file sp_densityfnct.h.

int faudes::DiscreteDensityFunction::Count ( void   )  const [inline]

Definition at line 85 of file sp_densityfnct.h.

Iterator faudes::DiscreteDensityFunction::End ( void   )  [inline]

Definition at line 76 of file sp_densityfnct.h.

CIterator faudes::DiscreteDensityFunction::End ( void   )  const [inline]

Definition at line 69 of file sp_densityfnct.h.

const DiscreteDensityFunction::Entry faudes::DiscreteDensityFunction::EntryAt ( tpTime::Type  time  )  const

Definition at line 170 of file sp_densityfnct.cpp.

tpTime::Type faudes::DiscreteDensityFunction::MaxTime ( void   )  const [inline]

Definition at line 91 of file sp_densityfnct.h.

double faudes::DiscreteDensityFunction::MaxValue ( void   )  const [inline]

Definition at line 89 of file sp_densityfnct.h.

tpTime::Type faudes::DiscreteDensityFunction::MinTime ( void   )  const [inline]

Definition at line 92 of file sp_densityfnct.h.

double faudes::DiscreteDensityFunction::MinValue ( void   )  const [inline]

Definition at line 90 of file sp_densityfnct.h.

void faudes::DiscreteDensityFunction::Name ( const std::string &  rName  )  [inline]

Definition at line 82 of file sp_densityfnct.h.

const std::string& faudes::DiscreteDensityFunction::Name ( void   )  const [inline]

Definition at line 81 of file sp_densityfnct.h.

double faudes::DiscreteDensityFunction::Quantile05 ( void   )  const [inline]

Definition at line 97 of file sp_densityfnct.h.

double faudes::DiscreteDensityFunction::Quantile95 ( void   )  const [inline]

Definition at line 98 of file sp_densityfnct.h.

void faudes::DiscreteDensityFunction::Read ( TokenReader rTr  ) 

Definition at line 63 of file sp_densityfnct.cpp.

double faudes::DiscreteDensityFunction::SquareSum ( void   )  const [inline]

Definition at line 94 of file sp_densityfnct.h.

std::string faudes::DiscreteDensityFunction::Str ( void   )  const

Definition at line 185 of file sp_densityfnct.cpp.

double faudes::DiscreteDensityFunction::Sum ( void   )  const [inline]

Definition at line 93 of file sp_densityfnct.h.

const TimeInterval& faudes::DiscreteDensityFunction::TimeInt ( CIterator  mit  )  const [inline]

Definition at line 71 of file sp_densityfnct.h.

const TimeInterval & faudes::DiscreteDensityFunction::TimeInt ( tpTime::Type  time  )  const

Definition at line 182 of file sp_densityfnct.cpp.

std::string faudes::DiscreteDensityFunction::ToString ( void   )  const

Definition at line 50 of file sp_densityfnct.cpp.

const double& faudes::DiscreteDensityFunction::Value ( CIterator  mit  )  const [inline]

Definition at line 72 of file sp_densityfnct.h.

double faudes::DiscreteDensityFunction::Value ( tpTime::Type  time  )  const

Definition at line 181 of file sp_densityfnct.cpp.

double faudes::DiscreteDensityFunction::Variance ( void   )  const [inline]

Definition at line 96 of file sp_densityfnct.h.

void faudes::DiscreteDensityFunction::Write ( void   )  const

Definition at line 57 of file sp_densityfnct.cpp.

void faudes::DiscreteDensityFunction::Write ( TokenWriter rTw  )  const

Definition at line 32 of file sp_densityfnct.cpp.


Member Data Documentation

Definition at line 129 of file sp_densityfnct.h.

Definition at line 120 of file sp_densityfnct.h.

Definition at line 123 of file sp_densityfnct.h.

Definition at line 124 of file sp_densityfnct.h.

std::string faudes::DiscreteDensityFunction::mName [protected]

Definition at line 119 of file sp_densityfnct.h.

Definition at line 131 of file sp_densityfnct.h.

Definition at line 132 of file sp_densityfnct.h.

Definition at line 128 of file sp_densityfnct.h.

Definition at line 127 of file sp_densityfnct.h.

Definition at line 116 of file sp_densityfnct.h.

Definition at line 130 of file sp_densityfnct.h.


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

libFAUDES 2.23h --- 2014.04.03 --- c++ api documentaion by doxygen