BELFEM 0.9.0
Berkeley Lab Finite Element Framework
Loading...
Searching...
No Matches
belfem::gasmodels::HelmholtzTransport_Hydrogen Class Reference

Viscosity of normal hydrogen after Muzny, Huber and Kazakov, J. More...

#include <cl_GM_HelmholtzTransport_Hydrogen.hpp>

Inheritance diagram for belfem::gasmodels::HelmholtzTransport_Hydrogen:
[legend]
Collaboration diagram for belfem::gasmodels::HelmholtzTransport_Hydrogen:
[legend]

Public Member Functions

 HelmholtzTransport_Hydrogen (Gas &aParent, const HelmholtzModel aModel)
 ~HelmholtzTransport_Hydrogen ()=default
real mu (const real T, const real p) const
 dynamic viscosity in Pa*s
real lambda (const real T, const real p) const
 thermal conductivity in W/(m*K)
Public Member Functions inherited from belfem::gasmodels::HelmholtzTransport
 HelmholtzTransport (Gas &aParent)
virtual ~HelmholtzTransport ()=default

Additional Inherited Members

Protected Attributes inherited from belfem::gasmodels::HelmholtzTransport
HelmholtzmEoS

Detailed Description

Viscosity of normal hydrogen after Muzny, Huber and Kazakov, J.

Chem. Eng. Data 58:969-979 (2013), doi 10.1021/je301273j, with the 2022 erratum applied, J. Chem. Eng. Data 67:2855, doi 10.1021/acs.jced.2c00523.

The erratum matters. Without it the correlation is wrong, and it changes three separate things:

  1. Eq. ( 6 ) is missing Avogadro's number. The second viscosity virial coefficient carries N_A, and the paper as printed does not say so.
  2. In Eq. ( 7 ) the exponent on T* is -i, not +i.
  3. The density scale of Eq. ( 9 ) is rho_sc = 90.909090909 kg/m^3. The body text of the paper says 90.5.

The erratum also supplies three test values, which this implementation reproduces to better than 0.001 %:

T = 40 K, rho = 0 kg/m^3 : eta = 1.9772 micro Pa s T = 40 K, rho = 50 kg/m^3 : eta = 5.9905 micro Pa s T = 40 K, rho = 100 kg/m^3 : eta = 49.034 micro Pa s

The correlation is for normal hydrogen. BELFEM's Helmholtz EoS distinguishes the para, normal and ortho isomers, but no transport correlation for the spin isomers exists; this one is installed for all three, which is what REFPROP does as well. The density that enters comes from whichever equation of state the gas actually carries, so the isomers do differ in the result, just not in the correlation.

The thermal conductivity is a second, unrelated correlation: Assael, Assael, Huber, Perkins and Takata, J. Phys. Chem. Ref. Data 40:033101 (2011), doi 10.1063/1.3606499. Unlike the viscosity paper that one does distinguish the isomers and carries separate coefficient tables for normal and parahydrogen, so lambda() is isomer aware where mu() is not. See the note on isomer coverage in the module README.

Constructor & Destructor Documentation

◆ HelmholtzTransport_Hydrogen()

belfem::gasmodels::HelmholtzTransport_Hydrogen::HelmholtzTransport_Hydrogen ( Gas & aParent,
const HelmholtzModel aModel )
Parameters
aParentgas holding the Helmholtz EoS of this fluid
aModelwhich spin isomer the parent carries

◆ ~HelmholtzTransport_Hydrogen()

belfem::gasmodels::HelmholtzTransport_Hydrogen::~HelmholtzTransport_Hydrogen ( )
default

Member Function Documentation

◆ lambda()

real belfem::gasmodels::HelmholtzTransport_Hydrogen::lambda ( const real T,
const real p ) const
virtual

thermal conductivity in W/(m*K)

Reimplemented from belfem::gasmodels::HelmholtzTransport.

◆ mu()

real belfem::gasmodels::HelmholtzTransport_Hydrogen::mu ( const real T,
const real p ) const
virtual

dynamic viscosity in Pa*s

Reimplemented from belfem::gasmodels::HelmholtzTransport.


The documentation for this class was generated from the following files: