spis.Surf.InteractModel
Class ReciprocalOfFunctionOfParticleE
java.lang.Object
spis.Surf.InteractModel.FunctionOfParticle
spis.Surf.InteractModel.FunctionOfParticleE
spis.Surf.InteractModel.ReciprocalOfFunctionOfParticleE
- All Implemented Interfaces:
- ScalFunctionOf4Scal, ScalFunctionOfScal
- public class ReciprocalOfFunctionOfParticleE
- extends FunctionOfParticleE
Class Name : ReciprocalOfFunctionOfParticleE
Project ref : SPIS project
File name : ReciprocalOfFunctionOfParticleE.java
File type : class
Copyright : ONERA, 2 Av. E. Belin, 31055 Toulouse cedex, France
http://www.onecert.fr
Status : under development
Creation : 4 nov. 2004
Modification :
Description : The reciprocal function of a function of particle energy.
This reciprocal function is defined as the reprocal of the function y=f(E) of
particle energy passed to the constructor.
WARNING: is indeed not a function of energy (but E=f-1(y))=> no to be used
generically as a function of particle energy (e.g. by using the
compute(float[] velocity, float mass, float[] normal) method of FunctionOfParticleE
which defines the argument as really the energy from velocity and mass
(checked => throws an exception if invoked so)
This reciprocal function is yet derived from FunctionOfParticleE since it is
still a function depending of one particle "kinematic" parameter and material.
In practice it is used to invert range function r(E).
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
Method Summary |
float |
compute(float[] velocity,
float mass,
float[] normal)
Should return the energy dependent function computed from particle data,
but cannot here because the reciprocal of a function of energy is not a function of energy ! |
float |
compute(float[] velocity,
float mass,
float[] normal,
float matModId,
float matId,
float partId)
Should return the energy dependent function computed from particle data,
but cannot here because the reciprocal of a function of energy is not a function of energy ! |
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) |
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 |
recipFunc
private ScalFunctionOfScal[] recipFunc
- one function per material,
each inverted individually
ReciprocalOfFunctionOfParticleE
public ReciprocalOfFunctionOfParticleE(FunctionOfParticleE f,
float xmin,
float xmax,
float firstStep,
float stepRatio)
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 as often)matId
- selected parameter set
- Returns:
- range [m] (not Angstrom, translation is done by l0)
compute
public float compute(float[] velocity,
float mass,
float[] normal)
- Should return the energy dependent function computed from particle data,
but cannot here because the reciprocal of a function of energy is not a function of energy !
- Overrides:
compute
in class FunctionOfParticleE
- Parameters:
velocity
- particle velocitymass
- particle massnormal
- vector defining the angle origin
- Returns:
- See Also:
ReciprocalOfFunctionOfParticleE
compute
public float compute(float[] velocity,
float mass,
float[] normal,
float matModId,
float matId,
float partId)
- Should return the energy dependent function computed from particle data,
but cannot here because the reciprocal of a function of energy is not a function of energy !
- Overrides:
compute
in class FunctionOfParticleE
- Parameters:
velocity
- particle velocitymass
- particle massnormal
- vector defining the angle originmatModId
- material model IdmatId
- material IdpartId
- particle Id
- Returns:
- See Also:
ReciprocalOfFunctionOfParticleE