vis_vtk3d_m Module

3d Visualisation of mesh: Lifts mesh to 3d (aligned boxes) and outpots to vtk


Uses

  • module~~vis_vtk3d_m~~UsesGraph module~vis_vtk3d_m vis_vtk3d_m module~comm_handling_m comm_handling_m module~vis_vtk3d_m->module~comm_handling_m module~equilibrium_m equilibrium_m module~vis_vtk3d_m->module~equilibrium_m module~fieldline_tracer_m fieldline_tracer_m module~vis_vtk3d_m->module~fieldline_tracer_m module~list_operations_m list_operations_m module~vis_vtk3d_m->module~list_operations_m module~mesh_cart_m mesh_cart_m module~vis_vtk3d_m->module~mesh_cart_m module~precision_m precision_m module~vis_vtk3d_m->module~precision_m module~screen_io_m screen_io_m module~vis_vtk3d_m->module~screen_io_m vtk_fortran vtk_fortran module~vis_vtk3d_m->vtk_fortran mpi mpi module~comm_handling_m->mpi module~equilibrium_m->module~precision_m module~fieldline_tracer_m->module~comm_handling_m module~fieldline_tracer_m->module~equilibrium_m module~fieldline_tracer_m->module~precision_m module~fieldline_tracer_m->module~screen_io_m dop853_constants dop853_constants module~fieldline_tracer_m->dop853_constants dop853_module dop853_module module~fieldline_tracer_m->dop853_module module~error_handling_m error_handling_m module~fieldline_tracer_m->module~error_handling_m module~status_codes_m status_codes_m module~fieldline_tracer_m->module~status_codes_m module~list_operations_m->module~precision_m module~list_operations_m->module~screen_io_m module~mesh_cart_m->module~comm_handling_m module~mesh_cart_m->module~equilibrium_m module~mesh_cart_m->module~precision_m iso_c_binding iso_c_binding module~mesh_cart_m->iso_c_binding module~descriptors_m descriptors_m module~mesh_cart_m->module~descriptors_m module~mesh_cart_m->module~error_handling_m module~slab_equilibrium_m slab_equilibrium_m module~mesh_cart_m->module~slab_equilibrium_m module~mesh_cart_m->module~status_codes_m netcdf netcdf module~mesh_cart_m->netcdf module~precision_m->iso_c_binding iso_fortran_env iso_fortran_env module~precision_m->iso_fortran_env module~precision_m->mpi module~precision_m->netcdf module~screen_io_m->module~precision_m module~screen_io_m->iso_fortran_env module~screen_io_m->netcdf module~descriptors_m->module~screen_io_m module~error_handling_m->module~comm_handling_m module~error_handling_m->module~precision_m module~error_handling_m->module~screen_io_m module~error_handling_m->module~status_codes_m module~error_handling_m->mpi module~error_handling_m->netcdf module~slab_equilibrium_m->module~equilibrium_m module~slab_equilibrium_m->module~precision_m module~slab_equilibrium_m->module~screen_io_m module~slab_equilibrium_m->module~descriptors_m module~params_equi_slab_m params_equi_slab_m module~slab_equilibrium_m->module~params_equi_slab_m module~params_equi_slab_m->module~precision_m module~params_equi_slab_m->module~screen_io_m module~params_equi_slab_m->iso_fortran_env module~params_equi_slab_m->module~error_handling_m module~params_equi_slab_m->module~status_codes_m

Used by

  • module~~vis_vtk3d_m~~UsedByGraph module~vis_vtk3d_m vis_vtk3d_m program~test_diffusion test_diffusion program~test_diffusion->module~vis_vtk3d_m

Subroutines

public subroutine write_vtk_mesh(equi, mesh, phi, dphi_bwd, dphi_fwd, vtk2d, vtk3d, quadratic_hex, dbgout)

Writes mesh to vtk files Based on VTKFortran library (https://github.com/szaghi/VTKFortran/) For description of cell types and their definition of connectivity see https://kitware.github.io/vtk-examples/site/VTKBook/05Chapter5/ here used (quad, bi-quadrtatic quad, hexahedron, quadratic hexahedron) For their VTK descriptor see https://vtk.org/doc/nightly/html/vtkCellType_8h_source.html

Arguments

Type IntentOptional Attributes Name
class(equilibrium_t), intent(inout) :: equi

Mesh

type(mesh_cart_t), intent(in) :: mesh

Mesh

real(kind=FP), intent(in) :: phi

Toroidal position at which center 3D mesh is located

real(kind=FP), intent(in) :: dphi_bwd

Toroidal distance in negative phi direction for which 3D aligned mesh is built

real(kind=FP), intent(in) :: dphi_fwd

Toroidal distance in positive phi direction for which 3D aligned mesh is built

type(vtk_file), intent(inout), optional :: vtk2d

VTK file for 2d vtk mesh (inplane)

type(vtk_file), intent(inout), optional :: vtk3d

VTK file for 3d vtk mesh

logical, intent(in), optional :: quadratic_hex

Indicates if 3d mesh is based on standard hexahedrons or quadratic hexahedrons (default)

integer, intent(in), optional :: dbgout

Debug output level