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


Kain-Fritsch Cumulus Scheme from WRF More...

Public Member Functions

subroutine kfcps (ids, ide, jds, jde, kds, kde,ims, ime, jms, jme, kms, kme,its, ite, jts, jte, kts, kte,DT, KTAU, DX, CUDT, ADAPT_STEP_FLAG,rho,RAINCV, PRATEC, NCA,U, V, TH, T, W, QV, dz8w, Pcps, pi,W0AVG, XLV0, XLV1, XLS0, XLS1, CP, R, G, EP1,EP2, SVP1, SVP2, SVP3, SVPT0,STEPCU, CU_ACT_FLAG, warm_rain
 
subroutine kfpara (I, J, U0, V0, T0, QV0, P0, DZQ, W0AVG1D, DT, DX, DXSQ, rho, XLV0, XLV1, XLS0, XLS1, CP, R, G, EP2, SVP1, SVP2, SVP3, SVPT0, DQDT, DQIDT, DQCDT, DQRDT, DQSDT, DTDT, RAINCV, PRATEC, NCA, warm_rain, qi_flag, qs_flag, ids, ide, jds, jde, kds, kde, ims, ime, jms, jme, kms, kme, its, ite, jts, jte, kts, kte)
 
subroutine condload (QLIQ, QICE, WTW, DZ, BOTERM, ENTERM, RATE, QNEWLQ, QNEWIC, QLQOUT, QICOUT, G)
 
subroutine dtfrznew (TU, P, THTEU, QVAP, QLIQ, QICE, RATIO2, TTFRZ, TBFRZ, QNWFRZ, RL, FRC1, EFFQ, IFLAG, XLV0, XLV1, XLS0, XLS1, EP2, ALIQ, BLIQ, CLIQ, DLIQ, AICE, BICE, CICE, DICE)
 
subroutine prof5 (EQ, EE, UD)
 
subroutine tpmix (P, THTU, TU, QU, QLIQ, QICE, QNEWLQ, QNEWIC, RATIO2, RL, XLV0, XLV1, XLS0, XLS1, EP2, ALIQ, BLIQ, CLIQ, DLIQ, AICE, BICE, CICE, DICE)
 
subroutine envirtht (P1, T1, Q1, THT1, R1, RL, EP2, ALIQ, BLIQ, CLIQ, DLIQ, AICE, BICE, CICE, DICE)
 
real function tpdd (P, THTED, TGS, RS, RD, RH, XLV0, XLV1, EP2, ALIQ, BLIQ, CLIQ, DLIQ, AICE, BICE, CICE, DICE)
 
subroutine kfinit (RTHCUTEN, RQVCUTEN, RQCCUTEN, RQRCUTEN, RQICUTEN, RQSCUTEN, NCA, W0AVG, P_QI, P_QS, 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)
 

Public Attributes

real, parameter rad = 1500.
 

Detailed Description


Kain-Fritsch Cumulus Scheme from WRF


Member Function/Subroutine Documentation

subroutine module_cu_kf::condload ( real, intent(inout)  QLIQ,
real, intent(inout)  QICE,
real, intent(inout)  WTW,
real, intent(in)  DZ,
real, intent(in)  BOTERM,
real, intent(in)  ENTERM,
real, intent(in)  RATE,
real, intent(inout)  QNEWLQ,
real, intent(inout)  QNEWIC,
real, intent(inout)  QLQOUT,
real, intent(inout)  QICOUT,
real, intent(in)  G 
)

Here is the caller graph for this function:

subroutine module_cu_kf::dtfrznew ( real, intent(inout)  TU,
real, intent(in)  P,
real, intent(inout)  THTEU,
real, intent(inout)  QVAP,
real, intent(inout)  QLIQ,
real, intent(inout)  QICE,
real, intent(inout)  RATIO2,
real, intent(in)  TTFRZ,
real, intent(in)  TBFRZ,
real, intent(inout)  QNWFRZ,
real, intent(inout)  RL,
real, intent(inout)  FRC1,
real, intent(in)  EFFQ,
integer, intent(inout)  IFLAG,
real, intent(in)  XLV0,
real, intent(in)  XLV1,
real, intent(in)  XLS0,
real, intent(in)  XLS1,
real, intent(in)  EP2,
real, intent(in)  ALIQ,
real, intent(in)  BLIQ,
real, intent(in)  CLIQ,
real, intent(in)  DLIQ,
real, intent(in)  AICE,
real, intent(in)  BICE,
real, intent(in)  CICE,
real, intent(in)  DICE 
)

Here is the caller graph for this function:

subroutine module_cu_kf::envirtht ( real, intent(in)  P1,
real, intent(in)  T1,
real, intent(in)  Q1,
real, intent(inout)  THT1,
real, intent(in)  R1,
real, intent(in)  RL,
real, intent(in)  EP2,
real, intent(in)  ALIQ,
real, intent(in)  BLIQ,
real, intent(in)  CLIQ,
real, intent(in)  DLIQ,
real, intent(in)  AICE,
real, intent(in)  BICE,
real, intent(in)  CICE,
real, intent(in)  DICE 
)

Here is the caller graph for this function:

subroutine module_cu_kf::kfcps ( 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,
real, intent(in)  DT,
integer, intent(in)  KTAU,
real, intent(in)  DX,
real, intent(in)  CUDT,
logical, intent(in), optional  ADAPT_STEP_FLAG,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(in)  rho,
real, dimension( ims:ime , jms:jme ), intent(inout)  RAINCV,
real, dimension( ims:ime , jms:jme ), intent(inout)  PRATEC,
real, dimension( ims:ime , jms:jme ), intent(inout)  NCA,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(in)  U,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(in)  V,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(in)  TH,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(in)  T,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(in)  W,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(in)  QV,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(in)  dz8w,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(in)  Pcps,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(in)  pi,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(inout)  W0AVG,
real, intent(in)  XLV0,
real, intent(in)  XLV1,
real, intent(in)  XLS0,
real, intent(in)  XLS1,
real, intent(in)  CP,
real, intent(in)  R,
real, intent(in)  G,
real, intent(in)  EP1,
real, intent(in)  EP2,
real, intent(in)  SVP1,
real, intent(in)  SVP2,
real, intent(in)  SVP3,
real, intent(in)  SVPT0,
integer, intent(in)  STEPCU,
logical, dimension( ims:ime , jms:jme ), intent(inout)  CU_ACT_FLAG,
logical, intent(in)  warm_rain 
)

Here is the call graph for this function:

Here is the caller graph for this function:

subroutine module_cu_kf::kfinit ( real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  RTHCUTEN,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  RQVCUTEN,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  RQCCUTEN,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  RQRCUTEN,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  RQICUTEN,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  RQSCUTEN,
real, dimension( ims:ime , jms:jme ), intent(inout)  NCA,
real, dimension( ims:ime , kms:kme , jms:jme ), intent(out)  W0AVG,
integer, intent(in)  P_QI,
integer, intent(in)  P_QS,
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:

subroutine module_cu_kf::kfpara ( integer, intent(in)  I,
integer, intent(in)  J,
real, dimension( kts:kte ), intent(in)  U0,
real, dimension( kts:kte ), intent(in)  V0,
real, dimension( kts:kte ), intent(in)  T0,
real, dimension( kts:kte ), intent(in)  QV0,
real, dimension( kts:kte ), intent(in)  P0,
real, dimension( kts:kte ), intent(in)  DZQ,
real, dimension( kts:kte ), intent(in)  W0AVG1D,
real, intent(in)  DT,
real, intent(in)  DX,
real, intent(in)  DXSQ,
real, dimension( kts:kte ), intent(in)  rho,
real, intent(in)  XLV0,
real, intent(in)  XLV1,
real, intent(in)  XLS0,
real, intent(in)  XLS1,
real, intent(in)  CP,
real, intent(in)  R,
real, intent(in)  G,
real, intent(in)  EP2,
real, intent(in)  SVP1,
real, intent(in)  SVP2,
real, intent(in)  SVP3,
real, intent(in)  SVPT0,
real, dimension( kts:kte ), intent(inout)  DQDT,
real, dimension( kts:kte ), intent(inout)  DQIDT,
real, dimension( kts:kte ), intent(inout)  DQCDT,
real, dimension( kts:kte ), intent(inout)  DQRDT,
real, dimension( kts:kte ), intent(inout)  DQSDT,
real, dimension( kts:kte ), intent(inout)  DTDT,
real, dimension( ims:ime , jms:jme ), intent(inout)  RAINCV,
real, dimension( ims:ime , jms:jme ), intent(inout)  PRATEC,
real, dimension( ims:ime , jms:jme ), intent(inout)  NCA,
logical, intent(in)  warm_rain,
logical  qi_flag,
logical  qs_flag,
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_cu_kf::prof5 ( real, intent(in)  EQ,
real, intent(inout)  EE,
real, intent(inout)  UD 
)

Here is the caller graph for this function:

real function module_cu_kf::tpdd ( real, intent(in)  P,
real, intent(in)  THTED,
real, intent(in)  TGS,
real, intent(inout)  RS,
real, intent(in)  RD,
real, intent(in)  RH,
real, intent(in)  XLV0,
real, intent(in)  XLV1,
real, intent(in)  EP2,
real, intent(in)  ALIQ,
real, intent(in)  BLIQ,
real, intent(in)  CLIQ,
real, intent(in)  DLIQ,
real, intent(in)  AICE,
real, intent(in)  BICE,
real, intent(in)  CICE,
real, intent(in)  DICE 
)

Here is the caller graph for this function:

subroutine module_cu_kf::tpmix ( real, intent(in)  P,
real, intent(in)  THTU,
real, intent(inout)  TU,
real, intent(inout)  QU,
real, intent(inout)  QLIQ,
real, intent(inout)  QICE,
real, intent(inout)  QNEWLQ,
real, intent(inout)  QNEWIC,
real, intent(in)  RATIO2,
real, intent(in)  RL,
real, intent(in)  XLV0,
real, intent(in)  XLV1,
real, intent(in)  XLS0,
real, intent(in)  XLS1,
real, intent(in)  EP2,
real, intent(in)  ALIQ,
real, intent(in)  BLIQ,
real, intent(in)  CLIQ,
real, intent(in)  DLIQ,
real, intent(in)  AICE,
real, intent(in)  BICE,
real, intent(in)  CICE,
real, intent(in)  DICE 
)

Here is the caller graph for this function:

Member Data Documentation

real, parameter module_cu_kf::rad = 1500.

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