Diffpack Documentation


Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Search  

FieldsPiWisConst Class Reference

vector field corresponding to FieldPiWisConst. More...

#include <FieldsPiWisConst.h>

Inheritance diagram for FieldsPiWisConst::

FieldsWithPtValues Fields HandleId List of all members.

Public Methods

 FieldsPiWisConst ()
 FieldsPiWisConst (int n, const char *fieldname)
 FieldsPiWisConst (const GridFE &grid, bool elementsRsubdomains, const char *fieldname)
 FieldsPiWisConst (int nfields, const GridFE &grid, bool elementsRsubdomains, const char *fieldname)
 ~FieldsPiWisConst ()
virtual void redim (int nsf, const char *fieldname)
void redim (const GridFE &grid, bool elementsRsubdomains, const char *fieldname)
void redim (int nfields, const GridFE &grid, bool elementsRsubdomains, const char *fieldname)
FieldPiWisConstoperator() (int i)
const FieldPiWisConstoperator() (int i) const
virtual FieldWithPtValuescomponent (int i)
virtual const FieldWithPtValuescomponent (int i) const
virtual FieldgetFieldBase (int i=1) const
virtual void attach (Field &field, int i=1)
void attach (FieldPiWisConst &field, int i=1)
void attach (FieldsPiWisConst &fields)
void valueElm (Ptv(NUMT) &vec, int element)
void valueElm (Ptv(NUMT) &vec, int element) const
virtual void valuePt (Ptv(NUMT) &vec, const Ptv(real) &x, real t=DUMMY)
virtual void valueFEM (Ptv(NUMT) &vec, const FiniteElement &fe, real t=DUMMY)
void fill (NUMT value)
void setValueElm (int element, const Ptv(NUMT) &vector)
void fill (const FieldsFEatItgPt &f)
virtual GridgetGridBase ()
virtual int getNoFields () const
virtual int getNoValues () const
virtual bool ok () const
CLASS_INFO VIRTUAL_CAST (FieldsPiWisConst) ASSIGNMENT_OPERATOR(FieldsPiWisConst)
 COPY_CONSTRUCTOR (FieldsPiWisConst)

Protected Attributes

VecSimplest(Handle(FieldPiWisConst)) sdsfvec

Detailed Description

vector field corresponding to FieldPiWisConst.

NAME: FieldsPiWisConst - vector field corresponding to FieldPiWisConst

DESCRIPTION:

This class offers a vector or tensor field where each component is a "FieldPiWisConst" object. The documentation of this class is implicitly contained in class "FieldsFE", "FieldsWithPtValues" and "Fields".


Constructor & Destructor Documentation

FieldsPiWisConst::FieldsPiWisConst ( )
 

FieldsPiWisConst::FieldsPiWisConst ( int n,
const char * fieldname )
 

FieldsPiWisConst::FieldsPiWisConst ( const GridFE & grid,
bool elementsRsubdomains,
const char * fieldname )
 

FieldsPiWisConst::FieldsPiWisConst ( int nfields,
const GridFE & grid,
bool elementsRsubdomains,
const char * fieldname )
 

FieldsPiWisConst::~FieldsPiWisConst ( )
 


Member Function Documentation

FieldsPiWisConst::COPY_CONSTRUCTOR ( FieldsPiWisConst )
 

CLASS_INFO FieldsPiWisConst::VIRTUAL_CAST ( FieldsPiWisConst )
 

void FieldsPiWisConst::attach ( FieldsPiWisConst & fields )
 

void FieldsPiWisConst::attach ( FieldPiWisConst & field,
int i = 1 )
 

void FieldsPiWisConst::attach ( Field & field,
int i = 1 ) [virtual]
 

attaches a scalar field as component number "i" in the vector field.

Reimplemented from Fields.

const FieldWithPtValues & FieldsPiWisConst::component ( int i ) const [virtual]
 

See documentation of one of the overloaded functions.

Reimplemented from FieldsWithPtValues.

FieldWithPtValues & FieldsPiWisConst::component ( int i ) [virtual]
 

gives access to a scalar component in the vector field.

Reimplemented from FieldsWithPtValues.

void FieldsPiWisConst::fill ( const FieldsFEatItgPt & f )
 

See documentation of one of the overloaded functions.

void FieldsPiWisConst::fill ( NUMT value )
 

the version that takes a "NUMT" fills all the values in the fields with the supplied value, while the other version makes repeated calls to "FieldPiWisConst fill(FieldsFEatItgPt&,int".

Field * FieldsPiWisConst::getFieldBase ( int i = 1 ) const [inline, virtual]
 

returns a "Field" base class pointer for component number "i" in the vector field. Used when reading/writing vector fields from/to SimRes files. This function will return a "NULL" pointer in some subclasses of "Fields" that are not represented as a vector of scalar fields.

Reimplemented from Fields.

Grid * FieldsPiWisConst::getGridBase ( ) [virtual]
 

enables access to the (common) underlying grid for the field components. NOTE: This function will return a "NULL" pointer in many subclasses of "Fields". It is, at present, only used for some special vector field classes.

Reimplemented from Fields.

int FieldsPiWisConst::getNoFields ( ) const [virtual]
 

returns the number of scalar fields that make up the vector field.

Reimplemented from Fields.

int FieldsPiWisConst::getNoValues ( ) const [virtual]
 

returns the total number of degrees of freedom in the vector field. For example, for a 3D velocity field, represented in terms of trilinear finite elements with X nodes, the "getNoValues" function should return "3*X".

Reimplemented from Fields.

bool FieldsPiWisConst::ok ( ) const [virtual]
 

Reimplemented from Fields.

const FieldPiWisConst & FieldsPiWisConst::operator() ( int i ) const
 

FieldPiWisConst & FieldsPiWisConst::operator() ( int i )
 

void FieldsPiWisConst::redim ( int nfields,
const GridFE & grid,
bool elementsRsubdomains,
const char * fieldname )
 

void FieldsPiWisConst::redim ( const GridFE & grid,
bool elementsRsubdomains,
const char * fieldname )
 

void FieldsPiWisConst::redim ( int nsf,
const char * fieldname ) [virtual]
 

redimensions the number of scalar fields that make up the vector field.

Reimplemented from Fields.

void FieldsPiWisConst::setValueElm ( int element,
const Ptv(NUMT) & vector )
 

void FieldsPiWisConst::valueElm ( Ptv(NUMT) & vec,
int element ) const [inline]
 

void FieldsPiWisConst::valueElm ( Ptv(NUMT) & vec,
int element )
 

void FieldsPiWisConst::valueFEM ( Ptv(NUMT) & vec,
const FiniteElement & fe,
real t = DUMMY ) [virtual]
 

Reimplemented from Fields.

void FieldsPiWisConst::valuePt ( Ptv(NUMT) & vec,
const Ptv(real) & x,
real t = DUMMY ) [virtual]
 

this function works mainly as the other "valuePt functions in the "Field" hierarchy, except that certain problems may occur if the point is on the boundary between two subdomains. Now we force an element by element search for the point and return the value of the field in that element. In case the point is on the boundary, the field value corresponding to the element that first gives a hit is returned. Previously, we tested if the point was a node and then always returned "DUMMY" and gave a warning. This is not a good solution because in higher order elements, internal nodes do not represent a problem, and the field may be multi-valued at general points in between the nodes along a boundary between two subdomains. Hence, the only satisfactory solution is thought to be the one which is implemented now.

The routine now works in conjunction with f.ex. finite differences or nodal point integration in FEM, but the "effective" boundaries of the subdomains (in the numerical calculations) are in fact influenced by the search algorithm in case the point is on the boundary between two subdomains. This is a topic for further research.

Reimplemented from Fields.


Member Data Documentation

VecSimplest(Handle(FieldPiWisConst)) FieldsPiWisConst::sdsfvec [protected]
 


The documentation for this class was generated from the following file:
Copyright © 2003 inuTech GmbH. All rights reserved.