BSpline Finite Element Exterior Calculus
Loading...
Searching...
No Matches
m_domain_neighbour::tensorprodneighbour Type Reference

The tensor product neighbour type. More...

Public Member Functions

procedure init (this, my_domain, my_resp_inds, my_actv_inds, their_domain, their_resp_inds, their_act_inds, their_l0, nr_x, nr_y, nr_z)
 Initialize a TensorProdNeighbour.
 
procedure empty (this)
 Initialize an empty TensorProdNeighbour.
 

Public Attributes

integer their_rank
 The node ID of the neighbour in the communicator (the linear index corresponding to their_subinterval_ijk(3)).
 
integer their_node
 The node/processor ID of the neighbour in the communicator.
 
integer their_shmem_rank
 The shared memory rank of the neighbour in the communicator.
 
integer, dimension(3) their_subinterval_ijk
 The subinterval index in the x,y,z-direction for the neighbour.
 
integer their_l0
 The global index of the first B-spline in the neighbour's responsible B-spline space.
 
integer their_l1
 The global index of the last B-spline in the neighbour's responsible B-spline space.
 
type(tensorprodindicestheir_rank_resp_bspline
 The B-spline indices that the neighbour is responsible for.
 
type(tensorprodindicestheir_rank_resp_intervals
 The interval indices that the neighbour is responsible for.
 
logical send_to_us
 Wether or not the neighbour is sending data to us.
 
integer send_tag
 The tag used for receiving data from the neighbour.
 
type(tensorprodindicessend_to_us_inds
 The B-spline indices that the neighbour is sending to us.
 
logical recv_from_us
 Wether or not the neighbour is receiving data from us.
 
integer recv_tag
 The tag used for sending data to the neighbour.
 
type(tensorprodindicesrecv_from_us_inds
 The B-spline indices that the neighbour is receiving from us.
 

Detailed Description

The tensor product neighbour type.

This type contains information about a neighbour of the current tensor product domain, allowing for data to be exchanged between the domains

Member Function/Subroutine Documentation

◆ empty()

procedure m_domain_neighbour::tensorprodneighbour::empty ( class(tensorprodneighbour), intent(inout) this)

Initialize an empty TensorProdNeighbour.

Parameters
[in,out]thisThe TensorProdNeighbour to initialize

◆ init()

procedure m_domain_neighbour::tensorprodneighbour::init ( class(tensorprodneighbour), intent(inout) this,
type(tensorproddomain), intent(in) my_domain,
type(tensorprodindices), intent(in) my_resp_inds,
type(tensorprodindices), intent(in) my_actv_inds,
type(tensorproddomain), intent(in) their_domain,
type(tensorprodindices), intent(in) their_resp_inds,
type(tensorprodindices), intent(in) their_act_inds,
integer, intent(in) their_l0,
integer, intent(in) nr_x,
integer, intent(in) nr_y,
integer, intent(in) nr_z )

Initialize a TensorProdNeighbour.

Parameters
[in,out]thisThe TensorProdNeighbour to initialize
[in]my_domainThe TensorProdDomain for the current rank
[in]my_resp_indsThe responsible B-spline indices for the current rank
[in]my_actv_indsThe active B-spline indices for the current rank
[in]their_domainThe TensorProdDomain of the neighbour
[in]their_resp_indsThe responsible B-spline indices for the neighbour
[in]their_act_indsThe active B-spline indices for the neighbour
[in]their_l0The global index of the first B-spline in the neighbour's responsible B-spline space
[in]nr_xThe number of B-splines in the x-direction
[in]nr_yThe number of B-splines in the y-direction
[in]nr_zThe number of B-splines in the z-direction

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