The superspace manages local polynomial bases on each element of the mesh and provides an interface to evaluate them. More...
#include <SuperSpace.hpp>
The superspace manages local polynomial bases on each element of the mesh and provides an interface to evaluate them.
Definition at line 22 of file SuperSpace.hpp.
Public Member Functions | |
SuperSpace () | |
Default constructor for the SuperSpace class. More... | |
SuperSpace (Geometry &geom, int M, int P) | |
Parameterized constructor for the SuperSpace class. More... | |
SuperSpace (const SuperSpace &other) | |
Copy constructor for the SuperSpace class. More... | |
SuperSpace (SuperSpace &&other) | |
Move constructor for the SuperSpace class. More... | |
SuperSpace & | operator= (SuperSpace other) |
Assignment operator for the SuperSpace class. More... | |
int | get_polynomial_degree () const |
int | get_polynomial_degree_plus_one_squared () const |
int | get_refinement_level () const |
int | get_number_of_elements () const |
int | get_number_of_patches () const |
const PatchVector & | get_geometry () const |
const ClusterTree & | get_mesh () const |
void | init_SuperSpace (const Geometry &geom, int M, int P) |
void | map2surface (const ElementTreeNode &e, const Eigen::Vector2d &xi, double w, SurfacePoint *surf_pt) const |
Evaluation of a point in the element and its Jacobian matrix. More... | |
void | addScaledBasisInteraction (Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > *intval, typename LinearOperatorTraits< Derived >::Scalar w, const Eigen::Vector2d &s, const Eigen::Vector2d &t) const |
Compute all products of local shape functions on the unit square at coordinates s,t, scale by w and add to intval. | |
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > | basisInteraction (const Eigen::Vector2d &s, const Eigen::Vector2d &t) const |
Compute all products of local shape functions on the unit square at coordinates s,t. | |
void | addScaledSurfaceCurlInteraction (Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > *intval, Scalar w, const SurfacePoint &p1, const SurfacePoint &p2) const |
Compute all products of surface curls of local shape functions on the unit square at coordinates s,t. | |
void | addScaledSurfaceGradientInteraction (Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > *intval, Scalar w, const SurfacePoint &p1, const SurfacePoint &p2) const |
Compute all products of surface gradients of local shape functions on the unit square at coordinates s,t. | |
void | addScaledVectorBasisInteraction (Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > *intval, Scalar w, const Eigen::Vector2d &s, const Eigen::Vector2d &t, const Eigen::Vector3d x_f_dx, const Eigen::Vector3d x_f_dy, const Eigen::Vector3d y_f_dx, const Eigen::Vector3d y_f_dy) const |
Compute all scalar products of vector valued local shape functions on the surface points with reference coordinates s,t, scale by w and add to intval. | |
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > | vectorBasisInteraction (const Eigen::Vector2d &s, const Eigen::Vector2d &t, const Eigen::Vector3d x_f_dx, const Eigen::Vector3d x_f_dy, const Eigen::Vector3d y_f_dx, const Eigen::Vector3d y_f_dy) const |
Compute all scalar products of vector valued local shape functions on the surface points with reference coordinates s,t. | |
void | addScaledVectorBasisDivergenceInteraction (Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > *intval, Scalar w, const Eigen::Vector2d &s, const Eigen::Vector2d &t) const |
Compute all products of divergences of local shape functions on the unit square at coordinates s,t, scale by w and add to intval. | |
Eigen::Matrix< Scalar, Eigen::Dynamic, Eigen::Dynamic > | vectorBasisDivergenceInteraction (const Eigen::Vector2d &s, const Eigen::Vector2d &t) const |
Compute all products of divergences of local shape functions on the unit square at coordinates s,t. | |
void | addScaledBasis (Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > *intval, Scalar w, const Eigen::Vector2d &s) const |
Evaluate local shape functions on the unit square at coordinate s, scale by w and add to intval. | |
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > | basis (const Eigen::Vector2d &s) const |
Evaluate local shape functions on the unit square at coordinate s. | |
void | addScaledBasisDx (Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > *intval, typename LinearOperatorTraits< Derived >::Scalar w, const Eigen::Vector2d &s) const |
Evaluate derivatives in x direction of local shape functions on the unit square at coordinate s, scale by w and add to intval. | |
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > | basisDx (const Eigen::Vector2d &s) const |
Evaluate derivatives in x direction of local shape functions on the unit square at coordinate s. | |
void | addScaledBasisDy (Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > *intval, typename LinearOperatorTraits< Derived >::Scalar w, const Eigen::Vector2d &s) const |
Evaluate derivatives in y direction of local shape functions on the unit square at coordinate s, scale by w and add to intval. | |
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > | basisDy (const Eigen::Vector2d &s) const |
Evaluate derivatives in y direction of local shape functions on the unit square at coordinate s. | |
void | addScaledBasis1D (Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > *intval, Scalar w, double s) const |
Evaluate local shape functions on the unit interval at coordinate s, scale by w and add to intval. | |
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > | basis1D (double s) const |
Evaluate local shape functions on the unit interval at coordinate s. | |
void | addScaledBasis1DDx (Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > *intval, Scalar w, double s) const |
Evaluate derivatives of local shape functions on the unit interval at coordinate s, scale by w and add to intval. | |
Eigen::Matrix< Scalar, Eigen::Dynamic, 1 > | basis1DDx (double s) const |
Evaluate derivatives of local shape functions on the unit interval at coordinate s. | |
Public Types | |
typedef LinearOperatorTraits< Derived >::Scalar | Scalar |
|
inline |
Default constructor for the SuperSpace class.
This constructor creates a SuperSpace object with default parameters.
Definition at line 32 of file SuperSpace.hpp.
|
inline |
Parameterized constructor for the SuperSpace class.
This constructor initializes a SuperSpace object with the provided parameters.
geom | The geometry object defining the space. |
M | The refinement level of the space. |
P | The degree of polynomials used in the space. |
Definition at line 43 of file SuperSpace.hpp.
|
inline |
Copy constructor for the SuperSpace class.
This constructor initializes a SuperSpace object by copying another SuperSpace object.
other | The SuperSpace object to copy from. |
Definition at line 52 of file SuperSpace.hpp.
|
inline |
Move constructor for the SuperSpace class.
This constructor initializes a SuperSpace object by moving from another SuperSpace object.
other | The SuperSpace object to move from. |
Definition at line 74 of file SuperSpace.hpp.
|
inline |
Evaluation of a point in the element and its Jacobian matrix.
This function performs the affine transformation of an element to the reference domain of the patch and returns the output in a surface point.
e | : Element to be evaluated, |
xi | : Point in [0, 1]^2 of the element |
w | : Quadrature weight |
surf_pt | : Evaluated point and its jacobian |
Definition at line 160 of file SuperSpace.hpp.
|
inline |
Assignment operator for the SuperSpace class.
This operator assigns the contents of another SuperSpace object to this one.
other | The SuperSpace object to copy from. |
Definition at line 97 of file SuperSpace.hpp.