MFEM v4.8.0
Finite element discretization library
Loading...
Searching...
No Matches
mfem::NURBSFiniteElement Class Reference

An arbitrary order and dimension NURBS element. More...

#include <fe_nurbs.hpp>

Inheritance diagram for mfem::NURBSFiniteElement:
[legend]
Collaboration diagram for mfem::NURBSFiniteElement:
[legend]

Public Member Functions

 NURBSFiniteElement (int dim)
 Construct NURBSFiniteElement with given.
 
void Reset () const
 Resets the patch and element data stored in the element.
 
void SetIJK (const int *IJK) const
 Set which IJK in patch should be evaluated.
 
int GetPatch () const
 Get which patch is currently considered.
 
void SetPatch (int p) const
 Set which patch should be evaluated.
 
int GetElement () const
 Set which element should be evaluated.
 
void SetElement (int e) const
 Get which element is currently considered.
 
Array< const KnotVector * > & KnotVectors () const
 Get the KnotVectors.
 
VectorWeights () const
 Get the Weights.
 
virtual void SetOrder () const
 
const int * GetIJK () const
 

Protected Attributes

Array< const KnotVector * > kv
 
const int * ijk
 
int patch
 
int elem
 
Vector weights
 

Detailed Description

An arbitrary order and dimension NURBS element.

Definition at line 23 of file fe_nurbs.hpp.

Constructor & Destructor Documentation

◆ NURBSFiniteElement()

mfem::NURBSFiniteElement::NURBSFiniteElement ( int dim)
inline

Construct NURBSFiniteElement with given.

Parameters
dimReference space dimension

Definition at line 35 of file fe_nurbs.hpp.

Member Function Documentation

◆ GetElement()

int mfem::NURBSFiniteElement::GetElement ( ) const
inline

Set which element should be evaluated.

Definition at line 51 of file fe_nurbs.hpp.

◆ GetIJK()

const int * mfem::NURBSFiniteElement::GetIJK ( ) const
inline

Returns the indices (i,j) in 2D or (i,j,k) in 3D of this element in the tensor product ordering of the patch.

Definition at line 65 of file fe_nurbs.hpp.

◆ GetPatch()

int mfem::NURBSFiniteElement::GetPatch ( ) const
inline

Get which patch is currently considered.

Definition at line 47 of file fe_nurbs.hpp.

◆ KnotVectors()

Array< const KnotVector * > & mfem::NURBSFiniteElement::KnotVectors ( ) const
inline

Get the KnotVectors.

Definition at line 55 of file fe_nurbs.hpp.

◆ Reset()

void mfem::NURBSFiniteElement::Reset ( ) const
inline

Resets the patch and element data stored in the element.

Definition at line 43 of file fe_nurbs.hpp.

◆ SetElement()

void mfem::NURBSFiniteElement::SetElement ( int e) const
inline

Get which element is currently considered.

Definition at line 53 of file fe_nurbs.hpp.

◆ SetIJK()

void mfem::NURBSFiniteElement::SetIJK ( const int * IJK) const
inline

Set which IJK in patch should be evaluated.

Definition at line 45 of file fe_nurbs.hpp.

◆ SetOrder()

virtual void mfem::NURBSFiniteElement::SetOrder ( ) const
inlinevirtual

Update the polynomial order according to the currently set knotvectors Resizes all internal data members to have the correct size related to the polynomial order

Reimplemented in mfem::NURBS1DFiniteElement, mfem::NURBS2DFiniteElement, mfem::NURBS3DFiniteElement, mfem::NURBS_HCurl2DFiniteElement, mfem::NURBS_HCurl3DFiniteElement, mfem::NURBS_HDiv2DFiniteElement, and mfem::NURBS_HDiv3DFiniteElement.

Definition at line 61 of file fe_nurbs.hpp.

◆ SetPatch()

void mfem::NURBSFiniteElement::SetPatch ( int p) const
inline

Set which patch should be evaluated.

Definition at line 49 of file fe_nurbs.hpp.

◆ Weights()

Vector & mfem::NURBSFiniteElement::Weights ( ) const
inline

Get the Weights.

Definition at line 57 of file fe_nurbs.hpp.

Member Data Documentation

◆ elem

int mfem::NURBSFiniteElement::elem
protected

Definition at line 28 of file fe_nurbs.hpp.

◆ ijk

const int* mfem::NURBSFiniteElement::ijk
mutableprotected

Definition at line 27 of file fe_nurbs.hpp.

◆ kv

Array<const KnotVector*> mfem::NURBSFiniteElement::kv
mutableprotected

Definition at line 26 of file fe_nurbs.hpp.

◆ patch

int mfem::NURBSFiniteElement::patch
mutableprotected

Definition at line 28 of file fe_nurbs.hpp.

◆ weights

Vector mfem::NURBSFiniteElement::weights
mutableprotected

Definition at line 29 of file fe_nurbs.hpp.


The documentation for this class was generated from the following file: