Skip to content

Commit 908d3da

Browse files
Rename solar position inputs in tracking.singleaxis (#2480)
* Rename solar position inputs in tracking.singleaxis * Update v0.13.1.rst * Revert solar_zenith to apparent_zenith * One more fix * One more more fix * Apply suggestions from code review Co-authored-by: Kevin Anderson <[email protected]> --------- Co-authored-by: Kevin Anderson <[email protected]>
1 parent c1633df commit 908d3da

File tree

6 files changed

+19
-13
lines changed

6 files changed

+19
-13
lines changed

docs/examples/agrivoltaics/plot_agrivoltaics_ground_irradiance.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@
5959

6060
tracking_orientations = pvlib.tracking.singleaxis(
6161
apparent_zenith=solpos['apparent_zenith'],
62-
apparent_azimuth=solpos['azimuth'],
62+
solar_azimuth=solpos['azimuth'],
6363
axis_azimuth=axis_azimuth,
6464
max_angle=max_angle,
6565
backtrack=True,

docs/examples/shading/plot_martinez_shade_loss.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@
9090

9191
tracking_result = pvlib.tracking.singleaxis(
9292
apparent_zenith=solar_apparent_zenith,
93-
apparent_azimuth=solar_azimuth,
93+
solar_azimuth=solar_azimuth,
9494
axis_tilt=axis_tilt,
9595
axis_azimuth=axis_azimuth,
9696
max_angle=(-90 + cross_axis_tilt, 90 + cross_axis_tilt), # (min, max)

docs/examples/solar-tracking/plot_single_axis_tracking.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@
3333

3434
truetracking_angles = tracking.singleaxis(
3535
apparent_zenith=solpos['apparent_zenith'],
36-
apparent_azimuth=solpos['azimuth'],
36+
solar_azimuth=solpos['azimuth'],
3737
axis_tilt=0,
3838
axis_azimuth=180,
3939
max_angle=90,
@@ -61,7 +61,7 @@
6161
for gcr in [0.2, 0.4, 0.6]:
6262
backtracking_angles = tracking.singleaxis(
6363
apparent_zenith=solpos['apparent_zenith'],
64-
apparent_azimuth=solpos['azimuth'],
64+
solar_azimuth=solpos['azimuth'],
6565
axis_tilt=0,
6666
axis_azimuth=180,
6767
max_angle=90,

docs/examples/solar-tracking/plot_single_axis_tracking_on_sloped_terrain.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@
100100
for cross_axis_tilt in [0, 5, 10]:
101101
tracker_data = tracking.singleaxis(
102102
apparent_zenith=solpos['apparent_zenith'],
103-
apparent_azimuth=solpos['azimuth'],
103+
solar_azimuth=solpos['azimuth'],
104104
axis_tilt=0, # flat because the axis is perpendicular to the slope
105105
axis_azimuth=180, # N-S axis, azimuth facing south
106106
max_angle=90,
@@ -156,7 +156,7 @@
156156

157157
tracker_data = tracking.singleaxis(
158158
apparent_zenith=solpos['apparent_zenith'],
159-
apparent_azimuth=solpos['azimuth'],
159+
solar_azimuth=solpos['azimuth'],
160160
axis_tilt=axis_tilt, # no longer flat because the terrain imparts a tilt
161161
axis_azimuth=axis_azimuth,
162162
max_angle=90,

docs/sphinx/source/whatsnew/v0.13.1.rst

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,8 @@ Breaking Changes
1010

1111
Deprecations
1212
~~~~~~~~~~~~
13-
13+
* Rename parameter name ``aparent_azimuth`` to ``solar_azimuth`` in :py:func:`~pvlib.tracking.singleaxis`.
14+
(:issue:`2479`, :pull:`2480`)
1415

1516
Bug fixes
1617
~~~~~~~~~

pvlib/tracking.py

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,9 +4,14 @@
44
from pvlib.tools import cosd, sind, tand, acosd, asind
55
from pvlib import irradiance
66
from pvlib import shading
7+
from pvlib._deprecation import renamed_kwarg_warning
78

89

9-
def singleaxis(apparent_zenith, apparent_azimuth,
10+
@renamed_kwarg_warning(
11+
since='0.13.1',
12+
old_param_name='apparent_azimuth',
13+
new_param_name='solar_azimuth')
14+
def singleaxis(apparent_zenith, solar_azimuth,
1015
axis_tilt=0, axis_azimuth=0, max_angle=90,
1116
backtrack=True, gcr=2.0/7.0, cross_axis_tilt=0):
1217
"""
@@ -33,7 +38,7 @@ def singleaxis(apparent_zenith, apparent_azimuth,
3338
apparent_zenith : float, 1d array, or Series
3439
Solar apparent zenith angles in decimal degrees.
3540
36-
apparent_azimuth : float, 1d array, or Series
41+
solar_azimuth : float, 1d array, or Series
3742
Solar apparent azimuth angles in decimal degrees.
3843
3944
axis_tilt : float, default 0
@@ -123,10 +128,10 @@ def singleaxis(apparent_zenith, apparent_azimuth,
123128
index = None
124129

125130
# convert scalars to arrays
126-
apparent_azimuth = np.atleast_1d(apparent_azimuth)
131+
solar_azimuth = np.atleast_1d(solar_azimuth)
127132
apparent_zenith = np.atleast_1d(apparent_zenith)
128133

129-
if apparent_azimuth.ndim > 1 or apparent_zenith.ndim > 1:
134+
if solar_azimuth.ndim > 1 or apparent_zenith.ndim > 1:
130135
raise ValueError('Input dimensions must not exceed 1')
131136

132137
# The ideal tracking angle, omega_ideal, is the rotation to place the sun
@@ -142,7 +147,7 @@ def singleaxis(apparent_zenith, apparent_azimuth,
142147
axis_tilt=axis_tilt,
143148
axis_azimuth=axis_azimuth,
144149
solar_zenith=apparent_zenith,
145-
solar_azimuth=apparent_azimuth,
150+
solar_azimuth=solar_azimuth,
146151
)
147152

148153
# filter for sun above panel horizon
@@ -191,7 +196,7 @@ def singleaxis(apparent_zenith, apparent_azimuth,
191196
surface_tilt = surface['surface_tilt']
192197
surface_azimuth = surface['surface_azimuth']
193198
aoi = irradiance.aoi(surface_tilt, surface_azimuth,
194-
apparent_zenith, apparent_azimuth)
199+
apparent_zenith, solar_azimuth)
195200

196201
# Bundle DataFrame for return values and filter for sun below horizon.
197202
out = {'tracker_theta': tracker_theta, 'aoi': aoi,

0 commit comments

Comments
 (0)