# Gas Saturation Eval

> Evaluates a neural operator's ability to predict long-term multiphase flow dynamics (gas saturation and pressure buildup) in porous media using sparse time snapshots. It probes data efficiency, generalization to unseen time steps, and computational resource usage compared to baseline spectral methods. Use when the user wants to benchmark on Synthetic multiphase flow dataset (gas saturation & pressure buildup), or asks about evaluating this task. Reports R^2.

- Skill: `qhjqhj00/gas-saturation-eval` (Agent Skill)
- Install (CLI): `npx skillmds add qhjqhj00/gas-saturation-eval`
- Raw SKILL.md: https://api.skillmd.com/api/skills/qhjqhj00/gas-saturation-eval/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: AI & ML
- Author: qhjqhj00 (https://skillmd.com/u/qhjqhj00)
- Updated: 2026-09-08
- Page: https://skillmd.com/skills/qhjqhj00/gas-saturation-eval

---


# gas-saturation-eval

> Fourier-MIONet: Fourier-enhanced multiple-input neural operators for multiphase modeling of geological carbon sequestration — Zhongyi Jiang et al. (2023) (arXiv:2303.04778, 2023)

## What this evaluates

Evaluates a neural operator's ability to predict long-term multiphase flow dynamics (gas saturation and pressure buildup) in porous media using sparse time snapshots. It probes data efficiency, generalization to unseen time steps, and computational resource usage compared to baseline spectral methods.

## Datasets

- **Synthetic multiphase flow dataset (gas saturation & pressure buildup)** — total ?; splits: train (-1), test (500); repo https://github.com/lu-group/fourier-mionet

## Metrics

- `R^2` **(primary)** — range: other
  - Coefficient of determination: 1 - (sum((y_true - y_pred)^2) / sum((y_true - mean(y_true))^2)).
- `MAE` — range: other
  - Mean Absolute Error: mean(|y_true - y_pred|).

## Input / output format

**Input**: Spatial fields (gas saturation or pressure) at a variable number of input time snapshots, combined with a target time coordinate.

**Output**: Predicted spatial field at the target time.

## Scoring recipe

```python
def compute_metrics(y_true, y_pred):
    ss_res = np.sum((y_true - y_pred) ** 2)
    ss_tot = np.sum((y_true - np.mean(y_true)) ** 2)
    r2 = 1 - (ss_res / ss_tot)
    mae = np.mean(np.abs(y_true - y_pred))
    return r2, mae
```

## Common pitfalls

- Assuming uniform time sampling is optimal; the paper shows non-uniform sampling (dense early, sparse later) yields better accuracy with only 6 snapshots.
- Confusing `batch_time` (number of time snapshots used for training) with `batch_case` (number of spatial cases), as they impact memory and training speed differently.

## Evidence (verbatim from paper)

> First of all, the prediction accuracy between U-FNO and Fourier-MIONet is almost the same in terms of $R^{2}$ and MAE. Compared with U-FNO, Fourier-MIONet only has 1% lower in the $R^{2}$.

## Citation

```bibtex
@misc{jiang2023fouriermionet,
  title={Fourier-MIONet: Fourier-enhanced multiple-input neural operators for multiphase modeling of geological carbon sequestration},
  author={Zhongyi Jiang et al. (2023)},
  year={2023},
  note={arXiv:2303.04778}
}
```

- arXiv: 2303.04778

