Model Potentials¶
These EOS for model potentials are useful for understanding theory, and capture some (but perhaps not all) of the physics of “real” fluids.
[1]:
import teqp
teqp.__version__
[1]:
'0.19.1'
Square-well¶
The potential is defined by
\[\begin{split}V(r) = \left\lbrace \begin{array}{cc}
\infty & r < \sigma \\
-\varepsilon & \sigma < r < \lambda\sigma \\
0 & r > \lambda \sigma
\end{array}\right.\end{split}\]
from which an EOS can be developed by correlating results from molecular simulation. The EOS is from:
Rodolfo Espíndola-Heredia, Fernando del Río and Anatol Malijevsky Optimized equation of the state of the square-well fluid of variable range based on a fourth-order free-energy expansion J. Chem. Phys. 130, 024509 (2009); https://doi.org/10.1063/1.3054361
[2]:
model = teqp.make_model({
"kind": "SW_EspindolaHeredia2009",
"model": {
"lambda": 1.3
}
})
EXP-6¶
[3]:
model = teqp.make_model({
"kind": "EXP6_Kataoka1992",
"model": {
"alpha": 12
}
})
Lennard-Jones Fluid¶
The Lennard-Jones potential is given by
\[V(r) = 4\varepsilon\left((\sigma/r)^{12}-(\sigma/r)^{6}\right)\]
and EOS are available from many authors. teqp includes the EOS from Thol, Kolafa-Nezbeda, and Johnson.
[4]:
for kind, crit in [
["LJ126_TholJPCRD2016", (1.32, 0.31)], # Note the true critical point was not used
["LJ126_KolafaNezbeda1994", (1.3396, 0.3108)],
["LJ126_Johnson1993", (1.313, 0.310)]]:
j = { "kind": kind, "model": {} }
model = teqp.make_model(j)
print(kind, model.solve_pure_critical(1.3, 0.3), crit)
LJ126_TholJPCRD2016 (1.3035125549100017, 0.3103860327864468) (1.32, 0.31)
LJ126_KolafaNezbeda1994 (1.3396478193468193, 0.3108038977722935) (1.3396, 0.3108)
LJ126_Johnson1993 (1.3130000571792173, 0.3099999768607838) (1.313, 0.31)
Two-Center Lennard-Jones Fluid¶
[5]:
model = teqp.make_model({
'kind': '2CLJF-Dipole',
'model': {
"author": "2CLJF_Lisal",
'L^*': 0.5,
'(mu^*)^2': 0.1
}
})
print(model.solve_pure_critical(1.3, 0.3))
model = teqp.make_model({
'kind': '2CLJF-Quadrupole',
'model': {
"author": "2CLJF_Lisal",
'L^*': 0.5,
'(Q^*)^2': 0.1
}
})
print(model.solve_pure_critical(1.3, 0.3))
(2.8282972062188056, 0.2005046666634018)
(2.832574303561834, 0.2003194655463274)