15#include "../../config/config.hpp"
20#include "../../linalg/hypre.hpp"
HypreParVector * StealZCoordinate()
HypreParVector * StealYCoordinate()
HypreParMatrix * StealGradientMatrix()
HypreParVector * GetZCoordinate() const
const int order
Polynomial degree.
Vector * StealCoordinateVector()
void FormGradientMatrix()
Construct the discrete gradient matrix (not part of the public API).
HypreParVector * StealXCoordinate()
HypreParVector * GetXCoordinate() const
H1_FECollection vert_fec
The corresponding H1 collection.
HypreParMatrix * G
Discrete gradient matrix.
void Form2DEdgeToVertex_RT(Array< int > &edge2vert)
HypreParVector * GetYCoordinate() const
ParFiniteElementSpace & edge_fes
The Nedelec space.
const int dim
Spatial dimension.
Vector * xyz_tvec
Mesh vertex coordinates in true-vector format.
ParFiniteElementSpace vert_fes
The corresponding H1 space.
void FormCoordinateVectors(const Vector &X_vert)
Construct the mesh coordinate vectors (not part of the public API).
void Form2DEdgeToVertex(Array< int > &edge2vert)
HypreParMatrix * GetGradientMatrix() const
void Form3DEdgeToVertex(Array< int > &edge2vert)
void Form2DEdgeToVertex_ND(Array< int > &edge2vert)
Arbitrary order H1-conforming (continuous) finite elements.
Wrapper for hypre's ParCSR matrix class.
Wrapper for hypre's parallel vector class.
Abstract parallel finite element space.
T * StealPointer(T *&ptr)