|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectspis.Vol.VolDistrib.VolDistrib
Class Name : VolDistrib (generic Volume Distribution)
Project ref : SPIS project
File name : VolDistrib.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.
It stores the particle distribution at the desired accuracy level:
it can be a full velocity distribution function (PIC model) or only its moments (fluid approach)
All Volume Distribution classes must be derived from this class.
Pointers to surface fluxes of particles into and out of this volume distribution
are also stored:
- 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, for inFlux or 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
Versions and anomalies correction :
Version number | Author (name, e-mail) | Corrections/Modifications |
0.1 | JF Roussel, roussel@onecert.fr | Creation |
Constructor Summary | |
VolDistrib(VolMesh volMesh)
default constructor. |
Method Summary | |
abstract float |
assessLargestDt()
|
abstract boolean |
containsOnly(Part particletype)
|
void |
getMoment(VolField mom,
int order)
charge, mass, normalised and deviation flags omitted: they are set to their default value, 0 |
void |
getMoment(VolField mom,
int order,
int charge)
mass, normalised and deviation flags omitted: they are set to their default value, 0 |
abstract void |
getMoment(VolField mom,
int order,
int charge,
int mass)
normalised and deviation flags omitted: they are set to their default value, 0 |
void |
getMoment(VolField mom,
int order,
int charge,
int mass,
int normalised)
deviation flag omitted: it is set to its default value, 0 |
void |
getMoment(VolField mom,
int order,
int charge,
int mass,
int normalised,
int deviation)
Provides the moments of the distribution (order=0 => number density, 1 => momentum density, 2 => energy density...). |
java.lang.String |
getName()
|
Part |
getParticleType()
|
VolMesh |
getVm()
|
boolean |
isDensityImplicit()
if true the density of this population is implicit, i.e. not to be added to other densities for Poisson solving, because it is already (implicitely) taken into account in Poisson non linear solver |
abstract boolean |
mayContain(Part particletype)
|
abstract void |
move(float dt)
Time integration of the particle distribution over the duration dt. |
void |
setImplicitDensity(boolean b)
if set to true the density of this population is implicit, i.e. not to be added to other densities for Poisson solving, because it is already (implicitely) taken into account in Poisson non linear solver |
void |
setName(java.lang.String string)
|
void |
setParticleType(Part part)
|
Methods inherited from class java.lang.Object |
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public VolDistrib(VolMesh volMesh)
Method Detail |
public abstract void move(float dt)
VolDistribWithIO
public abstract float assessLargestDt()
public void getMoment(VolField mom, int order, int charge, int mass, int normalised, int deviation)
public void getMoment(VolField mom, int order, int charge, int mass, int normalised)
getMoment(VolField, int, int, int, int, int)
public abstract void getMoment(VolField mom, int order, int charge, int mass)
getMoment(VolField, int, int, int, int, int)
public void getMoment(VolField mom, int order, int charge)
getMoment(VolField, int, int, int, int, int)
public void getMoment(VolField mom, int order)
getMoment(VolField, int, int, int, int, int)
public abstract boolean containsOnly(Part particletype)
particletype
-
public abstract boolean mayContain(Part particletype)
particletype
-
public VolMesh getVm()
public boolean isDensityImplicit()
public void setImplicitDensity(boolean b)
b
- public java.lang.String getName()
public Part getParticleType()
public void setName(java.lang.String string)
string
- public void setParticleType(Part part)
part
-
|
|||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |