function GetDryAirDensity(TDryBulb, Pressure) result(DryAirDensity)
!+ Return dry-air density given dry-bulb temperature and pressure.
!+ Reference:
!+ ASHRAE Handbook - Fundamentals (2017) ch. 1
!+ Notes:
!+ Eqn 14 for the perfect gas relationship for dry air.
!+ Eqn 1 for the universal gas constant.
!+ The factor 144 in IP is for the conversion of Psi = lb in⁻² to lb ft⁻².
real, intent(in) :: TDryBulb
!+ Dry-bulb temperature in °F [IP] or °C [SI]
real, intent(in) :: Pressure
!+ Atmospheric pressure in Psi [IP] or Pa [SI]
real :: DryAirDensity
!+ Dry air density in lb ft⁻³ [IP] or kg m⁻³ [SI]
if (isIP()) then
DryAirDensity = (144 * Pressure) / R_DA_IP / GetTRankineFromTFahrenheit(TDryBulb)
else
DryAirDensity = Pressure / R_DA_SI / GetTKelvinFromTCelsius(TDryBulb)
end if
end function GetDryAirDensity