Intrepid
|
Implementation of the default H(curl)-compatible Nedelec (first kind) basis of arbitrary degree on Triangle cell. The lowest order space is indexed with 1 rather than 0. Implements nodal basis of degree n (n>=1) on the reference Triangle cell. The basis has cardinality n(n+2) and spans an INCOMPLETE polynomial space of degree n. Basis functions are dual to a unisolvent set of degrees-of-freedom (DoF) defined by. More...
#include <Intrepid_HCURL_TRI_In_FEM.hpp>
Public Member Functions | |
Basis_HCURL_TRI_In_FEM (const int n, const EPointType pointType) | |
Constructor. | |
void | getValues (ArrayScalar &outputValues, const ArrayScalar &inputPoints, const EOperator operatorType) const |
Evaluation of a FEM basis on a reference Triangle cell. More... | |
void | getValues (ArrayScalar &outputValues, const ArrayScalar &inputPoints, const ArrayScalar &cellVertices, const EOperator operatorType=OPERATOR_VALUE) const |
FVD basis evaluation: invocation of this method throws an exception. | |
Public Member Functions inherited from Intrepid::Basis< Scalar, ArrayScalar > | |
virtual | ~Basis () |
Destructor. | |
virtual int | getCardinality () const |
Returns cardinality of the basis. More... | |
virtual int | getDegree () const |
Returns the degree of the basis. More... | |
virtual const shards::CellTopology | getBaseCellTopology () const |
Returns the base cell topology for which the basis is defined. See Shards documentation http://trilinos.sandia.gov/packages/shards for definition of base cell topology. More... | |
virtual EBasis | getBasisType () const |
Returns the basis type. More... | |
virtual ECoordinates | getCoordinateSystem () const |
Returns the type of coordinate system for which the basis is defined. More... | |
virtual int | getDofOrdinal (const int subcDim, const int subcOrd, const int subcDofOrd) |
DoF tag to ordinal lookup. More... | |
virtual const std::vector < std::vector< std::vector < int > > > & | getDofOrdinalData () |
DoF tag to ordinal data structure. | |
virtual const std::vector< int > & | getDofTag (const int dofOrd) |
DoF ordinal to DoF tag lookup. More... | |
virtual const std::vector < std::vector< int > > & | getAllDofTags () |
Retrieves all DoF tags. More... | |
Private Member Functions | |
virtual void | initializeTags () |
Initializes tagToOrdinal_ and ordinalToTag_ lookup arrays. | |
Private Attributes | |
Basis_HGRAD_TRI_Cn_FEM_ORTH < Scalar, FieldContainer < Scalar > > | Phis_ |
Orthogonal basis of ofder n, in terms of which the H(curl) basis functions are expressed. | |
FieldContainer< Scalar > | coeffs_ |
Array holding the expansion coefficients of the nodal basis in terms of Phis_. | |
Additional Inherited Members | |
Protected Attributes inherited from Intrepid::Basis< Scalar, ArrayScalar > | |
int | basisCardinality_ |
Cardinality of the basis, i.e., the number of basis functions/degrees-of-freedom. | |
int | basisDegree_ |
Degree of the largest complete polynomial space that can be represented by the basis. | |
shards::CellTopology | basisCellTopology_ |
Base topology of the cells for which the basis is defined. See the Shards package http://trilinos.sandia.gov/packages/shards for definition of base cell topology. | |
EBasis | basisType_ |
Type of the basis. | |
ECoordinates | basisCoordinates_ |
The coordinate system for which the basis is defined. | |
bool | basisTagsAreSet_ |
"true" if tagToOrdinal_ and ordinalToTag_ have been initialized | |
std::vector< std::vector< int > > | ordinalToTag_ |
DoF ordinal to tag lookup table. More... | |
std::vector< std::vector < std::vector< int > > > | tagToOrdinal_ |
DoF tag to ordinal lookup table. More... | |
Implementation of the default H(curl)-compatible Nedelec (first kind) basis of arbitrary degree on Triangle cell. The lowest order space is indexed with 1 rather than 0. Implements nodal basis of degree n (n>=1) on the reference Triangle cell. The basis has cardinality n(n+2) and spans an INCOMPLETE polynomial space of degree n. Basis functions are dual to a unisolvent set of degrees-of-freedom (DoF) defined by.
If the pointType argument to the constructor specifies equispaced points, then the edge points will be equispaced on each edge and the interior points equispaced also. If the pointType argument specifies warp-blend points, then Gauss-Lobatto points of order n are chosen on each edge and the interior of warp-blend lattice of order n+1 is chosen for the interior points.
Definition at line 83 of file Intrepid_HCURL_TRI_In_FEM.hpp.
|
virtual |
Evaluation of a FEM basis on a reference Triangle cell.
Returns values of <var>operatorType</var> acting on FEM basis functions for a set of points in the <strong>reference Triangle</strong> cell. For rank and dimensions of I/O array arguments see Section \ref basis_md_array_sec .
outputValues | [out] - variable rank array with the basis values |
inputPoints | [in] - rank-2 array (P,D) with the evaluation points |
operatorType | [in] - the operator acting on the basis functions |
Implements Intrepid::Basis< Scalar, ArrayScalar >.
Definition at line 288 of file Intrepid_HCURL_TRI_In_FEMDef.hpp.
Referenced by main().