This module encapsulates the output in VTK format.
Todo HK: this stuff should probably be changed to use the VTK library stuff
beneath, see for example
Or maybe replace by https://github.com/szaghi/Lib_VTK_IO
Using the VTK API allows for greater flexibility and usage of more enhanced
features.
The current workflow is as follows:
call hvs_vtk_config_load to get relevant user configurations.
Open the vtk files with hvs_vtk_open .
Write the mesh data by calling hvs_vtk_write_meshdata , this requires the
vertex information of the mesh, that needs to be obtained beforehand.
If there is data to be attached to the mesh data, describe it by calling
hvs_vtk_write_varSys , which requires a variable system and a list of
variable names to write out of that variable system.
Then go on and call hvs_vtk_dump_data for each variable.
After all variables have been written, call hvs_vtk_close to close the
vtk files.
Uses
module~~hvs_vtk_module~~UsesGraph
module~hvs_vtk_module
hvs_vtk_module
module~hvs_vtk_type_module
hvs_vtk_type_module
module~hvs_vtk_module->module~hvs_vtk_type_module
module~hvs_base64_module
hvs_base64_module
module~hvs_vtk_module->module~hvs_base64_module
module~tem_aux_module
tem_aux_module
module~hvs_vtk_module->module~tem_aux_module
iso_c_binding
iso_c_binding
module~hvs_vtk_module->iso_c_binding
module~treelmesh_module
treelmesh_module
module~hvs_vtk_module->module~treelmesh_module
module~env_module
env_module
module~hvs_vtk_module->module~env_module
module~tem_logging_module
tem_logging_module
module~hvs_vtk_module->module~tem_logging_module
module~tem_time_module
tem_time_module
module~hvs_vtk_module->module~tem_time_module
module~tem_subtree_type_module
tem_subTree_type_module
module~hvs_vtk_module->module~tem_subtree_type_module
module~tem_varsys_module
tem_varSys_module
module~hvs_vtk_module->module~tem_varsys_module
module~tem_comm_env_module
tem_comm_env_module
module~hvs_vtk_module->module~tem_comm_env_module
module~tem_tools_module
tem_tools_module
module~hvs_vtk_module->module~tem_tools_module
module~tem_vrtx_module
tem_vrtx_module
module~hvs_vtk_module->module~tem_vrtx_module
module~aotus_module
aotus_module
module~hvs_vtk_module->module~aotus_module
module~hvs_vtk_type_module->module~env_module
module~hvs_base64_module->iso_c_binding
module~hvs_base64_module->module~env_module
hvs_sizeof_module
hvs_sizeof_module
module~hvs_base64_module->hvs_sizeof_module
module~tem_aux_module->module~env_module
module~tem_aux_module->module~tem_logging_module
module~tem_aux_module->module~tem_comm_env_module
module~tem_aux_module->module~tem_tools_module
module~tem_aux_module->module~aotus_module
module~tem_revision_module
tem_revision_module
module~tem_aux_module->module~tem_revision_module
module~flu_binding
flu_binding
module~tem_aux_module->module~flu_binding
module~aot_table_module
aot_table_module
module~tem_aux_module->module~aot_table_module
module~tem_lua_requires_module
tem_lua_requires_module
module~tem_aux_module->module~tem_lua_requires_module
mpi
mpi
module~tem_aux_module->mpi
module~treelmesh_module->module~tem_aux_module
module~treelmesh_module->module~env_module
module~treelmesh_module->module~tem_logging_module
module~treelmesh_module->module~tem_tools_module
module~treelmesh_module->module~aotus_module
module~tem_global_module
tem_global_module
module~treelmesh_module->module~tem_global_module
module~tem_sparta_module
tem_Sparta_module
module~treelmesh_module->module~tem_sparta_module
module~tem_topology_module
tem_topology_module
module~treelmesh_module->module~tem_topology_module
module~tem_property_module
tem_property_module
module~treelmesh_module->module~tem_property_module
module~treelmesh_module->module~aot_table_module
module~treelmesh_module->mpi
module~env_module->module~aotus_module
module~env_module->module~flu_binding
iso_fortran_env
iso_fortran_env
module~env_module->iso_fortran_env
module~env_module->mpi
module~tem_logging_module->module~env_module
module~tem_logging_module->module~aotus_module
module~tem_logging_module->module~aot_table_module
module~tem_time_module->module~env_module
module~tem_time_module->module~aotus_module
module~aot_out_module
aot_out_module
module~tem_time_module->module~aot_out_module
module~tem_time_module->module~aot_table_module
module~tem_time_module->mpi
module~tem_subtree_type_module->module~tem_aux_module
module~tem_subtree_type_module->module~treelmesh_module
module~tem_subtree_type_module->module~env_module
module~tem_subtree_type_module->module~tem_logging_module
module~tem_subtree_type_module->module~tem_global_module
module~tem_subtree_type_module->module~tem_property_module
module~tem_subtree_type_module->mpi
module~tem_varsys_module->module~tem_aux_module
module~tem_varsys_module->iso_c_binding
module~tem_varsys_module->module~treelmesh_module
module~tem_varsys_module->module~env_module
module~tem_varsys_module->module~tem_logging_module
module~tem_varsys_module->module~tem_time_module
module~tem_varsys_module->module~aotus_module
module~tem_dyn_array_module
tem_dyn_array_module
module~tem_varsys_module->module~tem_dyn_array_module
module~tem_varsys_module->module~aot_out_module
module~tem_varsys_module->module~aot_table_module
module~tem_comm_env_module->mpi
module~tem_tools_module->module~env_module
module~tem_vrtx_module->module~treelmesh_module
module~tem_vrtx_module->module~env_module
module~tem_vrtx_module->module~tem_logging_module
module~tem_vrtx_module->module~tem_subtree_type_module
module~tem_vrtx_module->module~tem_tools_module
module~tem_vrtx_module->module~tem_topology_module
module~tem_vrtx_module->module~tem_property_module
module~tem_geometry_module
tem_geometry_module
module~tem_vrtx_module->module~tem_geometry_module
module~tem_bc_prop_module
tem_bc_prop_module
module~tem_vrtx_module->module~tem_bc_prop_module
module~tem_grow_array_module
tem_grow_array_module
module~tem_vrtx_module->module~tem_grow_array_module
module~tem_param_module
tem_param_module
module~tem_vrtx_module->module~tem_param_module
module~tem_vrtx_module->mpi
Nodes of different colours represent the following:
Graph Key
Module
Module
Submodule
Submodule
Subroutine
Subroutine
Function
Function
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
Used by
module~~hvs_vtk_module~~UsedByGraph
module~hvs_vtk_module
hvs_vtk_module
module~hvs_output_module
hvs_output_module
module~hvs_output_module->module~hvs_vtk_module
module~tem_tracking_module
tem_tracking_module
module~tem_tracking_module->module~hvs_output_module
program~tem_tracking_test
tem_tracking_test
program~tem_tracking_test->module~tem_tracking_module
Nodes of different colours represent the following:
Graph Key
Module
Module
Submodule
Submodule
Subroutine
Subroutine
Function
Function
Program
Program
This Page's Entity
This Page's Entity
Solid arrows point from a submodule to the (sub)module which it is
descended from. Dashed arrows point from a module or program unit to
modules which it uses.
Subroutines
Read the VTK output configuration from a Lua script.
Arguments
Type Intent Optional Attributes Name
type(hvs_vtk_config_type ),
intent(out)
::
me The VTK configuration settings to fill.
type(flu_state)
::
conf Handle of the Lua script to load the configuration from.
integer,
intent(in)
::
thandle Table handle to the table providing the VTK settings.
public subroutine hvs_vtk_init (vtk_file, vtk_config, basename, proc)
Initialize the type for VTK format
Arguments
Type Intent Optional Attributes Name
type(hvs_vtk_file_type ),
intent(inout)
::
vtk_file The file description to open.
type(hvs_vtk_config_type ),
intent(in)
::
vtk_config User specified settings for the output
character(len=*),
intent(in)
::
basename Basename for the output file, rank and suffix will be appended as
needed.
type(tem_comm_env_type ),
intent(in)
::
proc Parallel environment to use for the output.
public subroutine hvs_vtk_open (vtk_file, use_iter, proc, time)
Open the output files in VTK format.
Read more…
Arguments
Type Intent Optional Attributes Name
type(hvs_vtk_file_type ),
intent(inout)
::
vtk_file The file description to open.
logical,
intent(in)
::
use_iter User specified settings for the output
Whether to use iteration as part of filename
type(tem_comm_env_type ),
intent(in)
::
proc Parallel environment to use for the output.
type(tem_time_type ),
intent(in),
optional ::
time Time information.
If this is present, the filename will be built with a time stamp and
the time point information is written into the vtu file.
Write the mesh information into the VTK output files.
Read more…
Arguments
Type Intent Optional Attributes Name
type(hvs_vtk_file_type ),
intent(in)
::
vtk_file File handles to the files where the mesh data should be written to.
type(tem_vrtx_type ),
intent(in)
::
vrtx Information on the vertices of the mesh
integer,
intent(in)
::
nElems Number of elements in the mesh
Write the cell data description into the VTK files.
Read more…
Arguments
Type Intent Optional Attributes Name
type(hvs_vtk_file_type ),
intent(in)
::
vtk_file Handles for the VTK files to write the celldata to.
character(len=*),
intent(in)
::
celldata_str Actual string to put into the XML to describe the celldata.
Convert the provided variable system data into celldata description in the
given vtk files.
Arguments
Type Intent Optional Attributes Name
type(hvs_vtk_file_type ),
intent(inout)
::
vtk_file Output info for vtu_output.
type(tem_varSys_type ),
intent(in)
::
varsys Description of the available variable system to get the given varnames
from.
integer,
intent(in)
::
varpos (:)List of variable positions that should be written into the vtk output.
If this is not provided, all variables from the varsys will be written
to the vtk file.
Dump the given data (input) with the given name in the given format (vtu)
to the given unit.
Arguments
Type Intent Optional Attributes Name
type(hvs_vtk_file_type ),
intent(in)
::
vtk_file VTK file to write data to.
integer,
intent(in)
::
varpos Position of the variable to write
type(tem_varSys_type ),
intent(in)
::
varsys Description of the available variable system to get the given varnames
from.
type(treelmesh_type ),
intent(in)
::
mesh Mesh to write the data on.
type(tem_time_type ),
intent(in)
::
time Point in time to use for this data.
Can be important for space-time function evaluations.
type(tem_subTree_type ),
intent(in),
optional ::
subtree Optional restriction of the elements to output.
This routine finalizes the vtu file i.e closing cellData xml and
creating pvtu file to combile all parallel vtu files
Arguments
Type Intent Optional Attributes Name
type(hvs_vtk_file_type ),
intent(in)
::
vtk_file The file descriptor to close again.
type(tem_comm_env_type ),
intent(in)
::
proc Communicator for the parallel environment.
This routine closes PVD file
Arguments
Type Intent Optional Attributes Name
type(hvs_vtk_file_type ),
intent(inout)
::
vtk_file The file description to open.
Dumps the debug_data into a file.
Read more…
Arguments