A module to provide informations on boundary condition tem_bc_module property for elements.
Type | Visibility | Attributes | Name | Initial | |||
---|---|---|---|---|---|---|---|
type(tem_prophead_type), | public, | pointer | :: | header | => | null() |
Pointer to treelmesh_type%global%property |
integer, | public | :: | nSides |
Number of sides in the elements, each side might be assigned a boundary condition ID The first 6 are dedicated to "direct" neighbors, and shall always be present. The next 12 are dedicated to neighbors where two of the indices in the 3 dimensional address have to be changed (neighbors at the edges of the cube) After these 18 entries, additional 8 entries might be used for neighbors at the corners. |
|||
integer, | public | :: | nBCtypes |
Number of different Boundary conditions used in the complete domain e.g. wall, inflow, outflow |
|||
character(len=LabelLen), | public, | allocatable | :: | BC_label(:) |
Array of labels identifying each of the boundary conditions. This array has a length of nBCtypes |
||
logical, | public, | allocatable | :: | hasQVal(:) |
Logical array indicating whether each boundary is high order wall This array has a length of nBCtypes |
||
logical, | public, | allocatable | :: | hasNormal(:) |
Logical array indicating whether each boundary provides normal wall information. |
||
real(kind=rk), | public, | allocatable | :: | qVal(:,:) |
Actual q-value array for high order wall boundary conditions The fist dimension has a length of nSides The second dimension has a length of the number of elements with the boundary condition property. tem_property_type%nElems |
||
real(kind=rk), | public, | allocatable | :: | normal(:,:) |
Actual normals array for boundary conditions providing the wall normals The fist dimension has length 3 The second dimension has a length of the number of elements with the hasNormal property. tem_property_type%nElems |
||
integer(kind=long_k), | public, | allocatable | :: | boundary_ID(:,:) |
Actual boundary condition identification for all sides of elements with this property. The first dimension has a length of nSides The second dimension has a length of the number of elements with the boundary condition property. tem_property_type%nElems An ID of 0 for a side indicates, that there is no boundary in that direction. A negative ID indicates a periodic boundary and that the given absolute of the given value is to be taken as neighboring ID in that direction. |
||
type(tem_property_type), | public, | pointer | :: | property | => | null() |
Pointer to treelmesh_type%property |
Get the boundary property position in the list of all properties in tree.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(treelmesh_type), | intent(in) | :: | tree |
Tree to find the boundary condition property for. |
Position of the boundary condition property in the list of all properties.
Initialize boundary conditions of a given tree.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(treelmesh_type), | intent(in) | :: | tree | |||
integer, | intent(in) | :: | mypart | |||
integer, | intent(in) | :: | comm |
Communicator to use |
||
type(tem_BC_prop_type), | intent(out) | :: | bc |
load bc property header from lua file, boundaryID from bnd.lsb
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(inout) | :: | me |
Boundary condition construct to load the data into |
||
integer(kind=long_k), | intent(in) | :: | offset |
Offset of the local set of elements in the global list |
||
integer, | intent(in) | :: | nElems |
Local number of elements with this property |
||
character(len=*), | intent(in) | :: | basename |
Name of the file, the data is stored in, will be appended with ".ascii" for the header information and ".lsb" or ".msb" for the binary data. |
||
integer, | intent(in) | :: | myPart |
Partition to load |
||
integer, | intent(in) | :: | comm |
Communicator to use |
Initialize an empty boundary condition
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(out) | :: | me |
Boundary condition construct to load the data into |
Create the boundary property for a restricted set of elements given by sublist (position of elements in tree, usually from a subtree).
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(treelmesh_type), | intent(in) | :: | tree |
The original tree from which the subset is to be selected. |
||
type(tem_BC_prop_type), | intent(in) | :: | bc |
The boundary condition property in the original mesh (tree). |
||
type(tem_prophead_type), | intent(in), | target | :: | header |
Header description of the boundary condition property in the sublist. |
|
type(tem_property_type), | intent(in), | target | :: | property |
Property description of the boundary condition property in the sublist. |
|
integer, | intent(in) | :: | sublist(:) |
List of elements to get the boundary information for. |
||
type(tem_BC_prop_type), | intent(out) | :: | sub_bc |
New boundary property description for just the elements provided in sublist. |
dump bc properties header information to lua file
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(in) | :: | me |
Boundary condition construct to load the data into |
||
character(len=*), | intent(in) | :: | headerfile |
name of the bc header lua file |
dump bc properties
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(in) | :: | me |
Boundary condition construct to load the data into |
||
integer(kind=long_k), | intent(in) | :: | offset |
Offset of the local set of elements in the global list |
||
integer, | intent(in) | :: | nElems |
Local number of elements with this property |
||
character(len=*), | intent(in) | :: | basename |
Name of the file, the data is stored in, will be appended with ".lua" for the header information and ".lsb" or ".msb" for the binary data. |
||
integer, | intent(in) | :: | myPart |
Partition to dump |
||
integer, | intent(in) | :: | comm |
Communicator to use |
dump bc properties
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(in) | :: | me |
Boundary condition construct to load the data into |
||
integer(kind=long_k), | intent(in) | :: | offset |
Offset of the local set of elements in the global list |
||
integer, | intent(in) | :: | nElems |
Local number of elements with this property |
||
character(len=*), | intent(in) | :: | basename |
Name of the file, the data is stored in, will be appended with ".lua" for the header information and ".lsb" or ".msb" for the binary data. |
||
integer, | intent(in) | :: | myPart |
Partition to dump |
||
integer, | intent(in) | :: | comm |
Communicator to use |
load bc qVal header from lua file, qVal from qVal.lsb
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(inout) | :: | me |
Boundary condition construct to load the data into |
||
integer(kind=long_k), | intent(in) | :: | offset |
Offset of the local set of elements in the global list |
||
integer, | intent(in) | :: | nElems |
Local number of elements that have qVal |
||
character(len=*), | intent(in) | :: | basename |
Name of the file, the data is stored in, will be appended with ".lua" for the header information and ".lsb" or ".msb" for the binary data. |
||
integer, | intent(in) | :: | myPart |
Partition to load |
||
integer, | intent(in) | :: | comm |
Communicator to use |
dump normal information
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(in) | :: | me |
Boundary condition construct to load the data into |
||
integer(kind=long_k), | intent(in) | :: | offset |
Offset of the local set of elements in the global list |
||
integer, | intent(in) | :: | nElems |
Local number of elements with this property |
||
character(len=*), | intent(in) | :: | basename |
Name of the file, the data is stored in, will be appended with ".lua" for the header information and ".lsb" or ".msb" for the binary data. |
||
integer, | intent(in) | :: | myPart |
Partition to dump |
||
integer, | intent(in) | :: | comm |
Communicator to use |
load bc qVal header from lua file, qVal from qVal.lsb
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(inout) | :: | me |
Boundary condition construct to load the data into |
||
integer(kind=long_k), | intent(in) | :: | offset |
Offset of the local set of elements in the global list |
||
integer, | intent(in) | :: | nElems |
Local number of elements that have qVal |
||
character(len=*), | intent(in) | :: | basename |
Name of the file, the data is stored in, will be appended with ".lua" for the header information and ".lsb" or ".msb" for the binary data. |
||
integer, | intent(in) | :: | myPart |
Partition to load |
||
integer, | intent(in) | :: | comm |
Communicator to use |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(in) | :: | me |
Boundary condition construct to load the data into |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(inout) | :: | me |
Boundary property type |
Load internal BC property for 1D Line.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(treelmesh_type), | intent(in) | :: | tree | |||
type(tem_BC_prop_type), | intent(inout) | :: | me |
Boundary condition construct to load the data into |
||
logical, | intent(in) | :: | xbounds |
Set boundaries east and west in X direction? |
||
integer, | intent(in), | optional | :: | nSides |
Required sides to set, defaults to 26. |
Load internal BC property for a single fully periodic element.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(treelmesh_type), | intent(in) | :: | tree | |||
type(tem_BC_prop_type), | intent(inout) | :: | me |
Boundary condition construct to load the data into |
||
integer, | intent(in), | optional | :: | nSides |
Required sides to set, defaults to 26. |
Load internal BC property for 2D Slice.
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(treelmesh_type), | intent(in) | :: | tree | |||
type(tem_BC_prop_type), | intent(inout) | :: | me |
Boundary condition construct to load the data into |
||
integer, | intent(in), | optional | :: | nSides |
Required sides to set, defaults to 26. |
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
character(len=*), | intent(in) | :: | headerfile | |||
character(len=*), | intent(in) | :: | propname | |||
integer, | intent(in) | :: | nBCtypes | |||
logical, | intent(in) | :: | flag_per_BC(nBCtypes) |
dump bc properties
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=long_k), | intent(in) | :: | offset |
Offset of the local set of elements in the global list |
||
integer, | intent(in) | :: | arraylen |
Length of real array for each element |
||
integer, | intent(in) | :: | nElems |
Local number of elements with this property |
||
real(kind=rk), | intent(in) | :: | propdat(arraylen,nElems) |
Real-valued property data for each element to write out |
||
character(len=*), | intent(in) | :: | basename |
Name of the file, the data is stored in, will be appended with ".lua" for the header information and ".lsb" or ".msb" for the binary data. |
||
integer, | intent(in) | :: | comm |
Communicator to use |
load bc realarray data from disk
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer, | intent(in) | :: | nBCtypes |
Number of boundary condition types |
||
character(len=*), | intent(in) | :: | propname |
Name of the property to load |
||
character(len=*), | intent(in) | :: | basename |
Name of the file, the data is stored in, will be appended with ".lua" for the header information and ".lsb" or ".msb" for the binary data. |
||
logical, | intent(out) | :: | flag_per_BC(nBCtypes) |
The flags to set for each boundary condition type |
||
integer, | intent(in) | :: | myPart |
Partition to load |
||
integer, | intent(in) | :: | comm |
Communicator to use |
load bc realarray data from disk
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
integer(kind=long_k), | intent(in) | :: | offset |
Offset of the local set of elements in the global list |
||
character(len=*), | intent(in) | :: | propname |
Name of the property to load |
||
integer, | intent(in) | :: | arraylen |
Length of the real data array to read per element |
||
integer, | intent(in) | :: | nElems |
Local number of elements with this property |
||
real(kind=rk), | intent(out) | :: | propdat(arraylen,nElems) |
real array data to fill |
||
character(len=*), | intent(in) | :: | basename |
Name of the file, the data is stored in, will be appended with ".lua" for the header information and ".lsb" or ".msb" for the binary data. |
||
integer, | intent(in) | :: | myPart |
Partition to load |
||
integer, | intent(in) | :: | comm |
Communicator to use |
dump qval header information to lua file
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(in) | :: | me |
Boundary condition construct to load the data into |
||
character(len=*), | intent(in) | :: | headerfile |
name of the bc header lua file |
dump normal header information to lua file
Type | Intent | Optional | Attributes | Name | ||
---|---|---|---|---|---|---|
type(tem_BC_prop_type), | intent(in) | :: | me |
Boundary condition construct to load the data into |
||
character(len=*), | intent(in) | :: | headerfile |
name of the bc header lua file |