Gas-class: Class '"Gas"'

Gas-classR Documentation

Class "Gas"

Description

Reference class for gas with methods for the estimation of transport properties. The equations for the higher order corrections are taken from Kim and Monroe 2014. The second virial coefficient is calculated using the equation given by Vargas \Remphet al. 2001.

Fields

name:

Chemical name

M:

relative molecular mass M

m:

Mass m of one gas particle in kg

sigma:

Lennard-Jones Parameter \Rsigma at T = 0

zeta:

Change of \Rsigma with temperature. For the noble gases \zeta = 0. Due to the vibrational excitation of molecules, \Rsigma is not independent of temperature but increasing with T. If \sigma_0 is \Rsigma at T = 0, \Rsigma at T is given by \sigma = \sigma_0 + \zeta T.

epsk:

Well depth of the Lennard-Jones potential \varepsilon/k at T = 0 in K.

dipole_moment:

dipole moment \mu in Debye.

polarizability:

polarizability \alpha in Ao3.

Methods

check():

Checks for presence of required data.

B(T):

Second virial coefficient B(T) in units m3/mol. The second virial coefficient provides systematic corrections to the ideal gas law. The second virial coefficient B depends only on the pair interaction between the particles (Vargas et. al. 2001). It is calculated from the modified Bessel function I (BesselI):

B(\Theta) = \frac{\sqrt{2}\pi^2\sigma^3}{3\Theta} \left[ I_{-3/4}\left(\frac{1}{2\Theta}\right) + I_{3/4}\left(\frac{1}{2\Theta}\right) - I_{1/4}\left(\frac{1}{2\Theta}\right) - I_{-1/4}\left(\frac{1}{2\Theta}\right) \right]

density(p=p0,T=T0):

Gas density in units kg/m3 incorporating the second virial correction.

\rho = \frac{M}{2B(\Theta)} \left(\sqrt{1 + \frac{4pB(\Theta)}{RT}} - 1\right)

diffusion(p=p0, T=T0, second_order_correction=TRUE):

Calculates the self diffusion coefficient in m2/s.

D = \frac{3 \sqrt{\pi m kT}}{8\pi\sigma^2 \rho(p,T)\Omega^{(1,1)}(\Theta)} f_{D}^{(n)}

f_{D}^{(n)} is the second order correction term. If third_order_correction=FALSE this term is set to 1.

thermal_conductivity(T, third_order_correction=TRUE):

Calculates the thermal conductivity for a monoatomic gas in W/(m.K).

\kappa = \frac{75k}{64 \sigma^2 \Omega^{(2,2)}(\Theta)} \sqrt{\frac{kT}{\pi m}} f_{\kappa}^{(n)}

f_{\kappa}^{(n)} is the third order correction term. If third_order_correction=FALSE this term is set to 1. For a polyatomic gas the thermal conductivity can be calculated from the expression for a monoatomic gas using the classical Eucken correction (Bechtel \Remphet al. 2020)

\kappa_p = \kappa \left(\frac{4 c_v}{15 R} + \frac{3}{5} \right)

where c_v is the molar heat capacity of the polyatomic gas at constant volume.

viscosity(T,third_order_correction=TRUE):

The viscosity \eta is given gas as

\eta = \frac{5\sqrt{\pi m T}}{16 \pi \sigma^2 \Omega^{(2,2)}(\Theta)} f_{\eta}^{(n)}.

f_{\eta}^{(n)} is the third order correction term. If third_order_correction=FALSE this term is set to 1.

binary_diffusion(p=p0, T=T0, bathGas):

Binary Diffusion coefficient of gas 1 in a bath gas 2 bathGas. The gas 1 may be polar or nonpolar. The bath gas 2 must be nonpolar (Brown \Remphet al. 2010, Langenberg \Remphet al. 2020). The binary diffusion coefficient D_{12} is given as

D_{12} = \frac{3}{16} \sqrt{\frac{2 \pi k T (m_1 + m_2)}{m_1 m_2}} \left(\frac{kT}{\pi \sigma_{12}^2 \Omega^{(1,1)}(\Theta)p} \right)

The influence of the dipole moment of the gas is treated by the scaling parameter (Brown \Remphet al. 2011)

\xi = 1 + \frac{\bar{\alpha}\bar{\mu}^2}{16 \pi \epsilon_0} \sqrt{\frac{\varepsilon_1}{\varepsilon_2}},

where the reduced dipole moment is given by

\bar{\mu}^2=\frac{\mu^2}{\varepsilon_1 \sigma_1^3}

and the reduced polarizability of the bath gas is given by

\bar{\alpha} = \frac{\alpha}{\sigma_2^3}.

The scaling parameter \xi is used in the following combination rules to calculate the well depth of the effective interaction potential

\varepsilon_{12} = \xi^2 \sqrt{\varepsilon_1 \varepsilon_2}

and the collision diameter

\sigma_{12} = \xi^{-1/6} \frac{\sigma_1 + \sigma_2}{2}.

The second order correction (Marrero and Mason 1972) is not considered yet. Therefore, the diffusion coefficient of a polar gas in a non-polar bath gas is equal to the diffusion coefficient of a non-polar gas in a polar bath gas. For diffusion of a polar gas in a polar bath gas, this formula cannot be used.

fit_B_data(B_df):

Determination of Lennard-Jones parameters \Rsigma and \Rvarepsilon by nonlinear regression from a data frame of second virial coefficient data. The data frame must contain the columns T for the temperature and value for the viscosity in units cm3/mol.

fit_viscosity_data(viscosity_df):

Determination of Lennard-Jones parameters \Rsigma and \Rvarepsilon by nonlinear regression from a data frame of viscosity data. The data frame must contain the columns T for the temperature and value for the viscosity in units uPa.s.

fit_B_viscosity_data(B_df, viscosity_df, log=FALSE):

Determination of Lennard-Jones parameters \Rsigma and \Rvarepsilon by simultaneous nonlinear regression from a data frame of viscosity data and a data frame of second virial coefficient data using optim. If log=FALSE the function to be minimized is given by (Bechtel \Remphet. al. 2020)

\chi^2(\sigma, \varepsilon) = \sum{\left(\frac{\eta(\sigma, \varepsilon, T) - \eta_{\mathrm{exp}}}{\Delta\eta_{\mathrm{exp}}}\right)^2} + \sum{\left(\frac{B(\sigma, \varepsilon, T) - B_{\mathrm{exp}}}{\Delta B_{\mathrm{exp}}} \right)^2}

where

\Delta\eta_{\mathrm{exp}} = | \mathrm{max}(\eta_{\mathrm{exp}}) - \mathrm{min}(\eta_{\mathrm{exp}}) |

and

\Delta B_{\mathrm{exp}} = | \mathrm{max}( B_{\mathrm{exp}}) - \mathrm{min}(B_{\mathrm{exp}}) |

If log=TRUE the function to be minimized is given by (Zarkova and Hohm 2009)

\chi^2(\sigma, \varepsilon) = \sum\left[\ln\left(\frac{\eta_{\mathrm{exp}}}{\eta(\sigma, \varepsilon, T)} \right) \right]^2 + \sum\left[\ln\left(\frac{|B_{\mathrm{exp}}|}{|B(\sigma, \varepsilon, T)|} \right) \right]^2

References

Bechtel S, Bayer B, Vidakovic-Koch T, Wiser A, Vogel H, Sundmacher K. Precise determination of LJ parameters and Eucken correction factors for a more accurate modeling of transport properties in gases. \RemphHeat and Mass Transfer 2020;56:2515-27. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1007/s00231-020-02871-4")}.

Brown NJ, Bastien LAJ, Price PN. Transport properties for combustion modeling. \RemphProgress in Energy and Combustion Science 2011;37:56582. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1016/j.pecs.2010.12.001")}.

Kim SU, Monroe CW. High-accuracy calculations of sixteen collision integrals for Lennard-Jones (12-6) gases and their interpolation to parameterize neon, argon, and krypton. \RemphJournal of Computational Physics 2014 273:358-73, \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1016/j.jcp.2014.05.018")}.

Langenberg S, Carstens T, Hupperich D, Schweighoefer S, Schurath U. Technical note: Determination of binary gas-phase diffusion coefficients of unstable and adsorbing atmospheric trace gases at low temperature arrested flow and twin tube method. \RemphAtmospheric Chemistry and Physics 2020;20:366982. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.5194/acp-20-3669-2020")}.

Marrero TR, Mason EA. Gaseous Diffusion Coefficients. \RemphJ. Phys. Chem. Ref. Data 1972;1:3-118. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1063/1.3253094")}.

Vargas P, Munoz E, Rodriguez L. Second virial coefficient for the Lennard-Jones potential. \RemphPhysica A: Statistical Mechanics and Its Applications 2001;290:92-100. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1016/s0378-4371(00)00362-9")}.

Zarkova L, Hohm U. Effective (n-6) Lennard-Jones Potentials with Temperature-Dependent Parameters Introduced for Accurate Calculation of Equilibrium and Transport Properties of Ethene, Propene, Butene, and Cyclopropane. \RemphJournal of Chemical & Engineering Data 2009;54:164855. \Sexpr[results=rd]{tools:::Rd_expr_doi("10.1021/je800733b")}.

Examples

## Not run: 
# Second virial coefficient of methane at 300 K and standard pressure
CH4 <- Gas("methane")
print(CH4$B(T=300))
# Self-diffusion coefficient at 300 K
print(CH4$diffusion(T=300))
# create an instance of Gas for a molecule not listed in data_frame gas
Hg <- Gas("mercury")
# relative molecular mass
Hg$M <- 200.59
# mass of 1 molecule in kg
Hg$m <- Hg$M / pkg.env$Na / 1000
Hg$sigma <- 2.969 
Hg$epsk <- 750
print(Hg$thermal_conductivity(T=700))

## End(Not run)

chapensk documentation built on June 4, 2026, 5:09 p.m.