Additional resources
Beginner's guide
The Solstice Absolute Beginner's Guide is designed to introduce enough concepts and functionalities that you will be able to autonomously use the Solstice program. The tutorial itself is provided in a pdf file while the Solstice resources on which it relies - i.e. input files - are available in a separate archive.
Beginner's guide | Resources |
---|---|
[pdf] | [zip] |
Post-Processes
Solstice Post-Process is a collection of command-line tools that post-process the outputs of Solstice. These programs illustrate how the raw-results of Solstice can be processed with respect to the user needs.
The provided tools are provided as it, without additional support. They are free software written in standard C, without external dependency, and released under the GPLv3+ license. You can thus easily study, modify or extend them according to your needs. You are also welcome to redistribute them under certain conditions; refer to the license for details.
To use these tools, download the provided archive and verify its integrity
against its PGP signature. This
archive contains the sources of the program and a GNU/Makefile to simplify the
build process on GNU/Linux and on Windows through MinGW. Extract it and run make
to
build the programs. Note that even though this archive targets GNU-compliant
systems, the provided sources can be compiled by any C compiler that supports
the C99 standard.
$ tar xzvf Solstice-PP-Sources-0.3.1.tar.gz $ cd Solstice-PP-Sources $ make
A description of each generated tools is given in the following sections.
solppraw
The solppraw
program reads the Solstice outputs from a file or
the standard input whether a filename is provided as an argument or not,
respectively. For each simulated sun direction, it formats the raw results in a
human readable text file, simplifying the analysis of the results.
The following example invokes Solstice to simulate two sun directions and
write the results in the output
file that is then post-processed
by the solppraw
tool.
$ solstice -D45,70:50,75 -R rcvs.yaml -o output input.yaml $ solppraw output Writing `45-70-raw-results.txt' Writing `50-75-raw-results.txt'
Note that one can directly pipe the results of solstice
to
solppraw
without any intermediary output
file.
$ solstice -D45,70:50,75 -R rcvs.yaml input.yaml | solppraw Writing `45-70-raw-results.txt' Writing `50-75-raw-results.txt'
solmaps
The solmaps
command line takes as input the results of a
regular Solstice simulation. These data are read from a file or from standard
input whether a filename is provided as an argument or not, respectively.
solmaps
extracts the maps of incoming flux computed by Solstice
for the receivers whose per_primitive
flag is enabled (see solstice-receiver(5) for more
informations). Each map is then saved in a specific VTK
file.
The following example pipes solstice
with solmaps
to save the maps of the receivers target_a
and
target_b
computed by solstice for each provided sun
direction.
$ solstice -n10000 -D45,70:50,75 -R rcvs.yaml input.yaml | solmaps Writing `45-70-target_a.vtk' Writing `45-70-target_b.vtk' Writing `50-75-target_a.vtk' Writing `50-75-target_b.vtk'
solpaths
The solpaths
tool reads the radiative paths dumped by Solstice
when it is invoked with the -p
option. The radiative paths are read
from a file or from the standard input, whether a filename is provided as an
argument or not, respectively. For each simulated sun direction, it generates a
VTK
file of the radiative paths that can be then visualized in Paraview.
The following example illustrates how solpaths
is piped with
solstice
to generate two VTK files, one per simulated sun
direction.
$ solstice -n100 -D45,70:50,75 -R rcvs.yaml -p default input.yaml | solpaths Writing `45-70-paths.vtk' Writing `50-75-paths.vtk'
solpp
The solpp
program takes two input files: the geometry of a
solar plant output by Solstice when it is invoked with the -g
option, and the results of a legacy Solstice simulation. For each simulated sun
direction, it writes three files. The first one, is a
VTK
file that maps to the
meshes of the primary geometries (i.e. the reflectors) their associated
simulation results; for instance their respective cosine factor or the amount
of flux that reaches a receiver and comes from them. The second output file,
is another VTK file that stores the geometry of the receivers and their
simulation results as their incoming flux or their efficiency. Finally, the third
file is an OBJ file
that stores the meshes of the miscellaneous geometries, i.e. the geometries
that are neither receivers nor primary geometries. These files can then be
visualised and analysed in Paraview.
In the following example, solstice
is invoked to simulate two
sun directions on the solar plant described in the input.yaml
file. We then rerun solstice
with the -g
option to
export the geometry of this solar plant with respect to the aforementioned sun
directions. We finally invoke solpp
to post-process the previous
outputs saved in the simul
and geom
files.
$ solstice -D45,70:50,75 -R rcvs.yaml -o simul input.yaml $ solstice -D45,70:50,75 -g format=obj -o geom input.yaml $ solpp geom simul Writing `45-70-primaries.vtk' Writing `45-70-receivers.vtk' Writing `45-70-miscellaneous.obj' Writing `50-75-primaries.vtk' Writing `50-75-receivers.vtk' Writing `50-75-miscellaneous.obj'
Download Post-Processes
Version | Sources |
---|---|
0.3.1 | [tarball] [pgp] |
0.3.0 | [tarball] [pgp] |
0.2.0 | [tarball] [pgp] |
0.1.0 | [tarball] [pgp] |
Release notes
Version 0.3.1
- Fix VTK files generated by
solpp
: data were written as double while the type notified in the VTK file was float.
Version 0.3
- Handle the update of the file formats introduced by Solstice 0.8.1.
Version 0.2
- Add the
solmaps
post-processing tool that extracts the maps of flux from the result of a solstice simulation. Each map is then saved in a specific VTK file. - Fix the parsing of the per-receiver and per-primary results: the "back-side" estimations were not parsed.
Version 0.1
- Handle the update of the file formats introduced by Solstice 0.6