Jpp  19.0.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 31 of file JBaselineComputer.hh.

Constructor & Destructor Documentation

JOSCPROB::JBaselineComputer::JBaselineComputer ( )
inline

Default constructor.

Definition at line 38 of file JBaselineComputer.hh.

38  :
39  Lmin(0.0),
40  Lmax(0.0)
41  {}
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 50 of file JBaselineComputer.hh.

51  :
52  Lmin(Lmin),
53  Lmax(Lmax)
54  {}
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 62 of file JBaselineComputer.hh.

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

Get maximum baseline.

Returns
maximum baseline [km]

Definition at line 73 of file JBaselineComputer.hh.

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

Get inner radius.

Returns
inner radius [km]

Definition at line 84 of file JBaselineComputer.hh.

85  {
86  return 0.5 * (Lmax - Lmin);
87  }
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 95 of file JBaselineComputer.hh.

96  {
97  return 0.5 * (Lmax + Lmin);;
98  }
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 107 of file JBaselineComputer.hh.

108  {
109  const double r = getInnerRadius();
110  const double R = getOuterRadius();
111 
112  return (R*R - r*r - L*L) / (2*L*r);
113  }
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 122 of file JBaselineComputer.hh.

123  {
124  const double r = getInnerRadius();
125  const double R = getOuterRadius();
126 
127  const double ct = (fabs(costh) < 1.0 ? costh : (costh < 0 ? -1.0 : 1.0));
128 
129  return (-r * ct + sqrt(R*R - r*r * (1 - ct) * (1 + ct)));
130  }
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 139 of file JBaselineComputer.hh.

140  {
141  return getBaseline(costh);
142  }
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 151 of file JBaselineComputer.hh.

152  {
153  return in >> Lmin >> Lmax;
154  }
double Lmax
Maximum baseline [km].
double Lmin
Minimum baseline [km].
then fatal The output file must have the wildcard in the e g root fi 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 163 of file JBaselineComputer.hh.

164  {
165  return out << Lmin << Lmax;
166  }
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 176 of file JBaselineComputer.hh.

177  {
178  return in >> object.Lmin >> object.Lmax;
179  }
then fatal The output file must have the wildcard in the e g root fi 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 189 of file JBaselineComputer.hh.

190  {
191  using namespace JPP;
192 
193  return out << FIXED(15,5) << object.Lmin << FIXED(15,5) << object.Lmax;
194  }
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 199 of file JBaselineComputer.hh.

double JOSCPROB::JBaselineComputer::Lmax
protected

Maximum baseline [km].

Definition at line 200 of file JBaselineComputer.hh.


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