PULsE (Processing Unit for Laser flash Experiments) is an advanced analysis program for processing data from laser flash experiments, allowing effective treatment of difficult cases where conditions may not be ideal for simpler analysis. PULsE analyses the heating curves, calculates and outputs the thermal properties of the sample, such as the thermal diffusivity, based on the inverse solution of a heat transfer problem. The software is specifically tailored for use in the Materials Research Facility at UKAEA, and reads standard ASCII files generated by the Linseis LFA systems; it was initially designed to read custom file formats from a different apparatus designed at the Moscow Engineering and Physics Institute. It is therefore intended for use with any LFA instruments as an alternative to the standard, often simplistic software.
- Lead developer: Dr. Artem Lunev;
- Beta testing, validation studies and User Manual by Rob Heymer;
- Thermal transfer models by: Dr. Artem Lunev, Dr. Teymur Aliev, Dr. Vadim Zborovskii.
Licensed under the Apache 2.0 Permissive License.
Please do contact me via email in case if you are interested in new features, such as new input file formats, new heat transfer models, or anything related to the modification of the GUI or internal code structures. Anyone wanting to contribute to the code development are cordially invited to make thoughtful commits to the repository! Those will be reviewed promptly.
- The first step is to clone the project files to your filesystem. Change the current working directory to the location where you want the cloned directory to be made. Type
$ git clone https://github.com/kotik-coder/PULsE
in Terminal to populate your current directory with the project sources files; - Staying in the same directory, you should see the
pom.xml
file. This is used by Maven to build the binaries. You will need to have Maven installed in order to proceed, as well as the Java Development Kit 11. After you have installed both, typemvn install
in the directory where you've cloned the PULsE source files to. The dependencies are managed automatically with the info contained in thepom.xml
file, so you don't need to do anything else; - This will produce a
/target/
subdirectory with the.jar
file and the/target/lib/
folder. These can be copied to wherever location you prefer, but please remember to always put them in the same directory together; - Allow the
.jar
file to be executable (e.g. on Linux) and double-click in order to run. If nothing happens, typejava -jar <NAME_OF_JAR>.jar
, replacing the <NAME_OF_JAR> with the appropriate file name. This should start the PULsE graphical interface.
If you want to use an IDE for modifying the cloned code, please consider using Eclipse. It is quite straightforward to import the project to Eclipse. Once you've cloned the git repo, open the associated project with File -> 'Open Projects from File System...', type in or select the project source, and click OK. This should be sufficient to get you started.
Please visit this page for a list of pre-compiled releases.
Click here to see the complete flow chart for setting up the calculations: what user input is required and where, which parts of the calculation can be modified, how this affects the state of the program, etc. Another flow chart displays the process of submitting tasks for execution, collecting results, and making decisions based on the output.
This software is citable with the following DOI:
For a Journal reference, please use:
Lunev, A. et al. Software Impacts 6 (2020) 100044
Please refer to the software GitHub Page for a quickstart guide, input file examples and download links.
I really enjoyed working on this open source project. In my opinion, this type of distribution fits very well with the spirit of science. PULsE will always be free to download and use. If you feel that this project deserves your support, please consider buying me a coffee by following the link below:
to Thomas Stainer (@thomasms) who has provided many useful advices on improvement of the code structure and on continuous integration and development aspects.