|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectspis.Vol.VolDistrib.VolDistrib
spis.Vol.VolDistrib.VolDistribWithIO
Class Name : VolDistribWithIO
Project ref : SPIS project
File name : VolDistribWithIO.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 abstract Volume Distribution including input-ouput
data for move method: in/out matter fluxes, electric/magnetic fields:
- selfInFlux: internally-generated incoming fluxes, which can be considered as part of this distribution
(typically boundary fluxes generating this particle distribution), they are not externally updated
since considered as static (a sampling is done at most)
- inFlux: externally-generated incoming fluxes, which are coming from other objects
(typically secondary electrons form SC, ion source from SC...), they are externally updated
by the external objects (mostly the spacecraft) before each iteration
(although this updating (or not) of inFlux (or of selfInFlux) is external to
this class, hence uncontrolled, and can indeed be coded differently)
- scOutFlux: flux of particles steming from this volume distribution onto the spacecraft
- bdOutFlux: flux of particles steming from this volume distribution onto external boundaries
NB: depending on the subtype of the incoming fluxes and the volume distribution,
the incoming fluxes can be re-sampled or not, see derived VolDistrib sub-classes.
Since some of these fluxes can be inexistent (no influx, outflux to be discarded)
it is allowed not to declare them:
- they are not requested in the constructors and are set to null or 0-dimension array
- use the setters (setInFlux...) to declare the ones needed
Only the E field is requested (the others can be passed as null pointers)
Sub-classes to be built from UI parameters:
to offer the possibility be built from UI parameters (local and global
parameters, the latter including the class name) subclasses of
this class must have a constructor with arguments:
- GlobalParameter[] globalParams,
- LocalParameter[] localParams,
- String option: one of "ions1", "ions2", "elec1", "elec2"
- VolMesh vm,
- VectVolField E,
- VectVolField B
which is not enforced at compilation time, but must be true at execution time
when such a class is built.
Versions and anomalies correction :
Version number | Author (name, e-mail) | Corrections/Modifications |
0.1 | JF Roussel, roussel@onecert.fr | Creation |
Field Summary | |
protected SurfDistrib[] |
allInFlux
List of all the incoming fluxes (as SurfDistrib) including internally- and externally-generated incoming fluxes. |
protected VectVolField |
B
reference to B field to be used for matter dynamics integration |
protected SurfDistrib |
bdOutFlux
flux of particles steming from this volume distribution onto external boundaries |
protected VectVolField |
E
reference to E field to be used for matter dynamics integration |
protected EField |
eField
electric field defined as a physical EField (including solver) |
protected MatterBC |
inFlux
reference to externally-generated incoming fluxes, which are coming from other objects (typically secondary electrons form SC, ion source from SC...) |
protected SurfDistrib |
scOutFlux
flux of particles steming from this volume distribution onto spacecraft |
protected MatterBC |
selfInFlux
internally-generated incoming fluxes, which can be considered as part of this distribution (typically boundary fluxes generating this particle distribution) |
Fields inherited from class spis.Vol.VolDistrib.VolDistrib |
vm |
Constructor Summary | |
VolDistribWithIO(VolMesh volMesh,
MatterBC selfInFlux_,
MatterBC inFlux_,
SurfDistrib scOutFlux_,
SurfDistrib bdOutFlux_,
EField eField,
VectVolField B_)
Constructor with full IO data, electric field defined as a physical EField (including solver). |
|
VolDistribWithIO(VolMesh volMesh,
MatterBC selfInFlux_,
MatterBC inFlux_,
SurfDistrib scOutFlux_,
SurfDistrib bdOutFlux_,
VectVolField E_,
VectVolField B_)
Constructor with full IO data. |
|
VolDistribWithIO(VolMesh volMesh,
VectVolField E_,
VectVolField B_)
Default constructor (IO data must then be defined through setters!). |
Method Summary | |
void |
buildAllInFlux()
Builds the list of all the incoming fluxes (as SurfDistrib) including internally- and externally-generated incoming fluxes. |
abstract void |
buildMostAccurateScOutFlux()
Builds the most accurate outgoing flux onto spacecraft. |
VectVolField |
getB()
|
SurfDistrib |
getBdOutFlux()
|
VectVolField |
getE()
|
MatterBC |
getInFlux()
|
SurfDistrib |
getScOutFlux()
|
MatterBC |
getSelfInFlux()
|
void |
setB(VectVolField B_)
|
void |
setBdOutFlux(SurfDistrib distrib)
|
void |
setE(VectVolField E_)
|
void |
setInFlux(MatterBC distribs)
|
void |
setScOutFlux(SurfDistrib distrib)
|
void |
setSelfInFlux(MatterBC distribs)
|
Methods inherited from class spis.Vol.VolDistrib.VolDistrib |
assessLargestDt, checkMomentConsistentWithOrder, containsOnly, getMoment, getMoment, getMoment, getMoment, getMoment, getName, getParticleType, getVm, isDensityImplicit, mayContain, move, setImplicitDensity, setName, setParticleType |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
protected MatterBC selfInFlux
protected MatterBC inFlux
protected SurfDistrib scOutFlux
protected SurfDistrib bdOutFlux
protected VectVolField E
protected VectVolField B
protected EField eField
protected SurfDistrib[] allInFlux
Constructor Detail |
public VolDistribWithIO(VolMesh volMesh, VectVolField E_, VectVolField B_)
public VolDistribWithIO(VolMesh volMesh, MatterBC selfInFlux_, MatterBC inFlux_, SurfDistrib scOutFlux_, SurfDistrib bdOutFlux_, VectVolField E_, VectVolField B_)
public VolDistribWithIO(VolMesh volMesh, MatterBC selfInFlux_, MatterBC inFlux_, SurfDistrib scOutFlux_, SurfDistrib bdOutFlux_, EField eField, VectVolField B_)
volMesh
- selfInFlux_
- inFlux_
- scOutFlux_
- bdOutFlux_
- B_
- Method Detail |
public void buildAllInFlux()
public abstract void buildMostAccurateScOutFlux()
public SurfDistrib getBdOutFlux()
public MatterBC getInFlux()
public SurfDistrib getScOutFlux()
public MatterBC getSelfInFlux()
public void setBdOutFlux(SurfDistrib distrib)
distrib
- flux from this volume distribution onto external boundary of computation boxpublic void setInFlux(MatterBC distribs)
distribs
- externally-generated fluxes coming into this volume distribution (typically secondary electrons form SC, ion source from SC...)public void setScOutFlux(SurfDistrib distrib)
distrib
- flux from this volume distribution onto spacecraftpublic void setSelfInFlux(MatterBC distribs)
distribs
- internally-generated fluxes coming into this volume distribution (typically boundary fluxes generating this particle distribution)public VectVolField getB()
public VectVolField getE()
public void setB(VectVolField B_)
B_
- reference to the B field used for matter dynamics integrationpublic void setE(VectVolField E_)
E_
- reference to the E field used for matter dynamics integration
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |