Skip to content
Snippets Groups Projects
Select Git revision
  • 02055510025f9bc5e40a56d0fbe56372f1e87cc9
  • master default
  • bing_issues#190_tf2
  • bing_tf2_convert
  • bing_issue#189_train_modular
  • simon_#172_integrate_weatherbench
  • develop
  • bing_issue#188_restructure_ambs
  • yan_issue#100_extract_prcp_data
  • bing_issue#170_data_preprocess_training_tf1
  • Gong2022_temperature_forecasts
  • bing_issue#186_clean_GMD1_tag
  • yan_issue#179_integrate_GZAWS_data_onfly
  • bing_issue#178_runscript_bug_postprocess
  • michael_issue#187_bugfix_setup_runscript_template
  • bing_issue#180_bugs_postprpocess_meta_postprocess
  • yan_issue#177_repo_for_CLGAN_gmd
  • bing_issue#176_integrate_weather_bench
  • michael_issue#181_eval_era5_forecasts
  • michael_issue#182_eval_subdomain
  • michael_issue#119_warmup_Horovod
  • bing_issue#160_test_zam347
  • ambs_v1
  • ambs_gmd_nowcasting_v1.0
  • GMD1
  • modular_booster_20210203
  • new_structure_20201004_v1.0
  • old_structure_20200930
28 results

DataPreprocess.sh

Blame
  • vtk_export.f90 1.65 KiB
    module vtk_export
      implicit none
    
      ! VTK export
      !
      ! This module stores the volumes Q first variable 
      ! as VTK polydata
      !
      
    contains
      subroutine save_vtk(Q, x, y, l, m, n, fname, title)
        implicit none
        integer, intent(in) :: l, m, n
        double precision, intent(in), dimension(l, m, n) :: Q
        double precision, intent(in), dimension(n) :: x
        double precision, intent(in), dimension(m) :: y
        character, intent(in) :: fname*(*)
        character, optional :: title*(*)
        integer i,j
    
        open(1, file=fname)
    
        !
        ! Write vtk Datafile header
        !
        write(1,fmt='(A)') '# vtk DataFile Version 2.0'
         if(present(title)) then
           write(1,fmt='(A)') title
        else
           write(1,fmt='(A)') 'VTK'
        end if  
        write(1,fmt='(A)') 'ASCII'
        write(1,fmt='(A)') 'DATASET POLYDATA'
        write(1,*)
        
        !
        ! Store water height as polydata
        !
         write(1,fmt='(A,I8,A)') 'POINTS', m*n,' double'
         do j=1,n
            do i=1,m
               write(1,fmt='(F7.5,F15.6,F17.12)') x(i), y(j), Q(1,i,j)
            end do
         end do
         write(1,*)
         
         write(1,fmt='(A,I12,I12,I12)') 'VERTICES',n,n*(m+1)
         do j=1,n
            write(1,fmt='(I12)', advance='no') m
            do i=0,m-1
               write(1,fmt='(I12)', advance='no') i+(j-1)*(m)
            end do
            write(1,*)
         end do
    
         !
         ! Store lookup table
         !
         write(1,fmt='(A,I12)') 'POINT_DATA',m*n
         write(1,fmt='(A)') 'SCALARS height double 1'
         write(1,fmt='(A)') 'LOOKUP_TABLE default'
         do j=1,n
            do i=1,m
               write(1,fmt='(F15.12)') Q(1,i,j)
            end do
         end do
         write(1,*)
         close(1)
         
       end subroutine save_vtk
    end module vtk_export