by Harry Mclean, Francis Huw Davies, Ned Thaddeus Taylor, and Steven Paul Hepplestone
HeatFlow is Fortran-based a software package for modelling dynamical heat transport in systems using finite difference methods. The software is primarily designed to utilise the Cattaneo method. However, the Fourier method can be used instead.
IMPORTANT NOTICE: Repository Migration to GitHub
Dear users and contributors,
This repository has been to be migrated from the University of Exeter GitLab to GitHub to facilitate community interaction and support. The latest version, updates, and collaboration now take place on this GitHub repository.
GitLab Repository (Archived): https://git.exeter.ac.uk/hepplestone/heatflow-mk2
It was decided that this project should be migrated to allow for better community support (i.e. allowing community users to raise issues).
All information has been ported over where possible.
Releases prior to HeatFlow_CattaneoPaper
have had their history modified to remove history of files over 50MB in size.
Thank you for your understanding and continued support!
- Fortran compiler supporting Fortran 2003 standard or later
- fpm or CMake
The software bas been developed and tested using the following Fortran compilers:
- gfortran -- gcc 13.2.0
- gfortran -- gcc 14.1.0
To install HeatFlow, the source must be obtained from the git repository. Use the following commands to get started:
git clone https://github.com/ExeQuantCode/HeatFlow.git
cd HeatFlow
To install using fpm, run the following command in the repository root directory:
fpm build --profile=release
To execute the code, use
fpm run HeatFlow --profile release -- [ALL PROGRAM OPTIONS]
For cmake installation, start within the repository root directory, run the following commands:
mkdir build
cd build
cmake [-DCMAKE_BUILD_TYPE=Release] ..
make install
This will build and install the executable in the following directory:
${HOME}/.local/HeatFLow/bin/HeatFlow
This executable can now be called to run the HeatFlow software package and simulate heat transport.
If the ${HOME}/.local/HeatFLow/bin
is added to your PATH
environment variable, then the program can be called as a terminal command.
This can be done with the following command (works on a per-terminal basis, if you want to update it for all, include this in your source shell file):
export PATH="${PATH}:${HOME}/.local/HeatFLow/bin"
To execute the program, use the following command:
HeatFlow