solstice

Compute collected power and efficiencies of a solar plant
git clone git://git.meso-star.com/solstice.git
Log | Files | Refs | README | LICENSE

commit f945fdeaed9d3900281b3d8b4e2fa29a5c35e435
parent 1117c5bd4b8e08f07d8dd0715b2bd4f3ffc66255
Author: Vincent Forest <vincent.forest@meso-star.com>
Date:   Wed, 10 May 2017 22:32:27 +0200

Add the solar-furnace example to the solstice-input man

Diffstat:
Mdoc/solstice-input.5.ronn | 80+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 80 insertions(+), 0 deletions(-)

diff --git a/doc/solstice-input.5.ronn b/doc/solstice-input.5.ronn @@ -644,6 +644,86 @@ where `c<X|Y|Z>` and `s<X|Y|Z>` are the cosine and the sinus, respectively, of the rotation angles around the `X`, `Y` and `Z` axis defined by the `rotation` vector. +## EXAMPLE + +Solar furnace with 9 heliostats whose mirrors are a little glossy and lit by a +sun with a `pillbox` radial angular distribution: + + # Sun description + - sun: &sun {dni: 1, pillbox: {aperture: 0.01}} + + # Material description + - material: &lambertian + matte: {reflectivity: 1} + - material: &specular + front: {mirror: {reflectivity: 1, roughness: 0.01}} + back: {matte: {reflectivity: 1}} + + # Geometry declaration + - geometry: &target + - material: {matte: {reflectivity: 0}} + plane: + slices: 64 + clip: + - operation: AND + vertices: [[-0.5,-0.5],[-0.5,0.5],[0.5,0.5],[0.5,-0.5]] + - geometry: &great-parabola + - material: *specular + transform: {rotation: [90,0,0], translation: [0,0,20]} + parabol: + focal: 18 + clip: + - operation: AND + vertices: [[-30,-20],[-30,20],[30,20],[30,-20]] + + # Spawn the target and the parabola entity + - entity: + name: my-target + primary: 0 + transform: {rotation: [0,90,0], translation: [18,0,20]} + geometry: *target + - entity: + name: parabola + primary: 0 + transform: {rotation: [0,0,90]} + geometry: *great-parabola + + # Declare the heliostat template + - template: &H + name: heliostat + primary: 0 + geometry: + - material: *lambertian + cylinder: {radius: 0.3, height: 10, slices: 128} + children: + - name: pivot + transform: {translation: [0,0,5.5]} + zx_pivot: + spacing: 0 + ref_point: [0,0,0] + target: {direction: [-1,0,0]} + children: + - name: reflector + transform: {rotation: [-90,0,0]} + primary: 1 + geometry: + - material: *specular + plane: + clip: + - operation: AND + vertices: [[-5,-5],[-5,5],[5,5],[5,-5]] + + # Instantiate the heliostat template + - entity: {name: H1, children: [*H], transform: {translation: [40,-20, 0]}} + - entity: {name: H2, children: [*H], transform: {translation: [40, 0, 0]}} + - entity: {name: H3, children: [*H], transform: {translation: [40, 20, 0]}} + - entity: {name: H4, children: [*H], transform: {translation: [60,-20,10]}} + - entity: {name: H5, children: [*H], transform: {translation: [60, 0,10]}} + - entity: {name: H6, children: [*H], transform: {translation: [60, 20,10]}} + - entity: {name: H7, children: [*H], transform: {translation: [80,-20,20]}} + - entity: {name: H8, children: [*H], transform: {translation: [80, 0, 20]}} + - entity: {name: H9, children: [*H], transform: {translation: [80, 20,20]}} + ## NOTES * [1]: