|
BSpline Finite Element Exterior Calculus
|
Type to hold lists of tensor product indices. More...
Public Member Functions | |
| procedure | init (this, inds, my_inds, l0) |
| Initialize the TensorProdIndexList from the given TensorProdIndices. | |
| procedure | destroy (this) |
| Destroy the TensorProdIndexList. | |
| generic | get_local_index (this, i, j) |
| Get the local index in the TensorProdIndexList for a given global Cartesian index (2D version) | |
| generic | get_local_index (this, i, j, k) |
| Get the local index in the TensorProdIndexList for a given global Cartesian index. | |
| procedure | get_bounds (this, i_min, i_max, j_min, j_max, k_min, k_max) |
| Get the index bounds from a single TensorProdIndexList. | |
Public Attributes | |
| integer, dimension(:), allocatable | lin |
| Linear index. | |
| integer, dimension(:), allocatable | i |
| Cartesian index i. | |
| integer, dimension(:), allocatable | j |
| Cartesian index j. | |
| integer, dimension(:), allocatable | k |
| Cartesian index k. | |
| type(tensorprodindices) | tp_inds |
| The corresponding TensorProdIndices. | |
Type to hold lists of tensor product indices.
This type holds a list of indices for a tensor product space, where the indices themselves are not necessarily a tensor product of 1D indices
| procedure m_tensorprod_indices::tensorprodindexlist::destroy | ( | class(tensorprodindexlist), intent(inout) | this | ) |
Destroy the TensorProdIndexList.
| this[inout] | The TensorProdIndexList to destroy |
| procedure m_tensorprod_indices::tensorprodindexlist::get_bounds | ( | class(tensorprodindexlist), intent(in) | this, |
| integer, intent(out) | i_min, | ||
| integer, intent(out) | i_max, | ||
| integer, intent(out) | j_min, | ||
| integer, intent(out) | j_max, | ||
| integer, intent(out), optional | k_min, | ||
| integer, intent(out), optional | k_max ) |
Get the index bounds from a single TensorProdIndexList.
| [in] | index_list | The TensorProdIndexList |
| [out] | i_min | The minimum i-index |
| [out] | i_max | The maximum i-index |
| [out] | j_min | The minimum j-index |
| [out] | j_max | The maximum j-index |
| [out] | _(optional)_ | k_min The minimum k-index |
| [out] | _(optional)_ | k_max The maximum k-index |
| generic m_tensorprod_indices::tensorprodindexlist::get_local_index | ( | class(tensorprodindexlist), intent(in) | this, |
| integer, intent(in) | i, | ||
| integer, intent(in) | j ) |
Get the local index in the TensorProdIndexList for a given global Cartesian index (2D version)
| this | The TensorProdIndexList |
| i | The global x-index |
| j | The global y-index |
| generic m_tensorprod_indices::tensorprodindexlist::get_local_index | ( | class(tensorprodindexlist), intent(in) | this, |
| integer, intent(in) | i, | ||
| integer, intent(in) | j, | ||
| integer, intent(in) | k ) |
Get the local index in the TensorProdIndexList for a given global Cartesian index.
| this | The TensorProdIndexList |
| i | The global x-index |
| j | The global y-index |
| k | The global z-index |
| procedure m_tensorprod_indices::tensorprodindexlist::init | ( | class(tensorprodindexlist), intent(inout) | this, |
| type(tensorprodindices), intent(in) | inds, | ||
| type(tensorprodindices), intent(in) | my_inds, | ||
| integer, intent(in) | l0 ) |
Initialize the TensorProdIndexList from the given TensorProdIndices.
| this[inout] | The TensorProdIndexList to initialize |
| inds[in] | The TensorProdIndices to use for initialization |
| my_inds[in] | The TensorProdIndices of the current rank (used for determining the global linear index, as well as the complement when applicable) |
| l0[in] | The starting linear index for the current rank (used for determining the global linear index) |