spis.Surf.InteractModel
Class MaterialModel

java.lang.Object
  extended byspis.Surf.InteractModel.InteractModel
      extended byspis.Surf.InteractModel.MaterialModel
Direct Known Subclasses:
BasicMaterialModel

public abstract class MaterialModel
extends InteractModel

Class Name : MaterialModel (generic Material Model)
Project ref : SPIS project
File name : MaterialModel.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 : generic Material Model.
All material models must derive from this one.
They must be able to compute secondary emission, photo-emission, coating capacity,conductivity and induced conductivity (at least). This is done through Interactors for emission, photo-emission and induced conductivity whoul handle the pomymorphism of the in/out distributions.
The basic Material Model of SPIS (BasicMaterialModel) derives from this class and is based on NASCAP material properties parameters. For new other material models the iterators of BasicMaterialModel (BasicSEEEInteractor...) can be re-used.

Versions and anomalies correction :

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


Version:
0.1
Author:
JF Roussel

Field Summary
protected  int modelId
          Id of this material model
 
Fields inherited from class spis.Surf.InteractModel.InteractModel
paramSets
 
Constructor Summary
MaterialModel(ParameterSet[] modelParamSets, int modelId_)
          Default constructor
 
Method Summary
abstract  float computeCapacitance(int matId)
          Computes the capacitance par surface unit [F/m2] of the material of Id matId (and default thickness, defined in material database)
abstract  float computeCapacitance(int matId, float matThickness)
          Computes the capacitance par surface unit [F/m2] of the material of Id matId, and thickness matThickness
abstract  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)
abstract  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
abstract  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])
abstract  RangeFunction getElectronRange()
           
 int getModelId()
           
abstract  Interactor getNewIndCondInteractor(SurfDistrib inFlux, ScalSurfField matModId, ScalSurfField matId, ScalSurfField matThickness, InteractSC sc)
          Provides the Secondary Emission interactor of this Material Model.
abstract  Interactor getNewPhotoEmInteractor(FluidSurfDistrib sunFlux, ScalSurfField matModId, ScalSurfField matId)
          Builds and returns the photo-emission interactor of this Material Model.
abstract  Interactor getNewSEEEInteractor(SurfDistrib inFlux, ScalSurfField matModId, ScalSurfField matId)
          Builds and returns the interactor for Secondary Electron Emission from Electron (of this Material Model).
abstract  Interactor getNewSEEPInteractor(SurfDistrib inFlux, ScalSurfField matModId, ScalSurfField matId)
          Builds and returns the interactor for Secondary Electron Emission from Proton impact (of this Material Model).
abstract  Interactor getPhotoEmInteractorDeprecated(ScalSurfField matModId, ScalSurfField matId)
          Provides the photo-emission interactor of this Material Model.
abstract  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.
abstract  RangeFunction getProtonRange()
           
 void setModelId(int i)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

modelId

protected int modelId
Id of this material model

Constructor Detail

MaterialModel

public MaterialModel(ParameterSet[] modelParamSets,
                     int modelId_)
Default constructor

Method Detail

getNewSEEEInteractor

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


getNewSEEPInteractor

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


getNewPhotoEmInteractor

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


getPhotoEmInteractorDeprecated

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


getPhotoEmInteractorDeprecated

public abstract 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.


getNewIndCondInteractor

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


getElectronRange

public abstract RangeFunction getElectronRange()
Returns:
the range function for electrons

getProtonRange

public abstract RangeFunction getProtonRange()
Returns:
the range function for protons

computeCapacitance

public abstract float computeCapacitance(int matId,
                                         float matThickness)
Computes the capacitance par surface unit [F/m2] of the material of Id matId, and thickness matThickness


computeCapacitance

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


computeConductivity

public abstract 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


computeConductivity

public abstract 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)


computeSurfaceConductivity

public abstract 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])


getModelId

public int getModelId()
Returns:

setModelId

public void setModelId(int i)
Parameters:
i -