spis.Surf.InteractModel
Class BasicMaterialModel

java.lang.Object
  extended byspis.Surf.InteractModel.InteractModel
      extended byspis.Surf.InteractModel.MaterialModel
          extended byspis.Surf.InteractModel.BasicMaterialModel

public class BasicMaterialModel
extends MaterialModel

Class Name : BasicMaterialModel
Project ref : SPIS project
File name : BasicMaterialModel.java
File type : class
Copyright : ONERA, 2 Av. E. Belin, 31055 Toulouse cedex, France http://www.onecert.fr
Status : under development
Creation : 25/08/2003
Modification :

Description : Basic Material Model.
This is the default material model of SPIS. It is based on a NASCAP-like material models for secondary emission, photo-emission, and induced conductivity. Model parameters are the 19 NASCAP properties per material, in order to be able to use the databases of such material properties. Some implemtation details may differ from NASCAP, in particular concerning the distribution function of emitted particles (secondary or photo electrons)

Versions and anomalies correction :

Version numberAuthor (name, e-mail) Corrections/Modifications
0.1 JF Roussel, roussel@onecert.frCreation


Version:
0.1
Author:
JF Roussel

Constructor Summary
BasicMaterialModel(NascapModelParamSet[] modelParamSets, int modelId)
          Default constructor
BasicMaterialModel(ParameterSet[] modelParamSets, int modelId, GlobalParameter[] globalParameters)
          Constructor with global parameters supplied: some global interaction parameters will be taken from them: photoElectronTemperature, secondaryTemperature, secondaryFromProtonTemperature
 
Method Summary
 float computeCapacitance(int matId)
          Computes the capacitance per surface unit [F/m2] of the material of Id matId (and default thickness, defined in material database)
 float computeCapacitance(int matId, float matThickness)
          Computes the capacitance par surface unit [F/m2] of the material of Id matId, and thickness matThickness (returns -1 if thickness <= 0, i.e. a conductor)
 float computeConductivity(int matId)
          Computes the conductivity par surface unit [ohm-1.m-2] of the material of Id matId (and default thickness, defined in material database)
 float computeConductivity(int matId, float matThickness)
          Computes the conductivity par surface unit [ohm-1.m-2] of the material of Id matId, and thickness matThickness (returns -1 if thickness <= 0, i.e. a conductor)
 float computeSurfaceConductivity(int matId)
          Computes the surface conductivity of the material of Id matId (in [ohm-1] corresponding to surface resistivity in [ohm] sometimes called [ohm/square]).
 RangeFunction getElectronRange()
           
 Interactor getNewIndCondInteractor(SurfDistrib inFlux, ScalSurfField matModId, ScalSurfField matId, ScalSurfField matThickness, InteractSC sc)
          Provides the Secondary Emission interactor of this Material Model.
 Interactor getNewPhotoEmInteractor(FluidSurfDistrib sunFlux, ScalSurfField matModId, ScalSurfField matId)
          Provides the photo-emission interactor of this Material Model.
 Interactor getNewSEEEInteractor(SurfDistrib inFlux, ScalSurfField matModId, ScalSurfField matId)
          Builds and returns the interactor for Secondary Electron Emission from Electron (of this Material Model).
 Interactor getNewSEEPInteractor(SurfDistrib inFlux, ScalSurfField matModId, ScalSurfField matId)
          Builds and returns the interactor for Secondary Electron Emission from Proton impact (of this Material Model).
 Interactor getPhotoEmInteractorDeprecated(ScalSurfField matModId, ScalSurfField matId)
          Provides the photo-emission interactor of this Material Model.
 Interactor getPhotoEmInteractorDeprecated(ScalSurfField matModId, ScalSurfField matId, ScalSurfField surfacePotential)
          Provides a (more) advanced photo-emission interactor of this Material Model, including re-collection depending on local potential.
 RangeFunction getProtonRange()
           
 
Methods inherited from class spis.Surf.InteractModel.MaterialModel
getModelId, setModelId
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

BasicMaterialModel

public BasicMaterialModel(NascapModelParamSet[] modelParamSets,
                          int modelId)
Default constructor

Parameters:
modelParamSets -
modelId -

BasicMaterialModel

public BasicMaterialModel(ParameterSet[] modelParamSets,
                          int modelId,
                          GlobalParameter[] globalParameters)
Constructor with global parameters supplied: some global interaction parameters will be taken from them: photoElectronTemperature, secondaryTemperature, secondaryFromProtonTemperature

Parameters:
modelParamSets -
modelId -
globalParameters -
Method Detail

getNewSEEEInteractor

public Interactor getNewSEEEInteractor(SurfDistrib inFlux,
                                       ScalSurfField matModId,
                                       ScalSurfField matId)
Builds and returns the interactor for Secondary Electron Emission from Electron (of this Material Model).

Specified by:
getNewSEEEInteractor in class MaterialModel

getNewSEEPInteractor

public Interactor getNewSEEPInteractor(SurfDistrib inFlux,
                                       ScalSurfField matModId,
                                       ScalSurfField matId)
Builds and returns the interactor for Secondary Electron Emission from Proton impact (of this Material Model). Warning: this model of SEEP needs c1 and c2 parameters describing secondary electron creation and transport in ache material. As a consequence SEEE (SEE from electrons) must have been computed before, since these parameters are provided by the SEEEInteractor.

Specified by:
getNewSEEPInteractor in class MaterialModel

getNewPhotoEmInteractor

public Interactor getNewPhotoEmInteractor(FluidSurfDistrib sunFlux,
                                          ScalSurfField matModId,
                                          ScalSurfField matId)
Provides the photo-emission interactor of this Material Model.

Specified by:
getNewPhotoEmInteractor in class MaterialModel

getPhotoEmInteractorDeprecated

public Interactor getPhotoEmInteractorDeprecated(ScalSurfField matModId,
                                                 ScalSurfField matId)
Provides the photo-emission interactor of this Material Model.
Is deprecated because getPhotoEmInteractor with sunFlux supplied is preferred

Specified by:
getPhotoEmInteractorDeprecated in class MaterialModel

getPhotoEmInteractorDeprecated

public Interactor getPhotoEmInteractorDeprecated(ScalSurfField matModId,
                                                 ScalSurfField matId,
                                                 ScalSurfField surfacePotential)
Provides a (more) advanced photo-emission interactor of this Material Model, including re-collection depending on local potential.

Specified by:
getPhotoEmInteractorDeprecated in class MaterialModel

getNewIndCondInteractor

public Interactor getNewIndCondInteractor(SurfDistrib inFlux,
                                          ScalSurfField matModId,
                                          ScalSurfField matId,
                                          ScalSurfField matThickness,
                                          InteractSC sc)
Provides the Secondary Emission interactor of this Material Model.

Specified by:
getNewIndCondInteractor in class MaterialModel
Parameters:
inFlux -
matModId -
matId -
matThickness - material thickness surface field (if positive, overrides default NASCAp material thickness)
sc - Spacecraft on which conductivity is to be applied
Returns:

getElectronRange

public RangeFunction getElectronRange()
Specified by:
getElectronRange in class MaterialModel
Returns:
the range function for electrons

getProtonRange

public RangeFunction getProtonRange()
Specified by:
getProtonRange in class MaterialModel
Returns:
the range function for protons

computeCapacitance

public float computeCapacitance(int matId,
                                float matThickness)
Computes the capacitance par surface unit [F/m2] of the material of Id matId, and thickness matThickness (returns -1 if thickness <= 0, i.e. a conductor)

Specified by:
computeCapacitance in class MaterialModel

computeCapacitance

public float computeCapacitance(int matId)
Computes the capacitance per surface unit [F/m2] of the material of Id matId (and default thickness, defined in material database)

Specified by:
computeCapacitance in class MaterialModel

computeConductivity

public float computeConductivity(int matId,
                                 float matThickness)
Computes the conductivity par surface unit [ohm-1.m-2] of the material of Id matId, and thickness matThickness (returns -1 if thickness <= 0, i.e. a conductor)

Specified by:
computeConductivity in class MaterialModel

computeConductivity

public float computeConductivity(int matId)
Computes the conductivity par surface unit [ohm-1.m-2] of the material of Id matId (and default thickness, defined in material database)

Specified by:
computeConductivity in class MaterialModel

computeSurfaceConductivity

public float computeSurfaceConductivity(int matId)
Computes the surface conductivity of the material of Id matId (in [ohm-1] corresponding to surface resistivity in [ohm] sometimes called [ohm/square]).
Returns -1 if a conductor (coded as -1 (or 0) in the surface resistivity data)

Specified by:
computeSurfaceConductivity in class MaterialModel