subroutine SaturationRatio(xz_Exner, xz_PotTemp, xz_SatRatio) !(out)
!=begin
!== Dependency
use dc_trace, only: BeginSub, EndSub
use gridset, only: DimXMin, DimXMax, DimZMin, DimZMax
use basicset, only: xz_ExnerBasicZ, xz_PotTempBasicZ, GasRDry, CpDry, PressBasis
use ChemData, only: ChemData_Cp, ChemData_SVapPress_AntoineA, ChemData_SVapPress_AntoineB ! Antoine ¤Î¼°¤Î·¸¿ô B
!== Input
real(8), intent(in) :: xz_Exner(DimXMin:DimXMax, DimZMin:DimZMax)
real(8), intent(in) :: xz_PotTemp(DimXMin:DimXMax, DimZMin:DimZMax)
!== Output
real(8), intent(out) :: xz_SatRatio(DimXMin:DimXMax, DimZMin:DimZMax)
!=end
call BeginSub("SaturationRatio", fmt="%c", c1="Calculate saturation ratio.")
xz_SatRatio = PressBasis * (xz_ExnerBasicZ + xz_Exner)**(CpDry / GasRDry) * ( exp( - ChemData_SVapPress_AntoineA(12) + ChemData_SVapPress_AntoineB(12) / ( (xz_ExnerBasicZ + xz_Exner) * (xz_PotTempBasicZ + xz_PotTemp) ) ) )
call EndSub("SaturationRatio")
end subroutine SaturationRatio