Proposal: An advanced two-state water EoS via Ising crossover and microscopic grounding

Context: Extending the Duška (2020) / Caupin (2019) class of two-state EoSs with two independent advances that compose into a single coherent model.
Status: Research proposal — not yet implemented.
Project: waterEoS · Author: Anthony Consiglio

Contents

  1. Framing
  2. Axis 1 — Parametric Ising crossover
  3. Axis 2 — Microscopic grounding (lattice minimal model)
  4. Combining them: the v1 advanced model
  5. Validation strategy
  6. Genuine research uncertainty
  7. Honest recommendation

1. Framing

Both axes are independent in principle but compose into a single coherent model. Axis 1 fixes a thermodynamic-rigor problem (mean-field exponents are wrong near the LLCP). Axis 2 fixes an interpretability/transferability problem (polynomial coefficients are not physical). Together they give a model with correct critical scaling, physically meaningful parameters, and far fewer knobs than Caupin (2019) or Duška (2020).

2. Axis 1 — Parametric Ising crossover

The physics

Near the LLCP, mean-field theory gives the wrong exponents:

QuantityMean-field3D Ising
κT along the critical isochore ∝ |T−Tc|−1 ∝ |T−Tc|−1.239
Order parameter on the binodal ∝ |T−Tc|0.5 ∝ |T−Tc|0.326
Critical isotherm h ∝ m3 h ∝ m4.789

Caupin, Duška, and Holten are all mean-field and so are systematically wrong in any ∼10 K window around the predicted LLCP. Far from C′ the differences are imperceptible (and Caupin's paper explicitly justifies mean-field at the data locations), but a model claiming to be "most advanced" should be correct in both regimes.

The standard machinery is the parametric crossover Landau expansion developed by Anisimov, Sengers, Kostko, Belyakov, Kiselev and collaborators across the 1990s–2010s. Two references for water specifically:

The construction in three layers

Layer A — Schofield RLM near C′ (parametric Ising)

Two variables: r (distance to C′) and θ (angular).

t = r · (1 − b²θ²) # reduced temperature m = k · rβ · θ # order parameter h = a · rβ·δ · θ · (1 − θ²) # ordering field

with β = 0.326, δ = 4.789. Property = derivative of a master Gibbs potential Ψ(r, θ) that's polynomial in θ and analytic in r. This is what you'd evaluate in a small neighborhood of C′.

Layer B — Field mixing (complete scaling for water)

Water's LLCP is a "mixed" transition, so t and h aren't pure T/P — they mix:

h = P̂ + a₁·T̂ + a₂·T̂² + a₃·P̂·T̂ + … t = T̂ + b₁·P̂ + b₂·P̂² + …

This is what Bertrand & Anisimov work out — and it's a real complication, because water's LLCP sits in a region where μ also matters.

Layer C — Crossover function bridging Ising to mean-field

Belyakov–Kiselev (or Tang–Sengers–Chen) introduce a crossover variable Y ∈ (0, 1]:

where Δ ≈ 0.51 is the Wegner correction exponent. The Landau coefficients get renormalized by powers of Y:

ã = a · Y−α/Δ, ũ = u · Y(2β−1)/Δ, …

A simple closed-form for Y: solve 1/Y² = 1 + (κ/Y)2/Δ · (1 + r²/rmax²) for some Ginzburg number κ and a "max distance" rmax. The model becomes pure mean-field for r >> rmax and pure Ising for r << rmax.

waterEoS implementation

You don't need a full rewrite. The cleanest path is to leave Duška/Caupin in charge of the far-field and patch the near-LLCP region:

caupin_crossover_eos/                # new module
├── params.py                        # Ising exponents + crossover constants
├── core_ising.py                    # Schofield RLM → G, dG/dT, dG/dP, etc.
├── core_crossover.py                # crossover-renormalized Landau expansion
├── core.py                          # decides regime: pure-Caupin / crossover / pure-Ising
└── phase_diagram.py                 # binodal with correct β = 0.326 exponent

The dispatch in core.py:

def compute_batch(T_K, P_MPa, pset=PARAMS):
    r = _distance_to_llcp(T_K, P_MPa, pset)
    Y = _crossover_variable(r, pset)
    # Always evaluate the crossover-renormalized form;
    # Y handles regime smoothly.
    return _properties_from_landau_with_crossover(T_K, P_MPa, Y, pset)

The trick that makes this one function rather than three patched together: the crossover-renormalized Landau expansion is exact in both limits. As Y→1 you recover Caupin's form; as Y→0 you recover the Schofield RLM. No piecewise stitching, no derivative jumps.

What you'd add per file (rough scale):

Effort estimate: 2–3 weeks for a working numpy implementation + validation; +1 week Rust parity; +1 week JAX/AD path for derivatives. Mostly straightforward porting from the Bertrand-Anisimov paper, which is fairly explicit. The hardest part is finding the field-mixing coefficients (a₁, a₂, b₁, …) that align Caupin's far-field with the crossover near-field — likely a constrained nonlinear fit against Caupin output + Kim 2020 κT data.

3. Axis 2 — Microscopic grounding (lattice minimal model)

The physics

The 2021 paper (Caupin, Anisimov, and collaborators) — "Minimal microscopic model for liquid polyamorphism" — is essentially this:

Lattice sites carry one of two species (A = HDL, B = LDL) with site energies and lattice excitations. The exact (mean-field) free energy per site is:

f(x; T, P) = (1 − x)·μA°(T, P) + x·μB°(T, P) + kBT [x ln x + (1 − x) ln(1 − x)] # ideal mixing − ω(T, P) · x (1 − x) # interaction (cooperativity)

where μA° and μB° are the chemical potentials of pure-A and pure-B states. For water:

μA°(T, P) = UA − T·SA + P·VA + small thermal terms μB°(T, P) = UB − T·SB + P·VB + small thermal terms

with UB − UA > 0 (LDL is higher-energy per molecule), SA − SB > 0 (HDL is more disordered), VB − VA > 0 (LDL is less dense). The cooperativity ω encodes hydrogen-bond network strength.

This is the same algebraic skeleton as Holten/CaupinΔGBA and ω(1−2x) show up identically — but the meaning changes:

Why this matters beyond aesthetics

  1. Parameter parsimony. Holten has 25 background coefficients; Duška has 28; Caupin has ∼21. A pure microscopic model has ∼5–6 physical parameters (ΔU, ΔS, ΔV, ω₀, plus 1–2 thermal-expansion terms per state). That's a 4× reduction in parameter count.
  2. Transferability. Calibrated parameters can be tested against TIP4P/2005 simulations (where you can measure ΔU, ΔS, ΔV cluster-by-cluster), giving an independent check.
  3. Extensibility to mixtures. Adding a solute (glycerol, DMSO) is much easier in a lattice model — you add a third species with its own interactions — than in a fit polynomial. This is directly relevant to the cryoprotectant work.
  4. The natural substrate for the glass extension. A lattice model with explicit configurational entropy and free volume is exactly what you need to bolt on a fictive-temperature freezing layer for LDA/HDA.

waterEoS implementation

This is actually simpler than the crossover work, because the form is so close to what's already there:

microlat_eos/                        # new module
├── params.py                        # ~6 microscopic params (ΔU, ΔS, ΔV, ω₀, αA, αB)
├── core.py                          # G(T, P, x) from lattice free energy
│                                    # mostly cribbed from caupin_eos/core.py
├── phase_diagram.py                 # LLCP from derivative conditions on f
└── README.md

The compute_batch function structure is identical to Caupin's — same Newton solve for x, same property derivations from G derivatives. Only the form of ΔGBA(T, P) and ω(T, P) change, and both become simpler:

def compute_GBA(dT_hat, dP_hat, pset):
    # Replace Caupin's 5-term polynomial with the physical form:
    P = pset
    return (P.delta_U / (P.R * P.Tc)) \
         - (1.0 + dT_hat) * (P.delta_S / P.R) \
         + (P.Pc + dP_hat * P.P_scale_MPa) * 1e6 * P.delta_V \
             / (P.R * P.Tc) \
         + small_thermal_terms(dT_hat, dP_hat, pset)

Effort estimate: ∼1 week for numpy + tests + phase diagram; +2–3 days Rust parity. Calibration (fitting the ∼6 microscopic params against IAPWS-95 + Holten/Caupin + Kim 2020 data) is probably the time-consuming part — call it another week.

Risk — tighter fit The microscopic model may not fit the data as tightly as the 20-term polynomials. Caupin's overall χ² = 0.97 with 21 free parameters reflects a model that's fully expressive enough to fit measurement noise. A 6-parameter microscopic model may have χ² ∼2–3. Whether that's a problem depends on what you value — physical interpretability and transferability, or last-decimal data fit.

4. Combining them: the v1 advanced model

The natural composition:

┌────────────────────────────────────┐ │ Microscopic lattice free energy │ │ f(x, T, P; ΔU, ΔS, ΔV, ω₀) │ │ ~6 physical parameters │ └─────────────┬──────────────────────┘ │ ┌───────────┴───────────┐ │ Far from LLCP │ Near LLCP │ (Y → 1) │ (Y → 0) │ Direct evaluation │ Schofield RLM └───────────┬───────────┘ with field mixing │ │ └────── crossover ──────┘ K(r/r_max, κ) │ ▼ G(T, P), V, S, Cp, κ_T, … + autodiff │ ▼ ✓ IAPWS-95 at 300 K ✓ Kim 2020 κ_T peak with γ = 1.24 ✓ Predicted LLCP w/ Ising exponents ✓ Mixtures by adding a 3rd species

Pragmatic build order

  1. Microscopic-only v0 (no crossover yet, still mean-field) — gets you a 6-parameter physically-grounded EoS. Useful immediately as microlat2026 in waterEoS.
  2. Add crossover — patch on the Schofield RLM near C′ with the Belyakov-Kiselev variable. Now you have correct Ising exponents AND microscopic grounding.
  3. Validate against Kim 2020. The moment of truth — does the model reproduce the experimental κT peak shape with γ ≈ 1.24 without retuning, or do you need to add a free background polynomial to mop up?

5. Validation strategy

Build the test suite around four benchmarks:

BenchmarkTests whatPass criterion
IAPWS-95 over 280–360 K, 0.1–400 MPa Far-field correctness ρ within 0.1%, κT within 1%
Holten / Caupin in 220–280 K Supercooled regime fit Cp peak location within 1 K, height within 10%
Kim 2020 κT(T) at svp Near-LLCP exponents κT(T) ∝ |T−TW|−γ with γ ∈ [1.15, 1.30]
TIP4P/2005 cluster statistics Microscopic parameters ΔU, ΔS, ΔV match simulation within error bars

The last one is the killer test — if a fitted ΔU disagrees with TIP4P/2005 by 50%, the "microscopic grounding" is illusory. Worth knowing.

6. Genuine research uncertainty

7. Honest recommendation

Publishable model concept The microscopic + crossover combination is the right target, and as far as the literature search suggests, nobody has assembled both halves into a single fitted water EoS yet. The pieces have been demonstrated in isolation (Bertrand-Anisimov 2011 has crossover; Caupin-Anisimov 2021 has microscopic; nobody has fused them with a Duška-class broad-range fit).
Something to ship in waterEoS soon Do the microscopic-only v0 first. It's a real, well-defined, ∼2-week project with a clear payoff (6 vs 21 parameters, physical interpretability, and the foundation for the cryoprotectant and glass extensions you eventually want). Crossover can come as a v0.2.

Key references