Nektar++
|
Public Member Functions | |
NodalUtilTriMonomial (int degree, Array< OneD, NekDouble > r, Array< OneD, NekDouble > s) | |
virtual | ~NodalUtilTriMonomial () |
Public Member Functions inherited from Nektar::LibUtilities::NodalUtilTriangle | |
NodalUtilTriangle (int degree, Array< OneD, NekDouble > r, Array< OneD, NekDouble > s) | |
Construct the nodal utility class for a triangle. More... | |
virtual | ~NodalUtilTriangle () |
Public Member Functions inherited from Nektar::LibUtilities::NodalUtil | |
NekVector< NekDouble > | GetWeights () |
Obtain the integration weights for the given nodal distribution. More... | |
SharedMatrix | GetVandermonde () |
Return the Vandermonde matrix for the nodal distribution. More... | |
SharedMatrix | GetVandermondeForDeriv (int dir) |
Return the Vandermonde matrix of the derivative of the basis functions for the nodal distribution. More... | |
SharedMatrix | GetDerivMatrix (int dir) |
Return the derivative matrix for the nodal distribution. More... | |
SharedMatrix | GetInterpolationMatrix (Array< OneD, Array< OneD, NekDouble > > &xi) |
Construct the interpolation matrix used to evaluate the basis at the points xi inside the element. More... | |
Protected Member Functions | |
virtual NekVector< NekDouble > | v_OrthoBasis (const int mode) |
Return the value of the modal functions for the triangular element at the nodal points m_xi for a given mode. More... | |
virtual NekVector< NekDouble > | v_OrthoBasisDeriv (const int dir, const int mode) |
Return the value of the derivative of the modal functions for the triangular element at the nodal points m_xi for a given mode. More... | |
virtual boost::shared_ptr < NodalUtil > | v_CreateUtil (Array< OneD, Array< OneD, NekDouble > > &xi) |
Construct a NodalUtil object of the appropriate element type for a given set of points. More... | |
Protected Member Functions inherited from Nektar::LibUtilities::NodalUtilTriangle | |
virtual NekDouble | v_ModeZeroIntegral () |
Return the value of the integral of the zero-th mode for this element. More... | |
virtual int | v_NumModes () |
Calculate the number of degrees of freedom for this element. More... | |
Protected Member Functions inherited from Nektar::LibUtilities::NodalUtil | |
NodalUtil (int degree, int dim) | |
Set up the NodalUtil object. More... | |
Additional Inherited Members | |
Protected Attributes inherited from Nektar::LibUtilities::NodalUtilTriangle | |
std::vector< std::pair< int, int > > | m_ordering |
Mapping from the indexing of the basis to a continuous ordering. More... | |
Array< OneD, Array< OneD, NekDouble > > | m_eta |
Collapsed coordinates of the nodal points. More... | |
Protected Attributes inherited from Nektar::LibUtilities::NodalUtil | |
int | m_dim |
Dimension of the nodal element. More... | |
int | m_degree |
Degree of the nodal element. More... | |
int | m_numPoints |
Total number of nodal points. More... | |
Array< OneD, Array< OneD, NekDouble > > | m_xi |
Coordinates of the nodal points defining the basis. More... | |
Definition at line 403 of file ProcessVarOpti.cpp.
|
inline |
Definition at line 406 of file ProcessVarOpti.cpp.
|
inlinevirtual |
Definition at line 412 of file ProcessVarOpti.cpp.
|
inlineprotectedvirtual |
Construct a NodalUtil object of the appropriate element type for a given set of points.
This function is used inside NodalUtil::GetInterpolationMatrix so that the (potentially non-square) Vandermonde matrix can be constructed to create the interpolation matrix at an arbitrary set of points in the domain.
xi | Distribution of nodal points to create utility with. |
Reimplemented from Nektar::LibUtilities::NodalUtilTriangle.
Definition at line 439 of file ProcessVarOpti.cpp.
References Nektar::MemoryManager< DataType >::AllocateSharedPtr(), and Nektar::LibUtilities::NodalUtil::m_degree.
|
inlineprotectedvirtual |
Return the value of the modal functions for the triangular element at the nodal points m_xi for a given mode.
In a triangle, we use the orthogonal basis
where is the mapping defined in NodalUtilTriangle::m_ordering and denotes the standard Jacobi polynomial.
mode | The mode of the orthogonal basis to evaluate. |
Reimplemented from Nektar::LibUtilities::NodalUtilTriangle.
Definition at line 417 of file ProcessVarOpti.cpp.
References Nektar::LibUtilities::NodalUtil::m_numPoints, Nektar::LibUtilities::NodalUtilTriangle::m_ordering, Nektar::LibUtilities::NodalUtil::m_xi, and CG_Iterations::modes.
|
inlineprotectedvirtual |
Return the value of the derivative of the modal functions for the triangular element at the nodal points m_xi for a given mode.
Note that this routine must use the chain rule combined with the collapsed coordinate derivatives as described in Sherwin & Karniadakis (2nd edition), pg 150.
dir | Coordinate direction in which to evaluate the derivative. |
mode | The mode of the orthogonal basis to evaluate. |
Reimplemented from Nektar::LibUtilities::NodalUtilTriangle.
Definition at line 432 of file ProcessVarOpti.cpp.
References ASSERTL0.