Jpp test-rotations-new
the software that should make you happy
Loading...
Searching...
No Matches
JFIT::JEnergy Class Reference

Data structure for fit of energy. More...

#include <JEnergy.hh>

Inheritance diagram for JFIT::JEnergy:
JMATH::JMath< JFirst_t, JSecond_t > JLANG::JComparable< JFirst_t, JSecond_t > JFIT::JLine3EZ JFIT::JModel< JEnergy > JFIT::JShowerEH

Public Types

typedef double JEnergy::* parameter_type
 

Public Member Functions

 JEnergy ()
 Default constructor.
 
 JEnergy (const double X)
 Constructor.
 
const JEnergygetEnergy () const
 Get Energy.
 
void setEnergy (const JEnergy &energy)
 Set Energy.
 
bool less (const JEnergy &X) const
 Less than method.
 
JEnergynegate ()
 Prefix unary minus.
 
JEnergyadd (const JEnergy &value)
 Addition operator.
 
JEnergysub (const JEnergy &value)
 Subtraction operator.
 
JEnergymul (const double value)
 Multiplication operator.
 
JEnergydiv (const double value)
 Division operator.
 
double getlog10E () const
 Get energy.
 
double getE () const
 Get energy.
 
void putE (const double E)
 Put energy.
 
double getDE () const
 Get derivative of energy.
 
JFirst_t & mul (const JSecond_t &object)
 Multiply with object.
 

Static Public Member Functions

static JEnergy min ()
 Get minimum possible value.
 
static JEnergy max ()
 Get maximum possible value.
 
static parameter_type pE ()
 

Protected Attributes

double __X
 

Friends

double fabs (const JEnergy &energy)
 Get absolute value.
 
std::istream & operator>> (std::istream &in, JEnergy &object)
 Read object from input.
 
std::ostream & operator<< (std::ostream &out, const JEnergy &object)
 Write object to output.
 

Detailed Description

Data structure for fit of energy.

The internal value is equal to the logarithm of the energy.

Definition at line 28 of file JEnergy.hh.

Member Typedef Documentation

◆ parameter_type

double JEnergy::* JFIT::JEnergy::parameter_type

Definition at line 261 of file JEnergy.hh.

Constructor & Destructor Documentation

◆ JEnergy() [1/2]

JFIT::JEnergy::JEnergy ( )
inline

Default constructor.

Definition at line 36 of file JEnergy.hh.

36 :
37 __X(0.0)
38 {}

◆ JEnergy() [2/2]

JFIT::JEnergy::JEnergy ( const double X)
inline

Constructor.

Parameters
Xx-value [log(E/GeV)]

Definition at line 46 of file JEnergy.hh.

46 :
47 __X(X)
48 {}

Member Function Documentation

◆ getEnergy()

const JEnergy & JFIT::JEnergy::getEnergy ( ) const
inline

Get Energy.

Returns
Energy

Definition at line 56 of file JEnergy.hh.

57 {
58 return static_cast<const JEnergy&>(*this);
59 }
JEnergy()
Default constructor.
Definition JEnergy.hh:36

◆ setEnergy()

void JFIT::JEnergy::setEnergy ( const JEnergy & energy)
inline

Set Energy.

Parameters
energyEnergy

Definition at line 67 of file JEnergy.hh.

68 {
69 static_cast<JEnergy&>(*this) = energy;
70 }

◆ less()

bool JFIT::JEnergy::less ( const JEnergy & X) const
inline

Less than method.

Parameters
XEnergy [log(E/GeV)]
Returns
true if this energy less than given energy; else false

Definition at line 79 of file JEnergy.hh.

80 {
81 return __X < X.__X;
82 }

◆ negate()

JEnergy & JFIT::JEnergy::negate ( )
inline

Prefix unary minus.

Returns
Energy

Definition at line 90 of file JEnergy.hh.

91 {
92 __X = -__X;
93
94 return *this;
95 }

◆ add()

JEnergy & JFIT::JEnergy::add ( const JEnergy & value)
inline

Addition operator.

Parameters
valueEnergy
Returns
Energy

Definition at line 104 of file JEnergy.hh.

105 {
106 __X += value.__X;
107
108 return *this;
109 }

◆ sub()

JEnergy & JFIT::JEnergy::sub ( const JEnergy & value)
inline

Subtraction operator.

Parameters
valueEnergy
Returns
Energy

Definition at line 118 of file JEnergy.hh.

119 {
120 __X -= value.__X;
121
122 return *this;
123 }

◆ mul() [1/2]

JEnergy & JFIT::JEnergy::mul ( const double value)
inline

Multiplication operator.

Parameters
valuemultiplication factor
Returns
Energy

Definition at line 132 of file JEnergy.hh.

133 {
134 __X *= value;
135
136 return *this;
137 }

◆ div()

JEnergy & JFIT::JEnergy::div ( const double value)
inline

Division operator.

Parameters
valuemultiplication factor
Returns
Energy

Definition at line 146 of file JEnergy.hh.

147 {
148 __X /= value;
149
150 return *this;
151 }

◆ getlog10E()

double JFIT::JEnergy::getlog10E ( ) const
inline

Get energy.

Returns
Energy [log(E/GeV)]

Definition at line 159 of file JEnergy.hh.

160 {
161 return __X;
162 }

◆ getE()

double JFIT::JEnergy::getE ( ) const
inline

Get energy.

Returns
Energy [GeV]

Definition at line 170 of file JEnergy.hh.

171 {
172 return pow(10.0, __X);
173 }
T pow(const T &x, const double y)
Power .
Definition JMath.hh:97

◆ putE()

void JFIT::JEnergy::putE ( const double E)
inline

Put energy.

Parameters
EEnergy [GeV]

Definition at line 181 of file JEnergy.hh.

182 {
183 __X = log10(E);
184 }

◆ getDE()

double JFIT::JEnergy::getDE ( ) const
inline

Get derivative of energy.

Returns
dE/dx [GeV]

Definition at line 192 of file JEnergy.hh.

193 {
194 return getE() * log(10.0);
195 }
double getE() const
Get energy.
Definition JEnergy.hh:170

◆ min()

static JEnergy JFIT::JEnergy::min ( )
inlinestatic

Get minimum possible value.

Returns
minimum possible value

Definition at line 214 of file JEnergy.hh.

215 {
216 return JEnergy(std::numeric_limits<double>::lowest());
217 }

◆ max()

static JEnergy JFIT::JEnergy::max ( )
inlinestatic

Get maximum possible value.

Returns
maximum possible value

Definition at line 225 of file JEnergy.hh.

226 {
227 return JEnergy(std::numeric_limits<double>::max());
228 }

◆ pE()

static parameter_type JFIT::JEnergy::pE ( )
inlinestatic

Definition at line 263 of file JEnergy.hh.

263{ return &JEnergy::__X; }

◆ mul() [2/2]

template<class JFirst_t , class JSecond_t >
JFirst_t & JMATH::JMath< JFirst_t, JSecond_t >::mul ( const JSecond_t & object)
inlineinherited

Multiply with object.

Parameters
objectobject
Returns
result object

Definition at line 354 of file JMath.hh.

355 {
356 return static_cast<JFirst_t&>(*this) = JFirst_t().mul(static_cast<const JFirst_t&>(*this), object);
357 }

Friends And Related Symbol Documentation

◆ fabs

double fabs ( const JEnergy & energy)
friend

Get absolute value.

Parameters
energyenergy

Definition at line 203 of file JEnergy.hh.

204 {
205 return std::fabs(energy.__X);
206 }

◆ operator>>

std::istream & operator>> ( std::istream & in,
JEnergy & object )
friend

Read object from input.

Parameters
ininput stream
objectobject
Returns
input stream

Definition at line 238 of file JEnergy.hh.

239 {
240 in >> object.__X;
241
242 return in;
243 }

◆ operator<<

std::ostream & operator<< ( std::ostream & out,
const JEnergy & object )
friend

Write object to output.

Parameters
outoutput stream
objectobject
Returns
output stream

Definition at line 253 of file JEnergy.hh.

254 {
255 out << object.__X;
256
257 return out;
258 }

Member Data Documentation

◆ __X

double JFIT::JEnergy::__X
protected

Definition at line 266 of file JEnergy.hh.


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