Jpp  18.4.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Protected Attributes | Friends | List of all members
JOSCPROB::JBaselineComputer Struct Reference

Auxiliary data structure for storing and calculating baselines. More...

#include <JBaselineComputer.hh>

Inheritance diagram for JOSCPROB::JBaselineComputer:
JOSCPROB::JBaselineComputerInterface JIO::JSerialisable

Public Member Functions

 JBaselineComputer ()
 Default constructor. More...
 
 JBaselineComputer (const double Lmin, const double Lmax)
 Constructor. More...
 
double getMinimumBaseline () const
 Get minimum baseline. More...
 
double getMaximumBaseline () const
 Get maximum baseline. More...
 
double getInnerRadius () const
 Get inner radius. More...
 
double getOuterRadius () const
 Get outer radius. More...
 
double getCosth (const double L) const override
 Get cosine zenith angle for a given baseline. More...
 
double getBaseline (const double costh) const override
 Get baseline for a given cosine zenith angle. More...
 
double operator() (const double costh) const
 Get baseline for a given cosine zenith angle. More...
 
JReaderread (JReader &in) override
 Binary stream input of baseline extrema. More...
 
JWriterwrite (JWriter &out) const override
 Binary stream output of oscillation parameters. More...
 

Protected Attributes

double Lmin
 Minimum baseline [km]. More...
 
double Lmax
 Maximum baseline [km]. More...
 

Friends

std::istream & operator>> (std::istream &in, JBaselineComputer &object)
 Stream input of baseline calculator. More...
 
std::ostream & operator<< (std::ostream &out, const JBaselineComputer &object)
 Stream output of baseline calculator. More...
 

Detailed Description

Auxiliary data structure for storing and calculating baselines.

Definition at line 29 of file JBaselineComputer.hh.

Constructor & Destructor Documentation

JOSCPROB::JBaselineComputer::JBaselineComputer ( )
inline

Default constructor.

Definition at line 36 of file JBaselineComputer.hh.

36  :
37  Lmin(0.0),
38  Lmax(0.0)
39  {}
double Lmax
Maximum baseline [km].
double Lmin
Minimum baseline [km].
JOSCPROB::JBaselineComputer::JBaselineComputer ( const double  Lmin,
const double  Lmax 
)
inline

Constructor.

Parameters
LminMinimum baseline [km]
LmaxMaximum baseline [km]

Definition at line 48 of file JBaselineComputer.hh.

49  :
50  Lmin(Lmin),
51  Lmax(Lmax)
52  {}
double Lmax
Maximum baseline [km].
double Lmin
Minimum baseline [km].

Member Function Documentation

double JOSCPROB::JBaselineComputer::getMinimumBaseline ( ) const
inline

Get minimum baseline.

Returns
maximum baseline [km]

Definition at line 60 of file JBaselineComputer.hh.

61  {
62  return Lmin;
63  }
double Lmin
Minimum baseline [km].
double JOSCPROB::JBaselineComputer::getMaximumBaseline ( ) const
inline

Get maximum baseline.

Returns
maximum baseline [km]

Definition at line 71 of file JBaselineComputer.hh.

72  {
73  return Lmax;
74  }
double Lmax
Maximum baseline [km].
double JOSCPROB::JBaselineComputer::getInnerRadius ( ) const
inline

Get inner radius.

Returns
inner radius [km]

Definition at line 82 of file JBaselineComputer.hh.

83  {
84  return 0.5 * (Lmax - Lmin);
85  }
double Lmax
Maximum baseline [km].
double Lmin
Minimum baseline [km].
double JOSCPROB::JBaselineComputer::getOuterRadius ( ) const
inline

Get outer radius.

Returns
outer radius [km]

Definition at line 93 of file JBaselineComputer.hh.

94  {
95  return 0.5 * (Lmax + Lmin);;
96  }
double Lmax
Maximum baseline [km].
double Lmin
Minimum baseline [km].
double JOSCPROB::JBaselineComputer::getCosth ( const double  L) const
inlineoverridevirtual

Get cosine zenith angle for a given baseline.

Parameters
Lbaseline [km]
Returns
cosine zenith angle

Implements JOSCPROB::JBaselineComputerInterface.

Definition at line 105 of file JBaselineComputer.hh.

106  {
107  const double r = getInnerRadius();
108  const double R = getOuterRadius();
109 
110  return (R*R - r*r - L*L) / (2*L*r);
111  }
double getInnerRadius() const
Get inner radius.
double getOuterRadius() const
Get outer radius.
data_type r[M+1]
Definition: JPolint.hh:868
then JCookie sh JDataQuality D $DETECTOR_ID R
Definition: JDataQuality.sh:41
double JOSCPROB::JBaselineComputer::getBaseline ( const double  costh) const
inlineoverridevirtual

Get baseline for a given cosine zenith angle.

Parameters
costhcosine zenith angle
Returns
baseline [km]

Implements JOSCPROB::JBaselineComputerInterface.

Definition at line 120 of file JBaselineComputer.hh.

121  {
122  const double r = getInnerRadius();
123  const double R = getOuterRadius();
124 
125  const double ct = (fabs(costh) < 1.0 ? costh : (costh < 0 ? -1.0 : 1.0));
126 
127  return (-r * ct + sqrt(R*R - r*r * (1 - ct) * (1 + ct)));
128  }
double getInnerRadius() const
Get inner radius.
double getOuterRadius() const
Get outer radius.
data_type r[M+1]
Definition: JPolint.hh:868
then JCookie sh JDataQuality D $DETECTOR_ID R
Definition: JDataQuality.sh:41
double JOSCPROB::JBaselineComputer::operator() ( const double  costh) const
inline

Get baseline for a given cosine zenith angle.

Parameters
costhcosine zenith angle
Returns
baseline [km]

Definition at line 137 of file JBaselineComputer.hh.

138  {
139  return getBaseline(costh);
140  }
double getBaseline(const double costh) const override
Get baseline for a given cosine zenith angle.
JReader& JOSCPROB::JBaselineComputer::read ( JReader in)
inlineoverridevirtual

Binary stream input of baseline extrema.

Parameters
ininput stream
Returns
input stream

Implements JIO::JSerialisable.

Definition at line 149 of file JBaselineComputer.hh.

150  {
151  return in >> Lmin >> Lmax;
152  }
double Lmax
Maximum baseline [km].
double Lmin
Minimum baseline [km].
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
Definition: JCanberra.sh:48
JWriter& JOSCPROB::JBaselineComputer::write ( JWriter out) const
inlineoverridevirtual

Binary stream output of oscillation parameters.

Parameters
outoutput stream
Returns
output stream

Implements JIO::JSerialisable.

Definition at line 161 of file JBaselineComputer.hh.

162  {
163  return out << Lmin << Lmax;
164  }
double Lmax
Maximum baseline [km].
double Lmin
Minimum baseline [km].

Friends And Related Function Documentation

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

Stream input of baseline calculator.

Parameters
ininput stream
objectobject
Returns
input stream

Definition at line 174 of file JBaselineComputer.hh.

175  {
176  return in >> object.Lmin >> object.Lmax;
177  }
then fatal Wrong number of arguments fi set_variable DETECTOR $argv[1] set_variable INPUT_FILE $argv[2] eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
Definition: JCanberra.sh:48
std::ostream& operator<< ( std::ostream &  out,
const JBaselineComputer object 
)
friend

Stream output of baseline calculator.

Parameters
outoutput stream
objectobject
Returns
output stream

Definition at line 187 of file JBaselineComputer.hh.

188  {
189  using namespace JPP;
190 
191  return out << FIXED(15,5) << object.Lmin << FIXED(15,5) << object.Lmax;
192  }
Auxiliary data structure for floating point format specification.
Definition: JManip.hh:446

Member Data Documentation

double JOSCPROB::JBaselineComputer::Lmin
protected

Minimum baseline [km].

Definition at line 197 of file JBaselineComputer.hh.

double JOSCPROB::JBaselineComputer::Lmax
protected

Maximum baseline [km].

Definition at line 198 of file JBaselineComputer.hh.


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