Diffpack Documentation
Main Page Class Hierarchy Alphabetical List Compound List File List Compound Members File Members Search
BasisFuncAtPt Class Reference
finite element basis functions evaluated at a point.
More...
#include <BasisFuncAtPt.h>
List of all members.
Detailed Description
finite element basis functions evaluated at a point.
NAME: BasisFuncAtPt - finite element basis functions evaluated at a point
DESCRIPTION:
The class represent data associated with the finite element basis functions evaluated at a point in an element. These data include the basis function values, the values of the derivatives (with respect to local and global coordinates), the values of the functions used in the geometric mapping (for isoparametric functions these functions coincides with the basis functions), and the Jacobi matrix (plus inverse) associated with the geometric mapping. The class is used by class "FiniteElement".
One can think of using an array of "BasisFuncAtPt" objects such that each object represents the basis function data at a numerical integration point. It is then possible to evaluate all basis function data once and for all if all the elements are equal in type and shape.
Constructor & Destructor Documentation
|
BasisFuncAtPt::BasisFuncAtPt (
|
)
|
|
|
|
There is a copy constructor and a constructor without arguments. The latter must be followed by a call to "redim" before the object is initialized. The "redim" function will only redimension the data structures according to the current element information. "initAtPoint" performs all evaluations of basis functions, the Jacobian etc. We refer to class "FiniteElement" for examples on how "BasisFuncAtPt" is used in finite element computations. |
|
BasisFuncAtPt::BasisFuncAtPt (
|
const BasisFuncAtPt & b )
|
|
|
|
See documentation of one of the overloaded constructor. |
|
BasisFuncAtPt::~BasisFuncAtPt (
|
) [inline]
|
|
Member Function Documentation
|
const Mat(real) & BasisFuncAtPt::JacobiMatrix (
|
) const [inline]
|
|
|
|
returns a reference to the Jacobi matrix |
|
const Vec(real) & BasisFuncAtPt::N (
|
) const [inline]
|
|
|
|
See documentation of one of the overloaded functions. |
|
real BasisFuncAtPt::N (
|
int i ) const
|
|
|
|
returns the value of the basis function. |
|
const Vec(real) & BasisFuncAtPt::Ng (
|
) const [inline]
|
|
|
void BasisFuncAtPt::copyJacobiEtc (
|
const BasisFuncAtPt & b )
|
|
|
const ArrayGen(real) & BasisFuncAtPt::d2N (
|
) const [inline]
|
|
|
|
See documentation of one of the overloaded functions. |
|
real BasisFuncAtPt::d2N (
|
int i,
|
|
int dir1,
|
|
int dir2 ) const
|
|
|
|
returns the value of the second order derivative of the basis function. |
|
const Mat(real) & BasisFuncAtPt::dN (
|
) const [inline]
|
|
|
|
See documentation of one of the overloaded functions. |
|
real BasisFuncAtPt::dN (
|
int i,
|
|
int dir ) const
|
|
|
|
returns the value of the derivative of the basis function in global coordinates. |
|
const Mat(real) & BasisFuncAtPt::dNgloc (
|
) const [inline]
|
|
|
const Mat(real) & BasisFuncAtPt::dNloc (
|
) const [inline]
|
|
|
|
See documentation of one of the overloaded functions. |
|
real BasisFuncAtPt::dNloc (
|
int i,
|
|
int dir ) const
|
|
|
|
returns the value of the derivative of the basis function in local coordinates. |
|
real BasisFuncAtPt::detJ (
|
) const
|
|
|
|
returns the determinant of the Jacobi matrix. |
|
real BasisFuncAtPt::detSideJ (
|
) const
|
|
|
|
returns the area of a surface element used in surface integration. |
|
void BasisFuncAtPt::evalDerivatives (
|
int i )
|
|
|
|
sets a flag to the supplied value determining to which order the derivativs should be evaluated. See also function "FiniteElement d2N". |
|
bool BasisFuncAtPt::evaluatedAt (
|
const Ptv(real) & loc_pt )
|
|
|
|
returns a true value if the current object''s basis function data were based on the local point given as argument to this function. The function makes it easy to check whether the object is properly filled or not. |
|
void BasisFuncAtPt::getNormalVectorOnSide (
|
Ptv(real) & vec ) const
|
|
|
|
returns the outward unit normal vector if the current evaluation point is at a side in the element. |
|
void BasisFuncAtPt::initAtPoint (
|
const Ptv(real) & eval_pt,
|
|
HandleElmDefs & elmdef,
|
|
const Mat(real) & elmcoor,
|
|
int current_side )
|
|
|
|
evaluates all the basis functions, Jacobian etc., at the current evaluation point. |
|
const Mat(real) & BasisFuncAtPt::invJacobiMatrix (
|
) const [inline]
|
|
|
|
returns a reference to the inverse Jacobi matrix |
|
bool BasisFuncAtPt::ok (
|
) const
|
|
|
void BasisFuncAtPt::operator= (
|
const BasisFuncAtPt & b )
|
|
|
|
See documentation of one of the overloaded functions. |
|
void BasisFuncAtPt::unInitialize (
|
)
|
|
|
|
set the "initialized" flag to false. |
|
void BasisFuncAtPt::updateJacobi (
|
const Mat(real) & elmcoor )
|
|
|
|
updates the values in the data structures that are affected by the shape (and not the type) of the element. For example, the Jacobi matrix is affected by the shape while the basis functions themselves are only dependent upon the element type. The function is included for enabling efficient coding of finite element algorithms on grids consisting of only one element type. Instead of calling "initAtPoint" for every element, one simply calls "updateJacobi". |
Member Data Documentation
long int BasisFuncAtPt::ncalls_calcJacobi [static]
|
|
long int BasisFuncAtPt::ncalls_initAtPoint [static]
|
|
The documentation for this class was generated from the following file:
Copyright © 2003 inuTech GmbH. All rights reserved.