Ignore:
Timestamp:
2015-07-09T12:14:37+02:00 (5 years ago)
Author:
davestorkey
Message:

Update UKMO/dev_r5107_hadgem3_cplseq branch to trunk revision 5518
(= branching point of NEMO 3.6_stable).

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/dev_r5107_hadgem3_cplseq/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90

    r5482 r5572  
    4040# if defined key_cice4 
    4141   USE ice_flux, only: strax,stray,strocnx,strocny,frain,fsnow,  & 
     42                strocnxT,strocnyT,                               &  
    4243                sst,sss,uocn,vocn,ss_tltx,ss_tlty,fsalt_gbm,     & 
    4344                fresh_gbm,fhocn_gbm,fswthru_gbm,frzmlt,          & 
     
    4849#else 
    4950   USE ice_flux, only: strax,stray,strocnx,strocny,frain,fsnow,  & 
     51                strocnxT,strocnyT,                               &  
    5052                sst,sss,uocn,vocn,ss_tltx,ss_tlty,fsalt_ai,     & 
    5153                fresh_ai,fhocn_ai,fswthru_ai,frzmlt,          & 
     
    9496#  include "domzgr_substitute.h90" 
    9597 
     98   !! $Id$ 
    9699CONTAINS 
    97100 
     
    135138         IF      ( ksbc == jp_flx ) THEN 
    136139            CALL cice_sbc_force(kt) 
    137          ELSE IF ( ksbc == jp_cpl ) THEN 
     140         ELSE IF ( ksbc == jp_purecpl ) THEN 
    138141            CALL sbc_cpl_ice_flx( 1.0-fr_i  ) 
    139142         ENDIF 
     
    143146         CALL cice_sbc_out ( kt, ksbc ) 
    144147 
    145          IF ( ksbc == jp_cpl )  CALL cice_sbc_hadgam(kt+1) 
     148         IF ( ksbc == jp_purecpl )  CALL cice_sbc_hadgam(kt+1) 
    146149 
    147150      ENDIF                                          ! End sea-ice time step only 
     
    184187 
    185188! Do some CICE consistency checks 
    186       IF ( (ksbc == jp_flx) .OR. (ksbc == jp_cpl) ) THEN 
     189      IF ( (ksbc == jp_flx) .OR. (ksbc == jp_purecpl) ) THEN 
    187190         IF ( calc_strair .OR. calc_Tsfc ) THEN 
    188191            CALL ctl_stop( 'STOP', 'cice_sbc_init : Forcing option requires calc_strair=F and calc_Tsfc=F in ice_in' ) 
     
    209212 
    210213      CALL cice2nemo(aice,fr_i, 'T', 1. ) 
    211       IF ( (ksbc == jp_flx) .OR. (ksbc == jp_cpl) ) THEN 
     214      IF ( (ksbc == jp_flx) .OR. (ksbc == jp_purecpl) ) THEN 
    212215         DO jl=1,ncat 
    213216            CALL cice2nemo(aicen(:,:,jl,:),a_i(:,:,jl), 'T', 1. ) 
     
    320323! forced and coupled case  
    321324 
    322       IF ( (ksbc == jp_flx).OR.(ksbc == jp_cpl) ) THEN 
     325      IF ( (ksbc == jp_flx).OR.(ksbc == jp_purecpl) ) THEN 
    323326 
    324327         ztmpn(:,:,:)=0.0 
     
    510513      CALL nemo2cice(ztmp,ss_tlty,'F', -1. ) 
    511514 
    512       CALL wrk_dealloc( jpi,jpj, ztmp ) 
     515      CALL wrk_dealloc( jpi,jpj, ztmp, zpice ) 
    513516      CALL wrk_dealloc( jpi,jpj,ncat, ztmpn ) 
    514517      ! 
     
    564567! Combine wind stress and ocean-ice stress 
    565568! [Note that fr_iu hasn't yet been updated, so still from start of CICE timestep] 
     569! strocnx and strocny already weighted by ice fraction in CICE so not done here  
    566570 
    567571      utau(:,:)=(1.0-fr_iu(:,:))*utau(:,:)-ss_iou(:,:) 
    568572      vtau(:,:)=(1.0-fr_iv(:,:))*vtau(:,:)-ss_iov(:,:)      
     573  
     574! Also need ice/ocean stress on T points so that taum can be updated  
     575! This interpolation is already done in CICE so best to use those values  
     576      CALL cice2nemo(strocnxT,ztmp1,'T',-1.)  
     577      CALL cice2nemo(strocnyT,ztmp2,'T',-1.)  
     578  
     579! Update taum with modulus of ice-ocean stress  
     580! strocnxT and strocnyT are not weighted by ice fraction in CICE so must be done here  
     581taum(:,:)=(1.0-fr_i(:,:))*taum(:,:)+fr_i(:,:)*SQRT(ztmp1**2. + ztmp2**2.)  
    569582 
    570583! Freshwater fluxes  
     
    578591      ELSE IF (ksbc == jp_core) THEN 
    579592         emp(:,:)  = (1.0-fr_i(:,:))*emp(:,:)         
    580       ELSE IF (ksbc == jp_cpl) THEN 
     593      ELSE IF (ksbc == jp_purecpl) THEN 
    581594! emp_tot is set in sbc_cpl_ice_flx (called from cice_sbc_in above)  
    582595! This is currently as required with the coupling fields from the UM atmosphere 
     
    614627      ENDIF 
    615628! Take into account snow melting except for fully coupled when already in qns_tot 
    616       IF (ksbc == jp_cpl) THEN 
     629      IF (ksbc == jp_purecpl) THEN 
    617630         qsr(:,:)= qsr_tot(:,:) 
    618631         qns(:,:)= qns_tot(:,:) 
     
    649662 
    650663      CALL cice2nemo(aice,fr_i,'T', 1. ) 
    651       IF ( (ksbc == jp_flx).OR.(ksbc == jp_cpl) ) THEN 
     664      IF ( (ksbc == jp_flx).OR.(ksbc == jp_purecpl) ) THEN 
    652665         DO jl=1,ncat 
    653666            CALL cice2nemo(aicen(:,:,jl,:),a_i(:,:,jl), 'T', 1. ) 
     
    10871100   !!   Default option           Dummy module         NO CICE sea-ice model 
    10881101   !!---------------------------------------------------------------------- 
     1102   !! $Id$ 
    10891103CONTAINS 
    10901104 
Note: See TracChangeset for help on using the changeset viewer.