Simple simulation example#

[1]:
from openalea.spice.simulator import Simulator
from openalea.spice import Vec3

Setup configuration#

[2]:
simulator = Simulator(config_file="simulation.ini")
simulator.addVirtualDiskSensorsFromFile("./sensors/sensors_expe1.csv")
simulator.addFaceSensorsFromLpyFile(
    "./assets/rose-simple4.lpy", Vec3(1280.0, 860.0, 980.0)
)

simulator.setup()
Transparent material: Makrolon

Run the simulation#

[3]:
simulator.run()
Wavelength: 600 - 655
Backface Culling OFF
Build photonmap...
nb photons per lights: 125000
Done!
calculating sensor energy...

Tracing photons from light n° 1/8...
Tracing photons from light n° 2/8...
Tracing photons from light n° 3/8...
Tracing photons from light n° 4/8...
Tracing photons from light n° 5/8...
Tracing photons from light n° 6/8...
Tracing photons from light n° 7/8...
Tracing photons from light n° 8/8...
Max depth possible: 29
calculating sensor energy...
Time taken: 1.9942762851715088

Calibrate the result#

[4]:
calibrated_res = simulator.calibrateResults("spectrum/chambre1_spectrum", "points_calibration.csv")

Write the result#

[5]:
simulator.results.writeResults()
Done write sensor energy!
Done write sensor energy!

Visualize scene with OAWidgets#

[6]:
simulator.visualizeScene("oawidgets")
[6]:
[7]:
simulator.visualizePhotons("oawidgets")
[7]:
[8]:
simulator.visualizeResults("oawidgets")
[8]:
[9]:
simulator.results.display_face_sensor()
../../_images/examples_plantgl-rad-scene_PlantRadScene_14_0.png
[10]:
simulator.results.display_virtual_sensor()
../../_images/examples_plantgl-rad-scene_PlantRadScene_15_0.png