@@ -27,7 +27,6 @@ subroutine interp2(localpet, method, input_file)
27
27
integer :: i, j, ij, tile, n, ncid, status
28
28
integer :: l(1 ), u(1 ), t
29
29
integer :: clb_mdl(3 ), cub_mdl(3 )
30
- integer :: clb_src(3 ), cub_src(3 )
31
30
integer :: varid, record
32
31
integer :: tile_num, pt_loc_this_tile
33
32
integer :: isrctermprocessing
@@ -37,7 +36,6 @@ subroutine interp2(localpet, method, input_file)
37
36
integer (esmf_kind_i4), pointer :: unmapped_ptr(:)
38
37
39
38
real (esmf_kind_r4 ), pointer :: data_mdl_ptr(:,:,:)
40
- real (esmf_kind_r4 ), pointer :: data_src_ptr(:,:,:)
41
39
real (esmf_kind_r4 ), allocatable :: data_src_global(:,:)
42
40
real (esmf_kind_r4 ), allocatable :: data_src_global2(:,:,:)
43
41
real (esmf_kind_r4 ), allocatable :: data_mdl_one_tile(:,:,:)
@@ -68,18 +66,6 @@ subroutine interp2(localpet, method, input_file)
68
66
if (ESMF_logFoundError(rcToCheck= rc,msg= ESMF_LOGERR_PASSTHRU,line= __LINE__,file= __FILE__)) &
69
67
call error_handler(" IN FieldCreate" , rc)
70
68
71
- print * ," - CALL FieldGet FOR SOURCE GRID DATA."
72
- nullify(data_src_ptr)
73
- call ESMF_FieldGet(data_field_src, &
74
- farrayPtr= data_src_ptr, &
75
- computationalLBound= clb_src, &
76
- computationalUBound= cub_src, &
77
- rc= rc)
78
- if (ESMF_logFoundError(rcToCheck= rc,msg= ESMF_LOGERR_PASSTHRU,line= __LINE__,file= __FILE__)) &
79
- call error_handler(" IN FieldGet" , rc)
80
-
81
- print * ,' got here ' ,localpet,clb_src,cub_src
82
-
83
69
print * ," - CALL FieldCreate FOR model GRID veg DATA."
84
70
data_field_mdl2 = ESMF_FieldCreate(grid_mdl, &
85
71
typekind= ESMF_TYPEKIND_R4 , &
@@ -321,90 +307,3 @@ subroutine interp2(localpet, method, input_file)
321
307
call ESMF_FieldDestroy(data_field_src, rc= rc)
322
308
323
309
end subroutine interp2
324
-
325
- ! > Ensure consistent fields at land ice points.
326
- ! ! Land ice is vegetation type 15 (variable landice).
327
- ! ! output is Model field.
328
- ! !
329
- ! ! @param[in] field Model field before adjustments for land ice.
330
- ! ! @param[in] vegt Vegetation type on the model tile.
331
- ! ! @param[inout] idim i dimension of model tile.
332
- ! ! @param[inout] jdim j dimension of model tile.
333
- ! ! @param[in] field_ch Field name.
334
- ! ! @author George Gayno NCEP/EMC
335
- subroutine adjust_for_landice2 (field , vegt , idim , jdim , field_ch )
336
-
337
- use esmf
338
- use mpi
339
-
340
- implicit none
341
-
342
- character (len=* ), intent (in ) :: field_ch
343
-
344
- integer , intent (in ) :: idim, jdim
345
-
346
- real (esmf_kind_i4), intent (in ) :: vegt(idim,jdim)
347
- real (esmf_kind_r4 ), intent (inout ) :: field(idim,jdim)
348
-
349
- integer , parameter :: landice= 15
350
-
351
- integer :: i, j, ierr
352
-
353
- real :: landice_value
354
-
355
- select case (field_ch)
356
- case (' substrate_temperature' ) ! soil substrate temp
357
- landice_value = 273.15
358
- do j = 1 , jdim
359
- do i = 1 , idim
360
- if (nint (vegt(i,j)) == landice) then
361
- field(i,j) = min (field(i,j), landice_value)
362
- endif
363
- enddo
364
- enddo
365
- case (' vegetation_greenness' ) ! vegetation greenness
366
- landice_value = 0.01 ! 1.0% is bare ground
367
- do j = 1 , jdim
368
- do i = 1 , idim
369
- if (nint (vegt(i,j)) == landice) then
370
- field(i,j) = landice_value
371
- endif
372
- enddo
373
- enddo
374
- case (' leaf_area_index' ) ! leaf area index
375
- landice_value = 0.0 ! bare ground
376
- do j = 1 , jdim
377
- do i = 1 , idim
378
- if (nint (vegt(i,j)) == landice) then
379
- field(i,j) = landice_value
380
- endif
381
- enddo
382
- enddo
383
- case (' slope_type' ) ! slope type
384
- landice_value = 9.0
385
- do j = 1 , jdim
386
- do i = 1 , idim
387
- if (nint (vegt(i,j)) == landice) then
388
- field(i,j) = landice_value
389
- else
390
- if (nint (field(i,j)) == nint (landice_value)) field(i,j) = 2.0
391
- endif
392
- enddo
393
- enddo
394
- case (' soil_type' ) ! soil type
395
- landice_value = 16.0
396
- do j = 1 , jdim
397
- do i = 1 , idim
398
- if (nint (vegt(i,j)) == landice) then
399
- field(i,j) = landice_value
400
- else
401
- if (nint (field(i,j)) == nint (landice_value)) field(i,j) = 6.0
402
- endif
403
- enddo
404
- enddo
405
- case default
406
- print * ,' - FATAL ERROR IN ROUTINE ADJUST_FOR_LANDICE. UNIDENTIFIED FIELD : ' , field_ch
407
- call mpi_abort(mpi_comm_world, 57 , ierr)
408
- end select
409
-
410
- end subroutine adjust_for_landice2
0 commit comments