spis.Vol.VolField
Class DirVectVolField

java.lang.Object
  extended byspis.Vol.VolField.VolField
      extended byspis.Vol.VolField.VectVolField
          extended byspis.Vol.VolField.DirVectVolField
All Implemented Interfaces:
java.io.Serializable

public class DirVectVolField
extends VectVolField
implements java.io.Serializable

Class Name : DirVectVolField (Direct storage Vectorial Volume Field)
Project ref : SPIS project
File name : DirVectVolField.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 : Vectorial Volume Field directly stored as vectors (as opposed to derived from a potential)

Versions and anomalies correction :

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


Version:
0.1
Author:
JF Roussel
See Also:
Serialized Form

Field Summary
private  VectTable val
          Field values (the type of the actual object shall be either SpaceVectTable or VeloVectTable)
 
Fields inherited from class spis.Vol.VolField.VolField
cent, name, time, vm
 
Constructor Summary
DirVectVolField(VolMesh volMesh, Centring cent)
          Default constructor, empty VectTable is allocated of sub-type VeloVectTable (if a SpaceVectTable is wished, used other constructor).
DirVectVolField(VolMesh volMesh, Centring centring, VectFunctionOfVect f)
          Constructor defining the field from a function of element position.
DirVectVolField(VolMesh volMesh, Centring cent, VectTable values)
          Constructor with Table provided. .
 
Method Summary
 VectTable buildExternIndexedTable()
          Builds and returns the values of the field at a the mesh elements it is defined on (nodes/cells/...depending on centring), using external indexing of elements (relevent only for node-centred fields).
 void computeField(PointList pl, Table values)
          Provides the values of the field at a list of arbitrary locations PointList (particle positions).
 void computePot(PointList pl, FloatScalTable val)
          Provides the potential at a list of arbitrary locations PointList (particle positions).
 void divide(ScalVolField f)
          Multiplies this field by another field (on the spot)
 FloatScalTable getPotTable()
          Provides the potential at the mesh elements it is defined on (nodes/cells/...depending on centring).
 VectTable getTable()
          Provides the values of the field at a the mesh elements it is defined on (nodes/cells/...depending on centring).
 void mult(float x)
          Multiplies this field by a scalar (on the spot)
 void mult(ScalVolField f)
          Multiplies this field by another field (on the spot)
 
Methods inherited from class spis.Vol.VolField.VectVolField
getPot
 
Methods inherited from class spis.Vol.VolField.VolField
checkDim, checkSameCentring, getCentring, getName, getTime, getVm, setName, setTime
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

val

private VectTable val
Field values (the type of the actual object shall be either SpaceVectTable or VeloVectTable)

Constructor Detail

DirVectVolField

public DirVectVolField(VolMesh volMesh,
                       Centring cent)
Default constructor, empty VectTable is allocated of sub-type VeloVectTable (if a SpaceVectTable is wished, used other constructor).

Parameters:
volMesh -
cent -

DirVectVolField

public DirVectVolField(VolMesh volMesh,
                       Centring cent,
                       VectTable values)
Constructor with Table provided. .

Parameters:
volMesh -
cent -
values -

DirVectVolField

public DirVectVolField(VolMesh volMesh,
                       Centring centring,
                       VectFunctionOfVect f)
Constructor defining the field from a function of element position.

Parameters:
volMesh -
f -
Method Detail

mult

public void mult(ScalVolField f)
Multiplies this field by another field (on the spot)

Specified by:
mult in class VolField

mult

public void mult(float x)
Multiplies this field by a scalar (on the spot)

Specified by:
mult in class VolField

divide

public void divide(ScalVolField f)
Multiplies this field by another field (on the spot)

Specified by:
divide in class VolField

computeField

public void computeField(PointList pl,
                         Table values)
Provides the values of the field at a list of arbitrary locations PointList (particle positions).
The result table val must be of the same type as the field, i.e. vectorial here.

Specified by:
computeField in class VolField
See Also:
EField#computeField(PointList, Table)

buildExternIndexedTable

public VectTable buildExternIndexedTable()
Builds and returns the values of the field at a the mesh elements it is defined on (nodes/cells/...depending on centring), using external indexing of elements (relevent only for node-centred fields).
If irrelevent (not node-centred, simply returns the regular table).
Warning: returning a new-built table or the regular table makes the consequences of their modification different: no effect on the present ScalVolField for a new-built table, but a consequence for the regular table.


getTable

public VectTable getTable()
Provides the values of the field at a the mesh elements it is defined on (nodes/cells/...depending on centring).


computePot

public void computePot(PointList pl,
                       FloatScalTable val)
Provides the potential at a list of arbitrary locations PointList (particle positions).

Specified by:
computePot in class VectVolField

getPotTable

public FloatScalTable getPotTable()
Provides the potential at the mesh elements it is defined on (nodes/cells/...depending on centring).

Specified by:
getPotTable in class VectVolField