7
7
! ! model grid.
8
8
! !
9
9
! ! @param[in] localpet this mpi task
10
- ! ! @param[in] method interpolation method.defined where mask=1
11
10
! ! @param[in] input_file filename of input source data.
12
11
! ! @author George Gayno @date 2018
13
- subroutine interp2 (localpet , method , input_file )
12
+ subroutine interp2 (localpet , input_file )
14
13
15
14
use esmf
16
15
use netcdf
@@ -24,11 +23,10 @@ subroutine interp2(localpet, method, input_file)
24
23
character (len=* ), intent (in ) :: input_file
25
24
26
25
integer :: rc, localpet
27
- integer :: i, j, ij, tile, n, ncid, status
28
- integer :: l( 1 ), u( 1 ), t
26
+ integer :: i, j, tile, n, ncid, status
27
+ integer :: t
29
28
integer :: clb_mdl(3 ), cub_mdl(3 )
30
29
integer :: varid, record
31
- integer :: tile_num, pt_loc_this_tile
32
30
integer :: isrctermprocessing
33
31
integer :: category, num_categories
34
32
@@ -44,7 +42,6 @@ subroutine interp2(localpet, method, input_file)
44
42
real (esmf_kind_r4 ), allocatable :: sum_mdl_one_tile(:,:)
45
43
real (esmf_kind_r4 ), allocatable :: lon_mdl_one_tile(:,:)
46
44
47
- ! type(esmf_regridmethod_flag),intent(in) :: method
48
45
type (esmf_regridmethod_flag) :: method
49
46
type (esmf_field) :: data_field_src
50
47
type (esmf_field) :: data_field_mdl2
@@ -151,13 +148,7 @@ subroutine interp2(localpet, method, input_file)
151
148
if (record == 1 ) then
152
149
153
150
method = ESMF_REGRIDMETHOD_CONSERVE
154
-
155
- if (method == ESMF_REGRIDMETHOD_BILINEAR) then
156
- pole = ESMF_POLEMETHOD_ALLAVG
157
- else
158
- pole = ESMF_POLEMETHOD_NONE
159
- endif
160
-
151
+ pole = ESMF_POLEMETHOD_NONE
161
152
162
153
print * ," - CALL FieldRegridStore."
163
154
nullify(unmapped_ptr)
@@ -202,32 +193,6 @@ subroutine interp2(localpet, method, input_file)
202
193
! will be replaced in routine "search".
203
194
!- ----------------------------------------------------------------------
204
195
205
- l = lbound (unmapped_ptr)
206
- u = ubound (unmapped_ptr)
207
- ! do ij = l(1), u(1)
208
-
209
- ! tile_num = ((unmapped_ptr(ij)-1) / (i_mdl*j_mdl)) ! tile number minus 1
210
- ! pt_loc_this_tile = unmapped_ptr(ij) - (tile_num * i_mdl * j_mdl)
211
- ! "ij" location of point within tile.
212
-
213
- ! j = (pt_loc_this_tile - 1) / i_mdl + 1
214
- ! i = mod(pt_loc_this_tile, i_mdl)
215
- ! if (i==0) i = i_mdl
216
- ! data_mdl_ptr(i,j,:) = -9999.9
217
-
218
- ! enddo
219
-
220
- ! These fields are adjusted at landice.
221
-
222
- ! select case (trim(field_names(n)))
223
- ! case ('substrate_temperature','vegetation_greenness','leaf_area_index','slope_type','soil_type')
224
- ! if (localpet == 0) then
225
- ! allocate(vegt_mdl_one_tile(i_mdl,j_mdl))
226
- ! else
227
- ! allocate(vegt_mdl_one_tile(0,0))
228
- ! endif
229
- ! end select
230
-
231
196
OUTPUT_LOOP : do tile = 1 , num_tiles
232
197
233
198
print * ," - CALL FieldGather FOR MODEL LATITUDE."
0 commit comments