Solstice 0.9.1



solstice-receiver - declare the solar-plant receivers for solstice(1)


The solstice-receiver format is used by solstice(1) to declare which geometric entities defined in a solstice-input(5) file are receivers. For each receiver, solstice(1) computes its overall intercepted power, its associated losses as well as its efficiency. Refer to the solstice-output(5) format for informations on the per receiver data generated by solstice(1). Declaring the receivers separately of the solar plant, allows to use the same solstice-input(5) file for several simulations using different receivers. For instance, one can define a specific solstice-receiver file that declares some primary reflectors as receivers in order to track an unforeseen comportment observed during a previous simulation.

The solstice-receiver format uses the YAML 1.1 data serialization standard [1]; assuming that the file is compatible with the solstice-receiver semantic, the YAML compact notation can thus be used.

A receiver is identified by its name that must be a valid entity-identifier as defined in the solstice-input(5) format. This identifier must reference a geometric entity and not a pivot or an empty entity. The side of the geometry that is tracked is defined by the side attribute of the receiver. Note that the front and the back side of a geometry can be both considered if the side attribute is set to FRONT_AND_BACK. Refer to the solstice-input(5) specification for informations on which side of the geometry is front facing or back facing. Finally, if the optional per_primitive flag is set, solstice(1) will estimate the irradiance for each triangle of the receiver and use these data to generate a receiver map as described in solstice-output(5). The per-primitive flag can be set to INCOMING, ABSORBED or INCOMING_AND_ABSORBED to produce the incoming flux density map, the absorbed flux density map, or both.


<receivers-list>      ::= - <receiver>
                        [ - <receiver> ... ]

<receiver>            ::= name: <entity-identifier>
                          side: <side-identifier>
                        [ per_primitive: <per-primitive-mode> ] # Default: NONE

<side-identifier>     ::= FRONT
                        | BACK
                        | FRONT_AND_BACK

<per-primitive-mode>  ::= NONE
                        | INCOMING
                        | ABSORBED
                        | INCOMING_AND_ABSORBED

<entity-identifier>   # Defined in solstice-input(5)


Define that the front and back side of the entity small_square are receivers. For each side, enable the computation of per triangle absorbed irradiance.

- name: small_square
  per_primitive: ABSORBED

Declare that the front side of 3 reflectors are receivers. Use the YAML compact notation to reduce the number of lines:

- {name: H1.heliostat.reflector, side: FRONT}
- {name: H4.heliostat.reflector, side: FRONT}
- {name: H7.heliostat.reflector, side: FRONT}

Declare that the back side of receiver is effectively a receiver and enable the estimation of its associated incoming irradiance map. Make a receiver from the front side of the reflector named LFR0.pivot.reflector:

- {name: receiver, side: BACK, per_primitive: INCOMING}
- {name: LFR0.pivot.reflector, side: FRONT}


1. YAML Ain't Markup Language -


solstice(1), solstice-input(5), solstice-output(5)