OpenFOAM phase-change thermal-storage study
An OpenFOAM study of charging and discharging in a latent-heat storage cavity with natural convection, boundary, mushy-zone, and mesh comparisons.

Project definition
Problem statement
Phase change materials store heat around a selected temperature range, but low conductivity and natural convection make charging and discharging strongly dependent on geometry, boundary conditions, and the changing liquid region.
The engineering problem is to quantify these effects with a transparent numerical model while separating physical comparisons from numerical and validation limits.
Project objectives
- Model a two-dimensional latent-heat storage cavity with declared generic paraffin-like properties.
- Compare charging with natural convection against an otherwise identical conduction-only case.
- Measure the effects of wall temperature and mushy-zone resistance.
- Run a cold-wall discharging case and inspect the final phase field.
- Measure spatial sensitivity across 30, 50, 70, and 90 cells in each in-plane direction.
Project structure
Project components
OpenFOAM case
Defines geometry, fields, properties, phase-change source terms, and numerical controls.
Study runner
Builds and executes the ten declared cases using a digest-pinned OpenFOAM 13 runtime.
Evidence analyser
Parses native fields and volume averages into time histories, summary measures, and figures.
Verification suite
Checks scenario changes, field parsing, threshold calculations, outputs, figures, and command behaviour.
Methodology
Project workflow
- 01Select a case
Choose a charging, discharging, boundary, mushy-zone, or mesh scenario.
- 02Generate the mesh
The structured cavity mesh is created from the declared in-plane resolution.
- 03Solve phase change
OpenFOAM advances flow, temperature, and liquid fraction through the 1,800-second interval.
- 04Retain evidence
Native fields and volume averages are preserved before analysis.
- 05Compare results
Temperature, liquid fraction, stored energy, threshold time, field shape, and mesh response are compared.
Demonstration scenario
The 30-minute baseline reaches liquid fraction 0.181, compared with 0.076 without gravity. A 320 K wall raises it to 0.265, and the 70 by 70 to 90 by 90 mesh change is 1.13 percent.
Engineering
Tools and method
- Tools
- The project uses OpenFOAM Foundation 13, Python, NumPy, Pandas, Matplotlib, Jupyter for subject analysis, simulation, and results.
- CFD model
- OpenFOAM Foundation 13 fluid solver with the solidificationMelting finite-volume model.
- Reproducible runtime
- Docker image pinned by SHA256 digest with no credentials or external service.
- Analysis
- Python, NumPy, Pandas, and Matplotlib for field parsing, calculations, CSV, JSON, and figures.
- Verification
- Sixteen automated tests, static checks, dependency audit, repository validation, and complete document inspection.
Testing
Evaluation
Evaluation measures
- Mean PCM temperature and liquid fraction over time
- Time to selected phase thresholds
- Calculated sensible and latent energy change
- Final phase-front shape with and without gravity
- Wall-temperature and mushy-constant sensitivity
- Residual mesh sensitivity between the finest cases
Project boundaries
- Properties describe a generic paraffin-like PCM and are not certified commercial material data.
- The study is two-dimensional, laminar, constant-property, and covers one numerical cycle.
- No experimental validation, encapsulation mechanics, fire assessment, or equipment certification is included.
- Results are comparative simulation evidence, not guaranteed thermal-store performance.
Included
- 01Complete OpenFOAM 13 cavity case
- 02Ten charging, discharging, and sensitivity simulations
- 03CSV, JSON, native field evidence, and eight result figures
- 0494-page project report in PDF and editable Word formats
- 0521-page setup and usage guide in PDF and editable Word formats
- 0645 annotated references and a licensed literature image
- 0716 automated tests with 95 percent combined coverage
Project record
No information is collected on this page.
- Permanent project ID
- GP-ME-1JKAMRV
- Catalogued
- 21 Aug 2026
- Completed
- 24 Aug 2026
- Verified
- 24 Aug 2026
- Demonstration
- Included in repository
Handover
After purchase
- 01Payment is confirmed
The project is marked unavailable and cannot be purchased again.
- 02Repository access is granted
The buyer's submitted GitHub account receives access to the private repository.
- 03The purchase record is delivered
The certification sheet is prepared from the reviewed buyer details and sent privately by email.