Changeset 13347


Ignore:
Timestamp:
2020-07-27T17:51:59+02:00 (2 weeks ago)
Author:
dancopsey
Message:

First lot of code added

File:
1 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/UKMO/NEMO_4.0.1_penetrating_solar/src/OCE/SBC/sbccpl.F90

    r11715 r13347  
    116116   INTEGER, PARAMETER ::   jpr_tauwy  = 56   ! y component of the ocean stress from waves 
    117117   INTEGER, PARAMETER ::   jpr_ts_ice = 57   ! Sea ice surface temp 
    118  
    119    INTEGER, PARAMETER ::   jprcv      = 57   ! total number of fields received   
     118   INTEGER, PARAMETER ::   jpr_qtr    = 58   ! Transmitted solar 
     119 
     120   INTEGER, PARAMETER ::   jprcv      = 58   ! total number of fields received   
    120121 
    121122   INTEGER, PARAMETER ::   jps_fice   =  1   ! ice fraction sent to the atmosphere 
     
    174175   TYPE(FLD_C) ::   sn_rcv_w10m, sn_rcv_taumod, sn_rcv_tau, sn_rcv_tauw, sn_rcv_dqnsdt, sn_rcv_qsr,  & 
    175176      &             sn_rcv_qns , sn_rcv_emp   , sn_rcv_rnf, sn_rcv_ts_ice 
    176    TYPE(FLD_C) ::   sn_rcv_cal, sn_rcv_iceflx, sn_rcv_co2, sn_rcv_mslp, sn_rcv_icb, sn_rcv_isf 
     177   TYPE(FLD_C) ::   sn_rcv_cal, sn_rcv_iceflx, sn_rcv_co2, sn_rcv_mslp, sn_rcv_icb, sn_rcv_isf, sn_rcv_qtr 
    177178   ! Send to waves  
    178179   TYPE(FLD_C) ::   sn_snd_ifrac, sn_snd_crtw, sn_snd_wlev  
     
    256257         &                  sn_rcv_iceflx, sn_rcv_co2   , nn_cplmodel , ln_usecplmask, sn_rcv_mslp ,   & 
    257258         &                  sn_rcv_icb   , sn_rcv_isf   , sn_rcv_wfreq , sn_rcv_tauw, nn_cats_cpl  ,   & 
    258          &                  sn_rcv_ts_ice 
     259         &                  sn_rcv_ts_ice, sn_rcv_qtr 
    259260 
    260261      !!--------------------------------------------------------------------- 
     
    295296         WRITE(numout,*)'      ice shelf                       = ', TRIM(sn_rcv_isf%cldes   ), ' (', TRIM(sn_rcv_isf%clcat   ), ')' 
    296297         WRITE(numout,*)'      sea ice heat fluxes             = ', TRIM(sn_rcv_iceflx%cldes), ' (', TRIM(sn_rcv_iceflx%clcat), ')' 
     298         WRITE(numout,*)'      transmitted solar               = ', TRIM(sn_rcv_qtr%cldes   ), ' (', TRIM(sn_rcv_qtr%clcat   ), ')' 
    297299         WRITE(numout,*)'      atm co2                         = ', TRIM(sn_rcv_co2%cldes   ), ' (', TRIM(sn_rcv_co2%clcat   ), ')' 
    298300         WRITE(numout,*)'      significant wave heigth         = ', TRIM(sn_rcv_hsig%cldes  ), ' (', TRIM(sn_rcv_hsig%clcat  ), ')'  
     
    566568      ENDIF 
    567569      !                                                      ! ------------------------- ! 
     570      !                                                      !    transmitted solar      !    
     571      !                                                      ! ------------------------- ! 
     572      srcv(jpr_topm )%clname = 'OQtr' 
     573      IF( TRIM(sn_rcv_qtr%cldes) == 'coupled' ) THEN 
     574         IF ( TRIM( sn_rcv_qtr%clcat ) == 'yes' ) THEN 
     575            srcv(jpr_qtr)%nct = nn_cats_cpl 
     576         ELSE 
     577            CALL ctl_stop( 'sbc_cpl_init: sn_rcv_qtr%clcat should always be set to yes currently' ) 
     578         ENDIF 
     579         srcv(jpr_qtr)%laction = .TRUE. 
     580      ENDIF 
     581 
     582      !                                                      ! ------------------------- ! 
    568583      !                                                      !    ice skin temperature   !    
    569584      !                                                      ! ------------------------- ! 
     
    20252040      ELSEIF( ln_cndflx .AND. .NOT.ln_cndemulate ) THEN      !==  conduction flux as surface forcing  ==! 
    20262041         ! 
    2027          !                    ! ===> here we must receive the qtr_ice_top array from the coupler 
    2028          !                           for now just assume zero (fully opaque ice) 
    2029          qtr_ice_top(:,:,:) = 0._wp 
     2042         SELECT CASE( TRIM( sn_rcv_qtr%cldes ) ) 
     2043         ! 
     2044         !      ! ===> here we receive the qtr_ice_top array from the coupler 
     2045         CASE ('coupled') 
     2046            qtr_ice_top(:,:,:) = frcv(jpr_qtr)%z3(:,:,:) 
     2047 
     2048         !      if we are not getting this data from the coupler then assume zero (fully opaque ice) 
     2049         CASE ('none') 
     2050            qtr_ice_top(:,:,:) = 0._wp 
     2051         END SELECT 
    20302052         ! 
    20312053      ENDIF 
Note: See TracChangeset for help on using the changeset viewer.