Skip to content

Commit 26377f8

Browse files
authored
Merge branch 'main' into chandrupatla
2 parents ca6e4b8 + 6dfeaf8 commit 26377f8

23 files changed

Lines changed: 396 additions & 96 deletions

.github/workflows/pytest.yml

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,11 @@ jobs:
4040

4141
- name: Install Conda environment with Micromamba
4242
if: matrix.environment-type == 'conda'
43-
uses: mamba-org/setup-micromamba@v1
43+
uses: mamba-org/setup-micromamba@v2
4444
with:
4545
environment-file: ${{ env.REQUIREMENTS }}
46-
cache-downloads: true
46+
cache-downloads: false
47+
cache-environment: false
4748
create-args: >-
4849
python=${{ matrix.python-version }}
4950
condarc: |

README.md

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,11 @@ Installation
7474
============
7575

7676
pvlib-python releases may be installed using the ``pip`` and ``conda`` tools.
77-
Please see the [Installation page](https://pvlib-python.readthedocs.io/en/stable/user_guide/installation.html) of the documentation for complete instructions.
77+
```bash
78+
pip install pvlib
79+
conda install -c conda-forge pvlib
80+
```
81+
Please see the [Installation page](https://pvlib-python.readthedocs.io/en/stable/user_guide/getting_started/installation.html) of the documentation for complete instructions.
7882

7983

8084
Contributing

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/reference/iotools.rst

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,17 @@ clear-sky irradiance globally.
5757
iotools.parse_cams
5858

5959

60+
NASA POWER
61+
**********
62+
63+
Satellite-derived irradiance and weather data with global coverage.
64+
65+
.. autosummary::
66+
:toctree: generated/
67+
68+
iotools.get_nasa_power
69+
70+
6071
NSRDB
6172
*****
6273

docs/sphinx/source/user_guide/extras/nomenclature.rst

Lines changed: 28 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,24 @@ There is a convention on consistent variable names throughout the library:
2222

2323
aoi
2424
Angle of incidence. Angle between the surface normal vector and the
25-
vector pointing towards the suns center
25+
vector pointing towards the sun's center. [°]
2626

2727
aoi_projection
28-
cos(aoi)
28+
cos(aoi). When the sun is behind the surface, the value is negative.
29+
For many uses, negative values must be set to zero.
2930

3031
ape
3132
Average photon energy
3233

3334
apparent_zenith
34-
Refraction-corrected solar zenith angle in degrees
35+
Refraction-corrected solar zenith angle. The solar
36+
zenith angle describes the position of the sun relative to the vertical and is
37+
defined as the angle between a vector pointed straight up and a vector pointed
38+
at the sun, from the observer. [°]
39+
40+
apparent_elevation
41+
Refraction-corrected solar elevation angle. This is the complement of
42+
:term:`apparent_zenith` (90 - apparent_zenith). [°]
3543

3644
bhi
3745
Beam/direct horizontal irradiance
@@ -87,10 +95,10 @@ There is a convention on consistent variable names throughout the library:
8795
Sandia Array Performance Model IV curve parameters
8896

8997
latitude
90-
Latitude
98+
Latitude in decimal degrees. Positive north of equator, negative to south.
9199

92100
longitude
93-
Longitude
101+
Longitude in decimal degrees. Positive east of prime meridian, negative to west.
94102

95103
pac, ac
96104
AC power
@@ -141,10 +149,15 @@ There is a convention on consistent variable names throughout the library:
141149
Diode saturation current
142150

143151
solar_azimuth
144-
Azimuth angle of the sun in degrees East of North
152+
Azimuth angle of the sun in degrees East of North. The solar azimuth angle
153+
describes the sun’s position along the horizon relative to the observer.
154+
The pvlib-python convention is defined as degrees East of North, so
155+
North = 0°, East = 90°, South = 180°, West = 270°.
145156

146157
solar_zenith
147-
Zenith angle of the sun in degrees
158+
Zenith angle of the sun in degrees. This is the angle between is between a
159+
vector pointed straight up and a vector pointed at the sun, from the observer.
160+
This is the complement of solar elevation (90 - elevation). [°]
148161

149162
spectra
150163
spectra_components
@@ -154,11 +167,16 @@ There is a convention on consistent variable names throughout the library:
154167
is composed of direct and diffuse components.
155168

156169
surface_azimuth
157-
Azimuth angle of the surface
170+
Azimuth angle of the surface in degrees East of North. This angle describes the
171+
horizontal projection of the normal vector from the surface. The pvlib-python
172+
convention is defined as degrees East (clockwise) of North, so North = 0°,
173+
East = 90°, South = 180°, West = 270°.
158174

159175
surface_tilt
160-
Panel tilt from horizontal [°]. For example, a surface facing up = 0°,
161-
surface facing horizon = 90°.
176+
Tilt from horizontal [°]. The surface tilt angle
177+
is defined as degrees from the horizontal
178+
such that a surface facing up would have a surface tilt of 0°, and one facing
179+
the horizon would be 90°. [°]
162180

163181
temp_air
164182
Temperature of the air

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

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,14 +10,20 @@ Breaking Changes
1010

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

1517
Bug fixes
1618
~~~~~~~~~
1719

1820

1921
Enhancements
2022
~~~~~~~~~~~~
23+
* Add :py:func:`pvlib.iotools.get_nasa_power` to retrieve data from NASA POWER free API.
24+
(:pull:`2500`)
25+
* :py:func:`pvlib.spectrum.spectral_factor_firstsolar` no longer emits warnings
26+
when airmass and precipitable water values fall out of range. (:pull:`2512`)
2127
* Add ``method='chandrupatla'`` (faster than ``brentq`` and slower than ``newton``,
2228
but convergence is guaranteed) as an option for
2329
:py:func:`pvlib.pvsystem.singlediode`,
@@ -27,10 +33,12 @@ Enhancements
2733
:py:func:`~pvlib.singlediode.bishop88_mpp`,
2834
:py:func:`~pvlib.singlediode.bishop88_v_from_i`, and
2935
:py:func:`~pvlib.singlediode.bishop88_i_from_v`. (:issue:`2497`, :pull:`2498`)
30-
36+
3137

3238
Documentation
3339
~~~~~~~~~~~~~
40+
* Substantiate definitions of solar/surface azimuth/zenith and aoi on the
41+
:ref:`nomenclature` page. (:issue:`2448`, :pull:`2503`)
3442

3543

3644
Testing
@@ -53,4 +61,8 @@ Maintenance
5361
Contributors
5462
~~~~~~~~~~~~
5563
* Elijah Passmore (:ghuser:`eljpsm`)
64+
* Ioannis Sifnaios (:ghuser:`IoannisSifnaios`)
65+
* Rajiv Daxini (:ghuser:`RDaxini`)
66+
* Omar Bahamida (:ghuser:`OmarBahamida`)
5667
* Kevin Anderson (:ghuser:`kandersolar`)
68+
* Mikaella Brewer (:ghuser:`brwerx`)

pvlib/bifacial/pvfactors.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
"""
22
The ``bifacial.pvfactors`` module contains functions for modeling back surface
3-
plane-of-array irradiance using an external implementaton of the pvfactors
3+
plane-of-array irradiance using an external implementation of the pvfactors
44
model (either ``solarfactors`` or the original ``pvfactors``).
55
"""
66

0 commit comments

Comments
 (0)