Jpp  19.0.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Private Attributes | List of all members
JMATH::JQuantile_t Struct Reference

Auxiliary data structure for average. More...

#include <JQuantile_t.hh>

Public Member Functions

 JQuantile_t ()
 Default constructor. More...
 
void reset ()
 Reset. More...
 
void put (const double x)
 Put value. More...
 
double getMean () const
 Get mean value. More...
 
double getMean (const double value) const
 Get mean value. More...
 

Private Attributes

std::vector< double > buffer
 

Detailed Description

Auxiliary data structure for average.

The determination of the average should be independent of the order of the input values.

Definition at line 25 of file JQuantile_t.hh.

Constructor & Destructor Documentation

JMATH::JQuantile_t::JQuantile_t ( )
inline

Default constructor.

Definition at line 29 of file JQuantile_t.hh.

30  {
31  reset();
32  }
void reset()
Reset.
Definition: JQuantile_t.hh:38

Member Function Documentation

void JMATH::JQuantile_t::reset ( )
inline

Reset.

Definition at line 38 of file JQuantile_t.hh.

39  {
40  buffer.clear();
41  }
std::vector< double > buffer
Definition: JQuantile_t.hh:90
void JMATH::JQuantile_t::put ( const double  x)
inline

Put value.

Parameters
xvalue

Definition at line 49 of file JQuantile_t.hh.

50  {
51  buffer.push_back(x);
52  }
std::vector< double > buffer
Definition: JQuantile_t.hh:90
double JMATH::JQuantile_t::getMean ( ) const
inline

Get mean value.

Returns
mean value

Definition at line 60 of file JQuantile_t.hh.

61  {
62  using namespace std;
63 
64  if (!buffer.empty()) {
65 
66  sort(buffer.begin(), buffer.end());
67 
68  return accumulate(buffer.begin(), buffer.end(), 0.0) / buffer.size();
69  }
70 
71  THROW(JDivisionByZero, "JQuantile_t::getMean()");
72  }
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
Definition: JException.hh:712
std::vector< double > buffer
Definition: JQuantile_t.hh:90
void accumulate(T &value, JBool< false > option)
Accumulation of value.
double JMATH::JQuantile_t::getMean ( const double  value) const
inline

Get mean value.

Parameters
valuedefault value
Returns
mean value

Definition at line 81 of file JQuantile_t.hh.

82  {
83  if (!buffer.empty())
84  return getMean();
85  else
86  return value;
87  }
std::vector< double > buffer
Definition: JQuantile_t.hh:90
double getMean() const
Get mean value.
Definition: JQuantile_t.hh:60

Member Data Documentation

std::vector<double> JMATH::JQuantile_t::buffer
mutableprivate

Definition at line 90 of file JQuantile_t.hh.


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