|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object | +--dwvisser.nuclear.EnergyLoss
Field Summary | |
protected Absorber |
absorber
The current absorber object to be used in calculations. |
static double |
AMU_TO_KEV
|
protected static double[] |
atomDensity
Atom density of elements, in atoms/cm^3 |
static double |
AVAGADRO
10^-24 * Avagodro's number, used for conversion |
protected static double[][] |
coeffs
The A-1 thru A-12 coefficients for the Ziegler Energy loss formulae. |
static double |
E_TO_4
|
protected static java.util.Hashtable |
elementLookUp
Table to look up proton number given elemental symbol. |
static double |
FINE_STRUCTURE
|
protected double[] |
fractions
The fractional amount of a chemical element in an absorber. |
protected static boolean[] |
gas
Whether the room temperature phase is gaseous or not. |
static int |
INCIDENCE
|
protected static double[] |
ionPotential
Ionization potential for the various elements. |
static double |
MEV_TO_AMU
Conversion Factor from MeV/c^2 to amu |
protected static java.lang.String[] |
name
Names of the elements. |
protected static double[] |
natDensity
"Natural" density of elements, in g/cm^3. |
protected static double[] |
natWeight
"Natural" weights of elements, in amu. |
static int |
RADIANS
|
protected static java.lang.String[] |
symbol
The symbol of the element |
protected double |
thickness
The thickness of the absorber in micrograms/cm^2. |
protected int[] |
Z
The atomic numbers of the components of the absorber. |
Constructor Summary | |
EnergyLoss(Absorber a)
Create an energy loss calculator associated with the given absorber. |
Method Summary | |
double[] |
dydx(double energy,
double[] x)
For the DiffEquations interface. |
Absorber |
getAbsorber()
Returns the absorber object used by this instance of EnergyLoss . |
static double |
getDensity(int element)
Returns density of element in its most common form in g/cm^3. |
double |
getElectronicStoppingPower(Nucleus projectile,
double energy)
Returns the electronic stopping power in keV per microgram/cm^2. |
static int |
getElement(java.lang.String symbol)
Lookup method for obtaining an atomic number from the element's symbol. |
double |
getEnergyLoss(Nucleus projectile,
double energy)
|
double |
getEnergyLoss(Nucleus projectile,
double energy,
double theta)
Returns the total energy loss in keV. |
UncertainNumber |
getEnergyLossUnc(Nucleus projectile,
double energy)
Returns the total energy loss in keV. |
double |
getFractionError(Nucleus projectile,
double energy)
Returns the fractional error in energy loss. |
static double |
getNaturalWeight(int element)
|
double |
getNuclearStoppingPower(Nucleus projectile,
double energy)
Returns the nuclear stopping power in keV per microgram/cm^2. |
double |
getPlasticLightOutput(Nucleus projectile,
double energy,
double theta)
Returns the light output produced in a plastic scintillator by an ion losing energy in it. |
UncertainNumber |
getRange(Nucleus projectile,
double energy)
Returns the range in milligrams/cm^2 in the absorber material specified in this instance of EnergyLoss . |
double |
getStoppingPower(Nucleus projectile,
double energy)
Returns the total stopping power in keV per microgram/cm^2. |
double |
getThinEnergyLoss(Nucleus projectile,
double energy)
|
double |
getThinEnergyLoss(Nucleus projectile,
double energy,
double theta)
Returns the total energy loss in keV. |
static void |
main(java.lang.String[] args)
|
double[] |
NuSPwr(Nucleus projectile,
double energy)
Calculates nucluear stopping of ions of all Z. |
double |
reverseEnergyLoss(Nucleus projectile,
double energy,
double theta)
Returns initial ion energy in MeV. |
void |
setAbsorber(Absorber a)
Called whenever one wants to change the absorber in this object. |
void |
setProjectile(Nucleus p)
|
double |
totalStopP(Nucleus projectile,
double energy)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
public static final double MEV_TO_AMU
public static final double AMU_TO_KEV
public static final double FINE_STRUCTURE
public static final double E_TO_4
public static final double AVAGADRO
protected static double[][] coeffs
protected static double[] ionPotential
protected static boolean[] gas
protected static java.lang.String[] symbol
protected static java.lang.String[] name
protected static double[] natWeight
protected static double[] natDensity
protected static double[] atomDensity
protected static java.util.Hashtable elementLookUp
protected double[] fractions
protected Absorber absorber
protected int[] Z
protected double thickness
public static final int RADIANS
public static final int INCIDENCE
Constructor Detail |
public EnergyLoss(Absorber a)
a
- material that energy losses will be calculated inMethod Detail |
public static int getElement(java.lang.String symbol) throws NuclearException
NuclearException
public static double getNaturalWeight(int element)
public static double getDensity(int element)
public double totalStopP(Nucleus projectile, double energy) throws NuclearException
NuclearException
public double[] NuSPwr(Nucleus projectile, double energy)
energy
- kinetic energy in MeV of projectileprojectile
- nuclear species of projectile
public void setAbsorber(Absorber a)
public Absorber getAbsorber()
EnergyLoss
.
public double getStoppingPower(Nucleus projectile, double energy) throws NuclearException
EnergyLoss
.
projectile
- the ion being stoppedenergy
- the ion kinetic energy in MeV
NuclearException
public void setProjectile(Nucleus p)
public double[] dydx(double energy, double[] x)
dydx
in interface DiffEquations
energy
- in MeVx
- one element which is thickness
public UncertainNumber getRange(Nucleus projectile, double energy)
EnergyLoss
.
projectile
- the ion being stoppedenergy
- the ion kinetic energy in MeVpublic double getEnergyLoss(Nucleus projectile, double energy, double theta)
EnergyLoss
. See p. 16 of v.3 of "Stopping and Ranges
of Ions in Matter" by Ziegler
projectile
- the ion being stoppedenergy
- the ion kinetic energy in MeVtheta
- angle of incidence (from normal in radians)public double reverseEnergyLoss(Nucleus projectile, double energy, double theta)
projectile
- the ion being stoppedenergy
- the ion kinetic energy in MeVtheta
- angle of incidence (from normal in radians)public double getPlasticLightOutput(Nucleus projectile, double energy, double theta)
public double getEnergyLoss(Nucleus projectile, double energy)
public double getThinEnergyLoss(Nucleus projectile, double energy)
public double getThinEnergyLoss(Nucleus projectile, double energy, double theta)
EnergyLoss
. See p. 16 of v.3 of "Stopping and Ranges
of Ions in Matter" by Ziegler
projectile
- the ion being stoppedenergy
- the ion kinetic energy in MeVtheta
- angle of incidence (from normal in radians)public UncertainNumber getEnergyLossUnc(Nucleus projectile, double energy)
EnergyLoss
. See p. 16 of v.3 of "Stopping and Ranges
of Ions in Matter" by Ziegler
projectile
- the ion being stoppedenergy
- the ion kinetic energy in MeVpublic double getFractionError(Nucleus projectile, double energy)
EnergyLoss
. See p. 16 of v.3 of "Stopping and Ranges
of Ions in Matter" by Ziegler
projectile
- the ion being stoppedenergy
- the ion kinetic energy in MeVpublic double getElectronicStoppingPower(Nucleus projectile, double energy) throws NuclearException
EnergyLoss
. See p. 16 in Andersen & Ziegler,
"The Stopping and Ranges of Ions in Matter", volume 3.
projectile
- the ion being stoppedenergy
- the ion kinetic energy in MeV
NuclearException
public double getNuclearStoppingPower(Nucleus projectile, double energy)
EnergyLoss
.
projectile
- the ion being stoppedenergy
- the ion kinetic energy in MeVpublic static void main(java.lang.String[] args)
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |