Jpp  master_rocky-43-ge265d140c
the software that should make you happy
Public Types | Public Member Functions | Static Public Member Functions | Protected Attributes | List of all members
JOSCPROB::JComplexPhase< JGrid< double > > Struct Referencefinal

Template specialization for parameter grid. More...

#include <JComplexPhase.hh>

Inheritance diagram for JOSCPROB::JComplexPhase< JGrid< double > >:
JOSCPROB::JOscParameter< JGrid< double > > JLANG::JParameter< T > JLANG::JComparable< JParameter< T > >

Public Types

typedef JGrid< double > JGrid_t
 
typedef JComplexPhase< JGrid_tJComplexPhase_t
 
typedef JOscParameter< JGrid_tJOscParameter_t
 
typedef JOscParameter_t::JParameter_t JParameter_t
 
typedef JParameter_t::argument_type argument_type
 
typedef JParameter_t::value_type value_type
 

Public Member Functions

 JComplexPhase ()
 Default constructor. More...
 
 JComplexPhase (const JGrid_t &grid)
 Constructor. More...
 
 JComplexPhase (const int nx, const double xmin, const double xmax)
 Constructor. More...
 
 JComplexPhase (const double value)
 Constructor. More...
 
JComplexPhase_toperator= (const JGrid_t &grid)
 Assignment operator. More...
 
bool is_valid () const override final
 Check validity of oscillation parameter. More...
 
void setValue (const value_type &value)
 Set parameter. More...
 
const value_type getValue () const
 Get value of parameter. More...
 
 operator const value_type () const
 Type conversion operator. More...
 
const bool isDefined () const
 Get status of parameter. More...
 
bool less (const JParameter< T > &parameter) const
 Less than method. More...
 

Static Public Member Functions

static JComplexPhase_t make_parameter (const double value)
 Auxiliary function to create a complex phase parameter grid. More...
 

Protected Attributes

__value
 
bool is_defined
 

Detailed Description

Template specialization for parameter grid.

Definition at line 106 of file JComplexPhase.hh.

Member Typedef Documentation

◆ JGrid_t

typedef JGrid<double> JOSCPROB::JComplexPhase< JGrid< double > >::JGrid_t

Definition at line 109 of file JComplexPhase.hh.

◆ JComplexPhase_t

Definition at line 110 of file JComplexPhase.hh.

◆ JOscParameter_t

Definition at line 111 of file JComplexPhase.hh.

◆ JParameter_t

Definition at line 113 of file JComplexPhase.hh.

◆ argument_type

Definition at line 33 of file JOscParameter.hh.

◆ value_type

Definition at line 34 of file JOscParameter.hh.

Constructor & Destructor Documentation

◆ JComplexPhase() [1/4]

JOSCPROB::JComplexPhase< JGrid< double > >::JComplexPhase ( )
inline

Default constructor.

Definition at line 119 of file JComplexPhase.hh.

120  {}

◆ JComplexPhase() [2/4]

JOSCPROB::JComplexPhase< JGrid< double > >::JComplexPhase ( const JGrid_t grid)
inlineexplicit

Constructor.

Parameters
gridcomplex phase parameter grid [rad]

Definition at line 128 of file JComplexPhase.hh.

128  :
129  JOscParameter_t(grid)
130  {
131  using namespace JPP;
132 
133  if (!is_valid()) {
134  THROW(JValueOutOfRange, "JComplexPhase::JComplexPhase(): Invalid complex phase grid " << grid);
135  }
136  }
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
Definition: JException.hh:712
Exception for accessing a value in a collection that is outside of its range.
Definition: JException.hh:180
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
bool is_valid() const override final
Check validity of oscillation parameter.

◆ JComplexPhase() [3/4]

JOSCPROB::JComplexPhase< JGrid< double > >::JComplexPhase ( const int  nx,
const double  xmin,
const double  xmax 
)
inline

Constructor.

Parameters
nxnumber of elements
xminlower limit [rad]
xmaxupper limit [rad]

Definition at line 146 of file JComplexPhase.hh.

148  :
150  {}
const double xmax
Definition: JQuadrature.cc:24
const double xmin
Definition: JQuadrature.cc:23

◆ JComplexPhase() [4/4]

JOSCPROB::JComplexPhase< JGrid< double > >::JComplexPhase ( const double  value)
inlineexplicit

Constructor.

Parameters
valuecomplex phase value [rad]

Definition at line 158 of file JComplexPhase.hh.

158  :
159  JComplexPhase(1, value, value)
160  {}

Member Function Documentation

◆ operator=()

JComplexPhase_t& JOSCPROB::JComplexPhase< JGrid< double > >::operator= ( const JGrid_t grid)
inline

Assignment operator.

Parameters
gridcomplex phase parameter grid [rad]
Returns
complex phase

Definition at line 169 of file JComplexPhase.hh.

170  {
171  this->setValue(grid);
172 
173  return *this;
174  }
void setValue(const value_type &value)
Set parameter.

◆ is_valid()

bool JOSCPROB::JComplexPhase< JGrid< double > >::is_valid ( ) const
inlinefinaloverridevirtual

Check validity of oscillation parameter.

Returns
true if valid; else false

Implements JOSCPROB::JOscParameter< JGrid< double > >.

Definition at line 182 of file JComplexPhase.hh.

183  {
184  const double minPhase = this->getValue().getXmin();
185  const double maxPhase = this->getValue().getXmax();
186 
187  return (this->isDefined() ? !(minPhase < 0.0 || minPhase > 2 * M_PI ||
188  maxPhase < 0.0 || maxPhase > 2 * M_PI) : true);
189  }
const value_type getValue() const
Get value of parameter.
Definition: JParameter.hh:82
const bool isDefined() const
Get status of parameter.
Definition: JParameter.hh:116

◆ make_parameter()

static JComplexPhase_t JOSCPROB::JComplexPhase< JGrid< double > >::make_parameter ( const double  value)
inlinestatic

Auxiliary function to create a complex phase parameter grid.

Parameters
valuecomplex phase value [rad]
Returns
complex phase parameter

Definition at line 198 of file JComplexPhase.hh.

199  {
200  return JComplexPhase_t(value);
201  }

◆ setValue()

void JOSCPROB::JOscParameter< JGrid< double > >::setValue ( const value_type value)
inlineinherited

Set parameter.

Parameters
valueoscillation parameter value

Definition at line 74 of file JOscParameter.hh.

75  {
76  using namespace JPP;
77 
78  JParameter_t::setValue(value);
79 
80  if (!this->is_valid()) {
81  THROW(JValueOutOfRange, "JOscParameter<T>::setValue(): Given oscillation parameter is invalid " << value);
82  }
83  }
virtual bool is_valid() const=0
Check validity of oscillation parameter.

◆ getValue()

template<class T >
const value_type JLANG::JParameter< T >::getValue ( ) const
inlineinherited

Get value of parameter.

Returns
value

Definition at line 82 of file JParameter.hh.

83  {
84  return __value;
85  }

◆ operator const value_type()

template<class T >
JLANG::JParameter< T >::operator const value_type ( ) const
inlineinherited

Type conversion operator.

Returns
value

Definition at line 105 of file JParameter.hh.

106  {
107  return getValue();
108  }

◆ isDefined()

template<class T >
const bool JLANG::JParameter< T >::isDefined ( ) const
inlineinherited

Get status of parameter.

Returns
true if value has been defined (by read or assignment); else false

Definition at line 116 of file JParameter.hh.

117  {
118  return is_defined;
119  }

◆ less()

template<class T >
bool JLANG::JParameter< T >::less ( const JParameter< T > &  parameter) const
inlineinherited

Less than method.

This method evaluates to true if both parameter values are defined and this value is less than the value of the given parameter object.

Parameters
parameterparameter
Returns
true if both defined and first value less than second value; else false

Definition at line 131 of file JParameter.hh.

132  {
133  return this->isDefined() && parameter.isDefined() && this->getValue() < parameter.getValue();
134  }

Member Data Documentation

◆ __value

template<class T >
T JLANG::JParameter< T >::__value
protectedinherited

Definition at line 172 of file JParameter.hh.

◆ is_defined

template<class T >
bool JLANG::JParameter< T >::is_defined
protectedinherited

Definition at line 173 of file JParameter.hh.


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