orog_mask_tools 1.14.0
Loading...
Searching...
No Matches
gsl_oro_data.f90
Go to the documentation of this file.
1
30
37
38use omp_lib
39
40use gsl_oro_data_sm_scale, only: calc_gsl_oro_data_sm_scale
41use gsl_oro_data_lg_scale, only: calc_gsl_oro_data_lg_scale
42
43implicit none
44
45character(len=2) :: tile_num ! tile number entered by user
46character(len=7) :: res_indx ! grid-resolution index, e.g., 96, 192, 384, 768,
47 ! etc. entered by user
48character(len=4) :: halo ! halo value entered by user (for input grid data)
49
50logical :: duplicate_oro_data_file ! flag for whether oro_data_ls file is a duplicate
51 ! of oro_data_ss due to minimum grid size being less than 7.5km
52
53integer :: tid, nthreads
54
55! Read in FV3GFS grid info
56print *
57print *, "Enter tile number:"
58read (5,*) tile_num
59print *
60print *, "Enter grid-resolution index:"
61read (5,*) res_indx
62print *
63print *, "Enter halo number (-999 for no halo):"
64read (5,*) halo
65print *
66print *, "Creating tile oro_data for tile number: ", tile_num
67print *, "Grid resolution = ", res_indx
68print *, "Halo = ", halo
69print *
70
71!$OMP PARALLEL PRIVATE(TID)
72 tid = omp_get_thread_num()
73 if (tid==0) then
74 nthreads = omp_get_num_threads()
75 print*,'Number of threads = ', nthreads
76 endif
77!$OMP END PARALLEL
78
79call calc_gsl_oro_data_sm_scale(tile_num,res_indx,halo,duplicate_oro_data_file)
80
81print *, "duplicate_oro_data_file =", duplicate_oro_data_file
82print *
83
84if ( .not.duplicate_oro_data_file ) then
85 call calc_gsl_oro_data_lg_scale(tile_num,res_indx,halo)
86end if
87
88
89print *
90print *, "End program gsl_oro_data"
91print *
92
93
94end program gsl_oro_data
program gsl_oro_data
Brief description of program: Creates orographic (oro_data) files needed by the GSL drag suite physic...