@@ -138,8 +138,9 @@ provided for each array, and the arrays are provided to
138
138
.. ipython :: python
139
139
140
140
module_parameters = {' pdc0' : 5000 , ' gamma_pdc' : - 0.004 }
141
- array_one = pvsystem.Array(module_parameters = module_parameters)
142
- array_two = pvsystem.Array(module_parameters = module_parameters)
141
+ mount = pvsystem.FixedMount(surface_tilt = 20 , surface_azimuth = 180 )
142
+ array_one = pvsystem.Array(mount = mount, module_parameters = module_parameters)
143
+ array_two = pvsystem.Array(mount = mount, module_parameters = module_parameters)
143
144
system_two_arrays = pvsystem.PVSystem(arrays = [array_one, array_two],
144
145
inverter_parameters = inverter_parameters)
145
146
print ([array.module_parameters for array in system_two_arrays.arrays])
@@ -148,7 +149,7 @@ provided for each array, and the arrays are provided to
148
149
149
150
The :py:class: `~pvlib.pvsystem.Array ` class includes those
150
151
:py:class: `~pvlib.pvsystem.PVSystem ` attributes that may vary from array
151
- to array. These attributes include ` surface_tilt `, ` surface_azimuth `,
152
+ to array. These attributes include
152
153
`module_parameters `, `temperature_model_parameters `, `modules_per_string `,
153
154
`strings_per_inverter `, `albedo `, `surface_type `, `module_type `, and
154
155
`racking_model `.
@@ -179,27 +180,30 @@ Tilt and azimuth
179
180
The first parameters which describe the DC part of a PV system are the tilt
180
181
and azimuth of the modules. In the case of a PV system with a single array,
181
182
these parameters can be specified using the `PVSystem.surface_tilt ` and
182
- `PVSystem.surface_azimuth ` attributes.
183
+ `PVSystem.surface_azimuth ` attributes. This will automatically create
184
+ an :py:class: `~pvlib.pvsystem.Array ` with a :py:class: `~pvlib.pvsystem.FixedMount `
185
+ at the specified tilt and azimuth:
183
186
184
187
.. ipython :: python
185
188
186
189
# single south-facing array at 20 deg tilt
187
190
system_one_array = pvsystem.PVSystem(surface_tilt = 20 , surface_azimuth = 180 )
188
- print (system_one_array.arrays[0 ].surface_tilt,
189
- system_one_array.arrays[0 ].surface_azimuth)
191
+ print (system_one_array.arrays[0 ].mount)
190
192
191
193
192
194
In the case of a PV system with several arrays, the parameters are specified
193
- for each array using the attributes `Array.surface_tilt ` and `Array.surface_azimuth `.
195
+ for each array by passing a different :py:class: `~pvlib.pvsystem.FixedMount `
196
+ (or another `Mount ` class):
194
197
195
198
.. ipython :: python
196
199
197
- array_one = pvsystem.Array(surface_tilt = 30 , surface_azimuth = 90 )
198
- print (array_one.surface_tilt, array_one.surface_azimuth)
199
- array_two = pvsystem.Array(surface_tilt = 30 , surface_azimuth = 220 )
200
+ array_one = pvsystem.Array(pvsystem.FixedMount( surface_tilt = 30 , surface_azimuth = 90 ) )
201
+ print (array_one.mount. surface_tilt, array_one.mount .surface_azimuth)
202
+ array_two = pvsystem.Array(pvsystem.FixedMount( surface_tilt = 30 , surface_azimuth = 220 ) )
200
203
system = pvsystem.PVSystem(arrays = [array_one, array_two])
201
204
system.num_arrays
202
- [(array.surface_tilt, array.surface_azimuth) for array in system.arrays]
205
+ for array in system.arrays:
206
+ print (array.mount)
203
207
204
208
205
209
The `surface_tilt ` and `surface_azimuth ` attributes are used in PVSystem
@@ -215,8 +219,7 @@ and `solar_azimuth` as arguments.
215
219
216
220
# single south-facing array at 20 deg tilt
217
221
system_one_array = pvsystem.PVSystem(surface_tilt = 20 , surface_azimuth = 180 )
218
- print (system_one_array.arrays[0 ].surface_tilt,
219
- system_one_array.arrays[0 ].surface_azimuth)
222
+ print (system_one_array.arrays[0 ].mount)
220
223
221
224
# call get_aoi with solar_zenith, solar_azimuth
222
225
aoi = system_one_array.get_aoi(solar_zenith = 30 , solar_azimuth = 180 )
@@ -229,7 +232,7 @@ operates in a similar manner.
229
232
.. ipython :: python
230
233
231
234
# two arrays each at 30 deg tilt with different facing
232
- array_one = pvsystem.Array(surface_tilt = 30 , surface_azimuth = 90 )
235
+ array_one = pvsystem.Array(pvsystem.FixedMount( surface_tilt = 30 , surface_azimuth = 90 ) )
233
236
array_one_aoi = array_one.get_aoi(solar_zenith = 30 , solar_azimuth = 180 )
234
237
print (array_one_aoi)
235
238
@@ -240,7 +243,7 @@ operates on all `Array` instances in the `PVSystem`, whereas the the
240
243
241
244
.. ipython :: python
242
245
243
- array_two = pvsystem.Array(surface_tilt = 30 , surface_azimuth = 220 )
246
+ array_two = pvsystem.Array(pvsystem.FixedMount( surface_tilt = 30 , surface_azimuth = 220 ) )
244
247
system_multiarray = pvsystem.PVSystem(arrays = [array_one, array_two])
245
248
print (system_multiarray.num_arrays)
246
249
# call get_aoi with solar_zenith, solar_azimuth
@@ -315,8 +318,8 @@ Losses
315
318
316
319
The `losses_parameters ` attribute contains data that may be used with
317
320
methods that calculate system losses. At present, these methods include
318
- only :py:meth: `PVSystem.pvwatts_losses ` and
319
- :py:func: `pvsystem.pvwatts_losses `, but we hope to add more related functions
321
+ only :py:meth: `pvlib.pvsystem. PVSystem.pvwatts_losses ` and
322
+ :py:func: `pvlib. pvsystem.pvwatts_losses `, but we hope to add more related functions
320
323
and methods in the future.
321
324
322
325
0 commit comments