BSpline Finite Element Exterior Calculus
Loading...
Searching...
No Matches
m_tensorprod_basis::tensorprodspace Interface Reference

The tensor product of three B-spline spaces. More...

Public Member Functions

procedure destroy (this)
 Destroy the tensor product space.
 
procedure my_subdomain_bounds (tp_space, include_guard)
 Get the subdomain box in logical coordinates where it is possible to evaluate the tensor product B-spline functions.
 
procedure print_info (this)
 Print information about the tensor product space.
 

Public Attributes

type(bsplinespace), dimension(3) spaces
 Array containing the three one-dimensional B-spline spaces.
 
integer nr_x
 Number of B-splines in the x-direction.
 
integer nr_xy
 Number of B-splines in the xy-directions combined.
 
integer nr_volumes
 Number of control volumes / elements.
 
type(tensorproddomaindomain
 MPI distributed subdomain on which this space is defined.
 
type(tensorprodindicesnode_resp_intervals
 Interval indices defined by subdomain (node-based)
 
type(tensorprodindicesrank_resp_intervals
 Interval indices defined by subdomain (rank-based)
 
type(tensorprodindicesnode_resp_bspline
 B-spline indices defined by subdomain (i.e., those B-splines for which this node is responsible in the solver)
 
type(tensorprodindicesrank_resp_bspline
 B-spline indices defined by subdomain (rank-based)
 
type(tensorprodindicesnode_actv_bspline
 B-spline indices which are active on the subdomain (i.e., given the responsible intervals, these are the B-splines which are contributing to those intervals). I.e., those B-splines which are available in memory on this node.
 
integer rank_l0
 
integer rank_l1
 
type(tensorprodneighbour), dimension(-max_comm_neighbours_x:max_comm_neighbours_x, -max_comm_neighbours_y:max_comm_neighbours_y, -max_comm_neighbours_z:max_comm_neighbours_z) neighbours
 Neighbouring subdomains of this subdomain (can be on the same node, depending on domainmemory_distribution)
 
integer dimensionality
 

Detailed Description

The tensor product of three B-spline spaces.

Create a tensor product space from three B-spline spaces.

Member Function/Subroutine Documentation

◆ destroy()

procedure m_tensorprod_basis::tensorprodspace::destroy ( class(tensorprodspace), intent(inout) this)

Destroy the tensor product space.

Parameters
[in,out]thisThe tensor product space

◆ my_subdomain_bounds()

procedure m_tensorprod_basis::tensorprodspace::my_subdomain_bounds ( class(tensorprodspace), intent(in) tp_space,
logical, intent(in), optional include_guard )

Get the subdomain box in logical coordinates where it is possible to evaluate the tensor product B-spline functions.

Parameters
[in]tp_spaceTensor product space
[in]include_guard_(optional)_ If true, include the guard layer in the bounds (default: true)
Returns
Box defining the subdomain bounds
Note
The bounds do not depend on the B-spline degree (node_actv_bspline_inds ensures that we can evaluate all B-splines)

◆ print_info()

procedure m_tensorprod_basis::tensorprodspace::print_info ( class(tensorprodspace), intent(in) this)

Print information about the tensor product space.

Parameters
[in]thisTensor product space

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