# Nrc Chf Eval

> Evaluates machine learning models for predicting Critical Heat Flux (CHF) in nuclear thermal-hydraulics, probing their ability to capture complex, multi-regime physical behaviors and produce well-calibrated, informative uncertainty estimates across different flow regimes. Use when the user wants to benchmark on NRC dataset, or asks about evaluating this task. Reports RMSPE.

- Skill: `qhjqhj00/nrc-chf-eval` (Agent Skill)
- Install (CLI): `npx skillmds add qhjqhj00/nrc-chf-eval`
- Raw SKILL.md: https://api.skillmd.com/api/skills/qhjqhj00/nrc-chf-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/nrc-chf-eval

---


# nrc-chf-eval

> Learning Complex Physical Regimes via Coverage-oriented Uncertainty Quantification: An application to the Critical Heat Flux — Michele Cazzola et al. (arXiv:2602.21701, 2026)

## What this evaluates

Evaluates machine learning models for predicting Critical Heat Flux (CHF) in nuclear thermal-hydraulics, probing their ability to capture complex, multi-regime physical behaviors and produce well-calibrated, informative uncertainty estimates across different flow regimes.

## Datasets

- **NRC dataset** — total ?; splits: train (-1), val (-1), test (-1)

## Metrics

- `RMSPE` **(primary)** — range: percent
  - Root Mean Squared Percentage Error. Computed as the square root of the mean squared relative errors between true and predicted CHF values, scaled by 100.
- `PICP` — range: percent
  - Prediction Interval Coverage Probability. The percentage of ground-truth CHF values that fall within the model's predicted uncertainty bounds.
- `UQF` — range: percent
  - Uncertainty Quality Factor. A composite metric balancing calibration (CLB) and informativeness (INF) to evaluate the overall quality of uncertainty estimates.

## Input / output format

**Input**: 5-dimensional feature vector: mass flux (G), pressure (P), diameter (D), length (L), and outlet quality (X), standardized using training set statistics.

**Output**: Scalar CHF prediction (kW/m²). For UQ methods, additionally outputs predicted variance or prediction interval bounds.

## Scoring recipe

```python
import numpy as np

# Predictive metrics (computed on test set)
rmspe = np.sqrt(np.mean(((y_true - y_pred) / y_true) ** 2)) * 100
mape = np.mean(np.abs((y_true - y_pred) / y_true)) * 100

# UQ metrics (computed on full dataset)
picp = np.mean((y_true >= y_lower) & (y_true <= y_upper)) * 100
# INF, CLB, UQF are derived from interval widths and coverage consistency
# Models failing to reach PICP >= 95% are discarded during HR training
```

## Common pitfalls

- UQ metrics (PICP, INF, CLB, UQF) are evaluated on the full dataset, not just the held-out test set.
- Stratified sampling is used for train/val/test splits to account for instrumentation and technological changes across decades of experiments.
- During Heteroscedastic Regression training, models that fail to achieve the target 95% coverage at evaluation are discarded, even if they have better point prediction accuracy.

## Evidence (verbatim from paper)

> The methods described in the previous section are used for CHF prediction and UQ on the NRC dataset. For this purpose, 80% of the samples are retained for training, 10% for model validation and 10% for the final evaluation. ML metrics refer to the latter, unless otherwise stated, while the UQ metrics refer to the full dataset. The reference metric used for model selection is RMSPE... The chosen target coverage value is 95%, thus we set α=0.05... Table [6.3] shows the results of the evaluation of CP using the UQ metrics... adaptive CP has a higher UQF score... The PICP values follow the expected Beta distribution...

## Citation

```bibtex
@misc{cazzola2026nrcchf,
  title={Learning Complex Physical Regimes via Coverage-oriented Uncertainty Quantification: An application to the Critical Heat Flux},
  author={Michele Cazzola et al.},
  year={2026},
  note={arXiv:2602.21701}
}
```

- arXiv: 2602.21701

