VTK_VAR_XML_VECT_R8 Function

private function VTK_VAR_XML_VECT_R8(NC_NN, varname, varX, varY, varZ) result(E_IO)

Function for saving vectorial variable (R8P).

Arguments

Type IntentOptional AttributesName
integer(kind=I4P), intent(in) :: NC_NN
character(len=*), intent(in) :: varname
real(kind=R8P), intent(in) :: varX(1:NC_NN)
real(kind=R8P), intent(in) :: varY(1:NC_NN)
real(kind=R8P), intent(in) :: varZ(1:NC_NN)

Return Value integer(kind=I4P)


Calls

proc~~vtk_var_xml_vect_r8~~CallsGraph proc~vtk_var_xml_vect_r8 VTK_VAR_XML_VECT_R8 interface~str str proc~vtk_var_xml_vect_r8->interface~str proc~str_i8p str_I8P interface~str->proc~str_i8p proc~str_r8p str_R8P interface~str->proc~str_r8p proc~str_i1p str_I1P interface~str->proc~str_i1p proc~str_i4p str_I4P interface~str->proc~str_i4p proc~str_r16p str_R16P interface~str->proc~str_r16p proc~str_i2p str_I2P interface~str->proc~str_i2p proc~str_r4p str_R4P interface~str->proc~str_r4p

Called by

proc~~vtk_var_xml_vect_r8~~CalledByGraph proc~vtk_var_xml_vect_r8 VTK_VAR_XML_VECT_R8 interface~vtk_var_xml VTK_VAR_XML interface~vtk_var_xml->proc~vtk_var_xml_vect_r8

Contents

Source Code


Source Code

  function VTK_VAR_XML_VECT_R8(NC_NN,varname,varX,varY,varZ) result(E_IO)
  !---------------------------------------------------------------------------------------------------------------------------------
  !! Function for saving vectorial variable (R8P).
  !---------------------------------------------------------------------------------------------------------------------------------

  !---------------------------------------------------------------------------------------------------------------------------------
  implicit none
  integer(I4P), intent(IN):: NC_NN         ! number of cells or nodes
  character(*), intent(IN):: varname       ! variable name
  real(R8P),    intent(IN):: varX(1:NC_NN) ! x component
  real(R8P),    intent(IN):: varY(1:NC_NN) ! y component
  real(R8P),    intent(IN):: varZ(1:NC_NN) ! z component
  integer(I4P)::             E_IO          ! Input/Output inquiring flag: $0$ if IO is done, $> 0$ if IO is not done
  integer(I4P)::             n1            ! counter
  !---------------------------------------------------------------------------------------------------------------------------------

  !---------------------------------------------------------------------------------------------------------------------------------
  select case(f_out)
  case(f_out_ascii)
    write(unit=Unit_VTK,fmt='(A)',iostat=E_IO)repeat(' ',indent)//                 &
                                              '<DataArray type="Float64" Name="'// &
                                              trim(varname)//                      &
                                              '" NumberOfComponents="3" format="ascii">'
    write(unit=Unit_VTK,fmt='(3'//FR8P//')',iostat=E_IO)(varX(n1),varY(n1),varZ(n1),n1=1,NC_NN)
    write(unit=Unit_VTK,fmt='(A)',iostat=E_IO)repeat(' ',indent)//'</DataArray>'
  case(f_out_binary)
    write(unit=Unit_VTK,iostat=E_IO)repeat(' ',indent)//                                   &
                                    '<DataArray type="Float64" Name="'//                   &
                                    trim(varname)//                                        &
                                    '" NumberOfComponents="3" format="appended" offset="', &
                                    trim(str(.true.,ioffset)),                             &
                                    '">'//                                                 &
                                    end_rec
    N_Byte  = 3*NC_NN*sizeof(Tipo_R8)
    ioffset = ioffset + sizeof(Tipo_I4) + N_Byte
    write(unit=Unit_VTK_Append,iostat=E_IO)N_Byte,'R8',3*NC_NN
    write(unit=Unit_VTK_Append,iostat=E_IO)(varX(n1),varY(n1),varZ(n1),n1=1,NC_NN)
    write(unit=Unit_VTK,iostat=E_IO)repeat(' ',indent)//'</DataArray>'//end_rec
  endselect
  return
  !---------------------------------------------------------------------------------------------------------------------------------
  endfunction VTK_VAR_XML_VECT_R8