The Intermediate Complexity Atmospheric Research model (ICAR)
A computationally efficient atmospheric model for downscaling.
 All Classes Files Functions Variables
Public Member Functions | List of all members
module_bl_ysu Module Reference


YSU PBL scheme (from WRF) More...

Public Member Functions

subroutine ysu (u3d, v3d, th3d, t3d, qv3d, qc3d, qi3d, p3d, p3di, pi3d,rublten, rvblten, rthblten,rqvblten, rqcblten, rqiblten, flag_qi,cp, g, rovcp, rd, rovg,dz8w, z, xlv, rv, psfc,znu, znw, mut, p_top,znt, ust, zol, hol, hpbl, psim, psih,xland, hfx, qfx, tsk, gz1oz0, wspd, br,dt, dtmin, kpbl2d,svp1, svp2, svp3, svpt0, ep1, ep2, karman, eomeg, stbolt,exch_h,u10, v10,ids, ide, jds, jde, kds, kde,ims, ime, jms, jme, kms, kme,its, ite, jts, jte, kts, kte,
 
subroutine ysu2d (j, ux, vx, tx, qx, qcx, qix, p2d, p2di, pi2d,utnp, vtnp, ttnp,qtnp, qctnp, qitnp,cp, g, rovcp, rd, rovg,dz8w2d, z2d, xlv, rv, psfcpa,znt, ust, zol, hol, hpbl, psim, psih,xland, hfx, qfx, tsk, gz1oz0, wspd, br,dt, dtmin, kpbl1d,svp1, svp2, svp3, svpt0, ep1, ep2, karman, eomeg, stbolt,exch_hx,u10, v10,ids, ide, jds, jde, kds, kde,ims, ime, jms, jme, kms, kme,its, ite, jts, jte, kts, kte,
 
subroutine tridin (cl, cm, cu, r1, r2, au, f1, f2, its, ite, kts, kte, nt)
 
subroutine ysuinit (rublten, rvblten, rthblten, rqvblten, rqcblten, rqiblten, p_qi, p_first_scalar, restart, allowed_to_read, ids, ide, jds, jde, kds, kde, ims, ime, jms, jme, kms, kme, its, ite, jts, jte, kts, kte)
 

Detailed Description


YSU PBL scheme (from WRF)


Member Function/Subroutine Documentation

subroutine module_bl_ysu::tridin ( real, dimension( its:ite, kts+1:kte+1 ), intent(in)  cl,
real, dimension( its:ite, kts:kte ), intent(in)  cm,
real, dimension( its:ite, kts:kte ), intent(inout)  cu,
real, dimension( its:ite, kts:kte ), intent(in)  r1,
real, dimension( its:ite, kts:kte,nt ), intent(in)  r2,
real, dimension( its:ite, kts:kte ), intent(inout)  au,
real, dimension( its:ite, kts:kte ), intent(inout)  f1,
real, dimension( its:ite, kts:kte,nt ), intent(inout)  f2,
integer, intent(in)  its,
integer, intent(in)  ite,
integer, intent(in)  kts,
integer, intent(in)  kte,
integer, intent(in)  nt 
)

Here is the caller graph for this function:

subroutine module_bl_ysu::ysu ( real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  u3d,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  v3d,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  th3d,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  t3d,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  qv3d,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  qc3d,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  qi3d,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  p3d,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  p3di,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  pi3d,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(inout)  rublten,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(inout)  rvblten,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(inout)  rthblten,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(inout)  rqvblten,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(inout)  rqcblten,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(inout), optional  rqiblten,
logical, intent(in)  flag_qi,
real, intent(in)  cp,
real, intent(in)  g,
real, intent(in)  rovcp,
real, intent(in)  rd,
real, intent(in)  rovg,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  dz8w,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(in)  z,
real, intent(in)  xlv,
real, intent(in)  rv,
real, dimension( ims:ime, jms:jme ), intent(in)  psfc,
real, dimension( kms:kme ), intent(in), optional  znu,
real, dimension( kms:kme ), intent(in), optional  znw,
real, dimension( ims:ime, jms:jme ), intent(in), optional  mut,
real, intent(in), optional  p_top,
real, dimension( ims:ime, jms:jme ), intent(inout)  znt,
real, dimension( ims:ime, jms:jme ), intent(inout)  ust,
real, dimension( ims:ime, jms:jme ), intent(inout)  zol,
real, dimension( ims:ime, jms:jme ), intent(inout)  hol,
real, dimension( ims:ime, jms:jme ), intent(inout)  hpbl,
real, dimension( ims:ime, jms:jme ), intent(in)  psim,
real, dimension( ims:ime, jms:jme ), intent(in)  psih,
real, dimension( ims:ime, jms:jme ), intent(in)  xland,
real, dimension( ims:ime, jms:jme ), intent(in)  hfx,
real, dimension( ims:ime, jms:jme ), intent(in)  qfx,
real, dimension( ims:ime, jms:jme ), intent(in)  tsk,
real, dimension( ims:ime, jms:jme ), intent(in)  gz1oz0,
real, dimension( ims:ime, jms:jme ), intent(inout)  wspd,
real, dimension( ims:ime, jms:jme ), intent(in)  br,
real, intent(in)  dt,
real, intent(in)  dtmin,
integer, dimension( ims:ime, jms:jme ), intent(out)  kpbl2d,
real, intent(in)  svp1,
real, intent(in)  svp2,
real, intent(in)  svp3,
real, intent(in)  svpt0,
real, intent(in)  ep1,
real, intent(in)  ep2,
real, intent(in)  karman,
real, intent(in)  eomeg,
real, intent(in)  stbolt,
real, dimension( ims:ime, kms:kme, jms:jme ), intent(inout)  exch_h,
real, dimension( ims:ime, jms:jme ), intent(in)  u10,
real, dimension( ims:ime, jms:jme ), intent(in)  v10,
integer, intent(in)  ids,
integer, intent(in)  ide,
integer, intent(in)  jds,
integer, intent(in)  jde,
integer, intent(in)  kds,
integer, intent(in)  kde,
integer, intent(in)  ims,
integer, intent(in)  ime,
integer, intent(in)  jms,
integer, intent(in)  jme,
integer, intent(in)  kms,
integer, intent(in)  kme,
integer, intent(in)  its,
integer, intent(in)  ite,
integer, intent(in)  jts,
integer, intent(in)  jte,
integer, intent(in)  kts,
integer, intent(in)  kte 
)

Here is the call graph for this function:

subroutine module_bl_ysu::ysu2d ( integer, intent(in)  j,
real, dimension( ims:ime, kms:kme ), intent(in)  ux,
real, dimension( ims:ime, kms:kme ), intent(in)  vx,
real, dimension( ims:ime, kms:kme ), intent(in)  tx,
real, dimension( ims:ime, kms:kme ), intent(in)  qx,
real, dimension( ims:ime, kms:kme ), intent(in)  qcx,
real, dimension( ims:ime, kms:kme ), intent(in)  qix,
real, dimension( its:ite, kts:kte ), intent(in)  p2d,
real, dimension( its:ite, kts:kte+1 ), intent(in)  p2di,
real, dimension( ims:ime, kms:kme ), intent(in)  pi2d,
real, dimension( ims:ime, kms:kme ), intent(inout)  utnp,
real, dimension( ims:ime, kms:kme ), intent(inout)  vtnp,
real, dimension( ims:ime, kms:kme ), intent(inout)  ttnp,
real, dimension( ims:ime, kms:kme ), intent(inout)  qtnp,
real, dimension( ims:ime, kms:kme ), intent(inout)  qctnp,
real, dimension( its:ite, kts:kte ), intent(inout)  qitnp,
real, intent(in)  cp,
real, intent(in)  g,
real, intent(in)  rovcp,
real, intent(in)  rd,
real, intent(in)  rovg,
real, dimension( ims:ime, kms:kme ), intent(in)  dz8w2d,
real, dimension( ims:ime, kms:kme ), intent(in)  z2d,
real, intent(in)  xlv,
real, intent(in)  rv,
real, dimension( ims:ime ), intent(in)  psfcpa,
real, dimension( ims:ime ), intent(inout)  znt,
real, dimension( ims:ime ), intent(inout)  ust,
real, dimension( ims:ime ), intent(inout)  zol,
real, dimension( ims:ime ), intent(inout)  hol,
real, dimension( ims:ime ), intent(inout)  hpbl,
real, dimension( ims:ime ), intent(in)  psim,
real, dimension( ims:ime ), intent(in)  psih,
real, dimension( ims:ime ), intent(in)  xland,
real, dimension( ims:ime ), intent(in)  hfx,
real, dimension( ims:ime ), intent(in)  qfx,
real, dimension( ims:ime ), intent(in)  tsk,
real, dimension( ims:ime ), intent(in)  gz1oz0,
real, dimension( ims:ime ), intent(inout)  wspd,
real, dimension( ims:ime ), intent(in)  br,
real, intent(in)  dt,
real, intent(in)  dtmin,
integer, dimension( ims:ime ), intent(out)  kpbl1d,
real, intent(in)  svp1,
real, intent(in)  svp2,
real, intent(in)  svp3,
real, intent(in)  svpt0,
real, intent(in)  ep1,
real, intent(in)  ep2,
real, intent(in)  karman,
real, intent(in)  eomeg,
real, intent(in)  stbolt,
real, dimension( ims:ime, kms:kme ), intent(inout)  exch_hx,
real, dimension( ims:ime ), intent(in)  u10,
real, dimension( ims:ime ), intent(in)  v10,
integer, intent(in)  ids,
integer, intent(in)  ide,
integer, intent(in)  jds,
integer, intent(in)  jde,
integer, intent(in)  kds,
integer, intent(in)  kde,
integer, intent(in)  ims,
integer, intent(in)  ime,
integer, intent(in)  jms,
integer, intent(in)  jme,
integer, intent(in)  kms,
integer, intent(in)  kme,
integer, intent(in)  its,
integer, intent(in)  ite,
integer, intent(in)  jts,
integer, intent(in)  jte,
integer, intent(in)  kts,
integer, intent(in)  kte 
)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine module_bl_ysu::ysuinit ( real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  rublten,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  rvblten,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  rthblten,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  rqvblten,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  rqcblten,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  rqiblten,
integer, intent(in)  p_qi,
integer, intent(in)  p_first_scalar,
logical, intent(in)  restart,
logical, intent(in)  allowed_to_read,
integer, intent(in)  ids,
integer, intent(in)  ide,
integer, intent(in)  jds,
integer, intent(in)  jde,
integer, intent(in)  kds,
integer, intent(in)  kde,
integer, intent(in)  ims,
integer, intent(in)  ime,
integer, intent(in)  jms,
integer, intent(in)  jme,
integer, intent(in)  kms,
integer, intent(in)  kme,
integer, intent(in)  its,
integer, intent(in)  ite,
integer, intent(in)  jts,
integer, intent(in)  jte,
integer, intent(in)  kts,
integer, intent(in)  kte 
)

Here is the caller graph for this function:


The documentation for this module was generated from the following file: