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 2990 for branches/2011/dev_r2855_INGV2_3_blk_wave/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90 – NEMO

Ignore:
Timestamp:
2011-10-25T15:39:07+02:00 (13 years ago)
Author:
poddo
Message:

Development DEV2011_INGV2_bulk ECMWF bulk formulae
merged with
Development DEV2011_INGV3_wave Interface to read neutral drag coefficient from wave model

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/2011/dev_r2855_INGV2_3_blk_wave/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90

    r2715 r2990  
    2929   USE sbcblk_clio      ! surface boundary condition: bulk formulation : CLIO 
    3030   USE sbcblk_core      ! surface boundary condition: bulk formulation : CORE 
     31   USE sbcblk_ecmwf     ! surface boundary condition: bulk formulation : MFS 
    3132   USE sbcice_if        ! surface boundary condition: ice-if sea-ice model 
    3233   USE sbcice_lim       ! surface boundary condition: LIM 3.0 sea-ice model 
     
    4647   USE in_out_manager   ! I/O manager 
    4748   USE lib_mpp          ! MPP library 
     49   USE sbcwave          ! Wave module 
    4850 
    4951   IMPLICIT NONE 
     
    7880      !! 
    7981      NAMELIST/namsbc/ nn_fsbc   , ln_ana , ln_flx  , ln_blk_clio, ln_blk_core, ln_cpl,   & 
    80          &             ln_apr_dyn, nn_ice , ln_dm2dc, ln_rnf     , ln_ssr     , nn_fwb 
     82         &             ln_blk_ecmwf, ln_apr_dyn, nn_ice , ln_dm2dc, ln_rnf, ln_ssr     , nn_fwb, ln_cdgw 
    8183      !!---------------------------------------------------------------------- 
    8284 
     
    107109         WRITE(numout,*) '              flux       formulation                     ln_flx      = ', ln_flx 
    108110         WRITE(numout,*) '              CLIO bulk  formulation                     ln_blk_clio = ', ln_blk_clio 
    109          WRITE(numout,*) '              CLIO bulk  formulation                     ln_blk_core = ', ln_blk_core 
     111         WRITE(numout,*) '              CORE bulk  formulation                     ln_blk_core = ', ln_blk_core 
     112         WRITE(numout,*) '              MFS  bulk  formulation                     ln_blk_ecmwf= ', ln_blk_ecmwf 
    110113         WRITE(numout,*) '              coupled    formulation (T if key_sbc_cpl)  ln_cpl      = ', ln_cpl 
    111114         WRITE(numout,*) '           Misc. options of sbc : ' 
     
    154157      IF( ln_dm2dc .AND. ( ( NINT(rday) / ( nn_fsbc * NINT(rdt) ) )  < 8 ) )   & 
    155158         &   CALL ctl_warn( 'diurnal cycle for qsr: the sampling of the diurnal cycle is too small...' ) 
     159 
     160       !drag coefficient read from wave model definable only with ecmwf bulk formulae and core  
     161       IF(ln_cdgw .AND. .NOT.(ln_blk_ecmwf .OR. ln_blk_core) )              & 
     162          &   CALL ctl_stop( 'drag coefficient read from wave model definable only with ecmwf bulk formulae and core') 
    156163       
    157164      !                          ! Choice of the Surface Boudary Condition (set nsbc) 
     
    161168      IF( ln_blk_clio     ) THEN   ;   nsbc =  3   ; icpt = icpt + 1   ;   ENDIF       ! CLIO bulk       formulation 
    162169      IF( ln_blk_core     ) THEN   ;   nsbc =  4   ; icpt = icpt + 1   ;   ENDIF       ! CORE bulk       formulation 
     170      IF( ln_blk_ecmwf    ) THEN   ;   nsbc =  6   ; icpt = icpt + 1   ;   ENDIF       ! MFS  bulk       formulation 
    163171      IF( ln_cpl          ) THEN   ;   nsbc =  5   ; icpt = icpt + 1   ;   ENDIF       ! Coupled         formulation 
    164172      IF( cp_cfg == 'gyre') THEN   ;   nsbc =  0                       ;   ENDIF       ! GYRE analytical formulation 
     
    181189         IF( nsbc ==  4 )   WRITE(numout,*) '              CORE bulk formulation' 
    182190         IF( nsbc ==  5 )   WRITE(numout,*) '              coupled formulation' 
     191         IF( nsbc ==  6 )   WRITE(numout,*) '              MFS Bulk formulation' 
    183192      ENDIF 
    184193      ! 
     
    228237      !                                                  ! averaged over nf_sbc time-step 
    229238 
     239      IF (ln_cdgw) CALL sbc_wave( kt ) 
    230240                                                   !==  sbc formulation  ==! 
    231241                                                             
     
    238248      CASE(  4 )   ;   CALL sbc_blk_core( kt )                    ! bulk formulation : CORE for the ocean 
    239249      CASE(  5 )   ;   CALL sbc_cpl_rcv ( kt, nn_fsbc, nn_ice )   ! coupled formulation 
     250      CASE(  6 )   ;   CALL sbc_blk_ecmwf( kt )                   ! bulk formulation : MFS for the ocean 
    240251      CASE( -1 )                                 
    241252                       CALL sbc_ana     ( kt )                    ! ESOPA, test ALL the formulations 
Note: See TracChangeset for help on using the changeset viewer.