iceCube.uhe.points
Class ParticlePoint

java.lang.Object
  extended by iceCube.uhe.points.ParticlePoint
All Implemented Interfaces:
java.io.Serializable

public class ParticlePoint
extends java.lang.Object
implements java.io.Serializable

    This class contains the variables and methods concerining
    the particle location and the propagation medium.

    Calculations on propagation of UHE particles in the rock/ice require
    the point vector that is provided by this class.
    It also provides the parameters of the medium such as the density
    which are used for the cross section calculation made in
    the Interaction class.

    The parameters provided in this class are:

    The vector of the particle location--
        R     : Radius from the earth center.
        lAxis : Length along the propagation axis
                from the incident point to the current particle location.
        theta : Zenith angle [rad]
        phi   : Azimuth angle [rad]
        alpha : Nadir angle [rad]
                Those angular parameters above are defined
                at the point where a particle emerges from underground.
        MaterialNumber: ice (0) rock (1)

        These are based on the Standard Earth Model
        and the related geometrical factor.

    The parameters of the material at the particle location--
        Density : Mass density [g/cm^3]
        Xslant  : Slant Depth: [g/cm^2]
            For each component..
               Atomic Number
               Charge
        Material name (Rock, ice, etc.)

             Material Number  0   1
Madium                       ice rock
Number of Species             2   1

See Also:
Serialized Form

Field Summary
static double NA
          Avogadro's Number.
static int[] NumberOfSpecies
          Number of Species of Atom.
static double REarth
          Earth radius [cm].
 
Constructor Summary
ParticlePoint(double lAxis, double alpha, int MaterialNumber)
          Constructor to initialize the starting point.
 
Method Summary
 double getAtomicNumber(int iThSpecies)
          Atomic-number is acquired for a given Material Number and a given species index of atom.
 double getAxisLength()
           
 double getCharge(int iThSpecies)
          Charge-number is acquired for a given Material Number and a given species index of atom.
 double getIceRockBoundaryRadius()
           
 double getIonizationE()
          Ionization Potential [eV]
 int getMaterialNumber()
           
 double getMediumDensity()
          Obtain the madium density [g/cm^2]
 int getNumberOfAtoms(int iThSpecies)
          Number of Atoms is acquired for a given Material Number and a given species index of atom.
 double getParticleLocation()
          Obtain the particle location along the trajectory, i.e.
 double getRadiation(int iThSpecies)
          Radiation constant is acquired for a given Material Number and a given species index of atom.
 double getRadiusFromEarthCenter(double lAxis)
          Calculate the radius from the earth center to the particle location.
 double getSlantDepth()
          Obtain the slant depth
static boolean isValidNadir(double alpha)
           
 void setIceRockBoundaryRadius(double r)
           
 void setMaterialNumber(int MaterialNumber)
          Sets material number to specify either Ice or standard Rock
 void setParticleLocation(double lAxis)
          Setting the particle location along the trajectory, i.e.
 void setSlantDepth(double Xslant)
          Setting the slant depth
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

NA

public static final double NA
Avogadro's Number.

See Also:
Constant Field Values

NumberOfSpecies

public static final int[] NumberOfSpecies
Number of Species of Atom. 2 for Ice (H and O) and 1 for Rock.


REarth

public static final double REarth
Earth radius [cm].

See Also:
Constant Field Values
Constructor Detail

ParticlePoint

public ParticlePoint(double lAxis,
                     double alpha,
                     int MaterialNumber)
Constructor to initialize the starting point. Input parameters of Length along the trajectory axis (0.0 for surface) and the nadir angle alpha [deg] is given to define the other geometrical parameter.

Method Detail

isValidNadir

public static boolean isValidNadir(double alpha)

getRadiusFromEarthCenter

public double getRadiusFromEarthCenter(double lAxis)
Calculate the radius from the earth center to the particle location.


setParticleLocation

public void setParticleLocation(double lAxis)
Setting the particle location along the trajectory, i.e. lAxis.


getParticleLocation

public double getParticleLocation()
Obtain the particle location along the trajectory, i.e. lAxis.


getAxisLength

public double getAxisLength()

setSlantDepth

public void setSlantDepth(double Xslant)
Setting the slant depth


getSlantDepth

public double getSlantDepth()
Obtain the slant depth


getMediumDensity

public double getMediumDensity()
Obtain the madium density [g/cm^2]


getIceRockBoundaryRadius

public double getIceRockBoundaryRadius()

setIceRockBoundaryRadius

public void setIceRockBoundaryRadius(double r)

getAtomicNumber

public double getAtomicNumber(int iThSpecies)
Atomic-number is acquired for a given Material Number and a given species index of atom.


getCharge

public double getCharge(int iThSpecies)
Charge-number is acquired for a given Material Number and a given species index of atom.


getRadiation

public double getRadiation(int iThSpecies)
Radiation constant is acquired for a given Material Number and a given species index of atom.


getNumberOfAtoms

public int getNumberOfAtoms(int iThSpecies)
Number of Atoms is acquired for a given Material Number and a given species index of atom.


getIonizationE

public double getIonizationE()
Ionization Potential [eV]


setMaterialNumber

public void setMaterialNumber(int MaterialNumber)
Sets material number to specify either Ice or standard Rock


getMaterialNumber

public int getMaterialNumber()