wiki:Documentation/UserGuide/NoKsDecrease

How to deactivate the decline of Ks with depth in hydrol.f90?

Author: A. Ducharne
Last revision: 2020/06/01, A. Ducharne

Question by Daniel Goll on 2017/05/11

I would like to omit the decrease of Ks below 30 cm (Page 12-15 in the hydrol.f90 report). Can you confirm I can do it by setting "kfact=un" like done below in hydrol.f90?

    ! For every soil texture
    DO jsc = 1, nscm
       DO jsl=1,nslm
          ! PhD thesis of d'Orgeval, 2006, p81, Eq. 4.38; d'Orgeval et al. 2008, Eq. 2
          ! Calibrated against Hapex-Sahel measurements
 !DSG kfact(jsl,jsc) = MIN(MAX(EXP(- f_ks * (zz(jsl)/mille - dp_comp)), un/kfact_max),un)
          kfact(jsl,jsc) = un
  !DSG
          ! PhD thesis of d'Orgeval, 2006, p81, Eqs. 4.39; 4.42, and Fig 4.14 

          nfact(jsl,jsc) = ( kfact(jsl,jsc) )**nk_rel
          afact(jsl,jsc) = ( kfact(jsl,jsc) )**ak_rel
       ENDDO
    ENDDO

Answer by Agnès Ducharne

Instead of hard-coding kfact, you may try one of the following options with externalized keywords in run.def:

KFACT DECAY RATE = 0.0

or

KFACT_STARTING_DEPTH = 2.0

or

KFACT_MAX = 1.0

But beware that kfact also serves to define other model parameters: nfact and afact. These parameters serve to modify the avan and nvan parameters because of the decrease of Ks with depth (look at section 3.3 p15 of the hydrol.f90 note).

The important point here is that other parameters than kfact are also used to modify nvan and avan, called n0 and alpha0 in Equations 36 and 37, section 3.3 of the hydrol note. If these two parameters are not changed, you will get varying nvan and avan with depth despite constant kfact.

To keep the original values of avan and nvan across the entire soil profile, prescribe the following keywords in your run.def:

CWRR_NKS_N0 = 0.
CWRR_AKS_A0 = 0.

Eventually, if what you want is to have vertically constant soil parameters:

  • do as above for kfact and CWRR_NKS_N0 and CWRR_AKS_A0
  • and you must also deactivate the increase of ks towards the surface owing to kfact_root (section 3.2.2 of the hydrol note), but this can only be done in the code to my knowledge.
Last modified 4 years ago Last modified on 2020-06-01T16:31:19+02:00