Class | physics_qvapsat_tetens |
In: |
physics/physics_qvapsat_tetens.f90
|
Function : | |
result : | real(DBKIND) |
Temp : | real(DBKIND),intent(in) |
Press : | real(DBKIND),intent(in) |
Tetens の式を用いて飽和蒸気圧を計算する.
real(DBKIND) function DQvapSatDTemp(Temp, Press) result(result) ! !== 飽和蒸気圧の温度微分の計算 ! Tetens の式を用いて飽和蒸気圧を計算する. ! !==TODO ! * 引数として, 配列でも変数でも取れるようにしておくと便利だろう. ! interface とか使うと良いの??? ! use type_mod, only: REKIND, DBKIND, INTKIND, TOKEN, STRING use dc_trace, only: SetDebug, BeginSub, EndSub, DbgMessage, DataDump use constants_mod, only: EL , EpsV , ES0 , RVap ! 水蒸気気体定数 implicit none real(DBKIND),intent(in) :: Temp real(DBKIND),intent(in) :: Press character(STRING), parameter:: subname = "DQvapSatDTemp" continue ! 開始処理 call BeginSub( subname ) result = EL/ (RVap * Temp * Temp) * EpsV * ES0 * EXP( EL / RVap * ( 1.0d0/273.0d0 - 1.0d0/Temp ) ) / Press ! 終了処理 call EndSub( subname ) end function DQvapSatDTemp
Function : | |
result : | real(DBKIND) |
Temp : | real(DBKIND),intent(in) |
Press : | real(DBKIND),intent(in) |
Tetens の式を用いて飽和蒸気圧を計算する.
real(DBKIND) function QvapSat(Temp, Press) result(result) ! !== 飽和蒸気圧の計算 ! Tetens の式を用いて飽和蒸気圧を計算する. ! !==TODO ! * 引数として, 配列でも変数でも取れるようにしておくと便利だろう. ! interface とか使うと良いの??? ! use type_mod, only: REKIND, DBKIND, INTKIND, TOKEN, STRING use dc_trace, only: SetDebug, BeginSub, EndSub, DbgMessage, DataDump use constants_mod, only: EL , EpsV , ES0 , RVap ! 水蒸気気体定数 implicit none real(DBKIND),intent(in) :: Temp real(DBKIND),intent(in) :: Press character(STRING), parameter:: subname = "QvapSat" continue ! 開始処理 call BeginSub( subname ) result = EpsV * ES0 * EXP( EL / RVap * ( 1.0d0/273.0d0 - 1.0d0/Temp ) ) / Press ! 終了処理 call EndSub( subname ) end function QvapSat