BSpline Finite Element Exterior Calculus
Loading...
Searching...
No Matches
m_mform_constraint_boundary::mformdirichlet Interface Reference

An object that represents a Dirichlet constraint on an m-form space. More...

Inheritance diagram for m_mform_constraint_boundary::mformdirichlet:
m_mform_constraint_abstract::mformconstraintlocal

Public Member Functions

procedure init (this, space, coord_transform)
 Initialize a Dirichlet constraint on an m-form space.
 
procedure destroy_derived (this)
 Destroy the MFormDirichlet object.
 
pure type(mformdirichlet) function construct_mform_dirichlet (bdy_function, bdy_function_x, bdy_function_y, bdy_function_z)
 Construct a Dirichlet constraint on an m-form.
 
- Public Member Functions inherited from m_mform_constraint_abstract::mformconstraintlocal
procedure(mform_constraint_local_init), deferred init mform_constraint_local_init
 
procedure(mform_constraint_local_destroy), deferred destroy_derived mform_constraint_local_destroy
 
procedure destroy (this)
 Destroy the abstract MFormConstraintLocal object.
 
procedure apply (this, vout, vin)
 Apply a constraint to an m-form.
 

Additional Inherited Members

- Public Attributes inherited from m_mform_constraint_abstract::mformconstraintlocal
type(mformspace) space
 The m-form space to which the constraint applies.
 
logical is_homogeneous
 Whether the constraint is homogeneous (currently always .true.)
 
logical is_symmetric
 Whether the projector is symmetric.
 
type(tensorprodindexlist), dimension(:), allocatable index_list
 The indices of the coefficients that the constraint acts upon (per m-form component)
 
type(sparsemat), dimension(:, :), allocatable projector
 Block-wise (per m-form component) sparse representation of the projector (restricted to the coefficients that the constraint acts upon)
 
type(sparsemat), dimension(:), allocatable extractor
 Block-wise (per m-form component) sparse representation of the extraction operator (restricted to the coefficients that the constraint acts upon)
 
logical, dimension(3) is_mpi_shared
 If the constraint '.not. is_homogeneous', the prescribed values of the constraint are stored here per component.
 

Detailed Description

An object that represents a Dirichlet constraint on an m-form space.

Member Function/Subroutine Documentation

◆ construct_mform_dirichlet()

pure type(mformdirichlet) function m_mform_constraint_boundary::mformdirichlet::construct_mform_dirichlet ( procedure(user_function_3d_interface), optional bdy_function,
procedure(user_function_3d_interface), optional bdy_function_x,
procedure(user_function_3d_interface), optional bdy_function_y,
procedure(user_function_3d_interface), optional bdy_function_z )

Construct a Dirichlet constraint on an m-form.

Parameters
[in]_(optional)_bdy_function The function to which the Dirichlet condition is applied (for scalar m-forms)
[in]_(optional)_bdy_function_x,bdy_function_y,bdy_function_z The functions to which the Dirichlet condition is applied (for vector m-forms)
Returns
The constructed MFormDirichlet object

◆ destroy_derived()

procedure m_mform_constraint_boundary::mformdirichlet::destroy_derived ( class(mformdirichlet), intent(inout) this)

Destroy the MFormDirichlet object.

Parameters
[in,out]thisThe MFormDirichlet object to destroy

◆ init()

procedure m_mform_constraint_boundary::mformdirichlet::init ( class(mformdirichlet), intent(inout) this,
type(mformspace), intent(in) space,
class(coordtransformabstract), intent(in), optional coord_transform )

Initialize a Dirichlet constraint on an m-form space.

Parameters
[in,out]thisThe MFormDirichlet object to initialize
[in]spaceThe MFormSpace to which the Dirichlet constraint applies
[in]_(optional)_coord_transform The coordinate transform associated with the m-form space

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