63
63
64
64
65
65
def basic_chain (times , latitude , longitude ,
66
+ surface_tilt , surface_azimuth ,
66
67
module_parameters , temperature_model_parameters ,
67
68
inverter_parameters ,
68
69
irradiance = None , weather = None ,
69
- surface_tilt = None , surface_azimuth = None ,
70
- orientation_strategy = None ,
71
70
transposition_model = 'haydavies' ,
72
71
solar_position_method = 'nrel_numpy' ,
73
72
airmass_model = 'kastenyoung1989' ,
@@ -91,6 +90,17 @@ def basic_chain(times, latitude, longitude,
91
90
Positive is east of the prime meridian.
92
91
Use decimal degrees notation.
93
92
93
+ surface_tilt : numeric
94
+ Surface tilt angles in decimal degrees.
95
+ The tilt angle is defined as degrees from horizontal
96
+ (e.g. surface facing up = 0, surface facing horizon = 90)
97
+
98
+ surface_azimuth : numeric
99
+ Surface azimuth angles in decimal degrees.
100
+ The azimuth convention is defined
101
+ as degrees east of north
102
+ (North=0, South=180, East=90, West=270).
103
+
94
104
module_parameters : None, dict or Series
95
105
Module parameters as defined by the SAPM. See pvsystem.sapm for
96
106
details.
@@ -112,23 +122,6 @@ def basic_chain(times, latitude, longitude,
112
122
wind speed is 0 m/s.
113
123
Columns must be 'wind_speed', 'temp_air'.
114
124
115
- surface_tilt : None, float or Series, default None
116
- Surface tilt angles in decimal degrees.
117
- The tilt angle is defined as degrees from horizontal
118
- (e.g. surface facing up = 0, surface facing horizon = 90)
119
-
120
- surface_azimuth : None, float or Series, default None
121
- Surface azimuth angles in decimal degrees.
122
- The azimuth convention is defined
123
- as degrees east of north
124
- (North=0, South=180, East=90, West=270).
125
-
126
- orientation_strategy : None or str, default None
127
- The strategy for aligning the modules.
128
- If not None, sets the ``surface_azimuth`` and ``surface_tilt``
129
- properties of the ``system``. Allowed strategies include 'flat',
130
- 'south_at_latitude_tilt'. Ignored for SingleAxisTracker systems.
131
-
132
125
transposition_model : str, default 'haydavies'
133
126
Passed to system.get_irradiance.
134
127
@@ -157,17 +150,6 @@ def basic_chain(times, latitude, longitude,
157
150
power (Series).
158
151
"""
159
152
160
- # use surface_tilt and surface_azimuth if provided,
161
- # otherwise set them using the orientation_strategy
162
- if surface_tilt is not None and surface_azimuth is not None :
163
- pass
164
- elif orientation_strategy is not None :
165
- surface_tilt , surface_azimuth = \
166
- get_orientation (orientation_strategy , latitude = latitude )
167
- else :
168
- raise ValueError ('orientation_strategy or surface_tilt and '
169
- 'surface_azimuth must be provided' )
170
-
171
153
if altitude is None and pressure is None :
172
154
altitude = 0.
173
155
pressure = 101325.
@@ -332,12 +314,6 @@ class ModelChain:
332
314
A :py:class:`~pvlib.location.Location` object that represents
333
315
the physical location at which to evaluate the model.
334
316
335
- orientation_strategy : None or str, default None
336
- The strategy for aligning the modules. If not None, sets the
337
- ``surface_azimuth`` and ``surface_tilt`` properties of the
338
- ``system``. Allowed strategies include 'flat',
339
- 'south_at_latitude_tilt'. Ignored for SingleAxisTracker systems.
340
-
341
317
clearsky_model : str, default 'ineichen'
342
318
Passed to location.get_clearsky.
343
319
@@ -395,7 +371,6 @@ class ModelChain:
395
371
'dc' , 'ac' , 'diode_params' , 'tracking' ]
396
372
397
373
def __init__ (self , system , location ,
398
- orientation_strategy = None ,
399
374
clearsky_model = 'ineichen' ,
400
375
transposition_model = 'haydavies' ,
401
376
solar_position_method = 'nrel_numpy' ,
@@ -421,7 +396,6 @@ def __init__(self, system, location,
421
396
self .temperature_model = temperature_model
422
397
423
398
self .losses_model = losses_model
424
- self .orientation_strategy = orientation_strategy
425
399
426
400
self .weather = None
427
401
self .times = None
@@ -451,7 +425,6 @@ def __setattr__(self, key, value):
451
425
452
426
@classmethod
453
427
def with_pvwatts (cls , system , location ,
454
- orientation_strategy = None ,
455
428
clearsky_model = 'ineichen' ,
456
429
airmass_model = 'kastenyoung1989' ,
457
430
name = None ,
@@ -469,12 +442,6 @@ def with_pvwatts(cls, system, location,
469
442
A :py:class:`~pvlib.location.Location` object that represents
470
443
the physical location at which to evaluate the model.
471
444
472
- orientation_strategy : None or str, default None
473
- The strategy for aligning the modules. If not None, sets the
474
- ``surface_azimuth`` and ``surface_tilt`` properties of the
475
- ``system``. Allowed strategies include 'flat',
476
- 'south_at_latitude_tilt'. Ignored for SingleAxisTracker systems.
477
-
478
445
clearsky_model : str, default 'ineichen'
479
446
Passed to location.get_clearsky.
480
447
@@ -502,7 +469,6 @@ def with_pvwatts(cls, system, location,
502
469
>>> ModelChain.with_pvwatts(system, location)
503
470
ModelChain:
504
471
name: None
505
- orientation_strategy: None
506
472
clearsky_model: ineichen
507
473
transposition_model: perez
508
474
solar_position_method: nrel_numpy
@@ -518,7 +484,6 @@ def with_pvwatts(cls, system, location,
518
484
config .update (kwargs )
519
485
return ModelChain (
520
486
system , location ,
521
- orientation_strategy = orientation_strategy ,
522
487
clearsky_model = clearsky_model ,
523
488
airmass_model = airmass_model ,
524
489
name = name ,
@@ -527,7 +492,6 @@ def with_pvwatts(cls, system, location,
527
492
528
493
@classmethod
529
494
def with_sapm (cls , system , location ,
530
- orientation_strategy = None ,
531
495
clearsky_model = 'ineichen' ,
532
496
transposition_model = 'haydavies' ,
533
497
solar_position_method = 'nrel_numpy' ,
@@ -548,12 +512,6 @@ def with_sapm(cls, system, location,
548
512
A :py:class:`~pvlib.location.Location` object that represents
549
513
the physical location at which to evaluate the model.
550
514
551
- orientation_strategy : None or str, default None
552
- The strategy for aligning the modules. If not None, sets the
553
- ``surface_azimuth`` and ``surface_tilt`` properties of the
554
- ``system``. Allowed strategies include 'flat',
555
- 'south_at_latitude_tilt'. Ignored for SingleAxisTracker systems.
556
-
557
515
clearsky_model : str, default 'ineichen'
558
516
Passed to location.get_clearsky.
559
517
@@ -589,7 +547,6 @@ def with_sapm(cls, system, location,
589
547
>>> ModelChain.with_sapm(system, location)
590
548
ModelChain:
591
549
name: None
592
- orientation_strategy: None
593
550
clearsky_model: ineichen
594
551
transposition_model: haydavies
595
552
solar_position_method: nrel_numpy
@@ -605,7 +562,6 @@ def with_sapm(cls, system, location,
605
562
config .update (kwargs )
606
563
return ModelChain (
607
564
system , location ,
608
- orientation_strategy = orientation_strategy ,
609
565
clearsky_model = clearsky_model ,
610
566
transposition_model = transposition_model ,
611
567
solar_position_method = solar_position_method ,
@@ -616,7 +572,7 @@ def with_sapm(cls, system, location,
616
572
617
573
def __repr__ (self ):
618
574
attrs = [
619
- 'name' , 'orientation_strategy' , ' clearsky_model' ,
575
+ 'name' , 'clearsky_model' ,
620
576
'transposition_model' , 'solar_position_method' ,
621
577
'airmass_model' , 'dc_model' , 'ac_model' , 'aoi_model' ,
622
578
'spectral_model' , 'temperature_model' , 'losses_model'
@@ -634,21 +590,6 @@ def getmcattr(self, attr):
634
590
return ('ModelChain: \n ' + '\n ' .join (
635
591
f'{ attr } : { getmcattr (self , attr )} ' for attr in attrs ))
636
592
637
- @property
638
- def orientation_strategy (self ):
639
- return self ._orientation_strategy
640
-
641
- @orientation_strategy .setter
642
- def orientation_strategy (self , strategy ):
643
- if strategy == 'None' :
644
- strategy = None
645
-
646
- if strategy is not None :
647
- self .system .surface_tilt , self .system .surface_azimuth = \
648
- get_orientation (strategy , latitude = self .location .latitude )
649
-
650
- self ._orientation_strategy = strategy
651
-
652
593
@property
653
594
def dc_model (self ):
654
595
return self ._dc_model
0 commit comments