New URL for NEMO forge!   http://forge.nemo-ocean.eu

Since March 2022 along with NEMO 4.2 release, the code development moved to a self-hosted GitLab.
This present forge is now archived and remained online for history.
Changeset 13662 for NEMO/branches/2019/dev_r11842_SI3-10_EAP/src/ICE/icerst.F90 – NEMO

Ignore:
Timestamp:
2020-10-22T20:49:56+02:00 (3 years ago)
Author:
clem
Message:

update to almost r4.0.4

Location:
NEMO/branches/2019/dev_r11842_SI3-10_EAP
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/2019/dev_r11842_SI3-10_EAP

    • Property svn:externals
      •  

        old new  
        1 ^/utils/build/arch@HEAD       arch 
        2 ^/utils/build/makenemo@HEAD   makenemo 
        3 ^/utils/build/mk@HEAD         mk 
        4 ^/utils/tools@HEAD            tools 
        5 ^/vendors/AGRIF/dev@HEAD      ext/AGRIF 
        6 ^/vendors/FCM@HEAD            ext/FCM 
        7 ^/vendors/IOIPSL@HEAD         ext/IOIPSL 
         1^/utils/build/arch@12130      arch 
         2^/utils/build/makenemo@12191  makenemo 
         3^/utils/build/mk@11662        mk 
         4^/utils/tools_r4.0-HEAD@12672 tools 
         5^/vendors/AGRIF/dev@10586     ext/AGRIF 
         6^/vendors/FCM@10134           ext/FCM 
         7^/vendors/IOIPSL@9655         ext/IOIPSL 
         8 
         9# SETTE mapping (inactive) 
         10#^/utils/CI/sette@12135        sette 
  • NEMO/branches/2019/dev_r11842_SI3-10_EAP/src/ICE/icerst.F90

    r11536 r13662  
    1818   USE phycst  , ONLY : rt0 
    1919   USE sbc_oce , ONLY : nn_fsbc, ln_cpl 
     20   USE sbc_oce , ONLY : nn_components, jp_iam_sas   ! SAS ss[st]_m init 
     21   USE sbc_oce , ONLY : sst_m, sss_m                ! SAS ss[st]_m init 
     22   USE oce     , ONLY : tsn                         ! SAS ss[st]_m init 
     23   USE eosbn2  , ONLY : l_useCT, eos_pt_from_ct     ! SAS ss[st]_m init 
    2024   USE iceistate      ! sea-ice: initial state 
    2125   USE icectl         ! sea-ice: control 
     
    132136      CALL iom_rstput( iter, nitrst, numriw, 'a_ip' , a_ip  ) 
    133137      CALL iom_rstput( iter, nitrst, numriw, 'v_ip' , v_ip  ) 
     138      CALL iom_rstput( iter, nitrst, numriw, 'v_il' , v_il  ) 
    134139      ! Snow enthalpy 
    135140      DO jk = 1, nlay_s  
     
    171176      INTEGER           ::   jk 
    172177      LOGICAL           ::   llok 
    173       INTEGER           ::   id0, id1, id2, id3, id4   ! local integer 
     178      INTEGER           ::   id0, id1, id2, id3, id4, id5   ! local integer 
    174179      CHARACTER(len=25) ::   znam 
    175180      CHARACTER(len=2)  ::   zchar, zchar1 
     
    250255            v_ip(:,:,:) = 0._wp 
    251256         ENDIF 
     257         ! melt pond lids 
     258         id3 = iom_varid( numrir, 'v_il' , ldstop = .FALSE. ) 
     259         IF( id3 > 0 ) THEN 
     260            CALL iom_get( numrir, jpdom_autoglo, 'v_il', v_il) 
     261         ELSE 
     262            IF(lwp) WRITE(numout,*) '   ==>>   previous run without melt ponds lids output then set it to zero' 
     263            v_il(:,:,:) = 0._wp 
     264         ENDIF 
    252265         ! fields needed for Met Office (Jules) coupling 
    253266         IF( ln_cpl ) THEN 
    254             id3 = iom_varid( numrir, 'cnd_ice' , ldstop = .FALSE. ) 
    255             id4 = iom_varid( numrir, 't1_ice'  , ldstop = .FALSE. ) 
    256             IF( id3 > 0 .AND. id4 > 0 ) THEN         ! fields exist 
     267            id4 = iom_varid( numrir, 'cnd_ice' , ldstop = .FALSE. ) 
     268            id5 = iom_varid( numrir, 't1_ice'  , ldstop = .FALSE. ) 
     269            IF( id4 > 0 .AND. id5 > 0 ) THEN         ! fields exist 
    257270               CALL iom_get( numrir, jpdom_autoglo, 'cnd_ice', cnd_ice ) 
    258271               CALL iom_get( numrir, jpdom_autoglo, 't1_ice' , t1_ice  ) 
     
    269282      ELSE                 ! == case of a simplified restart == ! 
    270283         !                 ! ---------------------------------- ! 
    271          CALL ctl_warn('ice_rst_read: you are using a simplified ice restart') 
     284         CALL ctl_warn('ice_rst_read: you are attempting to use an unsuitable ice restart') 
    272285         ! 
    273          CALL ice_istate_init 
     286         IF( .NOT. ln_iceini .OR. nn_iceini_file == 2 ) THEN 
     287            CALL ctl_stop('STOP', 'ice_rst_read: you need ln_ice_ini=T and nn_iceini_file=0 or 1') 
     288         ELSE 
     289            CALL ctl_warn('ice_rst_read: using ice_istate to set initial conditions instead') 
     290         ENDIF 
     291         ! 
     292         IF( nn_components == jp_iam_sas ) THEN   ! SAS case: ss[st]_m were not initialized by sbc_ssm_init 
     293            ! 
     294            IF(lwp) WRITE(numout,*) '  SAS: default initialisation of ss[st]_m arrays used in ice_istate' 
     295            IF( l_useCT )  THEN    ;   sst_m(:,:) = eos_pt_from_ct( tsn(:,:,1,jp_tem), tsn(:,:,1,jp_sal) ) 
     296            ELSE                   ;   sst_m(:,:) = tsn(:,:,1,jp_tem) 
     297            ENDIF 
     298            sss_m(:,:) = tsn(:,:,1,jp_sal) 
     299         ENDIF 
     300         ! 
    274301         CALL ice_istate( nit000 ) 
    275302         ! 
    276          IF( .NOT.ln_iceini .OR. .NOT.ln_iceini_file ) & 
    277             &   CALL ctl_stop('STOP', 'ice_rst_read: you need ln_ice_ini=T and ln_iceini_file=T') 
    278          ! 
    279303      ENDIF 
    280304 
Note: See TracChangeset for help on using the changeset viewer.