IFEM  90A354
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
FieldFuncScalarBase Class Reference

Base class for field functions derived from a scalar field. More...

#include <FieldFunctions.h>

Inheritance diagram for FieldFuncScalarBase:
Inheritance graph
[legend]
Collaboration diagram for FieldFuncScalarBase:
Collaboration graph
[legend]

Public Member Functions

 FieldFuncScalarBase (const std::string &fileName, const std::string &basisName, const std::string &fieldName, int level=0)
 The constructor creates a field from the provided HDF5-file. More...
 
virtual ~FieldFuncScalarBase ()
 The destructor deletes the scalar fields.
 

Protected Member Functions

 FieldFuncScalarBase ()
 Default constructor.
 
virtual void addPatchField (ASMbase *pch, const std::vector< Real > &coefs, int, int)
 Adds a patch-wise field with the given coefficient values. More...
 
virtual void clearField ()
 Clears the field container.
 
void clearFieldInt ()
 Non-virtual actual implementation of clearField()
 
- Protected Member Functions inherited from FieldFuncHDF5
 FieldFuncHDF5 ()
 Default constructor.
 
 FieldFuncHDF5 (const std::string &fileName)
 The constructor opens the provided HDF5-file. More...
 
 FieldFuncHDF5 (const FieldFuncHDF5 &)=delete
 No copying of this class.
 
virtual ~FieldFuncHDF5 ()
 The destructor closes the HDF5-file.
 
bool load (const std::vector< std::string > &fieldNames, const std::string &basisName, int level, bool isScalar=false)
 Loads field values for the specified time level. More...
 
int findClosestLevel (double time) const
 Finds the level whose time is closest to the specified time.
 
- Protected Member Functions inherited from FieldFuncBase
 FieldFuncBase ()
 Default constructor.
 
 FieldFuncBase (const FieldFuncBase &)=delete
 No copying of this class.
 
virtual ~FieldFuncBase ()
 The destructor deletes the patches.
 
bool setPatch (size_t pIdx)
 Sets the active patch.
 

Protected Attributes

int currentLevel
 Current time level to evaluate at.
 
std::string fName
 Name of field.
 
std::string bName
 Name of basis.
 
std::vector< Field * > field
 The scalar field to be evaluated.
 
- Protected Attributes inherited from FieldFuncHDF5
bool hasMultipleLevels
 True if we have multiple time levels.
 
int lastLevel
 The last time level read from.
 
- Protected Attributes inherited from FieldFuncBase
std::vector< ASMbase * > patch
 The patches on which the field is defined.
 
size_t pidx
 Current patch index.
 
size_t npch
 Number of patches in the field.
 

Detailed Description

Base class for field functions derived from a scalar field.

Constructor & Destructor Documentation

◆ FieldFuncScalarBase()

FieldFuncScalarBase::FieldFuncScalarBase ( const std::string &  fileName,
const std::string &  basisName,
const std::string &  fieldName,
int  level = 0 
)

The constructor creates a field from the provided HDF5-file.

Parameters
[in]fileNameName of the HDF5-file
[in]basisNameName of the basis which the field values refer to
[in]fieldNameName of the field in the HDF5-file
[in]levelTime level to read for

References currentLevel, FieldFuncHDF5::hasMultipleLevels, FieldFuncHDF5::lastLevel, and FieldFuncHDF5::load().

Member Function Documentation

◆ addPatchField()

void FieldFuncScalarBase::addPatchField ( ASMbase pch,
const std::vector< Real > &  coefs,
int  ,
int   
)
protectedvirtual

Adds a patch-wise field with the given coefficient values.

Parameters
[in]pchThe patch to define the field over
[in]coefsField values

Implements FieldFuncHDF5.

References Field::create(), field, and FieldFuncBase::npch.


The documentation for this class was generated from the following files: