|
PISM, A Parallel Ice Sheet Model stable 0.4.1779
|
Computation of Q1 shape function values. More...
#include <FETools.hh>
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] |
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.
| typedef void(* ShapeFunctionSpec)(PetscReal, PetscReal, FEFunctionGerm *) |
A table of function pointers, one for each shape function.
Definition at line 213 of file FETools.hh.
| virtual ~FEShapeQ1 | ( | ) | [inline, virtual] |
Definition at line 178 of file FETools.hh.
| 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.
const PetscInt Nk = 4 [static] |
The number of basis shape functions.
Definition at line 210 of file FETools.hh.
const FEShapeQ1::ShapeFunctionSpec shapeFunction [static] |
Definition at line 214 of file FETools.hh.
Referenced by eval().
1.7.3