Changeset 11993 for NEMO/trunk/src/OCE/IOM
- Timestamp:
- 2019-11-28T11:20:53+01:00 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
NEMO/trunk/src/OCE/IOM/iom.F90
r11989 r11993 56 56 LOGICAL, PUBLIC, PARAMETER :: lk_iomput = .FALSE. !: iom_put flag 57 57 #endif 58 PUBLIC iom_init, iom_swap, iom_open, iom_close, iom_setkt, iom_varid, iom_get , iom_get_var58 PUBLIC iom_init, iom_swap, iom_open, iom_close, iom_setkt, iom_varid, iom_get 59 59 PUBLIC iom_chkatt, iom_getatt, iom_putatt, iom_getszuld, iom_rstput, iom_delay_rst, iom_put 60 60 PUBLIC iom_use, iom_context_finalize, iom_miss_val … … 62 62 PRIVATE iom_rp0d, iom_rp1d, iom_rp2d, iom_rp3d 63 63 PRIVATE iom_g0d, iom_g1d, iom_g2d, iom_g3d, iom_get_123d 64 PRIVATE iom_p1d, iom_p2d, iom_p3d , iom_p4d64 PRIVATE iom_p1d, iom_p2d, iom_p3d 65 65 #if defined key_iomput 66 66 PRIVATE iom_set_domain_attr, iom_set_axis_attr, iom_set_field_attr, iom_set_file_attr, iom_get_file_attr, iom_set_grid_attr … … 83 83 END INTERFACE 84 84 INTERFACE iom_put 85 MODULE PROCEDURE iom_p0d, iom_p1d, iom_p2d, iom_p3d , iom_p4d85 MODULE PROCEDURE iom_p0d, iom_p1d, iom_p2d, iom_p3d 86 86 END INTERFACE iom_put 87 87 … … 108 108 TYPE(xios_date) :: start_date 109 109 CHARACTER(len=lc) :: clname 110 INTEGER :: irefyear, irefmonth, irefday111 110 INTEGER :: ji, jkmin 112 111 LOGICAL :: llrst_context ! is context related to restart … … 140 139 141 140 ! Calendar type is now defined in xml file 142 IF (.NOT.(xios_getvar('ref_year' ,irefyear ))) irefyear = 1900143 IF (.NOT.(xios_getvar('ref_month',irefmonth))) irefmonth = 01144 IF (.NOT.(xios_getvar('ref_day' ,irefday ))) irefday = 01145 146 141 SELECT CASE ( nleapy ) ! Choose calendar for IOIPSL 147 CASE ( 1) ; CALL xios_define_calendar( TYPE = "Gregorian", time_origin = xios_date( irefyear,irefmonth,irefday,00,00,00), &142 CASE ( 1) ; CALL xios_define_calendar( TYPE = "Gregorian", time_origin = xios_date(1900,01,01,00,00,00), & 148 143 & start_date = xios_date(nyear,nmonth,nday,0,0,0) ) 149 CASE ( 0) ; CALL xios_define_calendar( TYPE = "NoLeap" , time_origin = xios_date( irefyear,irefmonth,irefday,00,00,00), &144 CASE ( 0) ; CALL xios_define_calendar( TYPE = "NoLeap" , time_origin = xios_date(1900,01,01,00,00,00), & 150 145 & start_date = xios_date(nyear,nmonth,nday,0,0,0) ) 151 CASE (30) ; CALL xios_define_calendar( TYPE = "D360" , time_origin = xios_date( irefyear,irefmonth,irefday,00,00,00), &146 CASE (30) ; CALL xios_define_calendar( TYPE = "D360" , time_origin = xios_date(1900,01,01,00,00,00), & 152 147 & start_date = xios_date(nyear,nmonth,nday,0,0,0) ) 153 148 END SELECT … … 228 223 CALL iom_set_axis_attr( "icbcla", class_num ) 229 224 CALL iom_set_axis_attr( "iax_20C", (/ REAL(20,wp) /) ) ! strange syntaxe and idea... 230 CALL iom_set_axis_attr( "iax_26C", (/ REAL(26,wp) /) ) ! strange syntaxe and idea...231 225 CALL iom_set_axis_attr( "iax_28C", (/ REAL(28,wp) /) ) ! strange syntaxe and idea... 232 CALL iom_set_axis_attr( "basin" , (/ (REAL(ji,wp), ji=1,5) /) )233 226 ENDIF 234 227 ! … … 1347 1340 END SUBROUTINE iom_get_123d 1348 1341 1349 SUBROUTINE iom_get_var( cdname, z2d)1350 CHARACTER(LEN=*), INTENT(in ) :: cdname1351 REAL(wp), DIMENSION(jpi,jpj) :: z2d1352 #if defined key_iomput1353 IF( xios_field_is_active( cdname, at_current_timestep_arg = .TRUE. ) ) THEN1354 z2d(:,:) = 0._wp1355 CALL xios_recv_field( cdname, z2d)1356 ENDIF1357 #else1358 IF( .FALSE. ) WRITE(numout,*) cdname, z2d ! useless test to avoid compilation warnings1359 #endif1360 END SUBROUTINE iom_get_var1361 1362 1342 1363 1343 FUNCTION iom_getszuld ( kiomid ) … … 1729 1709 END SUBROUTINE iom_p3d 1730 1710 1731 SUBROUTINE iom_p4d( cdname, pfield4d )1732 CHARACTER(LEN=*) , INTENT(in) :: cdname1733 REAL(wp), DIMENSION(:,:,:,:), INTENT(in) :: pfield4d1734 #if defined key_iomput1735 CALL xios_send_field(cdname, pfield4d)1736 #else1737 IF( .FALSE. ) WRITE(numout,*) cdname, pfield4d ! useless test to avoid compilation warnings1738 #endif1739 END SUBROUTINE iom_p4d1740 1741 1742 1711 #if defined key_iomput 1743 1712 !!---------------------------------------------------------------------- … … 2082 2051 ALLOCATE( zlon(ni*nj) ) ; zlon(:) = 0._wp 2083 2052 ! 2084 !CALL dom_ngb( -168.53, 65.03, ix, iy, 'T' ) ! i-line that passes through Bering Strait: Reference latitude (used in plots)2085 CALL dom_ngb( 180., 90., ix, iy, 'T' ) ! i-line that passes near the North Pole : Reference latitude (used in plots)2053 CALL dom_ngb( -168.53, 65.03, ix, iy, 'T' ) ! i-line that passes through Bering Strait: Reference latitude (used in plots) 2054 ! CALL dom_ngb( 180., 90., ix, iy, 'T' ) ! i-line that passes near the North Pole : Reference latitude (used in plots) 2086 2055 CALL iom_set_domain_attr("gznl", ni_glo=jpiglo, nj_glo=jpjglo, ibegin=nimpp+nldi-2, jbegin=njmpp+nldj-2, ni=ni, nj=nj) 2087 2056 CALL iom_set_domain_attr("gznl", data_dim=2, data_ibegin = 1-nldi, data_ni = jpi, data_jbegin = 1-nldj, data_nj = jpj) 2088 2057 CALL iom_set_domain_attr("gznl", lonvalue = zlon, & 2089 2058 & latvalue = RESHAPE(plat(nldi:nlei, nldj:nlej),(/ ni*nj /))) 2090 CALL iom_set_zoom_domain_attr("ptr", ibegin=ix-1, jbegin=0, ni=1, nj=jpjglo) 2059 CALL iom_set_zoom_domain_attr("znl_T", ibegin=ix-1, jbegin=0, ni=1, nj=jpjglo) 2060 CALL iom_set_zoom_domain_attr("znl_W", ibegin=ix-1, jbegin=0, ni=1, nj=jpjglo) 2091 2061 ! 2092 2062 CALL iom_update_file_name('ptr')
Note: See TracChangeset
for help on using the changeset viewer.