Jpp 19.3.0-rc.3
the software that should make you happy
Loading...
Searching...
No Matches
JOSCPROB::JOscChannel Struct Reference

Neutrino oscillation channel. More...

#include <JOscChannel.hh>

Inheritance diagram for JOSCPROB::JOscChannel:
JLANG::JComparable< JOscChannel >

Classes

struct  JOscChannelHelper
 Auxiliary class for I/O of oscillation channel. More...
 

Public Member Functions

 JOscChannel ()
 Default constructor.
 
 JOscChannel (const JFlavour_t in, const JFlavour_t out, const JChargeParity_t Cparity)
 Constructor.
 
 JOscChannel (const int in, const int out, const int Cparity)
 Constructor.
 
bool is_valid () const
 Check validity of this oscillation channel.
 
bool less (const JOscChannel &channel) const
 Less-than method.
 
JProperties getProperties (const JEquationParameters &equation=JOscChannel::getEquationParameters())
 Get properties of this class.
 
JProperties getProperties (const JEquationParameters &equation=JOscChannel::getEquationParameters()) const
 Get properties of this class.
 
void setProperties (const JProperties &properties)
 Set properties of this class.
 

Static Public Member Functions

static JEquationParametersgetEquationParameters ()
 Get equation parameters.
 
static void setEquationParameters (const JEquationParameters &equation)
 Set equation parameters.
 

Public Attributes

JFlavour_t in
 Incoming flavour.
 
JFlavour_t out
 Outcoming flavour.
 
JChargeParity_t Cparity
 Charge-parity.
 

Friends

std::ostream & operator<< (std::ostream &out, const JOscChannel &object)
 Write channel to output.
 
std::istream & operator>> (std::istream &in, JOscChannel &object)
 Read channel from input.
 

Detailed Description

Neutrino oscillation channel.

Definition at line 110 of file JOscChannel.hh.

Constructor & Destructor Documentation

◆ JOscChannel() [1/3]

JOSCPROB::JOscChannel::JOscChannel ( )
inline

Default constructor.

Definition at line 116 of file JOscChannel.hh.

◆ JOscChannel() [2/3]

JOSCPROB::JOscChannel::JOscChannel ( const JFlavour_t in,
const JFlavour_t out,
const JChargeParity_t Cparity )
inline

Constructor.


Parameters
ininput flavour
outoutput flavour
Cparitycharge parity

Definition at line 130 of file JOscChannel.hh.

132 :
133 in (in),
134 out(out),
136 {}

◆ JOscChannel() [3/3]

JOSCPROB::JOscChannel::JOscChannel ( const int in,
const int out,
const int Cparity )
inline

Constructor.

Parameters
ininput flavour
outoutput flavour
Cparitycharge parity

Definition at line 146 of file JOscChannel.hh.

148 :
149 in (getFlavour(in)),
152 {}
JChargeParity_t getChargeParity(const int pdgType)
Auxiliary function for retrieving the charge-parity of a given PDG type.
JFlavour_t getFlavour(const int pdgType)
Auxiliary function for retrieving the flavour corresponding to a given PDG identifier.

Member Function Documentation

◆ is_valid()

bool JOSCPROB::JOscChannel::is_valid ( ) const
inline

Check validity of this oscillation channel.

Returns
true if this oscillation channel is valid; else false.

Definition at line 160 of file JOscChannel.hh.

◆ less()

bool JOSCPROB::JOscChannel::less ( const JOscChannel & channel) const
inline

Less-than method.

Parameters
channelchannel
Returns
true this channel less than given channel; else false

Definition at line 174 of file JOscChannel.hh.

175 {
176 if (this->Cparity == channel.Cparity) {
177
178 if (this->in == channel.in) {
179
180 return this->out < channel.out;
181
182 } else {
183
184 return this->in < channel.in;
185 }
186
187 } else {
188
189 return this->Cparity < channel.Cparity;
190 }
191 }

◆ getEquationParameters()

static JEquationParameters & JOSCPROB::JOscChannel::getEquationParameters ( )
inlinestatic

Get equation parameters.

Returns
equation parameters

Definition at line 231 of file JOscChannel.hh.

232 {
233 static JEquationParameters equation("=", "\n\r;,", "./", "#");
234
235 return equation;
236 }
Simple data structure to support I/O of equations (see class JLANG::JEquation).

◆ setEquationParameters()

static void JOSCPROB::JOscChannel::setEquationParameters ( const JEquationParameters & equation)
inlinestatic

Set equation parameters.

Parameters
equationequation parameters

Definition at line 244 of file JOscChannel.hh.

245 {
246 getEquationParameters() = equation;
247 }
static JEquationParameters & getEquationParameters()
Get equation parameters.

◆ getProperties() [1/2]

JProperties JOSCPROB::JOscChannel::getProperties ( const JEquationParameters & equation = JOscChannel::getEquationParameters())
inline

Get properties of this class.

Parameters
equationequation parameters

Definition at line 255 of file JOscChannel.hh.

256 {
257 return JOscChannelHelper(*this, equation);
258 }

◆ getProperties() [2/2]

JProperties JOSCPROB::JOscChannel::getProperties ( const JEquationParameters & equation = JOscChannel::getEquationParameters()) const
inline

Get properties of this class.

Parameters
equationequation parameters

Definition at line 266 of file JOscChannel.hh.

267 {
268 return JOscChannelHelper(*this, equation);
269 }

◆ setProperties()

void JOSCPROB::JOscChannel::setProperties ( const JProperties & properties)
inline

Set properties of this class.

Parameters
propertiesproperties

Definition at line 277 of file JOscChannel.hh.

278 {
279 this->in = getFlavour (properties.getValue<int>("in"));
280 this->out = getFlavour (properties.getValue<int>("out"));
281 this->Cparity = getChargeParity(properties.getValue<int>("Cparity"));
282 }
const T & getValue(const std::string &key) const
Get value.

Friends And Related Symbol Documentation

◆ operator<<

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

Write channel to output.

Parameters
outoutput stream
objectoscillation channel
Returns
output stream

Definition at line 201 of file JOscChannel.hh.

202 {
203 return out << object.getProperties();
204 }

◆ operator>>

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

Read channel from input.

Parameters
ininput stream
objectoscillation channel
Returns
input stream

Definition at line 214 of file JOscChannel.hh.

215 {
216 JProperties properties(object.getProperties());
217
218 in >> properties;
219
220 object.setProperties(properties);
221
222 return in;
223 }
Utility class to parse parameter values.
JProperties getProperties(const JEquationParameters &equation=JOscChannel::getEquationParameters())
Get properties of this class.

Member Data Documentation

◆ in

JFlavour_t JOSCPROB::JOscChannel::in

Incoming flavour.

Definition at line 285 of file JOscChannel.hh.

◆ out

JFlavour_t JOSCPROB::JOscChannel::out

Outcoming flavour.

Definition at line 286 of file JOscChannel.hh.

◆ Cparity

JChargeParity_t JOSCPROB::JOscChannel::Cparity

Charge-parity.

Definition at line 287 of file JOscChannel.hh.


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