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 8384 – NEMO

Changeset 8384


Ignore:
Timestamp:
2017-07-27T12:27:39+02:00 (7 years ago)
Author:
jamrae
Message:

Implemented changes to pass sea ice form drag from CICE to coupler.

Location:
branches/UKMO/dev_r5518_GO6_package_r8356_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/UKMO/dev_r5518_GO6_package_r8356_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbc_ice.F90

    r6498 r8384  
    116116   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::  a_i 
    117117   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::  ht_i, ht_s 
     118   REAL(wp), PUBLIC, ALLOCATABLE, SAVE, DIMENSION(:,:)   ::  fmdice 
    118119#endif 
    119120 
     
    175176#if defined key_cice || defined key_lim2 
    176177      IF( ln_cpl )   ALLOCATE( ht_i(jpi,jpj,jpl) , ht_s(jpi,jpj,jpl) , STAT=ierr(5) ) 
     178      IF( ln_cpl )   ALLOCATE( fmdice(jpi,jpj) , STAT=ierr(5) )  
    177179#endif 
    178180 
  • branches/UKMO/dev_r5518_GO6_package_r8356_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbccpl.F90

    r8280 r8384  
    149149   INTEGER, PARAMETER ::   jps_bio_dms = 35           ! MEDUSA DMS surface concentration 
    150150   INTEGER, PARAMETER ::   jps_bio_chloro = 36        ! MEDUSA chlorophyll surface concentration 
    151    INTEGER, PARAMETER ::   jpsnd      = 36            ! total number of fields sent 
     151   INTEGER, PARAMETER ::   jps_fmdice = 37            ! ice form drag 
     152   INTEGER, PARAMETER ::   jpsnd      = 37            ! total number of fields sent 
    152153 
    153154   REAL(wp), PARAMETER :: dms_unit_conv = 1.0e+6      ! Coversion factor to get outgong DMS in standard units for coupling 
     
    163164   END TYPE FLD_C 
    164165   ! Send to the atmosphere                           ! 
    165    TYPE(FLD_C) ::   sn_snd_temp, sn_snd_alb, sn_snd_thick, sn_snd_crt, sn_snd_co2, sn_snd_cond, sn_snd_mpnd, sn_snd_sstfrz, sn_snd_thick1 
     166   TYPE(FLD_C) ::   sn_snd_temp, sn_snd_alb, sn_snd_thick, sn_snd_crt, sn_snd_co2, sn_snd_cond, sn_snd_mpnd, sn_snd_sstfrz, sn_snd_thick1, sn_snd_fmd 
    166167   TYPE(FLD_C) ::   sn_snd_bio_co2, sn_snd_bio_dms, sn_snd_bio_chloro                    
    167168 
     
    241242      !! 
    242243      NAMELIST/namsbc_cpl/  sn_snd_temp, sn_snd_alb   , sn_snd_thick , sn_snd_crt   , sn_snd_co2,     & 
    243          &                  sn_snd_cond, sn_snd_mpnd  , sn_snd_sstfrz, sn_snd_thick1,                 & 
     244         &                  sn_snd_cond, sn_snd_mpnd  , sn_snd_sstfrz, sn_snd_thick1, sn_snd_fmd,     & 
    244245         &                  sn_rcv_w10m, sn_rcv_taumod, sn_rcv_tau   , sn_rcv_dqnsdt, sn_rcv_qsr,     & 
    245246         &                  sn_rcv_qns , sn_rcv_emp   , sn_rcv_rnf   , sn_rcv_cal   , sn_rcv_iceflx,  & 
     
    314315         WRITE(numout,*)'      meltponds fraction & depth      = ', TRIM(sn_snd_mpnd%cldes  ), ' (', TRIM(sn_snd_mpnd%clcat   ), ')' 
    315316         WRITE(numout,*)'      sea surface freezing temp       = ', TRIM(sn_snd_sstfrz%cldes   ), ' (', TRIM(sn_snd_sstfrz%clcat   ), ')' 
     317         WRITE(numout,*)'      ice formdrag                    = ', TRIM(sn_snd_fmd%cldes   ), ' (', TRIM(sn_snd_fmd%clcat   ), ')' 
    316318 
    317319         WRITE(numout,*)'  nn_cplmodel                         = ', nn_cplmodel 
     
    610612         ENDIF 
    611613      ENDIF 
     614      !                                                      ! ------------------------- ! 
     615      !                                                      !   Sea ice form drag       ! 
     616      !                                                      ! ------------------------- ! 
     617      ssnd(jps_fmdice )%clname = 'OIceFmd' 
     618      ssnd(jps_fmdice)%laction = .FALSE. 
     619      IF( TRIM( sn_snd_fmd%cldes ) == 'coupled' ) ssnd(jps_fmdice)%laction = .TRUE.       
    612620      !                                                      ! -------------------------------- ! 
    613621      !                                                      !   OPA-SAS coupling - rcv by sas  !    
     
    844852      !                                                      ! ------------------------- ! 
    845853      ssnd(jps_sstfrz)%clname = 'O_SSTFrz' ; IF( TRIM(sn_snd_sstfrz%cldes) == 'coupled' )  ssnd(jps_sstfrz)%laction = .TRUE. 
     854      ! 
     855      !                                                      !------------------------! 
     856      !                                                      ! Sea ice form drag      ! 
     857      !                                                      !------------------------! 
     858      SELECT CASE( sn_snd_fmd%cldes) 
     859         CASE( 'coupled' )    
     860             ztmp1(:,:) = fmdice(:,:) 
     861      END SELECT 
     862      IF( ssnd(jps_fmdice)%laction )   CALL cpl_snd( jps_fmdice, isec, RESHAPE ( ztmp1, (/jpi,jpj,1/) ), info )  
    846863      ! 
    847864      !                                                      ! ------------------------- ! 
  • branches/UKMO/dev_r5518_GO6_package_r8356_plus_form_drag/NEMOGCM/NEMO/OPA_SRC/SBC/sbcice_cice.F90

    r8280 r8384  
    6868#endif 
    6969   USE ice_forcing, only: frcvdr,frcvdf,frcidr,frcidf 
    70    USE ice_atmo, only: calc_strair 
     70   USE ice_atmo, only: calc_strair, z0atm 
    7171 
    7272   USE CICE_InitMod 
     
    785785      ENDIF        
    786786 
     787! Surface roughness length for form drag 
     788      CALL cice2nemo(z0atm,fmdice,'T', 1. ) 
     789 
    787790      ! 
    788791      IF( nn_timing == 1 )  CALL timing_stop('cice_sbc_hadgam') 
Note: See TracChangeset for help on using the changeset viewer.