Jpp
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | Friends | List of all members
JMATH::JGauss_t Struct Reference

Gauss model. More...

#include <JGauss.hh>

Inheritance diagram for JMATH::JGauss_t:
JMATH::JMath< JGauss_t > JLANG::JEquals< JGauss_t > JMATH::JGauss JACOUSTICS::JPDFGauss

Public Member Functions

 JGauss_t ()
 Default constructor. More...
 
 JGauss_t (const double mean, const double sigma, const double signal, const double background)
 Constructor. More...
 
bool equals (const JGauss_t &gauss, const double eps=std::numeric_limits< double >::min()) const
 Equality. More...
 
JGauss_tadd (const JGauss_t &gauss)
 Add gauss. More...
 
JGauss_tsub (const JGauss_t &gauss)
 Subtract gauss. More...
 
JGauss_tmul (const double factor)
 Scale gauss. More...
 
JGauss_tmul (const JNullType &object)
 Multiply with object. More...
 

Public Attributes

double mean
 
double sigma
 
double signal
 
double background
 

Friends

std::istream & operator>> (std::istream &in, JGauss_t &gauss)
 Write Gauss to input stream. More...
 
std::ostream & operator<< (std::ostream &out, const JGauss_t &gauss)
 Write Gauss to output stream. More...
 

Detailed Description

Gauss model.

Definition at line 30 of file JGauss.hh.

Constructor & Destructor Documentation

JMATH::JGauss_t::JGauss_t ( )
inline

Default constructor.

Definition at line 37 of file JGauss.hh.

37  :
38  mean (0.0),
39  sigma (0.0),
40  signal (0.0),
41  background(0.0)
42  {}
double mean
Definition: JGauss.hh:162
double signal
Definition: JGauss.hh:164
double background
Definition: JGauss.hh:165
double sigma
Definition: JGauss.hh:163
JMATH::JGauss_t::JGauss_t ( const double  mean,
const double  sigma,
const double  signal,
const double  background 
)
inline

Constructor.

Parameters
meanmean
sigmasigma
signalsignal
backgroundbackground

Definition at line 53 of file JGauss.hh.

56  :
57  mean (mean),
58  sigma (sigma),
59  signal (signal),
61  {}
double mean
Definition: JGauss.hh:162
double signal
Definition: JGauss.hh:164
double background
Definition: JGauss.hh:165
double sigma
Definition: JGauss.hh:163

Member Function Documentation

bool JMATH::JGauss_t::equals ( const JGauss_t gauss,
const double  eps = std::numeric_limits<double>::min() 
) const
inline

Equality.

Parameters
gaussgauss
epsnumerical precision
Returns
true if gauss's identical; else false

Definition at line 71 of file JGauss.hh.

73  {
74  return (fabs(mean - gauss.mean) <= eps &&
75  fabs(sigma - gauss.sigma) <= eps &&
76  fabs(signal - gauss.signal) <= eps &&
77  fabs(background - gauss.background) <= eps);
78  }
double mean
Definition: JGauss.hh:162
double signal
Definition: JGauss.hh:164
double background
Definition: JGauss.hh:165
double sigma
Definition: JGauss.hh:163
JGauss_t& JMATH::JGauss_t::add ( const JGauss_t gauss)
inline

Add gauss.

Parameters
gaussgauss
Returns
this gauss

Definition at line 87 of file JGauss.hh.

88  {
89  mean += gauss.mean;
90  sigma += gauss.sigma;
91  signal += gauss.signal;
92  background += gauss.background;
93 
94  return *this;
95  }
double mean
Definition: JGauss.hh:162
double signal
Definition: JGauss.hh:164
double background
Definition: JGauss.hh:165
double sigma
Definition: JGauss.hh:163
JGauss_t& JMATH::JGauss_t::sub ( const JGauss_t gauss)
inline

Subtract gauss.

Parameters
gaussgauss
Returns
this gauss

Definition at line 104 of file JGauss.hh.

105  {
106  mean -= gauss.mean;
107  sigma -= gauss.sigma;
108  signal -= gauss.signal;
109  background -= gauss.background;
110 
111  return *this;
112  }
double mean
Definition: JGauss.hh:162
double signal
Definition: JGauss.hh:164
double background
Definition: JGauss.hh:165
double sigma
Definition: JGauss.hh:163
JGauss_t& JMATH::JGauss_t::mul ( const double  factor)
inline

Scale gauss.

Parameters
factormultiplication factor
Returns
this gauss

Definition at line 121 of file JGauss.hh.

122  {
123  mean *= factor;
124  sigma *= factor;
125  signal *= factor;
126  background *= factor;
127 
128  return *this;
129  }
double mean
Definition: JGauss.hh:162
double signal
Definition: JGauss.hh:164
double background
Definition: JGauss.hh:165
double sigma
Definition: JGauss.hh:163
JGauss_t & JMATH::JMath< JGauss_t , JNullType >::mul ( const JNullType object)
inlineinherited

Multiply with object.

Parameters
objectobject
Returns
result object

Definition at line 273 of file JMath.hh.

274  {
275  return static_cast<JFirst_t&>(*this) = JCalculator<JFirst_t>::calculator.mul(static_cast<const JFirst_t&>(*this), object);
276  }
Auxiliary class for arithmetic operations on objects.
Definition: JCalculator.hh:18

Friends And Related Function Documentation

std::istream& operator>> ( std::istream &  in,
JGauss_t gauss 
)
friend

Write Gauss to input stream.

Parameters
ininput stream
gaussgauss
Returns
input stream

Definition at line 139 of file JGauss.hh.

140  {
141  return in >> gauss.mean >> gauss.sigma >> gauss.signal >> gauss.background;
142  }
double mean
Definition: JGauss.hh:162
esac print_variable DETECTOR INPUT_FILE OUTPUT_FILE CDF for TYPE in
Definition: JSirene.sh:45
double signal
Definition: JGauss.hh:164
double background
Definition: JGauss.hh:165
double sigma
Definition: JGauss.hh:163
std::ostream& operator<< ( std::ostream &  out,
const JGauss_t gauss 
)
friend

Write Gauss to output stream.

Parameters
outoutput stream
gaussgauss
Returns
output stream

Definition at line 152 of file JGauss.hh.

153  {
154  using namespace std;
155 
156  return out << FIXED(7,3) << gauss.mean << ' '
157  << FIXED(7,3) << gauss.sigma << ' '
158  << FIXED(9,3) << gauss.signal << ' '
159  << FIXED(9,3) << gauss.background;
160  }
double mean
Definition: JGauss.hh:162
Auxiliary data structure for floating point format specification.
Definition: JPrint.hh:481
double signal
Definition: JGauss.hh:164
double background
Definition: JGauss.hh:165
double sigma
Definition: JGauss.hh:163

Member Data Documentation

double JMATH::JGauss_t::mean

Definition at line 162 of file JGauss.hh.

double JMATH::JGauss_t::sigma

Definition at line 163 of file JGauss.hh.

double JMATH::JGauss_t::signal

Definition at line 164 of file JGauss.hh.

double JMATH::JGauss_t::background

Definition at line 165 of file JGauss.hh.


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