239 use machine
,only:kind_phys
249 real(krealfp),
parameter::
psatb=con_psat*1.e-5
317 real(krealfp) xmin,xmax,xinc,x,t
321 xinc=(xmax-xmin)/(
nxpvsl-1)
333 elemental function fpvsl(t)
366 real(krealfp),
intent(in):: t
371 jx=min(xj,
nxpvsl-1._krealfp)
376 elemental function fpvslq(t)
409 real(krealfp),
intent(in):: t
411 real(krealfp) xj,dxj,fj1,fj2,fj3
414 jx=min(max(nint(xj),2),
nxpvsl-1)
419 fpvslq=(((fj3+fj1)/2-fj2)*dxj+(fj3-fj1)/2)*dxj+fj2
423 elemental function fpvslx(t)
459 real(krealfp),
intent(in):: t
460 real(krealfp),
parameter:: dldt=con_cvap-con_cliq
461 real(krealfp),
parameter:: heat=con_hvap
462 real(krealfp),
parameter:: xpona=-dldt/con_rv
463 real(krealfp),
parameter:: xponb=-dldt/con_rv+heat/(con_rv*con_ttp)
467 fpvslx=con_psat*(tr**xpona)*exp(xponb*(1.-tr))
500 real(krealfp) xmin,xmax,xinc,x,t
504 xinc=(xmax-xmin)/(
nxpvsi-1)
516 elemental function fpvsi(t)
550 real(krealfp),
intent(in):: t
555 jx=min(xj,
nxpvsi-1._krealfp)
560 elemental function fpvsiq(t)
594 real(krealfp),
intent(in):: t
596 real(krealfp) xj,dxj,fj1,fj2,fj3
599 jx=min(max(nint(xj),2),
nxpvsi-1)
604 fpvsiq=(((fj3+fj1)/2-fj2)*dxj+(fj3-fj1)/2)*dxj+fj2
608 elemental function fpvsix(t)
645 real(krealfp),
intent(in):: t
646 real(krealfp),
parameter:: dldt=con_cvap-con_csol
647 real(krealfp),
parameter:: heat=con_hvap+con_hfus
648 real(krealfp),
parameter:: xpona=-dldt/con_rv
649 real(krealfp),
parameter:: xponb=-dldt/con_rv+heat/(con_rv*con_ttp)
653 fpvsix=con_psat*(tr**xpona)*exp(xponb*(1.-tr))
686 real(krealfp) xmin,xmax,xinc,x,t
690 xinc=(xmax-xmin)/(
nxpvs-1)
702 elemental function fpvs(t)
736 real(krealfp),
intent(in):: t
741 jx=min(xj,
nxpvs-1._krealfp)
746 elemental function fpvsq(t)
780 real(krealfp),
intent(in):: t
782 real(krealfp) xj,dxj,fj1,fj2,fj3
785 jx=min(max(nint(xj),2),
nxpvs-1)
790 fpvsq=(((fj3+fj1)/2-fj2)*dxj+(fj3-fj1)/2)*dxj+fj2
794 elemental function fpvsx(t)
836 real(krealfp),
intent(in):: t
837 real(krealfp),
parameter:: tliq=con_ttp
838 real(krealfp),
parameter:: tice=con_ttp-20.0
839 real(krealfp),
parameter:: dldtl=con_cvap-con_cliq
840 real(krealfp),
parameter:: heatl=con_hvap
841 real(krealfp),
parameter:: xponal=-dldtl/con_rv
842 real(krealfp),
parameter:: xponbl=-dldtl/con_rv+heatl/(con_rv*con_ttp)
843 real(krealfp),
parameter:: dldti=con_cvap-con_csol
844 real(krealfp),
parameter:: heati=con_hvap+con_hfus
845 real(krealfp),
parameter:: xponai=-dldti/con_rv
846 real(krealfp),
parameter:: xponbi=-dldti/con_rv+heati/(con_rv*con_ttp)
847 real(krealfp) tr,w,pvl,pvi
851 fpvsx=con_psat*(tr**xponal)*exp(xponbl*(1.-tr))
852 elseif(t.lt.tice)
then 853 fpvsx=con_psat*(tr**xponai)*exp(xponbi*(1.-tr))
855 w=(t-tice)/(tliq-tice)
856 pvl=con_psat*(tr**xponal)*exp(xponbl*(1.-tr))
857 pvi=con_psat*(tr**xponai)*exp(xponbi*(1.-tr))
858 fpvsx=w*pvl+(1.-w)*pvi
892 real(krealfp) xmin,xmax,xinc,t,x,pv
896 xinc=(xmax-xmin)/(
nxtdpl-1)
909 elemental function ftdpl(pv)
944 real(krealfp),
intent(in):: pv
949 jx=min(xj,
nxtdpl-1._krealfp)
954 elemental function ftdplq(pv)
989 real(krealfp),
intent(in):: pv
991 real(krealfp) xj,dxj,fj1,fj2,fj3
994 jx=min(max(nint(xj),2),
nxtdpl-1)
999 ftdplq=(((fj3+fj1)/2-fj2)*dxj+(fj3-fj1)/2)*dxj+fj2
1003 elemental function ftdplx(pv)
1036 real(krealfp) ftdplx
1037 real(krealfp),
intent(in):: pv
1045 elemental function ftdplxg(tg,pv)
1084 real(krealfp) ftdplxg
1085 real(krealfp),
intent(in):: tg,pv
1086 real(krealfp),
parameter:: terrm=1.e-6
1087 real(krealfp),
parameter:: dldt=con_cvap-con_cliq
1088 real(krealfp),
parameter:: heat=con_hvap
1089 real(krealfp),
parameter:: xpona=-dldt/con_rv
1090 real(krealfp),
parameter:: xponb=-dldt/con_rv+heat/(con_rv*con_ttp)
1091 real(krealfp) t,tr,pvt,el,dpvt,terr
1097 pvt=con_psat*(tr**xpona)*exp(xponb*(1.-tr))
1098 el=heat+dldt*(t-con_ttp)
1099 dpvt=el*pvt/(con_rv*t**2)
1102 if(abs(terr).le.terrm)
exit 1138 real(krealfp) xmin,xmax,xinc,t,x,pv
1142 xinc=(xmax-xmin)/(
nxtdpi-1)
1155 elemental function ftdpi(pv)
1191 real(krealfp),
intent(in):: pv
1196 jx=min(xj,
nxtdpi-1._krealfp)
1201 elemental function ftdpiq(pv)
1236 real(krealfp) ftdpiq
1237 real(krealfp),
intent(in):: pv
1239 real(krealfp) xj,dxj,fj1,fj2,fj3
1242 jx=min(max(nint(xj),2),
nxtdpi-1)
1247 ftdpiq=(((fj3+fj1)/2-fj2)*dxj+(fj3-fj1)/2)*dxj+fj2
1251 elemental function ftdpix(pv)
1285 real(krealfp) ftdpix
1286 real(krealfp),
intent(in):: pv
1294 elemental function ftdpixg(tg,pv)
1334 real(krealfp) ftdpixg
1335 real(krealfp),
intent(in):: tg,pv
1336 real(krealfp),
parameter:: terrm=1.e-6
1337 real(krealfp),
parameter:: dldt=con_cvap-con_csol
1338 real(krealfp),
parameter:: heat=con_hvap+con_hfus
1339 real(krealfp),
parameter:: xpona=-dldt/con_rv
1340 real(krealfp),
parameter:: xponb=-dldt/con_rv+heat/(con_rv*con_ttp)
1341 real(krealfp) t,tr,pvt,el,dpvt,terr
1347 pvt=con_psat*(tr**xpona)*exp(xponb*(1.-tr))
1348 el=heat+dldt*(t-con_ttp)
1349 dpvt=el*pvt/(con_rv*t**2)
1352 if(abs(terr).le.terrm)
exit 1388 real(krealfp) xmin,xmax,xinc,t,x,pv
1392 xinc=(xmax-xmin)/(
nxtdp-1)
1405 elemental function ftdp(pv)
1441 real(krealfp),
intent(in):: pv
1446 jx=min(xj,
nxtdp-1._krealfp)
1451 elemental function ftdpq(pv)
1487 real(krealfp),
intent(in):: pv
1489 real(krealfp) xj,dxj,fj1,fj2,fj3
1492 jx=min(max(nint(xj),2),
nxtdp-1)
1497 ftdpq=(((fj3+fj1)/2-fj2)*dxj+(fj3-fj1)/2)*dxj+fj2
1501 elemental function ftdpx(pv)
1536 real(krealfp),
intent(in):: pv
1544 elemental function ftdpxg(tg,pv)
1589 real(krealfp) ftdpxg
1590 real(krealfp),
intent(in):: tg,pv
1591 real(krealfp),
parameter:: terrm=1.e-6
1592 real(krealfp),
parameter:: tliq=con_ttp
1593 real(krealfp),
parameter:: tice=con_ttp-20.0
1594 real(krealfp),
parameter:: dldtl=con_cvap-con_cliq
1595 real(krealfp),
parameter:: heatl=con_hvap
1596 real(krealfp),
parameter:: xponal=-dldtl/con_rv
1597 real(krealfp),
parameter:: xponbl=-dldtl/con_rv+heatl/(con_rv*con_ttp)
1598 real(krealfp),
parameter:: dldti=con_cvap-con_csol
1599 real(krealfp),
parameter:: heati=con_hvap+con_hfus
1600 real(krealfp),
parameter:: xponai=-dldti/con_rv
1601 real(krealfp),
parameter:: xponbi=-dldti/con_rv+heati/(con_rv*con_ttp)
1602 real(krealfp) t,tr,w,pvtl,pvti,pvt,ell,eli,el,dpvt,terr
1609 pvt=con_psat*(tr**xponal)*exp(xponbl*(1.-tr))
1610 el=heatl+dldtl*(t-con_ttp)
1611 dpvt=el*pvt/(con_rv*t**2)
1612 elseif(t.lt.tice)
then 1613 pvt=con_psat*(tr**xponai)*exp(xponbi*(1.-tr))
1614 el=heati+dldti*(t-con_ttp)
1615 dpvt=el*pvt/(con_rv*t**2)
1617 w=(t-tice)/(tliq-tice)
1618 pvtl=con_psat*(tr**xponal)*exp(xponbl*(1.-tr))
1619 pvti=con_psat*(tr**xponai)*exp(xponbi*(1.-tr))
1620 pvt=w*pvtl+(1.-w)*pvti
1621 ell=heatl+dldtl*(t-con_ttp)
1622 eli=heati+dldti*(t-con_ttp)
1623 dpvt=(w*ell*pvtl+(1.-w)*eli*pvti)/(con_rv*t**2)
1627 if(abs(terr).le.terrm)
exit 1664 real(krealfp) xmin,xmax,ymin,ymax,xinc,yinc,x,y,pk,t
1666 xmin=con_ttp-90._krealfp
1667 xmax=con_ttp+30._krealfp
1668 ymin=0.04_krealfp**con_rocp
1669 ymax=1.10_krealfp**con_rocp
1670 xinc=(xmax-xmin)/(
nxthe-1)
1673 yinc=(ymax-ymin)/(
nythe-1)
1688 elemental function fthe(t,pk)
1724 real(krealfp),
intent(in):: t,pk
1726 real(krealfp) xj,yj,ftx1,ftx2
1730 if(xj.ge.1..and.yj.ge.1.)
then 1731 jx=min(xj,
nxthe-1._krealfp)
1732 jy=min(yj,
nythe-1._krealfp)
1735 fthe=ftx1+(yj-jy)*(ftx2-ftx1)
1742 elemental function ftheq(t,pk)
1778 real(krealfp),
intent(in):: t,pk
1780 real(krealfp) xj,yj,dxj,dyj
1781 real(krealfp) ft11,ft12,ft13,ft21,ft22,ft23,ft31,ft32,ft33
1782 real(krealfp) ftx1,ftx2,ftx3
1786 if(xj.ge.1..and.yj.ge.1.)
then 1787 jx=min(max(nint(xj),2),
nxthe-1)
1788 jy=min(max(nint(yj),2),
nythe-1)
1791 ft11=
tbthe(jx-1,jy-1)
1793 ft13=
tbthe(jx-1,jy+1)
1797 ft31=
tbthe(jx+1,jy-1)
1799 ft33=
tbthe(jx+1,jy+1)
1800 ftx1=(((ft31+ft11)/2-ft21)*dxj+(ft31-ft11)/2)*dxj+ft21
1801 ftx2=(((ft32+ft12)/2-ft22)*dxj+(ft32-ft12)/2)*dxj+ft22
1802 ftx3=(((ft33+ft13)/2-ft23)*dxj+(ft33-ft13)/2)*dxj+ft23
1803 ftheq=(((ftx3+ftx1)/2-ftx2)*dyj+(ftx3-ftx1)/2)*dyj+ftx2
1811 function fthex(t,pk)
1851 real(krealfp),
intent(in):: t,pk
1852 real(krealfp) p,tr,pv,pd,el,expo,expmax
1856 pv=
psatb*(tr**con_xpona)*exp(con_xponb*(1.-tr))
1859 el=con_hvap+con_dldt*(t-con_ttp)
1860 expo=el*con_eps*pv/(con_cp*t*pd)
1861 fthex=t*pd**(-con_rocp)*exp(expo)
1899 real(krealfp) xmin,xmax,ymin,ymax,xinc,yinc,x,y,pk,the,t,q,tg
1903 ymin=0.01_krealfp**con_rocp
1904 ymax=1.10_krealfp**con_rocp
1905 xinc=(xmax-xmin)/(
nxma-1)
1908 yinc=(ymax-ymin)/(
nyma-1)
1918 call stmaxg(tg,the,pk,t,q)
1927 elemental subroutine stma(the,pk,tma,qma)
1964 real(krealfp),
intent(in):: the,pk
1965 real(krealfp),
intent(out):: tma,qma
1967 real(krealfp) xj,yj,ftx1,ftx2,qx1,qx2
1971 jx=min(xj,
nxma-1._krealfp)
1972 jy=min(yj,
nyma-1._krealfp)
1975 tma=ftx1+(yj-jy)*(ftx2-ftx1)
1978 qma=qx1+(yj-jy)*(qx2-qx1)
1982 elemental subroutine stmaq(the,pk,tma,qma)
2019 real(krealfp),
intent(in):: the,pk
2020 real(krealfp),
intent(out):: tma,qma
2022 real(krealfp) xj,yj,dxj,dyj
2023 real(krealfp) ft11,ft12,ft13,ft21,ft22,ft23,ft31,ft32,ft33
2024 real(krealfp) ftx1,ftx2,ftx3
2025 real(krealfp) q11,q12,q13,q21,q22,q23,q31,q32,q33,qx1,qx2,qx3
2029 jx=min(max(nint(xj),2),
nxma-1)
2030 jy=min(max(nint(yj),2),
nyma-1)
2033 ft11=
tbtma(jx-1,jy-1)
2035 ft13=
tbtma(jx-1,jy+1)
2039 ft31=
tbtma(jx+1,jy-1)
2041 ft33=
tbtma(jx+1,jy+1)
2042 ftx1=(((ft31+ft11)/2-ft21)*dxj+(ft31-ft11)/2)*dxj+ft21
2043 ftx2=(((ft32+ft12)/2-ft22)*dxj+(ft32-ft12)/2)*dxj+ft22
2044 ftx3=(((ft33+ft13)/2-ft23)*dxj+(ft33-ft13)/2)*dxj+ft23
2045 tma=(((ftx3+ftx1)/2-ftx2)*dyj+(ftx3-ftx1)/2)*dyj+ftx2
2046 q11=
tbqma(jx-1,jy-1)
2048 q13=
tbqma(jx-1,jy+1)
2052 q31=
tbqma(jx+1,jy-1)
2054 q33=
tbqma(jx+1,jy+1)
2055 qx1=(((q31+q11)/2-q21)*dxj+(q31-q11)/2)*dxj+q21
2056 qx2=(((q32+q12)/2-q22)*dxj+(q32-q12)/2)*dxj+q22
2057 qx3=(((q33+q13)/2-q23)*dxj+(q33-q13)/2)*dxj+q23
2058 qma=(((qx3+qx1)/2-qx2)*dyj+(qx3-qx1)/2)*dyj+qx2
2062 elemental subroutine stmax(the,pk,tma,qma)
2099 real(krealfp),
intent(in):: the,pk
2100 real(krealfp),
intent(out):: tma,qma
2103 call stma(the,pk,tg,qg)
2104 call stmaxg(tg,the,pk,tma,qma)
2108 elemental subroutine stmaxg(tg,the,pk,tma,qma)
2153 real(krealfp),
intent(in):: tg,the,pk
2154 real(krealfp),
intent(out):: tma,qma
2155 real(krealfp),
parameter:: terrm=1.e-4
2156 real(krealfp) t,p,tr,pv,pd,el,expo,thet,dthet,terr
2163 pv=
psatb*(tr**con_xpona)*exp(con_xponb*(1.-tr))
2165 el=con_hvap+con_dldt*(t-con_ttp)
2166 expo=el*con_eps*pv/(con_cp*t*pd)
2167 thet=t*pd**(-con_rocp)*exp(expo)
2168 dthet=thet/t*(1.+expo*(con_dldt*t/el+el*p/(con_rv*t*pd)))
2169 terr=(thet-the)/dthet
2171 if(abs(terr).le.terrm)
exit 2175 pv=
psatb*(tr**con_xpona)*exp(con_xponb*(1.-tr))
2177 qma=con_eps*pv/(pd+con_eps*pv)
2209 real(krealfp) xmin,xmax,xinc,x,p
2212 xmax=110000._krealfp
2213 xinc=(xmax-xmin)/(
nxpkap-1)
2224 elemental function fpkap(p)
2260 real(krealfp),
intent(in):: p
2265 jx=min(xj,
nxpkap-1._krealfp)
2270 elemental function fpkapq(p)
2305 real(krealfp) fpkapq
2306 real(krealfp),
intent(in):: p
2308 real(krealfp) xj,dxj,fj1,fj2,fj3
2311 jx=min(max(nint(xj),2),
nxpkap-1)
2316 fpkapq=(((fj3+fj1)/2-fj2)*dxj+(fj3-fj1)/2)*dxj+fj2
2354 real(krealfp) fpkapo
2355 real(krealfp),
intent(in):: p
2356 integer,
parameter:: nnpk=2,ndpk=4
2357 real(krealfp):: cnpk(0:nnpk)=(/3.13198449e-1,5.78544829e-2,&
2359 real(krealfp):: cdpk(0:ndpk)=(/1.,8.15968401e-2,5.72839518e-4,&
2360 -4.86959812e-7,5.24459889e-10/)
2362 real(krealfp) pkpa,fnpk,fdpk
2364 pkpa=p*1.e-3_krealfp
2367 fnpk=pkpa*fnpk+cnpk(n)
2371 fdpk=pkpa*fdpk+cdpk(n)
2377 elemental function fpkapx(p)
2404 real(krealfp) fpkapx
2405 real(krealfp),
intent(in):: p
2407 fpkapx=(p/1.e5_krealfp)**con_rocp
2439 real(krealfp) xmin,xmax,xinc,x,p
2442 xmax=
fpkapx(110000._krealfp)
2443 xinc=(xmax-xmin)/(
nxrkap-1)
2454 elemental function frkap(pkap)
2489 real(krealfp),
intent(in):: pkap
2494 jx=min(xj,
nxrkap-1._krealfp)
2499 elemental function frkapq(pkap)
2533 real(krealfp) frkapq
2534 real(krealfp),
intent(in):: pkap
2536 real(krealfp) xj,dxj,fj1,fj2,fj3
2539 jx=min(max(nint(xj),2),
nxrkap-1)
2544 frkapq=(((fj3+fj1)/2-fj2)*dxj+(fj3-fj1)/2)*dxj+fj2
2548 elemental function frkapx(pkap)
2575 real(krealfp) frkapx
2576 real(krealfp),
intent(in):: pkap
2578 frkapx=pkap**(1/con_rocp)*1.e5_krealfp
2610 real(krealfp) xmin,xmax,ymin,ymax,xinc,yinc,x,y,tdpd,t
2616 xinc=(xmax-xmin)/(
nxtlcl-1)
2619 yinc=(ymax-ymin)/(
nytlcl-1)
2634 elemental function ftlcl(t,tdpd)
2667 real(krealfp),
intent(in):: t,tdpd
2669 real(krealfp) xj,yj,ftx1,ftx2
2673 jx=min(xj,
nxtlcl-1._krealfp)
2674 jy=min(yj,
nytlcl-1._krealfp)
2677 ftlcl=ftx1+(yj-jy)*(ftx2-ftx1)
2681 elemental function ftlclq(t,tdpd)
2713 real(krealfp) ftlclq
2714 real(krealfp),
intent(in):: t,tdpd
2716 real(krealfp) xj,yj,dxj,dyj
2717 real(krealfp) ft11,ft12,ft13,ft21,ft22,ft23,ft31,ft32,ft33
2718 real(krealfp) ftx1,ftx2,ftx3
2722 jx=min(max(nint(xj),2),
nxtlcl-1)
2723 jy=min(max(nint(yj),2),
nytlcl-1)
2735 ftx1=(((ft31+ft11)/2-ft21)*dxj+(ft31-ft11)/2)*dxj+ft21
2736 ftx2=(((ft32+ft12)/2-ft22)*dxj+(ft32-ft12)/2)*dxj+ft22
2737 ftx3=(((ft33+ft13)/2-ft23)*dxj+(ft33-ft13)/2)*dxj+ft23
2738 ftlclq=(((ftx3+ftx1)/2-ftx2)*dyj+(ftx3-ftx1)/2)*dyj+ftx2
2775 real(krealfp) ftlclo
2776 real(krealfp),
intent(in):: t,tdpd
2777 real(krealfp),
parameter:: clcl1= 0.954442e+0,clcl2= 0.967772e-3,&
2778 clcl3=-0.710321e-3,clcl4=-0.270742e-5
2780 ftlclo=t-tdpd*(clcl1+clcl2*t+tdpd*(clcl3+clcl4*t))
2784 elemental function ftlclx(t,tdpd)
2827 real(krealfp) ftlclx
2828 real(krealfp),
intent(in):: t,tdpd
2829 real(krealfp),
parameter:: terrm=1.e-4,tlmin=180.,tlminx=tlmin-5.
2830 real(krealfp) tr,pvdew,tlcl,ta,pvlcl,el,dpvlcl,terr,terrp
2834 pvdew=con_psat*(tr**con_xpona)*exp(con_xponb*(1.-tr))
2839 pvlcl=con_psat*(tr**con_xpona)*exp(con_xponb*(1.-tr))*ta**(1/con_rocp)
2840 el=con_hvap+con_dldt*(tlcl-con_ttp)
2841 dpvlcl=(el/(con_rv*t**2)+1/(con_rocp*tlcl))*pvlcl
2842 terr=(pvlcl-pvdew)/dpvlcl
2844 if(abs(terr).le.terrm.or.tlcl.lt.tlminx)
exit 2846 ftlclx=max(tlcl,tlmin)
elemental real(krealfp) function, public ftdpq(pv)
elemental real(krealfp) function, public ftdpiq(pv)
elemental real(krealfp) function, public frkapq(pkap)
real(krealfp) function, public fpkapo(p)
elemental real(krealfp) function, public fpvsi(t)
elemental real(krealfp) function, public ftlclx(t, tdpd)
elemental real(krealfp) function, public ftdp(pv)
integer, parameter nxpvsl
elemental real(krealfp) function, public ftdpl(pv)
elemental real(krealfp) function, public fpkapx(p)
elemental real(krealfp) function, public frkapx(pkap)
real(krealfp), dimension(nxtdp) tbtdp
elemental subroutine, public stmaxg(tg, the, pk, tma, qma)
elemental real(krealfp) function, public fpvsq(t)
real(krealfp) function, public fthex(t, pk)
elemental real(krealfp) function, public ftdplx(pv)
real(krealfp) function, public ftlclo(t, tdpd)
subroutine, public gfuncphys
real(krealfp), dimension(nxpvs) tbpvs
integer, parameter nytlcl
real(krealfp), dimension(nxtdpi) tbtdpi
elemental real(krealfp) function, public ftdpi(pv)
elemental real(krealfp) function, public fpvsix(t)
elemental real(krealfp) function, public ftdpxg(tg, pv)
elemental real(krealfp) function, public fpvs(t)
integer, parameter nxtdpi
elemental real(krealfp) function, public fpvsiq(t)
real(krealfp), dimension(nxrkap) tbrkap
real(krealfp), dimension(nxtlcl, nytlcl) tbtlcl
elemental subroutine, public stmaq(the, pk, tma, qma)
integer, parameter nxpkap
elemental real(krealfp) function, public ftdplxg(tg, pv)
real(krealfp), parameter psatb
elemental real(krealfp) function, public fpkap(p)
elemental subroutine, public stma(the, pk, tma, qma)
real(krealfp), dimension(nxpvsl) tbpvsl
elemental real(krealfp) function, public frkap(pkap)
elemental real(krealfp) function, public ftdpixg(tg, pv)
elemental real(krealfp) function, public fpvsx(t)
integer, parameter nxtdpl
real(krealfp), dimension(nxma, nyma) tbqma
elemental real(krealfp) function, public ftdplq(pv)
real(krealfp), dimension(nxtdpl) tbtdpl
integer, parameter nxpvsi
elemental real(krealfp) function, public ftlclq(t, tdpd)
real(krealfp), dimension(nxpkap) tbpkap
elemental real(krealfp) function, public fpvslx(t)
elemental real(krealfp) function, public ftdpx(pv)
elemental real(krealfp) function, public ftheq(t, pk)
elemental subroutine, public stmax(the, pk, tma, qma)
elemental real(krealfp) function, public ftlcl(t, tdpd)
real(krealfp), dimension(nxpvsi) tbpvsi
elemental real(krealfp) function, public fthe(t, pk)
elemental real(krealfp) function, public fpvsl(t)
integer, parameter nxtlcl
real(krealfp), dimension(nxma, nyma) tbtma
elemental real(krealfp) function, public ftdpix(pv)
integer, parameter nxrkap
elemental real(krealfp) function, public fpvslq(t)
integer, parameter, public krealfp
elemental real(krealfp) function, public fpkapq(p)
real(krealfp), dimension(nxthe, nythe) tbthe