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 6583 for branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/SBC – NEMO

Ignore:
Timestamp:
2016-05-20T11:10:37+02:00 (8 years ago)
Author:
flavoni
Message:

add module for sbc gyre in usr_def module , see ticket #1692

Location:
branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/SBC
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/SBC/sbc_oce.F90

    r6140 r6583  
    3030   !!---------------------------------------------------------------------- 
    3131   !                                   !!* namsbc namelist * 
    32    LOGICAL , PUBLIC ::   ln_ana         !: analytical boundary condition flag 
    33    LOGICAL , PUBLIC ::   ln_flx         !: flux      formulation 
    34    LOGICAL , PUBLIC ::   ln_blk_clio    !: CLIO bulk formulation 
    35    LOGICAL , PUBLIC ::   ln_blk_core    !: CORE bulk formulation 
    36    LOGICAL , PUBLIC ::   ln_blk_mfs     !: MFS  bulk formulation 
     32   LOGICAL , PUBLIC ::   ln_ana         !: user defined formulation 
     33   LOGICAL , PUBLIC ::   ln_flx         !: flux         formulation 
     34   LOGICAL , PUBLIC ::   ln_blk_clio    !: CLIO bulk    formulation 
     35   LOGICAL , PUBLIC ::   ln_blk_core    !: CORE bulk    formulation 
     36   LOGICAL , PUBLIC ::   ln_blk_mfs     !: MFS  bulk    formulation 
    3737#if defined key_oasis3 
    3838   LOGICAL , PUBLIC ::   lk_oasis = .TRUE.  !: OASIS used 
     
    7272   !!           switch definition (improve readability) 
    7373   !!---------------------------------------------------------------------- 
    74    INTEGER , PUBLIC, PARAMETER ::   jp_gyre    = 0        !: GYRE analytical               formulation 
    75    INTEGER , PUBLIC, PARAMETER ::   jp_ana     = 1        !: analytical                    formulation 
     74   INTEGER , PUBLIC, PARAMETER ::   jp_ana     = 1        !: user defined                  formulation 
    7675   INTEGER , PUBLIC, PARAMETER ::   jp_flx     = 2        !: flux                          formulation 
    7776   INTEGER , PUBLIC, PARAMETER ::   jp_clio    = 3        !: CLIO bulk                     formulation 
  • branches/2016/dev_r6409_SIMPLIF_2_usrdef/NEMOGCM/NEMO/OPA_SRC/SBC/sbcmod.F90

    r6351 r6583  
    2828   USE sbcdcy         ! surface boundary condition: diurnal cycle 
    2929   USE sbcssm         ! surface boundary condition: sea-surface mean variables 
    30    USE sbcana         ! surface boundary condition: analytical formulation 
    3130   USE sbcflx         ! surface boundary condition: flux formulation 
    3231   USE sbcblk_clio    ! surface boundary condition: bulk formulation : CLIO 
     
    3837   USE sbcice_cice    ! surface boundary condition: CICE    sea-ice model 
    3938   USE sbccpl         ! surface boundary condition: coupled florulation 
     39   USE usrdef_sbc     ! user defined: surface boundary condition 
    4040   USE cpl_oasis3     ! OASIS routines for coupling 
    4141   USE sbcssr         ! surface boundary condition: sea surface restoring 
     
    120120        IF( lk_cice )   nn_ice      = 4 
    121121      ENDIF 
    122       IF( cp_cfg == 'gyre' ) THEN            ! GYRE configuration 
    123           ln_ana      = .TRUE.    
    124           nn_ice      =   0 
    125       ENDIF 
    126122      ! 
    127123      IF(lwp) THEN               ! Control print 
     
    129125         WRITE(numout,*) '           frequency update of sbc (and ice)             nn_fsbc     = ', nn_fsbc 
    130126         WRITE(numout,*) '           Type of air-sea fluxes : ' 
    131          WRITE(numout,*) '              analytical formulation                     ln_ana        = ', ln_ana 
    132          WRITE(numout,*) '              flux       formulation                     ln_flx        = ', ln_flx 
    133          WRITE(numout,*) '              CLIO bulk  formulation                     ln_blk_clio   = ', ln_blk_clio 
    134          WRITE(numout,*) '              CORE bulk  formulation                     ln_blk_core   = ', ln_blk_core 
    135          WRITE(numout,*) '              MFS  bulk  formulation                     ln_blk_mfs    = ', ln_blk_mfs 
     127         WRITE(numout,*) '              user defined formulation                   ln_ana        = ', ln_ana 
     128         WRITE(numout,*) '              flux         formulation                   ln_flx        = ', ln_flx 
     129         WRITE(numout,*) '              CLIO bulk    formulation                   ln_blk_clio   = ', ln_blk_clio 
     130         WRITE(numout,*) '              CORE bulk    formulation                   ln_blk_core   = ', ln_blk_core 
     131         WRITE(numout,*) '              MFS  bulk    formulation                   ln_blk_mfs    = ', ln_blk_mfs 
    136132         WRITE(numout,*) '           Type of coupling (Ocean/Ice/Atmosphere) : ' 
    137133         WRITE(numout,*) '              ocean-atmosphere coupled formulation       ln_cpl        = ', ln_cpl 
     
    160156         SELECT CASE ( nn_limflx )        ! LIM3 Multi-category heat flux formulation 
    161157         CASE ( -1 )   ;   WRITE(numout,*) '   LIM3: use per-category fluxes (nn_limflx = -1) ' 
    162          CASE ( 0 )   ;   WRITE(numout,*) '   LIM3: use average per-category fluxes (nn_limflx = 0) '  
    163          CASE ( 1 )   ;   WRITE(numout,*) '   LIM3: use average then redistribute per-category fluxes (nn_limflx = 1) ' 
    164          CASE ( 2 )   ;   WRITE(numout,*) '   LIM3: Redistribute a single flux over categories (nn_limflx = 2) ' 
     158         CASE (  0 )   ;   WRITE(numout,*) '   LIM3: use average per-category fluxes (nn_limflx = 0) '  
     159         CASE (  1 )   ;   WRITE(numout,*) '   LIM3: use average then redistribute per-category fluxes (nn_limflx = 1) ' 
     160         CASE (  2 )   ;   WRITE(numout,*) '   LIM3: Redistribute a single flux over categories (nn_limflx = 2) ' 
    165161         END SELECT 
    166162      ENDIF 
     
    224220      ! 
    225221      icpt = 0 
    226       IF( ln_ana          ) THEN   ;   nsbc = jp_ana     ; icpt = icpt + 1   ;   ENDIF       ! analytical           formulation 
     222      IF( ln_ana          ) THEN   ;   nsbc = jp_ana     ; icpt = icpt + 1   ;   ENDIF       ! user defined         formulation 
    227223      IF( ln_flx          ) THEN   ;   nsbc = jp_flx     ; icpt = icpt + 1   ;   ENDIF       ! flux                 formulation 
    228224      IF( ln_blk_clio     ) THEN   ;   nsbc = jp_clio    ; icpt = icpt + 1   ;   ENDIF       ! CLIO bulk            formulation 
     
    230226      IF( ln_blk_mfs      ) THEN   ;   nsbc = jp_mfs     ; icpt = icpt + 1   ;   ENDIF       ! MFS  bulk            formulation 
    231227      IF( ll_purecpl      ) THEN   ;   nsbc = jp_purecpl ; icpt = icpt + 1   ;   ENDIF       ! Pure Coupled         formulation 
    232       IF( cp_cfg == 'gyre') THEN   ;   nsbc = jp_gyre                        ;   ENDIF       ! GYRE analytical      formulation 
    233228      IF( nn_components == jp_iam_opa )   & 
    234229         &                  THEN   ;   nsbc = jp_none    ; icpt = icpt + 1   ;   ENDIF       ! opa coupling via SAS module 
     
    239234         WRITE(numout,*) 
    240235         SELECT CASE( nsbc ) 
    241          CASE( jp_gyre    )   ;   WRITE(numout,*) '   GYRE analytical formulation' 
    242          CASE( jp_ana     )   ;   WRITE(numout,*) '   analytical formulation' 
     236         CASE( jp_ana     )   ;   WRITE(numout,*) '   user defined formulation' 
    243237         CASE( jp_flx     )   ;   WRITE(numout,*) '   flux formulation' 
    244238         CASE( jp_clio    )   ;   WRITE(numout,*) '   CLIO bulk formulation' 
     
    337331      SELECT CASE( nsbc )                                ! Compute ocean surface boundary condition 
    338332      !                                                  ! (i.e. utau,vtau, qns, qsr, emp, sfx) 
    339       CASE( jp_gyre  )   ;   CALL sbc_gyre    ( kt )                    ! analytical formulation : GYRE configuration 
    340       CASE( jp_ana   )   ;   CALL sbc_ana     ( kt )                    ! analytical formulation : uniform sbc 
     333      CASE( jp_ana   )   ;   CALL usr_def_sbc ( kt )                    ! user defined formulation  
    341334      CASE( jp_flx   )   ;   CALL sbc_flx     ( kt )                    ! flux formulation 
    342335      CASE( jp_clio  )   ;   CALL sbc_blk_clio( kt )                    ! bulk formulation : CLIO for the ocean 
Note: See TracChangeset for help on using the changeset viewer.