mus_buffer_module Module

Module containing subroutines to prepare buffers for transformation of quantities (tracking) and the restart/tracking IO.

To save memory, the transformation of quantities and the IO-functionality of MUSUBI is done in linear chunks. The size of the chunk can be defined in the lua input file and is defined by the function tem_load_env_params. The default size is set to be 8MB.


Uses

  • module~~mus_buffer_module~~UsesGraph module~mus_buffer_module mus_buffer_module mpi mpi module~mus_buffer_module->mpi module~tem_varmap_module tem_varMap_module module~mus_buffer_module->module~tem_varmap_module module~tem_varsys_module tem_varSys_module module~mus_buffer_module->module~tem_varsys_module module~mus_scheme_type_module mus_scheme_type_module module~mus_buffer_module->module~mus_scheme_type_module module~tem_topology_module tem_topology_module module~mus_buffer_module->module~tem_topology_module module~env_module env_module module~mus_buffer_module->module~env_module module~mus_scheme_type_module->module~tem_varmap_module module~mus_scheme_type_module->module~tem_varsys_module module~mus_scheme_type_module->module~env_module module~mus_dervarpos_module mus_derVarPos_module module~mus_scheme_type_module->module~mus_dervarpos_module module~mus_graddata_module mus_gradData_module module~mus_scheme_type_module->module~mus_graddata_module module~mus_auxfield_module mus_auxField_module module~mus_scheme_type_module->module~mus_auxfield_module module~tem_construction_module tem_construction_module module~mus_scheme_type_module->module~tem_construction_module module~mus_bc_header_module mus_bc_header_module module~mus_scheme_type_module->module~mus_bc_header_module module~mus_interpolate_header_module mus_interpolate_header_module module~mus_scheme_type_module->module~mus_interpolate_header_module module~mus_pdf_module mus_pdf_module module~mus_scheme_type_module->module~mus_pdf_module module~mus_nernstplanck_module mus_nernstPlanck_module module~mus_scheme_type_module->module~mus_nernstplanck_module module~mus_param_module mus_param_module module~mus_scheme_type_module->module~mus_param_module module~mus_source_var_module mus_source_var_module module~mus_scheme_type_module->module~mus_source_var_module module~mus_scheme_header_module mus_scheme_header_module module~mus_scheme_type_module->module~mus_scheme_header_module module~mus_scheme_layout_module mus_scheme_layout_module module~mus_scheme_type_module->module~mus_scheme_layout_module module~mus_field_module mus_field_module module~mus_scheme_type_module->module~mus_field_module module~tem_variable_module tem_variable_module module~mus_scheme_type_module->module~tem_variable_module module~tem_tracking_module tem_tracking_module module~mus_scheme_type_module->module~tem_tracking_module module~mus_transport_var_module mus_transport_var_module module~mus_scheme_type_module->module~mus_transport_var_module module~mus_mixture_module mus_mixture_module module~mus_scheme_type_module->module~mus_mixture_module module~mus_field_prop_module mus_field_prop_module module~mus_scheme_type_module->module~mus_field_prop_module module~tem_spacetime_fun_module tem_spacetime_fun_module module~mus_scheme_type_module->module~tem_spacetime_fun_module

Used by

  • module~~mus_buffer_module~~UsedByGraph module~mus_buffer_module mus_buffer_module module~mus_restart_module mus_restart_module module~mus_restart_module->module~mus_buffer_module module~mus_dynloadbal_module mus_dynLoadBal_module module~mus_dynloadbal_module->module~mus_buffer_module module~mus_flow_module mus_flow_module module~mus_dynloadbal_module->module~mus_flow_module module~mus_aux_module mus_aux_module module~mus_aux_module->module~mus_restart_module module~mus_program_module mus_program_module module~mus_program_module->module~mus_restart_module module~mus_program_module->module~mus_dynloadbal_module module~mus_program_module->module~mus_aux_module module~mus_program_module->module~mus_flow_module module~mus_control_module mus_control_module module~mus_program_module->module~mus_control_module module~mus_flow_module->module~mus_restart_module program~mus_harvesting mus_harvesting program~mus_harvesting->module~mus_restart_module program~mus_harvesting->module~mus_flow_module module~mus_control_module->module~mus_aux_module program~musubi musubi program~musubi->module~mus_aux_module program~musubi->module~mus_program_module program~musubi->module~mus_control_module

Contents


Subroutines

public subroutine mus_pdf_serialize(scheme, treeID, levelPointer, varMap, nElems, buffer, minLevel, maxLevel)

Preparation of the serialize PDF data

Read more…

Arguments

TypeIntentOptionalAttributesName
type(mus_scheme_type), intent(in) :: scheme

scheme type containing the different state vectors

integer(kind=long_k), intent(in) :: treeID(nElems)

Partial treeID list

integer, intent(in) :: levelPointer(nElems)

Partial Level pointer

type(tem_varMap_type), intent(in) :: varMap

varaible map information

integer, intent(in) :: nElems

number of valid elements in this buffer

real(kind=rk), intent(inout) :: buffer(:)

Data buffer

integer :: minLevel
integer :: maxLevel

public subroutine mus_pdf_unserialize(scheme, treeID, levelPointer, varMap, nElems, buffer, minLevel, maxLevel)

This subroutine unserializes the read data and stores it in the state- vector to perform a restart.

Arguments

TypeIntentOptionalAttributesName
type(mus_scheme_type), intent(inout) :: scheme

scheme type containing the different state vectors

integer(kind=long_k), intent(in) :: treeID(nElems)

global tree data type

integer, intent(in) :: levelPointer(nElems)

Level Pointer - from treelm to level descriptor

type(tem_varMap_type), intent(in) :: varMap

variable map

integer, intent(in) :: nElems
real(kind=rk), intent(in) :: buffer(:)
integer :: minLevel
integer :: maxLevel