⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 clm1d_allocate.f90

📁 CLM集合卡曼滤波数据同化算法
💻 F90
字号:
  SUBROUTINE clm1d_allocate (lpt, kpt, msub, maxsnl, msl)! ======================================================================!      source file: clm1d_allocate.f90! Original version: Yongjiu Dai, September 15, 1999!! Allocates memory for CLM time-invariant variables and time-varying variables!! ======================================================================  USE clmtc_module  USE clmtv_module  USE miscell_module  IMPLICIT NONE  integer, INTENT(in) :: &           lpt,       &!number of land points on clmlon x clmlat grid           kpt,       &!total number of clm land points, including subgrid points           msub,      &!number of submesh           msl,       &!number of soil layers           maxsnl      !number of snow layers! ----------------------------------------------------------------------! CLM time-invariant variables ! ----------------------------------------------------------------------! vectors for land points      allocate (ixy  (1:lpt))      allocate (jxy  (1:lpt))      allocate (ktile(1:lpt))      allocate (kvec (1:lpt, 1:msub))      allocate (klnd (1:kpt))      allocate (dlat (1:kpt))      allocate (dlon (1:kpt))      allocate (ivt  (1:kpt))      allocate (isc  (1:kpt))      allocate (sand (1:kpt))      allocate (clay (1:kpt))      allocate (wsg2g(1:lpt, 1:msub))!  Soil parameters      allocate (csol   (1:msl,1:kpt))      allocate (porsl  (1:msl,1:kpt))      allocate (phi0   (1:msl,1:kpt))      allocate (bsw    (1:msl,1:kpt))      allocate (dkmg   (1:msl,1:kpt))      allocate (dksatu (1:msl,1:kpt))      allocate (dkdry  (1:msl,1:kpt))      allocate (albsol (1:kpt))! Vegetation static parameters      allocate (z0m    (1:kpt))      allocate (displa (1:kpt))      allocate (sqrtdi (1:kpt))      allocate (effcon (1:kpt))      allocate (vmax25 (1:kpt))      allocate (slti   (1:kpt))      allocate (hlti   (1:kpt))      allocate (shti   (1:kpt))      allocate (hhti   (1:kpt))      allocate (trda   (1:kpt))      allocate (trdm   (1:kpt))      allocate (trop   (1:kpt))      allocate (gradm  (1:kpt))      allocate (binter (1:kpt))      allocate (extkn  (1:kpt))      allocate (albvgs (1:kpt))      allocate (albvgl (1:kpt))      allocate (chil   (1:kpt))      allocate (ref    (1:2,1:2,1:kpt))      allocate (tran   (1:2,1:2,1:kpt))      allocate (hksati (1:msl, 1:kpt))      allocate (rootfr (1:msl, 1:kpt))! ----------------------------------------------------------------------! CLM time-varying variables ! ----------------------------------------------------------------------      allocate (snl(1:kpt))      allocate (dz     (maxsnl+1:msl, 1:kpt))      allocate (z      (maxsnl+1:msl, 1:kpt))      allocate (zi     (maxsnl+0:msl, 1:kpt))      allocate (tss    (maxsnl+1:msl, 1:kpt))      allocate (wliq   (maxsnl+1:msl, 1:kpt))      allocate (wice   (maxsnl+1:msl, 1:kpt))      allocate (rootr  (    1:msl, 1:kpt))      allocate (fveg   (1:kpt))      allocate (green  (1:kpt))      allocate (fsno   (1:kpt))      allocate (sigf   (1:kpt))      allocate (tlsun  (1:kpt))      allocate (tlsha  (1:kpt))      allocate (ldew   (1:kpt))      allocate (sag    (1:kpt))      allocate (scv    (1:kpt))      allocate (snowdp (1:kpt))      allocate (etrc   (1:kpt))      allocate (tg     (1:kpt))      allocate (lai    (1:kpt))      allocate (sai    (1:kpt))! -----------------------------------------------------------------! Albedo calculation for next time step! -----------------------------------------------------------------      allocate (albg   (1:2, 1:2, 1:kpt))      allocate (albv   (1:2, 1:2, 1:kpt))      allocate (alb    (1:2, 1:2, 1:kpt))      allocate (ssun   (1:2, 1:2, 1:kpt))      allocate (ssha   (1:2, 1:2, 1:kpt))      allocate (tranc  (1:2, 1:2, 1:kpt))      allocate (thermk           (1:kpt))      allocate (extkb            (1:kpt))      allocate (extkd            (1:kpt))      allocate (cosz             (1:kpt))! -----------------------------------------------------------------! Forcing! -----------------------------------------------------------------      allocate (sols   (1:kpt))      allocate (soll   (1:kpt))      allocate (solsd  (1:kpt))      allocate (solld  (1:kpt))      allocate (frl    (1:kpt))      allocate (pco2m  (1:kpt))      allocate (po2m   (1:kpt))      allocate (us     (1:kpt))      allocate (vs     (1:kpt))      allocate (tm     (1:kpt))      allocate (qm     (1:kpt))      allocate (rainrate(1:kpt))      allocate (snowrate(1:kpt))      allocate (psrf   (1:kpt))      allocate (rhoair (1:kpt))      allocate (hu     (1:kpt))      allocate (ht     (1:kpt))      allocate (hq     (1:kpt))      allocate (iptype (1:kpt))! -----------------------------------------------------------------! Fluxes! -----------------------------------------------------------------      allocate (taux   (1:kpt))      allocate (tauy   (1:kpt))      allocate (fsena  (1:kpt))      allocate (fevpa  (1:kpt))      allocate (lfevpa (1:kpt))      allocate (fsenl  (1:kpt))      allocate (fevpl  (1:kpt))      allocate (etr    (1:kpt))      allocate (fseng  (1:kpt))      allocate (fevpg  (1:kpt))      allocate (olrg   (1:kpt))      allocate (fgrnd  (1:kpt))      allocate (trad   (1:kpt))      allocate (tref   (1:kpt))      allocate (rsur   (1:kpt))      allocate (rnof   (1:kpt))      allocate (rst    (1:kpt))      allocate (assim  (1:kpt))      allocate (respc  (1:kpt))! -----------------------------------------------------------------!  Net solar radiation! -----------------------------------------------------------------      allocate (parsun (1:kpt))      allocate (parsha (1:kpt))      allocate (sabvsun(1:kpt))      allocate (sabvsha(1:kpt))      allocate (sabg   (1:kpt))      allocate (sabvg  (1:kpt))! -----------------------------------------------------------------! for temporary use! -----------------------------------------------------------------      allocate (totwb  (1:kpt))      allocate (errore (1:kpt))      allocate (xerr   (1:kpt))      allocate (zerr   (1:kpt))      allocate (wt     (1:kpt))      allocate (ssw    (1:kpt))! -----------------------------------------------------------------  END SUBROUTINE clm1d_allocate

⌨️ 快捷键说明

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