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

Changeset 15668


Ignore:
Timestamp:
2022-01-24T15:52:46+01:00 (2 years ago)
Author:
davestorkey
Message:

UKMO/NEMO_4.0.4_GO6_mixing : new option for htau profile.

Location:
NEMO/branches/UKMO/NEMO_4.0.4_GO6_mixing
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • NEMO/branches/UKMO/NEMO_4.0.4_GO6_mixing/cfgs/SHARED/field_def_nemo-oce.xml

    r13648 r15668  
    6868        <field id="somint"       long_name="vertical integral of salinity times density"        standard_name="integral_wrt_depth_of_product_of_density_and_salinity"  unit="(kg m2) x (1e-3)" />  
    6969 
     70        <field id="htau"         long_name="htau length scale"                                                                                      unit="m"     /> 
    7071        <field id="taubot"       long_name="bottom stress module"                                                                                   unit="N/m2"     />  
    7172 
  • NEMO/branches/UKMO/NEMO_4.0.4_GO6_mixing/src/OCE/DIA/diawri.F90

    r14075 r15668  
    4343   USE zdfdrg         ! ocean vertical physics: top/bottom friction 
    4444   USE zdfmxl         ! mixed layer 
     45   USE zdftke, ONLY: htau 
    4546   ! 
    4647   USE lbclnk         ! ocean lateral boundary conditions (or mpp link) 
     
    229230      CALL iom_put( "avs" , avs )                  ! S vert. eddy diff. coef. 
    230231      CALL iom_put( "avm" , avm )                  ! T vert. eddy visc. coef. 
     232      CALL iom_put( "htau" , htau )                ! htau scaling 
    231233 
    232234      IF( iom_use('logavt') )   CALL iom_put( "logavt", LOG( MAX( 1.e-20_wp, avt(:,:,:) ) ) ) 
  • NEMO/branches/UKMO/NEMO_4.0.4_GO6_mixing/src/OCE/ZDF/zdftke.F90

    r15649 r15668  
    9292   REAL(wp) ::   rhftau_scl = 1.0_wp       ! scale factor applied to HF part of taum  (nn_etau=3) 
    9393 
    94    REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:)   ::   htau    ! depth of tke penetration (nn_htau) 
     94   REAL(wp), ALLOCATABLE, SAVE, PUBLIC, DIMENSION(:,:)   ::   htau    ! depth of tke penetration (nn_htau) 
    9595   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   dissl   ! now mixing lenght of dissipation 
    9696   REAL(wp), ALLOCATABLE, SAVE, DIMENSION(:,:,:) ::   apdlr   ! now mixing lenght of dissipation 
     
    805805      IF( nn_mxl  < 0   .OR.  nn_mxl  > 3 )   CALL ctl_stop( 'bad flag: nn_mxl is  0, 1 or 2 ' ) 
    806806      IF( nn_pdl  < 0   .OR.  nn_pdl  > 1 )   CALL ctl_stop( 'bad flag: nn_pdl is  0 or 1    ' ) 
    807       IF( ( nn_htau < 0   .OR.  nn_htau > 1 ) .AND. nn_htau .NE. 4 )   CALL ctl_stop( 'bad flag: nn_htau is 0, 1 or 4 ' ) 
     807      IF( ( nn_htau < 0   .OR.  nn_htau > 1 ) .AND. nn_htau .NE. 4 .AND. nn_htau .NE. 5 )   CALL ctl_stop( 'bad flag: nn_htau is 0, 1 or 4 ' ) 
    808808      IF( nn_etau == 3 .AND. .NOT. ln_cpl )   CALL ctl_stop( 'nn_etau == 3 : HF taum only known in coupled mode' ) 
    809809      ! 
     
    830830                  ELSE 
    831831                     htau(ji,jj) = MAX(  0.5_wp, MIN( 10._wp, 45._wp* rn_htau_scaling*ABS( SIN( rpi/180._wp * gphit(ji,jj) ) ) )   ) 
     832                  ENDIF 
     833               END DO 
     834            END DO 
     835         CASE( 5 )                                 ! Variation on case 4 with a steeper ramp further south in Southern Hemisphere 
     836            DO jj = 2, jpjm1 
     837               DO ji = fs_2, fs_jpim1   ! vector opt. 
     838                  htau(ji,jj) = MAX(  0.5_wp, MIN( 10._wp, 45._wp* rn_htau_scaling*ABS( SIN( rpi/180._wp * gphit(ji,jj) ) ) )   ) 
     839                  IF( gphit(ji,jj) <= -40._wp ) THEN 
     840                      htau(ji,jj) = htau(ji,jj) + MIN( 20._wp, 135._wp * ABS( SIN( rpi/180._wp * (gphit(ji,jj) + 40.0) ) ) ) 
    832841                  ENDIF 
    833842               END DO 
Note: See TracChangeset for help on using the changeset viewer.