From ffa3879b22666b6cb37e8d17acb0d8e677257b56 Mon Sep 17 00:00:00 2001 From: David Bailey Date: Wed, 6 May 2015 10:58:44 -0600 Subject: [PATCH 1/3] Add netcdf4p for tx0.1v2 resolutions. --- machines/config_pes.xml | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/machines/config_pes.xml b/machines/config_pes.xml index e5c5837d884..ab6563d0133 100644 --- a/machines/config_pes.xml +++ b/machines/config_pes.xml @@ -699,6 +699,7 @@ 8 1 24 32 1 0 480 1 32 + netcdf4p 3rcp @@ -709,6 +710,7 @@ 8 1 24 32 1 0 480 1 32 + netcdf4p 3rcp @@ -719,6 +721,7 @@ 32 1 0 480 1 32 480 1 32 + netcdf4p 3rcp @@ -729,6 +732,7 @@ 48 1 144 48 1 192 1024 1 0 + netcdf4p 3rcp @@ -739,6 +743,7 @@ 48 1 144 1024 1 0 48 1 192 + netcdf4p 3rcp @@ -749,6 +754,7 @@ 48 1 144 1024 1 0 1024 1 0 + netcdf4p 3rcp @@ -759,6 +765,7 @@ 1050 2 0 1050 2 0 1050 2 0 + netcdf4p 3rcp @@ -769,6 +776,7 @@ 960 2 0 960 2 0 960 2 0 + netcdf4p 3rcp @@ -1220,6 +1228,7 @@ 480 1 0 480 1 0 480 1 0 + netcdf4p 3rcp @@ -1230,6 +1239,7 @@ 1024 1 0 1024 1 0 1024 1 0 + netcdf4p 3rcp @@ -1240,6 +1250,7 @@ 432 1 0 480 1 0 1232 1 480 + netcdf4p 3rcp @@ -1250,6 +1261,7 @@ 432 1 0 1024 1 0 2356 1 1024 + netcdf4p 3rcp @@ -1260,6 +1272,7 @@ 432 1 0 1664 1 0 3476 1 1800 + netcdf4p 3rcp @@ -1334,6 +1347,7 @@ 2048 1 0 2048 1 0 4028 1 3960 + netcdf4p 1m @@ -1357,6 +1371,7 @@ 1800 1 0 2048 1 0 4028 1 3960 + netcdf4p 4rcmp @@ -1371,6 +1386,7 @@ 1600 1 0 1824 1 0 3600 1 3536 + netcdf4p 4rcmp @@ -1384,6 +1400,7 @@ 512 1 0 512 6 0 2048 1 2312 + netcdf4p 4rcmp @@ -1397,6 +1414,7 @@ 512 1 0 512 6 0 2048 1 2312 + netcdf4p 4rcmp @@ -1420,6 +1438,7 @@ $NTASKS_OCN 8 $NTASKS_ATM 1 $NTASKS_ATM $NTHRDS_ATM $ROOTPE_ATM 1 $NTHRDS_ATM $ROOTPE_ATM 1 + netcdf4p @@ -1429,6 +1448,7 @@ 512 1 0 1440 1 0 2048 1 1440 + netcdf4p 3rcm @@ -1449,6 +1469,7 @@ 512 1 0 14400 1 0 512 1 0 + netcdf4p 3rcm From 1ffac51928af955551f05bc1911d1c5e3a32d5f6 Mon Sep 17 00:00:00 2001 From: David Bailey Date: Thu, 25 Jun 2015 10:00:36 -0600 Subject: [PATCH 2/3] Resync branch cice5. --- machines/config_pes.xml | 20 -------------------- 1 file changed, 20 deletions(-) diff --git a/machines/config_pes.xml b/machines/config_pes.xml index c4f2a1a1fe4..e28e1dec94d 100644 --- a/machines/config_pes.xml +++ b/machines/config_pes.xml @@ -699,7 +699,6 @@ 8 1 24 32 1 0 480 1 32 - netcdf4p 3rcp @@ -710,7 +709,6 @@ 8 1 24 32 1 0 480 1 32 - netcdf4p 3rcp @@ -721,7 +719,6 @@ 32 1 0 480 1 32 480 1 32 - netcdf4p 3rcp @@ -732,7 +729,6 @@ 48 1 144 48 1 192 1024 1 0 - netcdf4p 3rcp @@ -743,7 +739,6 @@ 48 1 144 1024 1 0 48 1 192 - netcdf4p 3rcp @@ -754,7 +749,6 @@ 48 1 144 1024 1 0 1024 1 0 - netcdf4p 3rcp @@ -765,7 +759,6 @@ 48 2 144 960 2 0 960 2 0 - netcdf4p 3rcp @@ -1217,7 +1210,6 @@ 480 1 0 480 1 0 480 1 0 - netcdf4p 3rcp @@ -1228,7 +1220,6 @@ 1024 1 0 1024 1 0 1024 1 0 - netcdf4p 3rcp @@ -1239,7 +1230,6 @@ 432 1 0 480 1 0 1232 1 480 - netcdf4p 3rcp @@ -1250,7 +1240,6 @@ 432 1 0 1024 1 0 2356 1 1024 - netcdf4p 3rcp @@ -1261,7 +1250,6 @@ 432 1 0 1664 1 0 3476 1 1800 - netcdf4p 3rcp @@ -1336,7 +1324,6 @@ 2048 1 0 2048 1 0 4028 1 3960 - netcdf4p 1m @@ -1360,7 +1347,6 @@ 1800 1 0 2048 1 0 4028 1 3960 - netcdf4p 4rcmp @@ -1375,7 +1361,6 @@ 1600 1 0 1824 1 0 3600 1 3536 - netcdf4p 4rcmp @@ -1389,7 +1374,6 @@ 512 1 0 512 6 0 2048 1 2312 - netcdf4p 4rcmp @@ -1403,7 +1387,6 @@ 512 1 0 512 6 0 2048 1 2312 - netcdf4p 4rcmp @@ -1427,7 +1410,6 @@ $NTASKS_OCN 8 $NTASKS_ATM 1 $NTASKS_ATM $NTHRDS_ATM $ROOTPE_ATM 1 $NTHRDS_ATM $ROOTPE_ATM 1 - netcdf4p @@ -1437,7 +1419,6 @@ 512 1 0 1440 1 0 2048 1 1440 - netcdf4p 3rcm @@ -1458,7 +1439,6 @@ 512 1 0 14400 1 0 512 1 0 - netcdf4p 3rcm From 13c96faafe52b2e18941e51ced00be929c19112a Mon Sep 17 00:00:00 2001 From: David Bailey Date: Thu, 25 Jun 2015 11:12:25 -0600 Subject: [PATCH 3/3] Update diurnal changes. --- components/data_comps/docn/docn_comp_mod.F90 | 32 +++++++------- driver_cpl/driver/seq_flux_mct.F90 | 44 ++++++++++---------- 2 files changed, 38 insertions(+), 38 deletions(-) diff --git a/components/data_comps/docn/docn_comp_mod.F90 b/components/data_comps/docn/docn_comp_mod.F90 index 6ee917f6d00..71bfbe0490d 100644 --- a/components/data_comps/docn/docn_comp_mod.F90 +++ b/components/data_comps/docn/docn_comp_mod.F90 @@ -547,6 +547,8 @@ subroutine docn_comp_run( EClock, cdata, x2o, o2x) integer(IN) :: nflds_x2o type(seq_infodata_type), pointer :: infodata + real(R8), parameter :: swp = 0.67_R8*(exp((-1._R8*shr_const_zsrflyr) & + /1.0_R8)) + 0.33_R8*exp((-1._R8*shr_const_zsrflyr)/17.0_R8) character(*), parameter :: F00 = "('(docn_comp_run) ',8a)" character(*), parameter :: F04 = "('(docn_comp_run) ',2a,2i8,'s')" character(*), parameter :: subName = "(docn_comp_run) " @@ -570,7 +572,7 @@ subroutine docn_comp_run( EClock, cdata, x2o, o2x) call seq_timemgr_EClockGetData( EClock, curr_ymd=CurrentYMD, curr_tod=CurrentTOD) call seq_timemgr_EClockGetData( EClock, curr_yr=yy, curr_mon=mm, curr_day=dd) call seq_timemgr_EClockGetData( EClock, dtime=idt) - dt = idt * 1.0_r8 + dt = idt * 1.0_R8 write_restart = seq_timemgr_RestartAlarmIsOn(EClock) call t_stopf('docn_run1') @@ -608,13 +610,12 @@ subroutine docn_comp_run( EClock, cdata, x2o, o2x) do n = 1,lsize o2x%rAttr(kt ,n) = TkFrz o2x%rAttr(ks ,n) = ocnsalt - o2x%rAttr(ku ,n) = 0.0_r8 - o2x%rAttr(kv ,n) = 0.0_r8 - o2x%rAttr(kdhdx,n) = 0.0_r8 - o2x%rAttr(kdhdy,n) = 0.0_r8 - o2x%rAttr(kq ,n) = 0.0_r8 - o2x%rAttr(kswp ,n) = 0.67_R8*(exp((-1._R8*shr_const_zsrflyr)/1.0_R8)) + & - 0.33_R8*exp((-1._R8*shr_const_zsrflyr)/17.0_R8) + o2x%rAttr(ku ,n) = 0.0_R8 + o2x%rAttr(kv ,n) = 0.0_R8 + o2x%rAttr(kdhdx,n) = 0.0_R8 + o2x%rAttr(kdhdy,n) = 0.0_R8 + o2x%rAttr(kq ,n) = 0.0_R8 + o2x%rAttr(kswp ,n) = swp enddo !--- copy streams to o2x --- @@ -643,13 +644,12 @@ subroutine docn_comp_run( EClock, cdata, x2o, o2x) do n = 1,lsize o2x%rAttr(kt ,n) = o2x%rAttr(kt,n) + TkFrz o2x%rAttr(ks ,n) = ocnsalt - o2x%rAttr(ku ,n) = 0.0_r8 - o2x%rAttr(kv ,n) = 0.0_r8 - o2x%rAttr(kdhdx,n) = 0.0_r8 - o2x%rAttr(kdhdy,n) = 0.0_r8 - o2x%rAttr(kq ,n) = 0.0_r8 - o2x%rAttr(kswp ,n) = 0.67_R8*(exp((-1._R8*shr_const_zsrflyr)/1.0_R8)) + & - 0.33_R8*exp((-1._R8*shr_const_zsrflyr)/17.0_R8) + o2x%rAttr(ku ,n) = 0.0_R8 + o2x%rAttr(kv ,n) = 0.0_R8 + o2x%rAttr(kdhdx,n) = 0.0_R8 + o2x%rAttr(kdhdy,n) = 0.0_R8 + o2x%rAttr(kq ,n) = 0.0_R8 + o2x%rAttr(kswp ,n) = swp enddo case('SOM') @@ -663,7 +663,7 @@ subroutine docn_comp_run( EClock, cdata, x2o, o2x) somtp(n) = o2x%rAttr(kt,n) + TkFrz endif o2x%rAttr(kt,n) = somtp(n) - o2x%rAttr(kq,n) = 0.0_r8 + o2x%rAttr(kq,n) = 0.0_R8 enddo else ! firstcall do n = 1,lsize diff --git a/driver_cpl/driver/seq_flux_mct.F90 b/driver_cpl/driver/seq_flux_mct.F90 index d025e399884..104c5767898 100644 --- a/driver_cpl/driver/seq_flux_mct.F90 +++ b/driver_cpl/driver/seq_flux_mct.F90 @@ -139,26 +139,26 @@ module seq_flux_mct integer :: index_xao_So_ssq integer :: index_xao_So_duu10n integer :: index_xao_So_u10 - integer :: index_xao_So_fswpen ! NEW, Bill Large - integer :: index_xao_So_warm_diurn ! NEW, Bill Large - integer :: index_xao_So_salt_diurn ! NEW, Bill Large - integer :: index_xao_So_speed_diurn ! NEW, Bill Large - integer :: index_xao_So_regime_diurn ! NEW, Bill Large - integer :: index_xao_So_tskin_diurn ! NEW, Bill Large - integer :: index_xao_So_tskin_day_diurn ! NEW, Bill Large - integer :: index_xao_So_tskin_night_diurn ! NEW, Bill Large - integer :: index_xao_So_cskin_diurn ! NEW, Bill Large - integer :: index_xao_So_cskin_night_diurn ! NEW, Bill Large - integer :: index_xao_So_tbulk_diurn ! NEW, Bill Large - integer :: index_xao_So_warmmax_diurn ! NEW, Bill Large - integer :: index_xao_So_windmax_diurn ! NEW, Bill Large - integer :: index_xao_So_qsolavg_diurn ! NEW, Bill Large - integer :: index_xao_So_windavg_diurn ! NEW, Bill Large - integer :: index_xao_So_warmmaxinc_diurn ! NEW, Bill Large - integer :: index_xao_So_windmaxinc_diurn ! NEW, Bill Large - integer :: index_xao_So_qsolinc_diurn ! NEW, Bill Large - integer :: index_xao_So_windinc_diurn ! NEW, Bill Large - integer :: index_xao_So_ninc_diurn ! NEW, Bill Large + integer :: index_xao_So_fswpen + integer :: index_xao_So_warm_diurn + integer :: index_xao_So_salt_diurn + integer :: index_xao_So_speed_diurn + integer :: index_xao_So_regime_diurn + integer :: index_xao_So_tskin_diurn + integer :: index_xao_So_tskin_day_diurn + integer :: index_xao_So_tskin_night_diurn + integer :: index_xao_So_cskin_diurn + integer :: index_xao_So_cskin_night_diurn + integer :: index_xao_So_tbulk_diurn + integer :: index_xao_So_warmmax_diurn + integer :: index_xao_So_windmax_diurn + integer :: index_xao_So_qsolavg_diurn + integer :: index_xao_So_windavg_diurn + integer :: index_xao_So_warmmaxinc_diurn + integer :: index_xao_So_windmaxinc_diurn + integer :: index_xao_So_qsolinc_diurn + integer :: index_xao_So_windinc_diurn + integer :: index_xao_So_ninc_diurn character(len=16) :: fluxsetting = 'unknown' character(len=*),parameter :: fluxsetting_atmocn = 'atmocn' @@ -1303,19 +1303,19 @@ subroutine seq_flux_atmocn_mct(infodata, tod, dt, a2x, o2x, xao) warmMaxInc, windMaxInc, qSolInc, windInc, nInc, & tbulk, tskin, tskin_day, tskin_night, & cskin, cskin_night, tod, dt, & + duu10n,ustar, re , ssq) !missval should not be needed if flux calc !consistent with mrgx2a fraction !duu10n,ustar, re , ssq, missval = 0.0_r8 ) - duu10n,ustar, re , ssq) else call shr_flux_atmocn (nloc , zbot , ubot, vbot, thbot, & shum , dens , tbot, uocn, vocn , & tocn , emask, sen , lat , lwup , & evap , taux , tauy, tref, qref , & + duu10n,ustar, re , ssq) !missval should not be needed if flux calc !consistent with mrgx2a fraction !duu10n,ustar, re , ssq, missval = 0.0_r8 ) - duu10n,ustar, re , ssq) endif do n = 1,nloc