Skip to content

Commit 4dcbdfb

Browse files
committedNov 19, 2024
Merge branch 'single_axis_tracking' of https://github.com/NREL/PVDegradationTools into Kempe-Edge-Seals
I found an error in the default tilt, it should be the absolute value for the southern hemisphere latitude. Fixed an error that occurs if kwargs can't be sent to a function.
1 parent bce5cbd commit 4dcbdfb

File tree

3 files changed

+83
-47
lines changed

3 files changed

+83
-47
lines changed
 

‎pvdeg/spectral.py

+6-6
Original file line numberDiff line numberDiff line change
@@ -131,6 +131,7 @@ def poa_irradiance_fixed(
131131
tilt=None,
132132
azimuth=None,
133133
sky_model="isotropic",
134+
**kwargs_irradiance,
134135
) -> pd.DataFrame:
135136
"""
136137
Calculate plane-of-array (POA) irradiance using pvlib based on weather data from the
@@ -164,7 +165,7 @@ def poa_irradiance_fixed(
164165
try:
165166
tilt = float(meta["tilt"])
166167
except:
167-
tilt = float(meta["latitude"])
168+
tilt = float(abs(meta["latitude"]))
168169
print(
169170
f"The array tilt angle was not provided, therefore the latitude tilt of {tilt:.1f} was used."
170171
)
@@ -218,6 +219,7 @@ def poa_irradiance_tracker(
218219
gcr=0.2857142857142857,
219220
cross_axis_tilt=0,
220221
sky_model="isotropic",
222+
**kwargs_irradiance,
221223
) -> pd.DataFrame:
222224
"""
223225
Calculate plane-of-array (POA) irradiance using pvlib based on weather data from the
@@ -247,17 +249,15 @@ def poa_irradiance_tracker(
247249
'poa_sky_diffuse', 'poa_ground_diffuse'. [W/m2]
248250
"""
249251

250-
if axis_azimuth is None: # Sets the default orientation to equator facing.
252+
if axis_azimuth is None: # Sets the default orientation to north-south.
251253
try:
252-
axis_azimuth = float(meta["azimuth"])
254+
axis_azimuth = float(meta["axis_azimuth"])
253255
except:
254256
if float(meta["latitude"]) < 0:
255257
axis_azimuth = 0
256258
else:
257259
axis_azimuth = 180
258-
print(
259-
f"The array azimuth was not provided, therefore an azimuth of {axis_azimuth:.1f} was used."
260-
)
260+
print(f"The array axis_azimuth was not provided, therefore an azimuth of {axis_azimuth:.1f} was used.")
261261

262262
if sol_position is None:
263263
sol_position = solar_position(weather_df, meta)

‎pvdeg/standards.py

+2
Original file line numberDiff line numberDiff line change
@@ -659,6 +659,7 @@ def x_eff_temperature_estimate(
659659
conf_0="insulated_back_glass_polymer",
660660
conf_inf="open_rack_glass_polymer",
661661
wind_factor=0.33,
662+
module_mount=None,
662663
tilt=None,
663664
azimuth=None,
664665
x_eff=None,
@@ -734,6 +735,7 @@ def x_eff_temperature_estimate(
734735
weather_df=weather_df,
735736
meta=meta,
736737
sol_position=solar_position,
738+
module_mount=module_mount,
737739
tilt=tilt,
738740
azimuth=azimuth,
739741
sky_model=sky_model,

‎tutorials_and_tools/tutorials_and_tools/Tools - Module Standoff for IEC TS 63126.ipynb

+75-41
Large diffs are not rendered by default.

0 commit comments

Comments
 (0)
Failed to load comments.