The function simulation.simulate()
returns an object of class SimulationResult
.
A SimulationResult
object contains
For plotting a SimulationResult
object,
our Python module ba_plot
provides the function plot_simulation_result(result)
.
Usage:
from bornagain import ba_plot as bp
bp.parse_args()
simulation = ...
result = simulation.simulate()
bp.plot_simulation_result(result)
The function parse_args()
has been included to process certain command-line arguments.
Let the above code lines be part of script.py
.
To export the plot to a graphics file outfile.ext
(where the extension ext
can be any of
eps
, jpeg
, jpg
, pdf
, pgf
, png
, ps
, raw
, rgba
,
svg
, svgz
, tif
, tiff
, webp
),
invoke the script with
python3 script.py figfile=outfile.ext
To export the simulation result to a data file outfile.int.gz
,
invoke the script with
python3 script.py datfile=outfile
A simulation result can be exported to a NumPy array, using
result = simulation.simulate()
arr = result.array()
The array can then be saved through the NumPy method
numpy.savetxt("intensity.txt", arr)
Alternatively, a simulation result can be directly saved through the BornAgain Python method
import bornagain as ba
result = simulation.simulate()
ba.IOFactory.writeSimulationResult(result, file_name)
where file_name
must have one of the extensions
.txt
- ASCII file with 2D array [nrow][ncol], layout as in NumPy;.int
- BornAgain internal ASCII format;.tif
- 32-bits TIFF file.To this extension, one may concatenate a second extension to enforce compression:
.gz
or.bz2