iceCube.uhe.propagation
Class PropagationMatrixFactory

java.lang.Object
  extended by iceCube.uhe.propagation.PropagationMatrixFactory

public class PropagationMatrixFactory
extends java.lang.Object

This class handles the generated propagation matrix data. It provides methods to return the particle flux differential dF(input particle, output particle), which is an element of the PropagationMatrix itself, for various combinations of input/output particles. This class has been primarily written for calculating the sensitivity/upper bound of EHE neutrino search with the neutrio flux model independent way. Written by S. Yoshida 2007/3/18


Constructor Summary
PropagationMatrixFactory()
          Default constructor.
PropagationMatrixFactory(boolean generateMatrix)
          This constructor is for subclass such as ExtendedMuonPropMatrixFactory
 
Method Summary
 double getAverageMuonEnergyLossAfterPropagation(double logEnergy)
          Return average Epropagated/Eincoming of propagating muon with Energy logEnergy [GeV]
 double getDF(int inputFlavor, int inputDoublet, double logEinput, int outputFlavor, int outputDoublet, double logEoutput)
          Returns dF/dLogE * deltaLogE (inputParticle ---> outputParticle).
 double getDF(Particle inputParticle, Particle outputParticle)
          Returns dF/dLogE*deltaLogE (inputParticle ---> outputParticle).
 void readMatrix(java.io.DataInputStream in)
          Read the calculated propagation matrix
 void whetherPropagationMatrixWithGlashowResonance(boolean flag)
          or Glashow Resonance
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PropagationMatrixFactory

public PropagationMatrixFactory()
Default constructor. Allocating the array memory to store the propagation matricis


PropagationMatrixFactory

public PropagationMatrixFactory(boolean generateMatrix)
This constructor is for subclass such as ExtendedMuonPropMatrixFactory

Method Detail

readMatrix

public void readMatrix(java.io.DataInputStream in)
                throws java.io.IOException
Read the calculated propagation matrix

Throws:
java.io.IOException

getDF

public double getDF(Particle inputParticle,
                    Particle outputParticle)
Returns dF/dLogE*deltaLogE (inputParticle ---> outputParticle). The flavor/doublet/energy should be defined in each of the Particle object in the argument. delta LogE is the bin size of the propagation matrix. It is defined by Particle.getDimensionOfLogEnergyMatrix()


getDF

public double getDF(int inputFlavor,
                    int inputDoublet,
                    double logEinput,
                    int outputFlavor,
                    int outputDoublet,
                    double logEoutput)
Returns dF/dLogE * deltaLogE (inputParticle ---> outputParticle).
        int   inputFlavor   : flavor of the Particle object entering into the earth.
        int   inputDoublet  : doublet of the Particle object entering into the earth.
        double logEinput    : logE [GeV] of the particle entering into the earth.
        int   outputFlavor   : flavor of the Particle object after the propagation.
        int   outputDoublet  : doublet of the Particle object after the propagation.
        double logEoutput    : logE [GeV] of the particle after the propagation.
        
delta LogE is the bin size of the propagation matrix. It is defined by Particle.getDimensionOfLogEnergyMatrix()


whetherPropagationMatrixWithGlashowResonance

public void whetherPropagationMatrixWithGlashowResonance(boolean flag)
or Glashow Resonance


getAverageMuonEnergyLossAfterPropagation

public double getAverageMuonEnergyLossAfterPropagation(double logEnergy)
Return average Epropagated/Eincoming of propagating muon with Energy logEnergy [GeV]