\(\newcommand{\dv}[1]{\frac{d}{ d #1}}\) \(\newcommand{\dt}[2]{\frac{d #1}{ d #2}}\) \(\newcommand{\wstar}{\omega_{s}^{*}}\) \(\newcommand{\twb}{T_{wb}}\) \(\newcommand{\low}{ 1093 + 0.444 T_{db} - T_{wb} }\) \(\newcommand{\high}{\left(1093 - 0.556\;T_{wb} \right) \omega_{s}^{*} - 0.24 \left(T_{db} - T_{wb} \right) }\) \(\newcommand{\highlefttermderiv}{\left(1093 - 0.556\;T_{wb} \right) \dt{\wstar{}}{\twb{}} -0.556 \wstar{}}\)

For the impatient: Sample Spreadsheet

If you have worked with psychrometric formulas before, you know that if you have three independent quantities, you can determine the rest. For example, if you have the total atmospheric pressure, dry-bulb temperature (the temperature that most people know as just “temperature”), and dew point temperature, the other values for

  1. specific volume
  2. humidity ratio
  3. relative humidity
  4. wet bulb temperature

are fixed. If you have a copy of the ASHRAE Fundamentals, you can find explicit formulas for specific volume, humidity ratio, and relative humidity. But how exactly are you supposed to determine the wet bulb temperature? The only guidance from the ASHRAE fundamentals is that you are going to have to do this numerically.

So let’s dive into how this can be done in practice.

The Deep Details

For this example, we are going to assume that we know the total pressure \(P\), the dry bulb temperature \(T_{db}\), and the humidity ratio \(\omega\). I’m going to be operating with the ideal gas assumptions and use the suggested formulas from the ASHRAE Fundamentals Handbook.

The general approach that I’m going to propose here is that we work with a function that we want to ‘zero’. Finding the ‘zeros’ to functions is a common thing that mathematicians like to do, and there are numerous techniques that can be used to achieve this goal.

We are going to need some various psychrometric functions along the way. The first important function is that for the saturation pressure of water. The most common relationship for this was produced by Hyland and Wexler. For temperatures above the triple point of 32°F, the partial pressure of water is an exponential function where the exponent is a function of temperature, \(f(T)\).

\[\begin{equation} P_{v} = e^{f(T)} \label{eq:pv} \end{equation}\]

where, for temperatures greater than 32,

\[\begin{equation} f(T) = \frac{C_{8}}{T} + C_{9} + C_{10}T + C_{11} T^{2} + C_{12} T^{3} + C_{13} \ln \left( T \right) \label{eq:pvn} \end{equation}\]

(For this formula only, \(T\) must be an absolute temperature in °R!)

The \(C\) terms start with the 8th one because I’m following along with the ASHRAE Fundamentals, and there is a similar formula for temperatures below 32°F which takes \(C_1\) through \(C_8\).

Here’s a function for \(\omega\) that relates it to the wet bulb temperature.

\[\begin{equation} \omega = \frac{\high}{\low} \label{eq:omega} \end{equation}\]

From this, you might think that we can just rearrange and solve for \(T_{wb}\). Unfortunately, it’s not that easy. See that \(\omega_{s}^{*}\) term? That variable represents the saturated humidity ratio at the web bulb temperature \(T_{wb}\). So if you were to try to replace it, you’d get all those terms from Equations \eqref{eq:pv} and \eqref{eq:pvn}. No way to get an analytical solution, sorry.

What we can do then is try a whole bunch of \(T_{wb}\)’s and see which one makes the \(\omega\) from Equation \eqref{eq:omega} match the \(\omega\) we already know.

Another way to look at this problem is that we are trying to find the zero to the following function, which I’m going to call \(z\) for zero.

\[\begin{equation} z (T_{wb}) = \frac{\left(1093 - 0.556\;T_{wb} \right) \omega_{s}^{*} - 0.24 \left(T_{db} - T_{wb} \right) }{ 1093 + 0.444 T_{db} - T_{wb} } - \omega \label{eq:zerofunc} \end{equation}\]

A method for finding the zero of a function that’s an absolute classic, is the Newton-Raphson method (also known as just Newton’s method). We are going to start with an initial guess, an then use information about the derivative at that point to then make successively better guesses about where the zero is located. And as long as your function and the derivative are “well-behaved”, which these functions are, then you shouldn’t have any problems with convergence. And converge quickly it does.

So to use the Newton-Raphson method, we are going to need the derivative of the function in Equation 4. This may look impossible, but lets break it down step by step.

First part to notice is that the second term, \(\omega\) by itself, has a derivative of 0 with respect to \(T_{wb}\).

The first term is a quotient. So let’s use the quotient rule. I normally sing this to myself in my head. ‘Low de high less high de low and the bottom is squared’ (Sorry there’s no way to put the tune here!).

Let’s start with the bottom since that’s the easier case. The derivative is just \(-1\).

\[\dv{T_{wb}} \left( 1093 + 0.444 T_{db} - T_{wb} \right) = -1\]

Now we can look at the top. It is two terms, both dependent on \(T_{wb}\). The second term is pretty easy. Distribute the \(-0.24\) and multiply it by the negative sign with \(T_{wb}\) and you get a derivative of 0.24.

We now have to come to grips with that \(\wstar{}\) term. We first apply the product rule, with the understanding that \(\wstar{}\) is a function of \(\twb{}\).

\[\dv{T_{wb}} \bigg(\left(1093 - 0.556\;T_{wb} \right) \omega_{s}^{*} \bigg) = \highlefttermderiv{}\]

So what is \(\wstar{}\) again? It’s the saturation humidity ratio at the wet bulb temperature.

\[\wstar = 0.621945 \frac{P_{s,wb}}{P - P_{s,wb}}\]

Let’s now take the derivative of this, knowing \(P_{s,wb}\) is obviously a function of wet bulb. Again, we are going to take advantage of the quotient rule.

\[\dt{\omega_{s}^{*}}{T_{wb}} = 0.621945 \frac{\left(P - P_{s,wb}\right) \dt{P_{s,wb}}{T_{wb}} - P_{s,wb} \left( - \dt{P_{s,wb} }{T_{wb} } \right) }{ \left( P - P_{s,wb} \right)^{2} }\]

We just keep digging deeper. Now we have to find the derivative of the saturation pressure function, the one back up in Equations \eqref{eq:pv} and \eqref{eq:pvn}. It’s not too bad since we only need some basic derivative building blocks.

\[P_{s,wb} = e^{f(T_{wb})}\]

The derivative of an exponential is just itself, and then we have to use the chain rule for the part in the exponent.

\[\dt{P_{s,wb}}{\twb} = e^{f(\twb)} \dt{f(\twb)}{\twb} = P_{s,wb} \dt{f(\twb)}{\twb}\] \[\dt{f(\twb)}{\twb} = -\frac{C_{8}}{ {\twb}^{2}} + C_{10} + 2 C_{11} \twb + 3 C_{12} {\twb{}}^{2} + C_{13} \frac{1}{\twb}\]

Let’s circle back and put this whole thing together again with the quotient rule. Let’s define \(N\) and \(D\) for the numerator and denominator of Equation \eqref{eq:zerofunc}.

\[\begin{equation} \dt{z(\twb) }{\twb} = \frac{D \dt{N}{\twb} - N \dt{D}{\twb} }{D^{2}} \label{eq:deriv} \end{equation}\]


\[N = \high\] \[D = \low\] \[\dt{N}{\twb} = \highlefttermderiv{} + 0.24\] \[\dt{D}{\twb} = -1\]

We now have everything we need. Start with an initial guess for the wet bulb temperature, say 10°F less than the dry bulb temperature, and then go through a few iterations of the Newton-Raphson method. It shouldn’t take more than 3 iterations to get a good value.

The general form of the Newton-Raphson method is

\[x_{n+1}=x_{n}-{\frac {f(x_{n})}{f'(x_{n})}}\,\]

For example, say our initial guess for the wet bulb temperature was 60°F. We then solve for the current residual using Equation \eqref{eq:zerofunc}, along with the first derivative, Equation \eqref{eq:deriv}.

\[T_{wb,new} = 60\textrm{°F} - \frac{z(60\textrm{°F})}{\dt{z }{\twb}(60\textrm{°F}) }\]

This converges quickly and is stable because at a constant temperature and pressure, the humidity ratio has a relatively linear relationship with the wet bulb temperature. One way to visualize this is to look at a psychrometric chart. Since both the lines of constant humidity ratio and wet bulb temperature look like evenly spaced, parallel lines, this means that the relationship between both of them is linear.

So if you want to see all these formulas in action, check out the example spreadsheet I have here.