snowage.f90

来自「CLM集合卡曼滤波数据同化算法」· F90 代码 · 共 61 行

F90
61
字号
  SUBROUTINE snowage ( dtime,tg,scv,scvold,sag )!=======================================================================!      Source file: snowage.f90! Original version: Robert Dickinson!! Update snow cover and snow age, based on BATS code!!=======================================================================  USE PHYCON_MODULE ! physical constant  IMPLICIT NONE!-------------------------- Dummy Argument -----------------------------  real, INTENT(in) :: &        dtime, &! time step [second]        tg,    &! temperature of soil at surface [K]        scv,   &! snow cover, water equivalent [mm]        scvold  ! snow cover for previous time step [mm]    real, INTENT(inout) :: &        sag     ! non dimensional snow age [-]!-------------------------- Local variables ----------------------------!  real         &!       age1,   &! snow aging factor due to crystal growth [-]       age2,   &! snow aging factor due to surface growth [-]       age3,   &! snow aging factor due to accum of other particles [-]       arg,    &! temporary variable used in snow age calculation [-]       arg2,   &! temporary variable used in snow age calculation [-]       dela,   &! temporary variable used in snow age calculation [-]       dels,   &! temporary variable used in snow age calculation [-]       sge      ! temporary variable used in snow age calculation [-]!-----------------------------------------------------------------------      if(scv <= 0.) then         sag = 0.!! Over antarctica!      else if (scv > 800.) then         sag = 0.!! Away from antarctica!      else         age3  = 0.3         arg   = 5.e3*(1./tfrz-1./tg)         arg2  = min(0.,10.*arg)         age2  = exp(arg2)         age1  = exp(arg)         dela  = 1.e-6*dtime*(age1+age2+age3)         dels  = 0.1*max(0.0,scv-scvold)         sge   = (sag+dela)*(1.0-dels)         sag   = max(0.0,sge)      end if  END SUBROUTINE snowage

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?