icemc
 All Classes Namespaces Files Functions Variables Friends Macros Pages
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
EarthModel Class Reference

Shape of the earth, ice thicknesses, profiles of earth layers, densities, neutrino absorption. More...

#include <earthmodel.hh>

Inheritance diagram for EarthModel:
IceModel

Public Member Functions

 EarthModel (int model=0, int WEIGHTABSORPTION_SETTING=1)
 
virtual ~EarthModel ()
 
virtual double Geoid (double latitude)
 
virtual double Geoid (const Position &pos)
 
virtual double IceThickness (double lon, double lat)
 
virtual double IceThickness (const Position &pos)
 
virtual double Surface (double lon, double lat)
 
virtual double Surface (const Position &pos)
 
virtual int InFirn (const Position &pos)
 
virtual double SurfaceDeepIce (const Position &pos)
 
virtual double SurfaceAboveGeoid (double lon, double lat)
 
virtual double SurfaceAboveGeoid (const Position &pos)
 
virtual double WaterDepth (double lon, double lat)
 
virtual double WaterDepth (const Position &pos)
 
virtual double RockSurface (double lon, double lat)
 
virtual double RockSurface (const Position &pos)
 
double GetDensity (double altitude, const Position earth_in, const Position posnu, int &crust_entered, int &mantle_entered, int &core_entered)
 
int Getchord (Primaries *primary1, Settings *settings1, IceModel *antarctica1, Secondaries *sec1, double len_int_kgm2, const Position &earth_in, const Position &r_enterice, const Position &nuexitice, const Position &posnu, int inu, double &chord, double &probability_tmp, double &weight1_tmp, double &nearthlayers, double myair, double &total_kgm2, int &crust_entered, int &mantle_entered, int &core_entered)
 
Vector GetSurfaceNormal (const Position &r_out)
 
void EarthCurvature (double *array, double depth_temp)
 
Position WhereDoesItEnter (const Position &posnu, const Vector &nnu)
 

Static Public Member Functions

static double LongtoPhi_0isPrimeMeridian (double longitude)
 
static double LongtoPhi_0is180thMeridian (double longitude)
 

Public Attributes

double radii [3]
 
double volume
 
double ice_area
 
double max_icevol_perbin
 
double max_icethk_perbin
 

Static Public Attributes

static constexpr double R_EARTH =6.378140E6
 

Protected Member Functions

void ReadCrust (string)
 
double SmearPhi (int ilon)
 
double SmearTheta (int ilat)
 
double dGetTheta (int itheta)
 
double dGetPhi (int ilon)
 
void GetILonILat (const Position &, int &ilon, int &ilat)
 
double GetLat (double theta)
 
double GetLon (double phi)
 
Vector PickPosnuForaLonLat (double lon, double lat, double theta, double phi)
 

Protected Attributes

int EARTH_MODEL
 
int CONSTANTICETHICKNESS
 
int CONSTANTCRUST
 
int FIXEDELEVATION
 
int FLATSURFACE
 
int weightabsorption
 
double thetastep
 
double phistep
 
double surfacer [NLON][NLAT]
 
double icer [NLON][NLAT]
 
double waterr [NLON][NLAT]
 
double softsedr [NLON][NLAT]
 
double hardsedr [NLON][NLAT]
 
double uppercrustr [NLON][NLAT]
 
double middlecrustr [NLON][NLAT]
 
double lowercrustr [NLON][NLAT]
 
double geoid [NLAT]
 
double MIN_ALTITUDE_CRUST
 
double elevationarray [NLON][NLAT]
 
double waterthkarray [NLON][NLAT]
 
double icethkarray [NLON][NLAT]
 
double softsedthkarray [NLON][NLAT]
 
double hardsedthkarray [NLON][NLAT]
 
double uppercrustthkarray [NLON][NLAT]
 
double middlecrustthkarray [NLON][NLAT]
 
double lowercrustthkarray [NLON][NLAT]
 
double crustthkarray [NLON][NLAT]
 
double waterdensityarray [NLON][NLAT]
 
double icedensityarray [NLON][NLAT]
 
double softseddensityarray [NLON][NLAT]
 
double hardseddensityarray [NLON][NLAT]
 
double uppercrustdensityarray [NLON][NLAT]
 
double middlecrustdensityarray [NLON][NLAT]
 
double lowercrustdensityarray [NLON][NLAT]
 
double area [NLAT]
 
double average_iceth
 

Static Protected Attributes

static constexpr int getchord_method =2
 
static const double GEOID_MAX
 
static const double GEOID_MIN
 
static const double COASTLINE
 
static constexpr int NLON =180
 
static constexpr int NLAT =90
 
static constexpr int NPHI =180
 
static const double MAXTHETA
 
static const int ILAT_COASTLINE
 

Detailed Description

Shape of the earth, ice thicknesses, profiles of earth layers, densities, neutrino absorption.

Constructor & Destructor Documentation

EarthModel::EarthModel ( int  model = 0,
int  WEIGHTABSORPTION_SETTING = 1 
)
EarthModel::~EarthModel ( )
virtual

Member Function Documentation

double EarthModel::dGetPhi ( int  ilon)
protected
double EarthModel::dGetTheta ( int  itheta)
protected
void EarthModel::EarthCurvature ( double *  array,
double  depth_temp 
)
double EarthModel::Geoid ( double  latitude)
virtual
double EarthModel::Geoid ( const Position pos)
virtual
int EarthModel::Getchord ( Primaries primary1,
Settings settings1,
IceModel antarctica1,
Secondaries sec1,
double  len_int_kgm2,
const Position earth_in,
const Position r_enterice,
const Position nuexitice,
const Position posnu,
int  inu,
double &  chord,
double &  probability_tmp,
double &  weight1_tmp,
double &  nearthlayers,
double  myair,
double &  total_kgm2,
int &  crust_entered,
int &  mantle_entered,
int &  core_entered 
)
double EarthModel::GetDensity ( double  altitude,
const Position  earth_in,
const Position  posnu,
int &  crust_entered,
int &  mantle_entered,
int &  core_entered 
)
void EarthModel::GetILonILat ( const Position p,
int &  ilon,
int &  ilat 
)
protected
double EarthModel::GetLat ( double  theta)
protected
double EarthModel::GetLon ( double  phi)
protected
Vector EarthModel::GetSurfaceNormal ( const Position r_out)
double EarthModel::IceThickness ( double  lon,
double  lat 
)
virtual

Reimplemented in IceModel.

double EarthModel::IceThickness ( const Position pos)
virtual

Reimplemented in IceModel.

int EarthModel::InFirn ( const Position pos)
virtual
double EarthModel::LongtoPhi_0is180thMeridian ( double  longitude)
static
double EarthModel::LongtoPhi_0isPrimeMeridian ( double  longitude)
static
Vector EarthModel::PickPosnuForaLonLat ( double  lon,
double  lat,
double  theta,
double  phi 
)
protected
void EarthModel::ReadCrust ( string  test)
protected
double EarthModel::RockSurface ( double  lon,
double  lat 
)
virtual
double EarthModel::RockSurface ( const Position pos)
virtual
double EarthModel::SmearPhi ( int  ilon)
protected
double EarthModel::SmearTheta ( int  ilat)
protected
double EarthModel::Surface ( double  lon,
double  lat 
)
virtual

Reimplemented in IceModel.

double EarthModel::Surface ( const Position pos)
virtual

Reimplemented in IceModel.

double EarthModel::SurfaceAboveGeoid ( double  lon,
double  lat 
)
virtual

Reimplemented in IceModel.

double EarthModel::SurfaceAboveGeoid ( const Position pos)
virtual

Reimplemented in IceModel.

double EarthModel::SurfaceDeepIce ( const Position pos)
virtual
double EarthModel::WaterDepth ( double  lon,
double  lat 
)
virtual

Reimplemented in IceModel.

double EarthModel::WaterDepth ( const Position pos)
virtual

Reimplemented in IceModel.

Position EarthModel::WhereDoesItEnter ( const Position posnu,
const Vector nnu 
)

Member Data Documentation

double EarthModel::area[NLAT]
protected
double EarthModel::average_iceth
protected
const double EarthModel::COASTLINE
staticprotected
int EarthModel::CONSTANTCRUST
protected
int EarthModel::CONSTANTICETHICKNESS
protected
double EarthModel::crustthkarray[NLON][NLAT]
protected
int EarthModel::EARTH_MODEL
protected
double EarthModel::elevationarray[NLON][NLAT]
protected
int EarthModel::FIXEDELEVATION
protected
int EarthModel::FLATSURFACE
protected
double EarthModel::geoid[NLAT]
protected
const double EarthModel::GEOID_MAX
staticprotected
const double EarthModel::GEOID_MIN
staticprotected
constexpr int EarthModel::getchord_method =2
staticprotected
double EarthModel::hardseddensityarray[NLON][NLAT]
protected
double EarthModel::hardsedr[NLON][NLAT]
protected
double EarthModel::hardsedthkarray[NLON][NLAT]
protected
double EarthModel::ice_area
double EarthModel::icedensityarray[NLON][NLAT]
protected
double EarthModel::icer[NLON][NLAT]
protected
double EarthModel::icethkarray[NLON][NLAT]
protected
const int EarthModel::ILAT_COASTLINE
staticprotected
double EarthModel::lowercrustdensityarray[NLON][NLAT]
protected
double EarthModel::lowercrustr[NLON][NLAT]
protected
double EarthModel::lowercrustthkarray[NLON][NLAT]
protected
double EarthModel::max_icethk_perbin
double EarthModel::max_icevol_perbin
const double EarthModel::MAXTHETA
staticprotected
double EarthModel::middlecrustdensityarray[NLON][NLAT]
protected
double EarthModel::middlecrustr[NLON][NLAT]
protected
double EarthModel::middlecrustthkarray[NLON][NLAT]
protected
double EarthModel::MIN_ALTITUDE_CRUST
protected
constexpr int EarthModel::NLAT =90
staticprotected
constexpr int EarthModel::NLON =180
staticprotected
constexpr int EarthModel::NPHI =180
staticprotected
double EarthModel::phistep
protected
constexpr double EarthModel::R_EARTH =6.378140E6
static
double EarthModel::radii[3]
double EarthModel::softseddensityarray[NLON][NLAT]
protected
double EarthModel::softsedr[NLON][NLAT]
protected
double EarthModel::softsedthkarray[NLON][NLAT]
protected
double EarthModel::surfacer[NLON][NLAT]
protected
double EarthModel::thetastep
protected
double EarthModel::uppercrustdensityarray[NLON][NLAT]
protected
double EarthModel::uppercrustr[NLON][NLAT]
protected
double EarthModel::uppercrustthkarray[NLON][NLAT]
protected
double EarthModel::volume
double EarthModel::waterdensityarray[NLON][NLAT]
protected
double EarthModel::waterr[NLON][NLAT]
protected
double EarthModel::waterthkarray[NLON][NLAT]
protected
int EarthModel::weightabsorption
protected

The documentation for this class was generated from the following files: