The AnsatzSpace is the class that handles the assembly of the discrete basis. More...
#include <AnsatzSpace.hpp>
The AnsatzSpace is the class that handles the assembly of the discrete basis.
It invokes a SuperSpace and uses the Glue and Projector class to assemble a transformation matrix, which relates the SuperSpace to the desired basis.
Definition at line 25 of file AnsatzSpace.hpp.
Public Member Functions | |
AnsatzSpace () | |
Default constructor. | |
AnsatzSpace (const AnsatzSpace &other) | |
Copy constructor. More... | |
AnsatzSpace (AnsatzSpace &&other) | |
Move constructor. More... | |
AnsatzSpace & | operator= (AnsatzSpace other) |
Copy assignment operator. More... | |
AnsatzSpace (const Geometry &geometry, int refinement_level, int polynomial_degree, int knot_repetition=1) | |
Constructor for AnsatzSpace. More... | |
void | init_AnsatzSpace (const Geometry &geometry, int refinement_level, int polynomial_degree, int knot_repetition) |
Initializes the AnsatzSpace object. More... | |
const SuperSpace< Derived > & | get_superspace () const |
Retrieves the reference to the SuperSpace associated with this AnsatzSpace. More... | |
int | get_knot_repetition () const |
Retrieves the knot repetition value of this AnsatzSpace. More... | |
int | get_refinement_level () const |
Retrieves the refinement level of this AnsatzSpace. More... | |
int | get_polynomial_degree () const |
Retrieves the polynomial degree of this AnsatzSpace. More... | |
int | get_number_of_elements () const |
Retrieves the number of elements of the underlying ElementTree in the SuperSpace of this AnsatzSpace. More... | |
int | get_number_of_patches () const |
Retrieves the number of patches of the underlying Geometry. More... | |
int | get_number_of_dofs () const |
Retrieves the number of degrees of freedom of this AnsatzSpace. More... | |
const PatchVector & | get_geometry () const |
Retrieves the geometry associated with this AnsatzSpace. More... | |
const Eigen::SparseMatrix< double > & | get_transformation_matrix () const |
Retrieves the transformation matrix associated with this AnsatzSpace. More... | |
Public Types | |
enum | { Form = LinearOperatorTraits<Derived>::Form } |
|
inline |
Copy constructor.
other | The object to copy from |
Definition at line 39 of file AnsatzSpace.hpp.
|
inline |
Move constructor.
other | The object to move from |
Definition at line 48 of file AnsatzSpace.hpp.
|
inline |
Constructor for AnsatzSpace.
This constructor initializes an AnsatzSpace object with the provided parameters.
geometry | The geometry object defining the space. |
refinement_level | The refinement level of the space. |
polynomial_degree | The degree of polynomials used in the space. |
knot_repetition | (optional) The number of repetitions of knots in the space. |
Definition at line 80 of file AnsatzSpace.hpp.
|
inline |
Retrieves the geometry associated with this AnsatzSpace.
Definition at line 179 of file AnsatzSpace.hpp.
|
inline |
Retrieves the knot repetition value of this AnsatzSpace.
Definition at line 128 of file AnsatzSpace.hpp.
|
inline |
Retrieves the number of degrees of freedom of this AnsatzSpace.
Definition at line 172 of file AnsatzSpace.hpp.
|
inline |
Retrieves the number of elements of the underlying ElementTree in the SuperSpace of this AnsatzSpace.
Definition at line 154 of file AnsatzSpace.hpp.
|
inline |
Retrieves the number of patches of the underlying Geometry.
Definition at line 163 of file AnsatzSpace.hpp.
|
inline |
Retrieves the polynomial degree of this AnsatzSpace.
Definition at line 144 of file AnsatzSpace.hpp.
|
inline |
Retrieves the refinement level of this AnsatzSpace.
Definition at line 135 of file AnsatzSpace.hpp.
|
inline |
Retrieves the reference to the SuperSpace associated with this AnsatzSpace.
Definition at line 121 of file AnsatzSpace.hpp.
|
inline |
Retrieves the transformation matrix associated with this AnsatzSpace.
Definition at line 189 of file AnsatzSpace.hpp.
|
inline |
Initializes the AnsatzSpace object.
This function initializes the AnsatzSpace object with the provided parameters. It sets the knot repetition, initializes the super space, utilizes the Projector and Glue class to create a transformation matrix which assembles conforming B-Splines from local Bernstein polynomials.
geometry | The geometry object. |
refinement_level | The refinement level of the space. |
polynomial_degree | The degree of polynomials used in the space. |
knot_repetition | The number of repetitions of knots in the space. |
Definition at line 102 of file AnsatzSpace.hpp.
|
inline |
Copy assignment operator.
This operator assigns the contents of another AnsatzSpace object to this one.
other | The AnsatzSpace object to copy from. |
Definition at line 62 of file AnsatzSpace.hpp.