tem_refining_module Module

Module that allows the refinement of a given tree to create a mesh with a different resolution.

IMPORTANT NOTE: This is a module, that does not employ mesh adaptivity strategies, instead, complete meshes are created anew! Smarter, more efficient mesh adaptivity procedures are being implemented, and should replace the functionality of this module eventually.


Uses

  • module~~tem_refining_module~~UsesGraph module~tem_refining_module tem_refining_module module~tem_bc_prop_module tem_bc_prop_module module~tem_refining_module->module~tem_bc_prop_module module~env_module env_module module~tem_refining_module->module~env_module module~tem_grow_array_module tem_grow_array_module module~tem_refining_module->module~tem_grow_array_module module~tem_geometry_module tem_geometry_module module~tem_refining_module->module~tem_geometry_module module~tem_property_module tem_property_module module~tem_refining_module->module~tem_property_module module~treelmesh_module treelmesh_module module~tem_refining_module->module~treelmesh_module mpi mpi module~tem_refining_module->mpi module~tem_subtree_type_module tem_subTree_type_module module~tem_refining_module->module~tem_subtree_type_module module~tem_bc_prop_module->module~env_module module~tem_bc_prop_module->module~tem_property_module module~tem_bc_prop_module->module~treelmesh_module module~tem_bc_prop_module->mpi module~tem_prophead_module tem_prophead_module module~tem_bc_prop_module->module~tem_prophead_module module~tem_param_module tem_param_module module~tem_bc_prop_module->module~tem_param_module module~tem_topology_module tem_topology_module module~tem_bc_prop_module->module~tem_topology_module module~tem_aux_module tem_aux_module module~tem_bc_prop_module->module~tem_aux_module module~tem_logging_module tem_logging_module module~tem_bc_prop_module->module~tem_logging_module module~aotus_module aotus_module module~tem_bc_prop_module->module~aotus_module module~aot_table_module aot_table_module module~tem_bc_prop_module->module~aot_table_module module~tem_debug_module tem_debug_module module~tem_bc_prop_module->module~tem_debug_module module~aot_out_module aot_out_module module~tem_bc_prop_module->module~aot_out_module module~env_module->mpi module~flu_binding flu_binding module~env_module->module~flu_binding iso_fortran_env iso_fortran_env module~env_module->iso_fortran_env module~env_module->module~aotus_module module~tem_grow_array_module->module~env_module module~tem_geometry_module->module~env_module module~tem_geometry_module->module~tem_property_module module~tem_geometry_module->module~treelmesh_module module~tem_geometry_module->mpi module~tem_geometry_module->module~tem_subtree_type_module module~tem_geometry_module->module~tem_param_module module~tem_geometry_module->module~tem_topology_module module~tem_geometry_module->module~tem_logging_module module~tem_float_module tem_float_module module~tem_geometry_module->module~tem_float_module module~tem_geometry_module->module~tem_debug_module module~tem_tools_module tem_tools_module module~tem_geometry_module->module~tem_tools_module module~tem_property_module->module~env_module module~tem_property_module->mpi module~tem_property_module->module~tem_prophead_module module~treelmesh_module->module~env_module module~treelmesh_module->module~tem_property_module module~treelmesh_module->mpi module~treelmesh_module->module~tem_topology_module module~treelmesh_module->module~tem_aux_module module~treelmesh_module->module~tem_logging_module module~tem_sparta_module tem_Sparta_module module~treelmesh_module->module~tem_sparta_module module~treelmesh_module->module~aotus_module module~treelmesh_module->module~aot_table_module module~treelmesh_module->module~tem_tools_module module~tem_global_module tem_global_module module~treelmesh_module->module~tem_global_module module~tem_subtree_type_module->module~env_module module~tem_subtree_type_module->module~tem_property_module module~tem_subtree_type_module->module~treelmesh_module module~tem_subtree_type_module->mpi module~tem_subtree_type_module->module~tem_aux_module module~tem_subtree_type_module->module~tem_logging_module module~tem_subtree_type_module->module~tem_global_module module~tem_prophead_module->module~env_module module~tem_prophead_module->mpi module~tem_prophead_module->module~aotus_module module~tem_prophead_module->module~aot_table_module module~tem_prophead_module->module~aot_out_module module~tem_param_module->module~env_module module~tem_topology_module->module~env_module module~tem_aux_module->module~env_module module~tem_aux_module->mpi module~tem_aux_module->module~tem_logging_module module~tem_aux_module->module~flu_binding module~tem_aux_module->module~aotus_module module~tem_aux_module->module~aot_table_module module~tem_aux_module->module~tem_tools_module module~tem_lua_requires_module tem_lua_requires_module module~tem_aux_module->module~tem_lua_requires_module module~soi_revision_module soi_revision_module module~tem_aux_module->module~soi_revision_module module~tem_comm_env_module tem_comm_env_module module~tem_aux_module->module~tem_comm_env_module module~tem_logging_module->module~env_module module~tem_logging_module->module~aotus_module module~tem_logging_module->module~aot_table_module module~tem_float_module->module~env_module module~tem_sparta_module->module~env_module module~tem_sparta_module->mpi module~tem_sparta_module->module~tem_aux_module module~tem_sparta_module->module~tem_logging_module module~tem_sparta_module->module~tem_float_module module~tem_debug_module->module~env_module module~tem_debug_module->module~tem_logging_module module~tem_debug_module->module~flu_binding module~tem_debug_module->module~aot_table_module module~tem_debug_module->module~tem_tools_module module~tem_tools_module->module~env_module module~tem_global_module->module~env_module module~tem_global_module->mpi module~tem_global_module->module~tem_prophead_module module~tem_global_module->module~tem_aux_module module~tem_global_module->module~tem_logging_module module~tem_global_module->module~aotus_module module~tem_global_module->module~aot_table_module module~tem_global_module->module~aot_out_module module~tem_lua_requires_module->module~env_module module~tem_lua_requires_module->module~flu_binding module~tem_lua_requires_module->module~aotus_module module~tem_lua_requires_module->module~aot_table_module iso_c_binding iso_c_binding module~tem_lua_requires_module->iso_c_binding module~tem_comm_env_module->mpi

Contents


Subroutines

public subroutine tem_refine_global_subtree(orig_mesh, orig_bcs, subtree, ndims, new_mesh, new_bcs, restrict_to_sub)

Refine all elements defined in subtree by one level in the original mesh, and create a new mesh.

Read more…

Arguments

Type IntentOptional Attributes Name
type(treelmesh_type), intent(in) :: orig_mesh

The original mesh to be refined.

type(tem_BC_prop_type), intent(in) :: orig_bcs

Boundary conditions for the original mesh.

type(tem_subTree_type), intent(in) :: subtree

(Process local) positions of elements to refine.

integer, intent(in) :: ndims

Number of dimensions for the refinement

Read more…
type(treelmesh_type), intent(out) :: new_mesh

Newly created refined mesh.

type(tem_BC_prop_type), intent(out) :: new_bcs

Boundary conditions for the new mesh.

logical, intent(in), optional :: restrict_to_sub

Flag to indicate, wether only refined elements should be put into the new mesh.