Example P02.01 Compressibility Factor and Molar Volume of Methanol Steam


Calculate the compressibility factor and the molar volume of methanol steam at 200°C and 10 bar

a) using the ideal gas law

b) with the virial equation truncated after the 3rd virial coefficient





(using R instead of Rgas as the symbol for the ideal gas constant reduces the size and readability of more complex expressions but overwrites the unit definition of R (Rankine))

input data


Solution by using the ideal gas law:

by definition

Solution by using the virial equation:

The tolerance has to be decreased for receiving a more precise result.

For solving the equation the root-function is used. Finding the root requires a starting value for the volume:.

For not too high pressures where the effect of the 3rd virial coefficient is not

predominant, fast convergence can be achived by iterating the value of v_it:

The solution of interest for v (and at the same time v_it for the next iteration) of this quadratic equation in v can be found via "Symbolics, Variable, Solve". The cursor has to be on one of the "v" variable symbols in the equation above:

Solving the equation again with this improved value of v_it leads to nearly the exact


In order to find an analytic solution, first apply the operation "Symbolics - Factor"

to yield the following expression:

As for every physically realistic solution, R*T*v2 is not equal to zero, it is sufficient to search for the solution of

or, slightly rearranged:

and simplified:

Place the cursor on one of the "v" varable symbols and use "Symbolics, Variable, Solve". As the solution is too complex to display for MathCAD, the symbolic processor Maple places the following string into the clipboard:

MATRIX([[1/6*(36*A1*A2+108*A0+8*A2^3+12*(-12*A1^3-3*A1^2*A2^2+54*A1*A2*A0+81*A0^2+12*A0*A2^3)^(1/2))^(1/3)-6*(-1/3*A1-1/9*A2^2)/(36*A1*A2+108*A0+8*A2^3+12*(-12*A1^3-3*A1^2*A2^2+54*A1*A2*A0+81*A0^2+12*A0*A2^3)^(1/2))^(1/3)+1/3*A2], [-1/12*(36*A1*A2+108*A0+8*A2^3+12*(-12*A1^3-3*A1^2*A2^2+54*A1*A2*A0+81*A0^2+12*A0*A2^3)^(1/2))^(1/3)+3*(-1/3*A1-1/9*A2^2)/(36*A1*A2+108*A0+8*A2^3+12*(-12*A1^3-3*A1^2*A2^2+54*A1*A2*A0+81*A0^2+12*A0*A2^3)^(1/2))^(1/3)+1/3*A2+1/2*I*3^(1/2)*(1/6*(36*A1*A2+108*A0+8*A2^3+12*(-12*A1^3-3*A1^2*A2^2+54*A1*A2*A0+81*A0^2+12*A0*A2^3)^(1/2))^(1/3)+6*(-1/3*A1-1/9*A2^2)/(36*A1*A2+108*A0+8*A2^3+12*(-12*A1^3-3*A1^2*A2^2+54*A1*A2*A0+81*A0^2+12*A0*A2^3)^(1/2))^(1/3))], [-1/12*(36*A1*A2+108*A0+8*A2^3+12*(-12*A1^3-3*A1^2*A2^2+54*A1*A2*A0+81*A0^2+12*A0*A2^3)^(1/2))^(1/3)+3*(-1/3*A1-1/9*A2^2)/(36*A1*A2+108*A0+8*A2^3+12*(-12*A1^3-3*A1^2*A2^2+54*A1*A2*A0+81*A0^2+12*A0*A2^3)^(1/2))^(1/3)+1/3*A2-1/2*I*3^(1/2)*(1/6*(36*A1*A2+108*A0+8*A2^3+12*(-12*A1^3-3*A1^2*A2^2+54*A1*A2*A0+81*A0^2+12*A0*A2^3)^(1/2))^(1/3)+6*(-1/3*A1-1/9*A2^2)/(36*A1*A2+108*A0+8*A2^3+12*(-12*A1^3-3*A1^2*A2^2+54*A1*A2*A0+81*A0^2+12*A0*A2^3)^(1/2))^(1/3))]])

This string can be slightly edited to yield a cell formula in Excel or a calculation statement in VBA, FORTRAN, ...