Changeset 9187


Ignore:
Timestamp:
2018-01-05T17:33:15+01:00 (3 years ago)
Author:
jpalmier
Message:

JPALM — GMED #365 — enable Anderson DMS tuning

Location:
branches/NERC/dev_r5518_GO6_MEDUSA_DMS_TUNING/NEMOGCM/NEMO/TOP_SRC/MEDUSA
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • branches/NERC/dev_r5518_GO6_MEDUSA_DMS_TUNING/NEMOGCM/NEMO/TOP_SRC/MEDUSA/sms_medusa.F90

    r9114 r9187  
    177177   INTEGER  ::  jdms_model   !: choice of DMS model passed to atmosphere 
    178178!!                              1 = ANDR, 2 = SIMO, 3 = ARAN, 4 = HALL 
     179!! JPALM --19-12-2017 -- UM people need to tune the Anderson DMS scheme     
     180   REAL(wp) ::  dmsmin       !: Anderson DMS scheme - DMS minimum value 
     181   REAL(wp) ::  dmscut       !: Anderson DMS scheme - DMS cutoff value  
     182   REAL(wp) ::  dmsslp       !: Anderson DMS scheme - DMS slope  
    179183!! FOR UKESM    
    180184   REAL(wp) ::  scl_chl      !: scaling factor for tuned Chl passed to the UM  
  • branches/NERC/dev_r5518_GO6_MEDUSA_DMS_TUNING/NEMOGCM/NEMO/TOP_SRC/MEDUSA/trcdms_medusa.F90

    r8132 r9187  
    113113! 
    114114! AXY (13/03/15): Anderson et al. (2001) 
     115!! JPALM --19-12-2017-- Tunable through the namelist 
     116!!                      within dmsmin - dmscut - dmsslp 
    115117        Jterm = xqsr + 1.0e-6 
    116118        !! this next line makes a hard-coded assumption about the  
     
    120122        Qterm = xdin / (xdin + 0.5) 
    121123        fq1 = log10(CHL * Jterm * Qterm) 
    122         if (fq1 > 1.72) then 
    123            dms_andr = (8.24 * (fq1 - 1.72)) + 2.29 
    124         else 
    125            dms_andr = 2.29 
     124        if (fq1 > dmscut) then 
     125           dms_andr = (dmsslp * (fq1 - dmscut)) + dmsmin 
     126        else 
     127           dms_andr = dmsmin 
    126128        endif 
    127129! 
  • branches/NERC/dev_r5518_GO6_MEDUSA_DMS_TUNING/NEMOGCM/NEMO/TOP_SRC/MEDUSA/trcnam_medusa.F90

    r9114 r9187  
    8787      &  xsdiss,                                              & 
    8888      &  sedlam,sedlostpoc,jpkb,jdms,jdms_input,jdms_model,   & 
    89       &  scl_chl, chl_out 
     89      &  scl_chl, chl_out, dmsmin, dmscut, dmsslp 
    9090#if defined key_roam 
    9191      NAMELIST/natroam/ xthetaphy,xthetazoo,xthetanit,        & 
     
    250250      scl_chl     = 1. 
    251251      chl_out     = 1 
     252      dmsmin      = 2.29 !! Anderson DMS default 
     253      dmscut      = 1.72 !! Anderson DMS default 
     254      dmsslp      = 8.24 !! Anderson DMS default 
    252255             
    253256      !REWIND(numnatm) 
     
    403406!!       jdms_model  :  choice of DMS model passed to atmosphere 
    404407!!                      1 = ANDR, 2 = SIMO, 3 = ARAN, 4 = HALL, 5 = ANDM 
    405 !! 
     408!!       dmsmin      : DMS minimum value for DMS Anderson (ANDR) sheme ONLY 
     409!!       dmscut      : DMS cutoff value for DMS Anderson (ANDR) sheme ONLY 
     410!!       dmsslp      : DMS slope value for DMS Anderson (ANDR) sheme ONLY 
    406411!! UKESM1 - exported Chl to UM 
    407412!!       scl_chl     : scaling factor to tune the chl field sent to the UM 
     
    948953               &   ' choice of DMS model passed to atmosphere,                  jdms_model  = Anderson et al. (2001; modified)' 
    949954            endif 
    950           
     955            if (jdms_model .eq. 1) then 
     956               WRITE(numout,*)     & 
     957               &   ' Anderson DMS model tuned parameters:                       DMS minimum = ',dmsmin,'. -- Default = 2.29 ' 
     958               WRITE(numout,*)     & 
     959               &   ' Anderson DMS model tuned parameters:                       DMS cutoff  = ',dmscut,'. -- Default = 1.72 ' 
     960               WRITE(numout,*)     & 
     961               &   ' Anderson DMS model tuned parameters:                       DMS slope   = ',dmsslp,'. -- Default = 8.24 ' 
     962            endif 
     963 
    951964            WRITE(numout,*) '=== UKESM1 --  coupled Chl to the atmosphere' 
    952965            WRITE(numout,*)        & 
Note: See TracChangeset for help on using the changeset viewer.