The Star-Phor environment
Motivation and intention
Star-Phor is a collection of free computational tools aiming to describe and simulate photoreactors and photobioreactors. The kinetic and thermodynamic performances of these systems are governed by radiative transfer and, like all light-limited processes, they are highly sensitive to geometric and boundary constraints. The tools developed in this project aim to address this complexity without requiring major simplifications, while remaining an ad hoc implementation for the photoreactive systems engineering and photochemistry communities. Our project also focuses on sobriety and clarity, and we strive to provide robust simulation tools with a codebase no more complex than necessary.
This site provides all the resources and information needed to use the numerical tools developed in this project. You are free not only to run these programs, but also to study, modify, and redistribute them. Particular attention has been paid to maintaining a clean and accessible codebase, so that appropriating and extending the code remains as straightforward as possible. Contributions are welcome; please refer to the contributing page for guidelines.
Project structure
A file format specification
The Star-Phor-Input project provides both a file format specification and a C library capable of parsing files compliant to this specification. At the present, Star-Phor-Input enables the description of complex photoreactor configurations with radiative properties with a spectral dependency. Star-Phor-Input can handle any geometry, provided it is represented as a triangular mesh in a STereo Litography (stl) file.
This library is application-agnostic: it makes no assumptions about how the exposed raw data will be used.
A computation engine
The Star-Phor project is a computation engine that structures the raw data exposed by Star-Phor-Input and estimates various radiative quantities within a domain using Monte Carlo algorithms.
Why the Monte Carlo method
The Monte Carlo implementation offers several advantages which are essential to tackle the complexity emerging from the field of photoreactor modelling. Some advantages are inherent to the method itself, and some are inherited from other scientific communities such as computer graphics or statistical physics.
At present, Star-Phor can:
Provide direct access to estimator uncertainty: Star-Phor's observables are estimated by averaging the weight contributions of samples drawn from a path space. Other statistical metrics are therefore readily available without any additional computational overhead. For each output observable, Star-Phor also provides the associated standard error.
Handle complex geometries and scale ratios: Thanks to the volumetric partitioning of the geometry and the use of accelerating data structures, the implemented algorithms have constant time complexity with respect to the refinement of the geometric data. In other words, computation time does not depend on the number of triangles describing the configuration. This same property holds for the scale ratios present in the domain description: thanks to the same accelerating structures, computational time is invariant with respect to these ratios. Users may notice, however, that loading time has linear time complexity with respect to geometric refinement.
Effectively deal with varying input data: The Monte Carlo algorithms implemented in Star-Phor are completely decoupled from the input geometric and physical data. The same algorithm can therefore effectively handle arbitrarily varying properties. This feature may be of particular interest to users seeking to couple Star-Phor with optimisation algorithms.
Program interface
Star-Phor is a command-line-interface (CLI) program that processes data input, performs computations, writes results and that's all. No assumptions on how the input data are created or how the output data is going to be used are made. This thin interface is particularly well suited to be extended and integrated into any toolchain. According to the user needs, a configuration file may be entered manually or generated automatically. The same holds for the output file: it can be post-processed manually or by any scrip that is part of a longer downstream process.
Community
The Star-Phor project has a dedicated mailing list. The mailing list is
the main channel for usage questions, bug reports, and development
discussions. It is open to users and contributors alike. You can
subscribe to it by sending an empty email to sympa at
groupes.renater.fr with the subject subscribe star-phor. To
unsubscribe, simply send an email with the subject unsubscribe
star-phor to the same address. To send an email to the list without
subscribing, simply write to star-phor at groupes.renater.fr.
History
Star-Phor has been funded by the project ECOCHEM "Eco-friendly and intensified chemical reactions" (ProjetIA-22-PESP-006) of the project PEPR-SPLEEN.
License
Star-Phor is free software released under the GPL v3+ license: GNU GPL version 3 or later. You are welcome to redistribute them under certain conditions; refer to the license file for details.