Skip to content

Commit 0747a43

Browse files
committed
I did fck it with the tmy_data.shift, never again
1 parent 0e600b2 commit 0747a43

File tree

1 file changed

+64
-12
lines changed

1 file changed

+64
-12
lines changed

docs/examples/spectrum/plot_martin_ruiz_spectral_modifier_figs4to6.py

Lines changed: 64 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13,40 +13,92 @@
1313
:doi:10.1002/(SICI)1099-159X(199907/08)7:4<299::AID-PIP260>3.0.CO;2-0
1414
"""
1515

16-
from pvlib.spectrum.mismatch import martin_ruiz_spectral_modifier
16+
# from pvlib.spectrum.mismatch import martin_ruiz_spectral_modifier
1717
from pvlib.location import Location
1818
from pvlib.iotools import get_pvgis_tmy
1919
from pvlib.irradiance import get_extra_radiation, clearness_index
20+
from pvlib.tools import cosd
2021
from datetime import datetime, timedelta
2122
import numpy as np
22-
import pandas as pd
23+
# import pandas as pd
2324
import matplotlib.pyplot as plt
25+
# import matplotlib as mpl
26+
min_cos_zen = 0.065*1 #5 # OJO, esto es para más adelante: '1' -> '5'
27+
# clearness = np.linspace(0.56, 0.82, 10)
2428

25-
# clearness_index = np.linspace(0.56, 0.82, 10)
29+
site = Location(40.4534, -3.7270, altitude=664, name='IES-UPM, Madrid',
30+
tz='CET')
2631

27-
site = Location(40.4534, -3.7270, altitude=664, name='IES-UPM, Madrid')
28-
29-
time = pd.date_range(start=datetime(2020, 1, 1), end=datetime(2020, 12, 31),
30-
freq=timedelta(hours=1))
32+
# time = pd.date_range(start=datetime(2020, 1, 1), end=datetime(2020, 12, 31),
33+
# freq=timedelta(hours=1))
3134

3235
tmy_data, _, _, _ = get_pvgis_tmy(site.latitude, site.longitude,
3336
map_variables=True)
34-
tmy_data = tmy_data.shift(freq=timedelta(minutes=-30))
37+
tmy_data.index = [ts.replace(year=2022) for ts in tmy_data.index]
3538

3639
solar_pos = site.get_solarposition(tmy_data.index)
3740

3841
extra_rad = get_extra_radiation(tmy_data.index)
3942

4043
clearness = clearness_index(ghi=tmy_data['ghi'],
4144
solar_zenith=solar_pos['zenith'],
42-
extra_radiation=extra_rad)
45+
extra_radiation=extra_rad,
46+
min_cos_zenith=min_cos_zen)
47+
pass
48+
49+
tmy_data['ghi'].plot()
50+
extra_rad.plot()
51+
52+
# Ec. en clearness_index; mínimo del coseno que se permite es 0.065
53+
(np.maximum(cosd(solar_pos['zenith']), min_cos_zen)*1000).plot()
54+
55+
(clearness*1000).plot()
56+
57+
plt.legend(['ghi', 'extra_rad', 'cosd [x1000]', 'kt [x1000]'])
58+
plt.show()
59+
60+
61+
exit()
62+
pass
63+
plt.cla()
64+
plt.clf()
4365

4466
print('clearness')
4567
print(clearness)
68+
np.max(clearness)
4669
clearness.plot()
4770

4871
plt.show()
4972

50-
print('pressure')
51-
pressure = site.get_airmass(model='kasten1966')
52-
print(pressure)
73+
74+
pass
75+
76+
print('airmass')
77+
airmass = site.get_airmass(solar_position=solar_pos, model='kasten1966')
78+
print(airmass)
79+
80+
monosi_mm = martin_ruiz_spectral_modifier(clearness,
81+
1.5,
82+
cell_type='monosi')
83+
polysi_mm = martin_ruiz_spectral_modifier(clearness,
84+
1.5,
85+
cell_type='polysi')
86+
asi_mm = martin_ruiz_spectral_modifier(clearness,
87+
1.5,
88+
cell_type='asi')
89+
90+
# fig, (ax1, ax2, ax3) = plt.subplots(1, 3, sharex=True, sharey=True)
91+
92+
# ax1.plot(clearness, monosi_mm['direct'], marker='s')
93+
# ax1.plot(clearness, polysi_mm['direct'], marker='^')
94+
# ax1.plot(clearness, asi_mm['direct'], marker='D')
95+
96+
# ax2.plot(clearness, monosi_mm['sky_diffuse'], marker='s')
97+
# ax2.plot(clearness, polysi_mm['sky_diffuse'], marker='^')
98+
# ax2.plot(clearness, asi_mm['sky_diffuse'], marker='D')
99+
100+
# ax3.plot(clearness, monosi_mm['ground_diffuse'], marker='s')
101+
# ax3.plot(clearness, polysi_mm['ground_diffuse'], marker='^')
102+
# ax3.plot(clearness, asi_mm['ground_diffuse'], marker='D')
103+
104+
# plt.show()

0 commit comments

Comments
 (0)