Solstice The solar plant simulation tool

Solstice 0.9.1 is available

Solstice computes the total power collected by a concentrated solar plant, and evaluates various efficiencies for each primary reflector: it computes losses due to cosine effect, to shadowing and masking, to orientation and surface irregularities, to reflectivity and to atmospheric transmission. These data provide insightful information when looking for the optimal design of a concentrated solar plant. Solstice is powered by a Monte-Carlo solver, which means that each result is provided with its numerical accuracy.

Solstice is specifically designed to handle complex solar facilities. A solar plant can be composed of any number of geometries of different types like hyperbolas, parabolas, parabolic trough, planar polygons, cylinders, spheres, hemispheres and cuboids. Behind analytic shapes, one can also use any external mesh stored in a STereo Lithography file.

Solaris on mars
A solar parabolic trough concentrator whose optical efficiency as well as the losses have been evaluated with solstice. The solar concentrator is developed by EMS focus (Solaris). The image has been rendered with htrdr for illustration purposes.

The orientation of the reflectors can be either defined manually or automatically computed by Solstice according to the sun direction and the animation constraints of the reflectors.

Mirror, matte and dielectric materials are supported. Spectral effects are also taken into account as long as the relevant physical properties are provided; it is possible to define the spectral distribution of any physical property, including the input solar spectrum and the absorption of the atmosphere, at any spectral resolution.

Solstice makes intensive use of ray-tracing. While this feature is part of the StarEngine Star3D library, it is internally powered by Intel® Rendering Framework: Embree.

A straight interface

The Solstice program is a command-line tool that processes input data, performs computations, write results and that's all. It makes no assumption on how the input data are created excepted that it has to follow the expected file formats. The simulation results are also provided as is, in a raw ASCII file.

This thin interface is not only simple and powerful but is also particularly well suited to be extended and integrated into any toolchain. According to the user needs, the solar plant description can be manually written, generated by a script, exported from a content creation tool, etc. In the same way, the output data can be post-processed by any script to be transformed, compressed, sent over a network, displayed in a data analysis tool, etc..

A framework for data analysis

Themis in paraview
Post-processed Solstice outputs displayed in Paraview.

Beside the simulation process, Solstice can output data to help in the analysis of the simulation results: it can output the radiative paths sampled during a simulation, as well as the solar plant geometry described in the OBJ file format. Thanks to these data, the user can quickly assert that too many radiative paths are occluded or miss the target, or that the primary reflectors are not correctly oriented. One can also map the simulation results to the solar plant geometry in order to efficiently visualise and analyse them using one's favorite data analysis toolkit.

Solstice also provides offline rendering capabilities. It implements an unbiased physically-based rendering kernel that relies on the data and algorithmic tools used by the solver. This ensures that the rendered images give visual clues on how the light actually interacts with the geometry and the materials of the simulated solar plant.

Quick start

Get the desired archive of Solstice and verify its integrity against its PGP signature. Then extract it. On Windows, open a command prompt into the Solstice bin directory and invoke the solstice.exe executable. You can alternatively register its directory into the path environment variable to expose the Solstice application to the system, allowing its invocation from any directory.

C:\Users\Meso-Star\Solstice-0.9.1-Win64\bin>solstice -h

On GNU/Linux, source the provided solstice.profile file to register the Solstice installation for the current shell priorly to the invocation of the solstice program.

$ source ~/Solstice-0.9.1-GNU-Linux64/etc/solstice.profile
$ solstice -h

The Solstice reference documentation is located in the share/man sub-directory of Solstice. To consult it, just browse the HTML files in the share/man/man1 and share/man/man5 directories. On GNU/Linux, you can alternatively use the man command-line.

$ man solstice
$ man solstice-input
$ man solstice-output
$ man solstice-receiver

Refer to the Absolute Beginner's Guide to learn fundamentals of Solstice; it relies on practical examples to introduce the functionalities of the program.


Solstice was funded by the LABEX Solstice from 2016 to 2017. Visit the LABEX Solstice web page for complementary informations and examples.


Copyright © 2018, 2019, 2021 |Méso|Star>.
Copyright © 2016, 2017, 2018 Centre National de la Recherche Scientifique (CNRS).

Solstice is free software released under the GPLv3+ license: GNU GPL version 3 or later. You can freely study, modify or extend it. You are also welcome to redistribute it under certain conditions; refer to the license for details.