template <class T> class INFab

Array defined at the VoFs of an irregular domain.

Inheritance:


public members:

Constructors, destructor, and defines
INFab()
INFab(const IrregGeom & iggeom_in, int nvarin = 1)
~INFab()
void define(const IrregGeom & iggeom_in, int nvarin=1)

Modification functions
void setVal(T value)
void copy(const INFab <T>& src)
void clear()

Inquiry functions
bool isInitialized() const

Access functions
inline int length() const
inline int nVar() const
inline int nComp() const
const IrregGeom * irregGeomPtr() const
T& operator() ( VoF ndin, int varlocin)
const T& operator() ( VoF ndin, int varlocin) const
T& operator() ( VoF ndin)
const T& operator() ( VoF ndin) const
T& operator()(const VoF & ndin, BaseFab <T>& fab, int varin)
const T& operator()( VoF ndin, const BaseFab <T>& fab, int varin) const
T& operator()( VoF ndin, BaseFab <T>& fab)
const T& operator()( VoF ndin, const BaseFab <T>& fab) const
Fortran argument access functions
inline const T* dataPtr(int N=0) const
inline T* dataPtr(int N=0)
const int* loVect() const
const int* hiVect() const

Documentation

An INFab is an array of data defined in an irregular region of space. The irregular region is specified by the VoFs of an IrregGeom. Multiple data components per VoF may be specified in the INFab definition.

INFab ()

Default constructor. Constructs an uninitialized INFab. You must subsequently call define before using this INFab.

Arguments: none
Returns: none
This:
----- This object is modified. -----

INFab (const IrregGeom & iggeom_in, int nvarin = 1)

Defining constructor. Specifies the valid domain, in the form of an IrregGeom, and the number of data components per VoF. The contents are uninitialized.

Arguments:
iggeom_in (not modified): the valid domain of this INFab
nvarin (not modified): the number of data components per VoF
Returns: none
This:
----- This object is modified. -----

Initializing constructor. Specifies the valid domain, in the form of an IrregGeom, the number of data components per VoF, and the initial value of the data.

Arguments:
iggeom_in (not modified): the valid domain of this INFab
nvarin (not modified): the number of data components per VoF
valin (not modified): the initial value of the data
Returns: none
This:
----- This object is modified. -----

~INFab ()

Destructor. Destroys internal data.

Arguments: none
Returns: none
This:
----- This object is modified. -----

void define (const IrregGeom & iggeom_in, int nvarin=1)

Define this INFab. Specifies the valid domain, in the form of an IrregGeom, and the number of data components per VoF. The contents are uninitialized. If it has previously been defined, the old definition data is overwritten and lost.

Arguments:
iggeom_in (not modified): the valid domain of this INFab
nvarin (not modified): the number of data components per VoF
Returns: none
This:
----- This object is modified. -----

Define and initialize this INFab. Specifies the valid domain, in the form of an IrregGeom, the number of data components per VoF, and the initial value of the data.

Arguments:
iggeom_in (not modified): the valid domain of this INFab
nvarin (not modified): the number of data components per VoF
valin (not modified): the initial value of the data
Returns: none
This:
----- This object is modified. -----

void setVal (T value)

Set a value everywhere. Every data location in this INFab is set.

Arguments:
value (not modified): the specified value of the contents of this INFab.
Returns: none
This:
----- This object is modified. -----

void copy (const INFab <T>& src)

Copy the contents of another INFab into this INFab. It is an error if the two INFabs do not have the same IrregGeom.

Arguments:
src (not modified): the INFab to copy from
Returns: none
This:
----- This object is modified. -----

void clear ()

Remove all data from this INFab. You must call define again in order to use it.

Arguments: none
Returns: none
This:
----- This object is modified. -----

bool isInitialized () const

Tells whether this INFab has been initialized, either with a constructor or with define. It must be initialized in order to access its data. //

Arguments: none
Returns: true if this INFab has been initialized, false if it hasn't.
This:
This object is not modified.

inline int length () const

Return the number of VoFs in this INFab.

Arguments: none
Returns: the number of VoFs in this INFab
This:
This object is not modified.

inline int nVar () const

Return the number of data components of this INFab.

Arguments: none
Returns:
number of data components of this INFab.
This:
This object is not modified.

inline int nComp () const
Return the number of data components of this INFab.

Arguments: none
Returns:
number of data components of this INFab.
This:
This object is not modified.

const IrregGeom * irregGeomPtr () const

Return a pointer to the valid domain of this INFab.

Arguments: none
Returns: a pointer to the IrregGeom that defines the valid domain of this INFab.
This:
This object is not modified.

T& operator() ( VoF ndin, int varlocin)

Indexing operator. Return a reference to the contents of this INFab, at the specified VoF and data component. The first component is zero, the last is nvar-1. The returned object is a modifiable lvalue.

Arguments:
ndin (not modified): the VoF at which data is desired
varlocin (not modified): the data component desired
Returns:
a modifiable reference to the contents of this INFab at the desired VoF and data component
This:
----- This object is modified if the returned object is assigned a new value -----

const T& operator() ( VoF ndin, int varlocin) const

Indexing operator. Return a const reference to the contents of this INFab, at the specified VoF and data component. The first component is zero, the last is nvar-1.

Arguments:
ndin (not modified): the VoF at which data is desired
varlocin (not modified): the data component desired
Returns:
a const reference to the contents of this INFab at the desired VoF and data component
This:
This object is not modified.

T& operator() ( VoF ndin)

Indexing operator. Return a reference to the contents of this INFab, at the specified VoF. This version is only valid for an INFab with a single data component. The returned object is a modifiable lvalue.

Arguments:
ndin (not modified): the VoF at which data is desired
Returns:
a modifiable reference to the contents of this INFab at the desired VoF and data component
This:
----- This object is modified if the returned object is assigned a new value -----

const T& operator() ( VoF ndin) const

Indexing operator. Return a const reference to the contents of this INFab, at the specified VoF. This version is only valid for an INFab with a single data component.

Arguments:
ndin (not modified): the VoF at which data is desired
Returns:
a const reference to the contents of this INFab at the desired VoF
This:
This object is not modified.

T& operator() (const VoF & ndin, BaseFab <T>& fab, int varin)

Compound indexing operator. If the specified VoF is in the valid domain of this INFab, return a reference to the contents of this INFab, at the specified VoF and data component; else return a reference to the corresponding value in the specified BaseFab. The first data component is zero, the last is nvar-1. The returned object is a modifiable lvalue.

Arguments:
ndin (not modified): the VoF at which data is desired
fab (modifiable): the BaseFab to reference if the specified VoF is not in the valid domain of this INFab varin (not modified): the data component desired
Returns:
a modifable reference to the contents of this INFab at the specified VoF and data component, if the VoF is in the valid domain of this INFab; else to the corresponding value in fab
This:
----- This object is modified if the returned object is assigned a new value -----

const T& operator() ( VoF ndin, const BaseFab <T>& fab, int varin) const

Compound indexing operator. If the specified VoF is in the valid domain of this INFab, return a const reference to the contents of this INFab, at the specified VoF and data component; else return a const reference to the corresponding value in the specified BaseFab. The first data component is zero, the last is nvar-1.

Arguments:
ndin (not modified): the VoF at which data is desired
fab (not modified): the BaseFab to reference if the specified VoF is not in the valid domain of this INFab varin (not modified): the data component desired
Returns:
a const reference to the contents of this INFab at the specified VoF and data component, if the VoF is in the valid domain of this INFab; else to the corresponding value in fab
This:
This object is not modified

T& operator() ( VoF ndin, BaseFab <T>& fab)

Compound indexing operator. If the specified VoF is in the valid domain of this INFab, return a reference to the contents of this INFab, at the specified VoF; else return a reference to the corresponding value in the specified BaseFab. This version is only valid for an INFab with a single data component. The returned object is a modifiable lvalue.

Arguments:
ndin (not modified): the VoF at which data is desired
fab (modifiable): the BaseFab to reference if the specified VoF is not in the valid domain of this INFab Returns:
a const reference to the contents of this INFab at the specified VoF, if it is in the valid domain of this INFab; else to the corresponding value in fab
This:
----- This object is modified if the returned object is assigned a new value -----

const T& operator() ( VoF ndin, const BaseFab <T>& fab) const

Compound indexing operator. If the specified VoF is in the valid domain of this INFab, return a const reference to the contents of this INFab at the specified VoF; else return a const reference to the corresponding value in the specified BaseFab. This version is only valid for an INFab with a single data component.

Arguments:
ndin (not modified): the VoF at which data is desired
fab (not modified): the BaseFab to reference if the specified VoF is not in the valid domain of this INFab Returns:
a const reference to the contents of this INFab at the specified VoF, if it is in the valid domain of this INFab; else to the corresponding value in fab
This:
This object is not modified

FORTRAN ARGUMENT ACCESS FUNCTIONS

The following functions provide direct access to the underlying representation of INFab. They exist only so that Fortran routines which perform pointwise operations on data in a rectangular domain can be re-used for INFab data. They are not designed to be used in C++! Further, Fortran doesn't respect const, so even though the functions do not modify this INFab, they permit Fortran routines to do so.

inline const T* dataPtr (int N=0) const

Return a const pointer to the internal data storage of this INFab.
WARNING: this can be amazingly misused! It is intended only to be passed as an argument to Fortran.

Arguments:
N (not modified): the data component
Returns:
pointer to the internal data storage
This:
This object is not modified.

inline T* dataPtr (int N=0)

Return a pointer to the internal data storage of this INFab.
WARNING: this can be amazingly misused! It is intended only to be passed as an argument to Fortran.

Arguments:
N (not modified): the data component
Returns:
pointer to the internal data storage
This:
This object is not modified.

const int* loVect () const

Return a fake "lower left corner of the domain" for use with Fortran.
WARNING: this can be amazingly misused! It is intended only to be passed as an argument to Fortran.

Arguments: none
Returns:
pointer to the indices of the "lower left corner of the domain"
This:
This object is not modified.

const int* hiVect () const

Return a fake "upper right corner of the domain" for use with Fortran.
WARNING: this can be amazingly misused! It is intended only to be passed as an argument to Fortran.

Arguments: none
Returns:
pointer to the indices of the "upper right corner of the domain"
This:
This object is not modified.


this class has no child classes.

alphabetic index hierarchy of classes


this page has been generated automatically by doc++