spis.Surf.InteractModel
Class TransmissionFunction
java.lang.Object
spis.Surf.InteractModel.FunctionOfParticle
spis.Surf.InteractModel.FunctionOfParticleE
spis.Surf.InteractModel.TransmissionFunction
- All Implemented Interfaces:
- ScalFunctionOf4Scal, ScalFunctionOfScal
- public class TransmissionFunction
- extends FunctionOfParticleE
Class Name : TransmissionFunction
Project ref : SPIS project
File name : TransmissionFunction.java
File type : class
Copyright : ONERA, 2 Av. E. Belin, 31055 Toulouse cedex, France
http://www.onecert.fr
Status : under development
Creation : 3 nov. 2004
Modification :
Description : Transmission function:
gives the probability that an electron of a given energy (or range) reaches
the defined depth (i.e. is transmitted beyond this depth).
This is based on Rao formula [B. N. Subba Rao, Nucl. Instr. Methods 44, 155 (1966)]:
transmitted fraction = (1+exp(-gh)) / (1+exp(g(t/r-h))), with r the range,
g = 9.2 Z^-0.2 + 16 Z^-2.2, h = 0.63 Z/A + 0.27, Z = atomic number, A = mass number
(validity 10 keV - 3 Mev).
In this implementation the range function and Z are passed as parameters,
while Z/A is simply assumed to be 1/2 (since A is not available from NASCAP database).
Versions and anomalies correction :
Version number | Author (name, e-mail) | Corrections/Modifications |
0.1 | JF Roussel, roussel@onecert.fr | Creation |
- Version:
- 0.1
- Author:
- JF Roussel
Field Summary |
private ParameterSet[] |
atomicNumber
Atomic number parameters |
private float |
depth
Depth in the material at which the
average damped energy must be
computed |
private RangeFunction |
range
range function the transmission
function is computed from |
Method Summary |
protected float |
compute(float E,
int matId)
Protected abstract method to be implemented by derived classes
(the only one, always the one called by the public methods defined in FunctionOfParticleE) |
float |
getDepth()
|
void |
setDepth(float depth)
|
Methods inherited from class spis.Surf.InteractModel.FunctionOfParticle |
getDefaultParamsId, getMaterialRange, getModelId, getParticleId, getPartTable, selectParamSet, setDefaultParams, setDefaultParamsId, setMaterialRange, setModelId, setParticleId, setPartTable |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
range
private RangeFunction range
- range function the transmission
function is computed from
atomicNumber
private ParameterSet[] atomicNumber
- Atomic number parameters
depth
private float depth
- Depth in the material at which the
average damped energy must be
computed
TransmissionFunction
public TransmissionFunction(ParameterSet[] atomicNumber,
RangeFunction range,
int modelId,
int particleId,
PartTable partTable)
- Default constructor
- Parameters:
atomicNumber
- atomic number paramaters (for each material)range
- range functionpartTable
-
compute
protected float compute(float E,
int matId)
- Description copied from class:
FunctionOfParticleE
- Protected abstract method to be implemented by derived classes
(the only one, always the one called by the public methods defined in FunctionOfParticleE)
- Specified by:
compute
in class FunctionOfParticleE
- Parameters:
E
- particle energy [eV] (and not keV)matId
-
- Returns:
- transmission probability at specified depth
getDepth
public float getDepth()
- Returns:
- Returns the depth.
setDepth
public void setDepth(float depth)
- Parameters:
depth
- Sets the depth in the material at which the
average damped energy must be computed.