19#ifndef EARTHMODELBASE_H
20#define EARTHMODELBASE_H
36 double rad,
double lat = 0,
66 double rad,
double lat,
71 double length,
double density,
double zoa,
Base class for implementing an earth model.
virtual double GetTotalL(double cosT)
Get the total baseline for a given cosTheta.
double fRadiusMax
Maximum radius in Earth model (in km)
bool fRemoveSmallPaths
Tag whether to merge small paths.
virtual int FillPath(double cosT, double phi)=0
double fDetLat
The latitude (in rad) where the detector sits.
virtual std::vector< NuPath > GetMergedPaths(double prec=0.25)
Get merged path sequence in a vector.
virtual double GetCosT(double L)
Get the cosTheta for a given total baseline.
double fDetLon
The longitude (in rad) where the detector sits.
virtual std::vector< NuPath > GetNuPath()
virtual void SetRemoveSmallPaths(bool rp=true)
Set tag to remove small paths.
virtual void SetDetPos(double rad, double lat=0, double lon=0)=0
virtual void AddPathSegment(double length, double density, double zoa, int index)
Add a path segment to the sequence.
ClassDef(EarthModelBase, 1)
std::vector< NuPath > fNuPath
The current neutrino path sequence.
double fDetRadius
The radius where the detector sits (in km)
virtual void SetDetectorCoordinates(double rad, double lat, double lon)
Some useful general definitions.