iceCube.uhe.interactions
public class NeutrinoBHevaporation extends java.lang.Object
Modifier and Type | Field and Description |
---|---|
protected double[] |
energy_table
Energy[GeV] for the sigma_table
|
protected static double |
fractionOfMuonAndTau
Fraction of muon + tau's multiplicity in the black hole decay products.
|
protected static double |
fractionOfShowers
Fraction of particle multiplicity in the black hole decay products
resulting in cascades.
|
protected static double |
ln10 |
protected double[] |
logE_multiplicity1_table
log10(Energy[GeV]) for multiplicity table model 1
|
protected double[] |
logE_multiplicity2_table
log10(Energy[GeV]) for multiplicity table model 2
|
protected double[] |
logE_table |
protected int |
modelNumber |
protected double[] |
multiplicity_table_model1
mutiplicity table in the BH model for model 1
|
protected double[] |
multiplicity_table_model2
mutiplicity table in the BH model for model 2
|
protected static double[][] |
sigma_table
cross section [pB] table provided in the BH evaporation model
|
Constructor and Description |
---|
NeutrinoBHevaporation(Particle p,
ParticlePoint s)
Constructor: Register the Particle and ParticlePoint classes.
|
Modifier and Type | Method and Description |
---|---|
double |
getDSigmaDy(double y)
Differential cross section dsigma/dy [cm^2]
|
double |
getDSigmaDz(double z)
Differential cross section dsigma/dz [cm^2]
|
double |
getEnergyCut() |
double |
getFunction(int functionIndex,
double[] parameters,
double x)
Method for interface
|
double |
getIncidentParticleEnergy() |
double |
getMultiplicity()
Multiplicity of the decay products from the black hole evaporation.
|
double |
getMuonMultiplicity()
Multiplicity of muons from the black hole evaporation.
|
double |
getShowerMultiplicity()
Multiplicity of shower particles from the black hole evaporation.
|
double |
getSigma()
Total cross section [cm^2]
|
double |
getTauMultiplicity()
Multiplicity of taus from the black hole evaporation.
|
double |
getYDSigmaDy(double lowerY,
double upperY)
Integral y*dSigma/dy over a given range to obtain the inelasticity
distribution.
|
double |
getYmax()
Getting the range of allowed y for a given interaction
|
double |
getYmin()
Getting the range of allowed y for a given interaction
|
double |
getZDSigmaDZ(double lowerZ,
double upperZ)
Integral z*dSigma/dz over a given range to obtain the inelasticity
distribution.
|
double |
integralDSigmaDy(double lowerY,
double upperY)
Integral dSigma/dy over a given range to obtain a partial
cross section
|
double |
integralDSigmaDz(double lowerZ,
double upperZ)
Integral dSigma/dz over a given range to obtain a partial
cross section
|
java.lang.String |
interactionName()
Show Name of the Interaction
|
boolean |
isValidInelasticity(double y)
Checking the range of the given inelasticity y
that is determined in an individual interaction channel.
|
boolean |
isValidParticle(Particle p)
Checking the particle kind involved with
a given interaction.
|
void |
setEnergyCut(double cutEnergy)
Energy Cut Parameter in integration to obtain the total cross section.
|
void |
setIncidentParticleEnergy(double energy)
Set The incident particle energy [GeV].
|
void |
setIncidentParticleEnergy(int iLogE) |
void |
setModelNumber(int number)
model number settings.
|
void |
showIntegralErrorMessage(double lowerY,
double upperY)
Error message utility
|
protected void |
switchToChargedLepton() |
protected void |
switchToShower() |
protected static double[][] sigma_table
protected double[] energy_table
protected double[] multiplicity_table_model1
protected double[] logE_multiplicity1_table
protected double[] multiplicity_table_model2
protected double[] logE_multiplicity2_table
protected int modelNumber
protected double[] logE_table
protected static final double ln10
protected static double fractionOfMuonAndTau
protected static double fractionOfShowers
public NeutrinoBHevaporation(Particle p, ParticlePoint s) throws java.io.IOException
java.io.IOException
public double getMultiplicity()
public double getMuonMultiplicity()
public double getTauMultiplicity()
public double getShowerMultiplicity()
protected void switchToShower()
protected void switchToChargedLepton()
public void setModelNumber(int number)
number 0 : n=6 xmin = 1 M_D=1TeV number 1 : n=6 xmin = 3 M_D=1TeV number 2 : n=6 xmin = 1 M_D=2TeV number 3 : n=6 xmin = 3 M_D=2TeV
public double getDSigmaDz(double z)
z = Erecoiling/Eincoming = Emuon or Etau/EneutrinoThe z distribution is a flat distribution in this model. Multiplicity of the produced particles are renormalized - integral of the differential cross section is equal to total cross section x multiplicity. This difinition is introduced for consistent way in the numerical calculation in the Propagation package.
public double getDSigmaDy(double y)
y = 1-Erecoiling/Eincoming = Eshower/EneutrinoThe y distribution is a flat distribution in this model.
public double getSigma()
public boolean isValidInelasticity(double y)
public double getYmax()
public double getYmin()
public boolean isValidParticle(Particle p)
public java.lang.String interactionName()
public void setIncidentParticleEnergy(double energy)
Set The incident particle energy [GeV]. The default value has been given by the constructor Interactions( ) with p.getEnergy( ) where p is the Particle class. You might want to set, however, a different value such as logE = logEnergyMinimum + deltaLogE*ilogE where ilogE is i'th index of the logEnergyMatrix in the Particle class p. This method provides you with a way to put the incident particle energy.
public void setIncidentParticleEnergy(int iLogE)
public double getIncidentParticleEnergy()
public void setEnergyCut(double cutEnergy)
public double getEnergyCut()
public double integralDSigmaDy(double lowerY, double upperY)
public double integralDSigmaDz(double lowerZ, double upperZ)
public double getYDSigmaDy(double lowerY, double upperY)
public double getZDSigmaDZ(double lowerZ, double upperZ)
public double getFunction(int functionIndex, double[] parameters, double x)
Method for interface. Interface the differntial cross sections given here to the utility methods such as the Romberg Integration code that is desinged for a genereal function in form of Func(x). functionIndex 1 dsigma/dy functionIndex 2 dsigma/dz z = y-1 functionIndex 3 y x dsigma/dy functionIndex 4 z x dsigma/dz
getFunction
in interface Function
public void showIntegralErrorMessage(double lowerY, double upperY)