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

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

Inheritance diagram for m_mform_constraint_boundary::mformneumann:
m_mform_constraint_abstract::mformconstraintlocal

Public Member Functions

procedure init (this, space, coord_transform)
 Initialize a Neumann constraint on an m-form space.
 
procedure destroy_derived (this)
 Destroy the MFormNeumann object.
 
pure type(mformneumann) function construct_mform_neumann (fix_constant)
 Construct a Neumann 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.
 

Public Attributes

logical fix_constant
 Whether to fix the constant mode in e.g. a Poisson problem.
 
- 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 Neumann constraint on an m-form space.

Member Function/Subroutine Documentation

◆ construct_mform_neumann()

pure type(mformneumann) function m_mform_constraint_boundary::mformneumann::construct_mform_neumann ( logical, intent(in), optional fix_constant)

Construct a Neumann constraint on an m-form.

Parameters
[in]_(optional)_fix_constant Whether to fix the constant mode (default: .false.)
Returns
The constructed MFormNeumann object

◆ destroy_derived()

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

Destroy the MFormNeumann object.

Parameters
[in,out]thisThe MFormNeumann object to destroy

◆ init()

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

Initialize a Neumann constraint on an m-form space.

Parameters
[in,out]thisThe MFormNeumann object to initialize
[in]spaceThe MFormSpace to which the Neumann 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: