iceCube.uhe.propagation
Class RunPropagationMatrixBHevap
java.lang.Object
iceCube.uhe.propagation.RunPropagationMatrix
iceCube.uhe.propagation.RunPropagationMatrixBHevap
public class RunPropagationMatrixBHevap
- extends RunPropagationMatrix
Run the Propagation matrix to calculate the energy distribution
and the flux of particles after propagation in the Earth.
The Incoming Nadir angle, the switches to control
the interaction and decay channels involved, and the file name
to record the calculated matrix are read thorugh the arguments.
interactionsSwitch
bit8 bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
GlaRes LepWeak PhotoNucl Bremss KnockOn PairCHeavy PairC Neutral Charged
decaySwitch
bit7-2 bit 1 bit0
Reserv. TauDecay MuDecay
Constructor Summary |
RunPropagationMatrixBHevap(double nadirAngle,
int intSwitch,
int decaySwitch,
int mediumNumber,
int modelNumber)
Constructor. |
Method Summary |
void |
traceParticles(double trajectoryLength)
Trace particles running over a finite distance
from the current location l to the length of the trajectory. |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
RunPropagationMatrixBHevap
public RunPropagationMatrixBHevap(double nadirAngle,
int intSwitch,
int decaySwitch,
int mediumNumber,
int modelNumber)
throws java.io.IOException
Constructor. Generate the relevant particles objects and
the propagation matrix object. The medium is assumed to be
the standard rock.
double nadirAngle: Nadir angle [deg] of trajectory of the incoming particles.
int inSwitch: Interaction Switch to turn on/off the individual interaction
channel.
int decaySwitch: Decay Switch to turn on/off the individual decay channel.
int mediumNumber: Medium number 0 ice 1 rock
int modelNumber: Model index of the BH creation
0 : n=6 xmin = 1 M_D=1TeV
1 : n=6 xmin = 3 M_D=1TeV
- Throws:
java.io.IOException
traceParticles
public void traceParticles(double trajectoryLength)
Trace particles running over a finite distance
from the current location l to the length of the trajectory.
This method is actually doing the following processes:
(1) Calculate how many times the infinitesimal propagation
(dX [g/cm^2]) has to be invoked for the entire full
propagation of the particles from the start point to
the end point.
(2) Propagate particles 10 x dX[g/cm^2] by calling propagateDX( )
in the PropagationMatrix object 10 times.
(3) Propagate the particles involved over a 2^k 10dX [g/cm^2]
by calling propagateDXpowered( ) in the PropagationMatrix object
k times.
(4) During (3), store the propagation matrix when particles reaches
3 % of the total path in their journey. This stored matrix
is used for the final propagation steps in (5) next.
(5) Propagate the particles over 0.03 x total path by mulitplication
of the progation matrix stored in (4). Finish the calculation
when the particles reaches the final point.
(6) Repeat (1)-(5) until the particles finishes their travel.
By doing so, you can reasonably take into account
the r-dependence of the local medium density which decides
relative constributions of decay over interactions.
- Overrides:
traceParticles
in class RunPropagationMatrix