WavyChannel-RF-ThermoHydraulics
Model Introduction
This package reproduces the fixed 80/20 Random Forest experiment for a partially porous wavy-channel CFD surrogate. It predicts mean Nusselt number Nuavg and pressure drop DelP_Pa from seven operating and geometry features, following the authors' version 4 data supplement for the associated paper.
Two independent 800-tree forests were fitted on 3,686 samples and tested on 922 samples. weight/best_model.pth is a joblib bundle, despite the .pth extension; it is not a PyTorch state dictionary. The published bundle changes only data-path strings in its metadata. Its fitted forests are unchanged from the original run. The published SHA256 is d43fe39fc6de27aa26eeb063a8b81c2089150e09a7ea21db1e67d8f136aeab17; the original training checkpoint SHA256 was dad800c2ee630455ac421b81c5fc38a0a584c065adca720d0c534d2df065e421.
Intended Use
| Task | Description |
|---|---|
| Thermo-hydraulic surrogate | Predict heat-transfer and pressure-drop responses |
| Design screening | Compare configurations within the training data's parameter range |
Usage
Download the Model Package
hf download OneScience-Group/WavyChannel-RF-ThermoHydraulics --local-dir ./WavyChannel-RF-ThermoHydraulics
cd WavyChannel-RF-ThermoHydraulics
Install Dependencies
pip install -r requirements.txt
pip install 'modelscope[datasets]'
Use scikit-learn 1.6.0, as pinned in requirements.txt, when loading the joblib checkpoint. Only load model files from a trusted source.
Data
Hugging Face hosts only this model package. The two CSV files required by the fixed split are available as OneScience/WavyChannel-ThermoHydraulics on ModelScope:
modelscope download --dataset OneScience/WavyChannel-ThermoHydraulics --local_dir ./data
The package expects data/02_processed_data/ML_dataset_longform.csv and data/03_splits/random80_20_split.csv. Keep the authors' case_uid join and fixed train/test labels; do not generate a new split. The source is Mendeley Data version 4, CC BY 4.0.
Train
On a SLURM compute cluster, from the package root:
sbatch scripts/run_experiment.slurm
Alternatively, on an allocated compute node:
python scripts/train.py --config config/config.yaml
python scripts/inference.py --config config/config.yaml
python scripts/result.py --config config/config.yaml
Preserve the bundled weight and results before retraining. A Random Forest has no epochs; this is one full fit of two independent targets.
Results
The reproduced test MAE/RMSE were 0.083817/0.276695 for Nuavg and 0.640271/2.000163 Pa for pressure drop. The data supplement reports 0.083819/0.276695 and 0.639853/1.997940 Pa, respectively. The archived validation JSON files refer to the original training-file hash; reloaded predictions from the published bundle must be checked separately.
OneScience Repositories
| Platform | Main repository | Skills repository |
|---|---|---|
| Gitee | OneScience | OneSkills |
| GitHub | OneScience | OneSkills |
Citation and License
- Paper: Machine learning surrogate for CFD-based prediction of heat transfer and pressure drop in partially porous wavy channels.
- Data: Kumar and Pandey, Mendeley Data v4, CC BY 4.0. Model-code and dataset licenses are separate.
- Downloads last month
- -