PISM, A Parallel Ice Sheet Model stable 0.4.1779
Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes

FEShapeQ1 Class Reference

Computation of Q1 shape function values. More...

#include <FETools.hh>

List of all members.

Public Types

typedef void(* ShapeFunctionSpec )(PetscReal, PetscReal, FEFunctionGerm *)
 A table of function pointers, one for each shape function.

Public Member Functions

virtual ~FEShapeQ1 ()
virtual void eval (PetscInt k, PetscReal x, PetscReal y, FEFunctionGerm *germ)
 Evaluate shape function k at (x,y) with values returned in germ.

Static Public Member Functions

static void shape0 (PetscReal x, PetscReal y, FEFunctionGerm *value)
 Compute values and derivatives of the shape function supported at node 0.
static void shape1 (PetscReal x, PetscReal y, FEFunctionGerm *value)
 Compute values and derivatives of the shape function supported at node 1.
static void shape2 (PetscReal x, PetscReal y, FEFunctionGerm *value)
 Compute values and derivatives of the shape function supported at node 2.
static void shape3 (PetscReal x, PetscReal y, FEFunctionGerm *value)
 Compute values and derivatives of the shape function supported at node 3.

Static Public Attributes

static const PetscInt Nk = 4
 The number of basis shape functions.
static const ShapeFunctionSpec shapeFunction [Nk]

Detailed Description

Computation of Q1 shape function values.

The Q1 shape functions are bilinear functions. On a rectangular element, there are four (FEShapeQ1::Nk) basis functions, each equal to 1 at one vertex and equal to zero at the remainder.

The FEShapeQ1 class consolodates the computation of the values and derivatives of these basis functions.

Definition at line 176 of file FETools.hh.


Member Typedef Documentation

A table of function pointers, one for each shape function.

Definition at line 213 of file FETools.hh.


Constructor & Destructor Documentation

virtual ~FEShapeQ1 ( ) [inline, virtual]

Definition at line 178 of file FETools.hh.


Member Function Documentation

virtual void eval ( PetscInt  k,
PetscReal  x,
PetscReal  y,
FEFunctionGerm germ 
) [inline, virtual]

Evaluate shape function k at (x,y) with values returned in germ.

Definition at line 217 of file FETools.hh.

References shapeFunction, and exactV::x.

Referenced by FEQuadrature::init().

static void shape0 ( PetscReal  x,
PetscReal  y,
FEFunctionGerm value 
) [inline, static]

Compute values and derivatives of the shape function supported at node 0.

Definition at line 181 of file FETools.hh.

References FEFunctionGerm::dx, FEFunctionGerm::dy, FEFunctionGerm::val, and exactV::x.

static void shape1 ( PetscReal  x,
PetscReal  y,
FEFunctionGerm value 
) [inline, static]

Compute values and derivatives of the shape function supported at node 1.

Definition at line 188 of file FETools.hh.

References FEFunctionGerm::dx, FEFunctionGerm::dy, FEFunctionGerm::val, and exactV::x.

static void shape2 ( PetscReal  x,
PetscReal  y,
FEFunctionGerm value 
) [inline, static]

Compute values and derivatives of the shape function supported at node 2.

Definition at line 195 of file FETools.hh.

References FEFunctionGerm::dx, FEFunctionGerm::dy, FEFunctionGerm::val, and exactV::x.

static void shape3 ( PetscReal  x,
PetscReal  y,
FEFunctionGerm value 
) [inline, static]

Compute values and derivatives of the shape function supported at node 3.

Definition at line 202 of file FETools.hh.

References FEFunctionGerm::dx, FEFunctionGerm::dy, FEFunctionGerm::val, and exactV::x.


Member Data Documentation

const PetscInt Nk = 4 [static]

The number of basis shape functions.

Definition at line 210 of file FETools.hh.

Initial value:

Definition at line 214 of file FETools.hh.

Referenced by eval().


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines