hvs_output_write Subroutine

public subroutine hvs_output_write(out_file, varsys, mesh, subtree)

Arguments

Type IntentOptional Attributes Name
type(hvs_output_file_type), intent(inout) :: out_file
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_subTree_type), intent(in), optional :: subtree

Optional restriction of the elements to output.


Calls

proc~~hvs_output_write~~CallsGraph proc~hvs_output_write hvs_output_write proc~hvs_ascii_dump_elem_data hvs_ascii_dump_elem_data proc~hvs_output_write->proc~hvs_ascii_dump_elem_data proc~hvs_ascii_dump_point_data hvs_ascii_dump_point_data proc~hvs_output_write->proc~hvs_ascii_dump_point_data proc~hvs_asciispatial_dump_elem_data hvs_asciiSpatial_dump_elem_data proc~hvs_output_write->proc~hvs_asciispatial_dump_elem_data proc~hvs_asciispatial_dump_point_data hvs_asciiSpatial_dump_point_data proc~hvs_output_write->proc~hvs_asciispatial_dump_point_data proc~hvs_vtk_dump_data hvs_vtk_dump_data proc~hvs_output_write->proc~hvs_vtk_dump_data proc~tem_restart_dump_data tem_restart_dump_data proc~hvs_output_write->proc~tem_restart_dump_data proc~tem_get_element_chunk tem_get_element_chunk proc~hvs_ascii_dump_elem_data->proc~tem_get_element_chunk proc~tem_reduction_spatial_append tem_reduction_spatial_append proc~hvs_ascii_dump_elem_data->proc~tem_reduction_spatial_append proc~tem_reduction_spatial_close tem_reduction_spatial_close proc~hvs_ascii_dump_elem_data->proc~tem_reduction_spatial_close proc~tem_reduction_spatial_open tem_reduction_spatial_open proc~hvs_ascii_dump_elem_data->proc~tem_reduction_spatial_open proc~tem_reduction_spatial_tochunk tem_reduction_spatial_toChunk proc~hvs_ascii_dump_elem_data->proc~tem_reduction_spatial_tochunk proc~tem_baryofid tem_BaryOfId proc~hvs_ascii_dump_point_data->proc~tem_baryofid proc~tem_get_point_chunk tem_get_point_chunk proc~hvs_ascii_dump_point_data->proc~tem_get_point_chunk proc~hvs_ascii_dump_point_data->proc~tem_reduction_spatial_append proc~hvs_ascii_dump_point_data->proc~tem_reduction_spatial_close proc~hvs_ascii_dump_point_data->proc~tem_reduction_spatial_open proc~hvs_ascii_dump_point_data->proc~tem_reduction_spatial_tochunk proc~hvs_asciispatial_dump_elem_data->proc~tem_get_element_chunk proc~hvs_asciispatial_dump_point_data->proc~tem_baryofid proc~hvs_asciispatial_dump_point_data->proc~tem_get_point_chunk interface~convert_to_base64 convert_to_Base64 proc~hvs_vtk_dump_data->interface~convert_to_base64 mpi_file_write_all mpi_file_write_all proc~tem_restart_dump_data->mpi_file_write_all proc~check_mpi_error check_mpi_error proc~tem_restart_dump_data->proc~check_mpi_error proc~tem_restart_dump_data->proc~tem_get_element_chunk proc~char_to_base64 char_to_base64 interface~convert_to_base64->proc~char_to_base64 proc~int32_to_base64 int32_to_base64 interface~convert_to_base64->proc~int32_to_base64 proc~int64_to_base64 int64_to_base64 interface~convert_to_base64->proc~int64_to_base64 proc~int8_to_base64 int8_to_base64 interface~convert_to_base64->proc~int8_to_base64 proc~real32_to_base64 real32_to_base64 interface~convert_to_base64->proc~real32_to_base64 proc~real64_to_base64 real64_to_base64 interface~convert_to_base64->proc~real64_to_base64 mpi_error_string mpi_error_string proc~check_mpi_error->mpi_error_string proc~tem_abort tem_abort proc~check_mpi_error->proc~tem_abort proc~tem_coordofid tem_CoordOfId proc~tem_baryofid->proc~tem_coordofid proc~tem_elemsizelevel tem_ElemSizeLevel proc~tem_baryofid->proc~tem_elemsizelevel proc~tem_elemsize tem_ElemSize proc~tem_reduction_spatial_append->proc~tem_elemsize proc~tem_levelof tem_LevelOf proc~tem_reduction_spatial_append->proc~tem_levelof mpi_reduce mpi_reduce proc~tem_reduction_spatial_close->mpi_reduce

Called by

proc~~hvs_output_write~~CalledByGraph proc~hvs_output_write hvs_output_write proc~tem_tracker tem_tracker proc~tem_tracker->proc~hvs_output_write

Source Code

  subroutine hvs_output_write(out_file, varsys, mesh, subtree)
    ! --------------------------------------------------------------------------!
    type(hvs_output_file_type), intent(inout) :: out_file

    !> Description of the available variable system to get the given varnames
    !! from.
    type(tem_varSys_type), intent(in) :: varsys

    !> Mesh to write the data on.
    type(treelmesh_type), intent(in) :: mesh

    !> Optional restriction of the elements to output.
    type(tem_subtree_type), optional, intent(in) :: subtree
    ! --------------------------------------------------------------------------!
    integer :: iVar
    ! --------------------------------------------------------------------------!

    select case(out_file%vis_kind)
    case(hvs_AsciiTransient)
      if (out_file%useGetPoint) then
        ! Call the get point routine and dump the data at the points
        call hvs_ascii_dump_point_data(                                      &
        &                       ascii           = out_file%ascii,            &
        &                       outProc         = out_file%proc,             &
        &                       varPos          = out_file%varPos,           &
        &                       varSys          = varSys,                    &
        &                       mesh            = mesh,                      &
        &                       time            = out_file%time,             &
        &                       subTree         = subtree )
        ! &                       transientReduce = out_file%transientReduce   )
      else
        ! call the get_element routine and dump all dofs
        call hvs_ascii_dump_elem_data(                                        &
          &                     ascii           = out_file%ascii,             &
          &                     outProc         = out_file%proc,              &
          &                     varPos          = out_file%varPos,            &
          &                     varSys          = varSys,                     &
          &                     mesh            = mesh,                       &
          &                     time            = out_file%time,              &
          &                     nDofs           = out_file%nDofs,             &
          &                     subTree         = subTree )
          ! &                     transientReduce = out_file%transientReduce    )

      endif
    case(hvs_AsciiSpatial)
      if (out_file%useGetPoint) then
        call hvs_asciiSpatial_dump_point_data(                            &
          &                   asciiSpatial    = out_file%asciiSpatial,    &
          &                   varPos          = out_file%varPos,          &
          &                   varSys          = varSys,                   &
          &                   mesh            = mesh,                     &
          &                   time            = out_file%time,            &
          &                   subTree         = subTree,                  &
          ! &                   transientReduce = out_file%transientReduce, &
          &                   bary            = out_file%bary             )
      else
        call hvs_asciiSpatial_dump_elem_data(                             &
          &                   asciiSpatial    = out_file%asciiSpatial,    &
          &                   varPos          = out_file%varPos,          &
          &                   varSys          = varSys,                   &
          &                   mesh            = mesh,                     &
          &                   time            = out_file%time,            &
          &                   nDofs           = out_file%nDofs,           &
          &                   subTree         = subTree,                  &
          ! &                   transientReduce = out_file%transientReduce, &
          &                   bary            = out_file%bary             )
      end if
    case(hvs_Internal)
       call tem_restart_dump_data( restart = out_file%restart,        &
         &                         varSys  = varSys,                  &
         &                         tree    = mesh,                    &
         &                         time    = out_file%time,           &
         &                         subTree = subTree )
         ! &                         transientReduce = out_file%transientReduce )
    case(hvs_VTK)
      do iVar=1,out_file%nVars
        call hvs_vtk_dump_data( vtk_file = out_file%vtk,          &
          &                     varpos   = out_file%varpos(iVar), &
          &                     varSys   = varSys,                &
          &                     mesh     = mesh,                  &
          &                     subtree  = subtree,               &
          &                     time     = out_file%time          )
      end do
    end select

  end subroutine hvs_output_write