pvsystem tutorial

This tutorial explores the pvlib.pvsystem module. The module has functions for importing PV module and inverter data and functions for modeling module and inverter performance.

  1. systemdef
  2. Angle of Incidence Modifiers
  3. Sandia Cell Temp correction
  4. Sandia Inverter Model
  5. Sandia Array Performance Model
    1. SAPM IV curves
  6. DeSoto Model
  7. Single Diode Model

In [1]:
%matplotlib inline
import matplotlib.pyplot as plt
try:
    import seaborn as sns
except ImportError:
    pass

# built in python modules
import datetime
import logging
import os
import inspect

try:
    from importlib import reload
except:
    pass

# python add-ons
import numpy as np
import pandas as pd

In [2]:
import pvlib
from pvlib import pvsystem

systemdef

pvlib can import TMY2 and TMY3 data. Here, we import the example files.


In [3]:
pvlib_abspath = os.path.dirname(os.path.abspath(inspect.getfile(pvlib)))

tmy3_data, tmy3_metadata = pvlib.tmy.readtmy3(os.path.join(pvlib_abspath, 'data', '703165TY.csv'))
tmy2_data, tmy2_metadata = pvlib.tmy.readtmy2(os.path.join(pvlib_abspath, 'data', '12839.tm2'))

In [4]:
pvlib.pvsystem.systemdef(tmy3_metadata, 0, 0, .1, 5, 5)


Out[4]:
{'albedo': 0.1,
 'altitude': 7.0,
 'latitude': 55.317,
 'longitude': -160.517,
 'name': '"SAND POINT"',
 'parallel_modules': 5,
 'series_modules': 5,
 'surface_azimuth': 0,
 'surface_tilt': 0,
 'tz': -9.0}

In [5]:
pvlib.pvsystem.systemdef(tmy2_metadata, 0, 0, .1, 5, 5)


Out[5]:
{'albedo': 0.1,
 'altitude': 2.0,
 'latitude': 25.8,
 'longitude': -80.26666666666667,
 'name': 'MIAMI',
 'parallel_modules': 5,
 'series_modules': 5,
 'surface_azimuth': 0,
 'surface_tilt': 0,
 'tz': -5}

Angle of Incidence Modifiers


In [6]:
angles = np.linspace(-180,180,3601)
ashraeiam = pd.Series(pvsystem.ashraeiam(.05, angles), index=angles)

ashraeiam.plot()
plt.ylabel('ASHRAE modifier')
plt.xlabel('input angle (deg)')


Out[6]:
<matplotlib.text.Text at 0x7f9e51ca4278>

In [7]:
angles = np.linspace(-180,180,3601)
physicaliam = pd.Series(pvsystem.physicaliam(4, 0.002, 1.526, angles), index=angles)

physicaliam.plot()
plt.ylabel('physical modifier')
plt.xlabel('input index')


Out[7]:
<matplotlib.text.Text at 0x7f9e22175e10>

In [8]:
plt.figure()
ashraeiam.plot(label='ASHRAE')
physicaliam.plot(label='physical')
plt.ylabel('modifier')
plt.xlabel('input angle (deg)')
plt.legend()


Out[8]:
<matplotlib.legend.Legend at 0x7f9e220fcc18>

Sandia Cell Temp correction

PV system efficiency can vary by up to 0.5% per degree C, so it's important to accurately model cell and module temperature. The sapm_celltemp function uses plane of array irradiance, ambient temperature, wind speed, and module and racking type to calculate cell and module temperatures. From King et. al. (2004):

$$T_m = E e^{a+b*WS} + T_a$$$$T_c = T_m + \frac{E}{E_0} \Delta T$$

The $a$, $b$, and $\Delta T$ parameters depend on the module and racking type. The default parameter set is open_rack_cell_glassback.


In [9]:
pvsystem.sapm_celltemp(900, 5, 20)


Out[9]:
{'tcell': 43.509190983665746, 'tmodule': 40.809190983665744}

In [10]:
pvsystem.sapm_celltemp(900, 5, 20, [-3.47, -.0594, 3])


Out[10]:
{'tcell': 43.509190983665746, 'tmodule': 40.809190983665744}

Cell and module temperature as a function of wind speed.


In [11]:
wind = np.linspace(0,20,21)
temps = pd.DataFrame(pvsystem.sapm_celltemp(900, wind, 20), index=wind)

temps.plot()
plt.legend()
plt.xlabel('wind speed (m/s)')
plt.ylabel('temperature (deg C)')


Out[11]:
<matplotlib.text.Text at 0x7f9e220e5908>

Cell and module temperature as a function of ambient temperature.


In [12]:
atemp = np.linspace(-20,50,71)
temps = pd.DataFrame(pvsystem.sapm_celltemp(900, 2, atemp), index=atemp)

temps.plot()
plt.legend()
plt.xlabel('ambient temperature (deg C)')
plt.ylabel('temperature (deg C)')


Out[12]:
<matplotlib.text.Text at 0x7f9e21fcb438>

Cell and module temperature as a function of incident irradiance.


In [13]:
irrad = np.linspace(0,1000,101)
temps = pd.DataFrame(pvsystem.sapm_celltemp(irrad, 2, 20), index=irrad)

temps.plot()
plt.legend()
plt.xlabel('incident irradiance (W/m**2)')
plt.ylabel('temperature (deg C)')


Out[13]:
<matplotlib.text.Text at 0x7f9e21f9d588>

Cell and module temperature for different module and racking types.


In [14]:
models = ['open_rack_cell_glassback',
          'roof_mount_cell_glassback',
          'open_rack_cell_polymerback',
          'insulated_back_polymerback',
          'open_rack_polymer_thinfilm_steel',
          '22x_concentrator_tracker']

temps = pd.DataFrame(index=['tcell','tmodule'])

for model in models:
    temps[model] = pd.Series(pvsystem.sapm_celltemp(1000, 5, 20, model=model))

temps.T.plot(kind='bar') # try removing the transpose operation and replotting
plt.legend()
plt.ylabel('temperature (deg C)')


Out[14]:
<matplotlib.text.Text at 0x7f9e21f416a0>

snlinverter


In [15]:
inverters = pvsystem.retrieve_sam('sandiainverter')
inverters


Out[15]:
ABB__MICRO_0_25_I_OUTD_US_208_208V__CEC_2014_ ABB__MICRO_0_25_I_OUTD_US_240_240V__CEC_2014_ ABB__MICRO_0_3HV_I_OUTD_US_208_208V__CEC_2014_ ABB__MICRO_0_3HV_I_OUTD_US_240_240V__CEC_2014_ ABB__MICRO_0_3_I_OUTD_US_208_208V__CEC_2014_ ABB__MICRO_0_3_I_OUTD_US_240_240V__CEC_2014_ Ablerex_Electronics_Co___Ltd___ES_2200_US_240__240_Vac__240V__CEC_2011_ Ablerex_Electronics_Co___Ltd___ES_3300_US_240__240_Vac__240V__CEC_2011_ Ablerex_Electronics_Co___Ltd___ES_4200_US_240__240_Vac__240V__CEC_2011_ Ablerex_Electronics_Co___Ltd___ES_5000_US_240__240_Vac__240V__CEC_2011_ ... Yes!_Solar_Inc___ES5000__240V__240V__CEC_2009_ Yes!_Solar_Inc___ES5300__208V__208V__CEC_2009_ Yes!_Solar_Inc___ES5300__240V__240V__CEC_2009_ Zhejiang_Yuhui_Solar_Energy_Source__Replus_250A_240V__CEC_2012_ Zhejiang_Yuhui_Solar_Energy_Source__Replus_250B_208V__CEC_2012_ Zigor__Sunzet_2_TL_US_240V__CEC_2011_ Zigor__Sunzet_3_TL_US_240V__CEC_2011_ Zigor__Sunzet_4_TL_US_240V__CEC_2011_ Zigor__Sunzet_5_TL_US_240V__CEC_2011_ Zigor__SUNZET4_USA_240V__CEC_2011_
Vac 208.000000 240.000000 208.000000 240.000000 208.000000 240.000000 240.000000 240.000000 240.000000 240.000000 ... 240.000000 208.000000 240.000000 240.000000 208.000000 240.000000 240.000000 240.000000 240.000000 240.000000
Paco 250.000000 250.000000 300.000000 300.000000 300.000000 300.000000 2110.000000 3180.000000 4160.000000 5240.000000 ... 4900.000000 4600.000000 5300.000000 225.190000 213.830000 2110.000000 3180.000000 4160.000000 5240.000000 4030.000000
Pdco 259.522000 259.553000 312.523000 312.022000 311.715000 311.505000 2191.830000 3313.680000 4342.410000 5495.830000 ... 5135.580000 4829.420000 5571.180000 234.842000 225.563000 2191.830000 3313.680000 4342.410000 5495.830000 4267.480000
Vdco 40.242600 39.982200 45.259400 45.495000 40.227100 40.136100 399.207000 389.513000 388.562000 386.083000 ... 275.000000 275.000000 274.900000 28.468400 28.632600 399.207000 389.513000 388.562000 386.083000 302.852000
Pso 1.771610 1.931190 1.882620 1.928590 1.971050 1.991340 30.843700 31.265000 31.601700 32.450800 ... 29.358900 26.071500 28.519000 1.646710 1.845030 30.843700 31.265000 31.601700 32.450800 37.372800
C0 -0.000025 -0.000027 -0.000049 -0.000035 -0.000036 -0.000031 -0.000004 -0.000006 -0.000004 -0.000005 ... -0.000006 -0.000006 -0.000006 -0.000000 -0.000121 -0.000004 -0.000006 -0.000004 -0.000005 -0.000009
C1 -0.000090 -0.000158 -0.000241 -0.000228 -0.000256 -0.000289 -0.000077 -0.000095 -0.000079 -0.000097 ... 0.000020 0.000024 0.000019 -0.000358 -0.000533 -0.000077 -0.000095 -0.000079 -0.000097 -0.000029
C2 0.000669 0.001476 0.000975 -0.000224 -0.000833 -0.002113 0.000502 0.000261 0.000213 -0.000251 ... 0.001868 0.002618 0.001630 -0.013450 0.025867 0.000502 0.000261 0.000213 -0.000251 0.002147
C3 -0.018881 -0.034601 -0.027563 -0.039636 -0.039102 -0.049515 -0.003258 -0.001956 -0.001867 -0.002337 ... -0.000276 0.000468 -0.000371 -33.506800 -0.066826 -0.003258 -0.001956 -0.001867 -0.002337 -0.001897
Pnt 0.020000 0.050000 0.060000 0.060000 0.020000 0.050000 0.250000 0.250000 0.200000 0.200000 ... 0.500000 0.500000 0.500000 0.170000 0.170000 0.250000 0.250000 0.200000 0.200000 0.190000
Vdcmax 65.000000 65.000000 79.000000 79.000000 65.000000 65.000000 500.000000 500.000000 500.000000 500.000000 ... 600.000000 600.000000 600.000000 55.000000 55.000000 500.000000 500.000000 500.000000 500.000000 600.000000
Idcmax 10.000000 10.000000 10.500000 10.500000 10.000000 10.000000 14.600000 22.000000 28.000000 35.300000 ... 25.000000 25.000000 25.000000 14.000000 14.000000 14.600000 22.000000 28.000000 35.300000 20.000000
Mppt_low 20.000000 20.000000 30.000000 30.000000 30.000000 30.000000 150.000000 150.000000 150.000000 150.000000 ... 200.000000 200.000000 200.000000 22.000000 22.000000 150.000000 150.000000 150.000000 150.000000 240.000000
Mppt_high 50.000000 50.000000 75.000000 75.000000 50.000000 50.000000 450.000000 450.000000 450.000000 450.000000 ... 550.000000 550.000000 550.000000 45.000000 45.000000 450.000000 450.000000 450.000000 450.000000 480.000000

14 rows × 1398 columns


In [16]:
vdcs = pd.Series(np.linspace(0,50,51))
idcs = pd.Series(np.linspace(0,11,110))
pdcs = idcs * vdcs

pacs = pvsystem.snlinverter(inverters['ABB__MICRO_0_25_I_OUTD_US_208_208V__CEC_2014_'], vdcs, pdcs)
#pacs.plot()
plt.plot(pacs, pdcs)
plt.ylabel('ac power')
plt.xlabel('dc power')


Out[16]:
<matplotlib.text.Text at 0x7f9e21ebd390>

Need to put more effort into describing this function.

SAPM

The CEC module database.


In [17]:
cec_modules = pvsystem.retrieve_sam('cecmod')
cec_modules


Out[17]:
BEoptCA_Default_Module Example_Module 1Soltech_1STH_215_P 1Soltech_1STH_220_P 1Soltech_1STH_225_P 1Soltech_1STH_230_P 1Soltech_1STH_235_WH 1Soltech_1STH_240_WH 1Soltech_1STH_245_WH 1Soltech_1STH_FRL_4H_245_M60_BLK ... Znshine_PV_Tech_ZXM6_72_315_M Znshine_PV_Tech_ZXP6_72_315_P Znshine_PV_Tech_ZXM6_72_320_M Znshine_PV_Tech_ZXM6_72_325_M Znshine_PV_Tech_ZXM6_72_330_M Zytech_Engineering_Technology_ZT170S Zytech_Engineering_Technology_ZT175S Zytech_Engineering_Technology_ZT180S Zytech_Engineering_Technology_ZT185S Zytech_Engineering_Technology_ZT190S
T_noct 65 65 47.4 47.4 47.4 47.4 49.9 49.9 49.9 48.3 ... 47 47 47 47 47 46 46 46.8 46.8 46.8
A_c 0.67 0.67 1.567 1.567 1.567 1.567 1.635 1.635 1.635 1.668 ... 1.941 1.941 1.941 1.941 1.941 1.277 1.277 1.277 1.277 1.277
N_s 18 18 60 60 60 60 60 60 60 60 ... 72 72 72 72 72 72 72 72 72 72
I_sc_ref 7.5 7.5 7.84 7.97 8.09 8.18 8.54 8.58 8.62 8.81 ... 8.91 8.95 8.99 9.09 9.19 4.98 5.36 5.21 5.3 5.5
V_oc_ref 10.4 10.4 36.3 36.6 36.9 37.1 37 37.1 37.2 38.3 ... 46.45 45.22 46.54 46.63 46.72 44.21 44.57 44.71 45 44.86
I_mp_ref 6.6 6.6 7.35 7.47 7.58 7.65 8.02 8.07 8.1 8.06 ... 8.32 8.45 8.43 8.54 8.65 4.63 4.7 4.79 4.87 5.04
V_mp_ref 8.4 8.4 29 29.3 29.6 29.9 29.3 29.7 30.2 30.2 ... 37.86 37.28 37.96 38.06 38.15 36.72 37.22 37.58 38.09 37.73
Alpha_sc 0.003 0.003 0.007997 0.008129 0.008252 0.008344 0.00743 0.007465 0.007499 0.006167 ... 0.00499 0.00546 0.005034 0.00509 0.005146 0.003735 0.00402 0.005314 0.005406 0.00561
Beta_oc -0.04 -0.04 -0.13104 -0.13213 -0.13321 -0.13393 -0.13653 -0.1369 -0.13727 -0.13635 ... -0.14864 -0.16686 -0.14893 -0.14922 -0.1495 -0.16579 -0.16714 -0.16274 -0.1638 -0.16329
A_ref 0.473 0.473 1.6413 1.6572 1.6732 1.6888 1.6292 1.6425 1.6617 1.6351 ... 1.9594 1.9767 1.9592 1.9616 1.9638 2.0618 2.1732 2.0685 2.0917 2.0806
I_l_ref 7.545 7.545 7.843 7.974 8.094 8.185 8.543 8.582 8.623 8.844 ... 8.921 8.952 8.998 9.096 9.195 4.984 5.372 5.215 5.303 5.505
I_o_ref 1.943e-09 1.943e-09 1.936e-09 2.03e-09 2.126e-09 2.332e-09 1.166e-09 1.325e-09 1.623e-09 5.7e-10 ... 4.43e-10 1.04e-09 4.28e-10 4.27e-10 4.24e-10 2.378e-09 6.055e-09 2.062e-09 2.317e-09 2.286e-09
R_s 0.094 0.094 0.359 0.346 0.334 0.311 0.383 0.335 0.272 0.421 ... 0.338 0.253 0.332 0.326 0.321 0.322 0.204 0.213 0.145 0.195
R_sh_ref 15.72 15.72 839.4 751.03 670.65 462.56 1257.84 1463.82 724.06 109.31 ... 285.83 1425.11 396.81 478.07 602.26 437.19 92.28 237.77 228.17 203.6
Adjust 10.6 10.6 16.5 16.8 17.1 17.9 8.7 9.8 11.6 6.502 ... 16.21 7.696 15.79 15.64 15.48 18.7 27.7 20.2 21.2 20.7
Gamma_r -0.5 -0.5 -0.495 -0.495 -0.495 -0.495 -0.482 -0.482 -0.482 -0.453 ... -0.453 -0.476 -0.453 -0.453 -0.453 -0.517 -0.517 -0.47 -0.47 -0.47
Source Multi-c-Si Multi-c-Si Multi-c-Si Multi-c-Si Multi-c-Si Multi-c-Si Mono-c-Si Mono-c-Si Mono-c-Si Mono-c-Si ... Mono-c-Si Multi-c-Si Mono-c-Si Mono-c-Si Mono-c-Si Mono-c-Si Mono-c-Si Mono-c-Si Mono-c-Si Mono-c-Si

17 rows × 11589 columns


In [18]:
cecmodule = cec_modules.Example_Module 
cecmodule


Out[18]:
T_noct              65
A_c               0.67
N_s                 18
I_sc_ref           7.5
V_oc_ref          10.4
I_mp_ref           6.6
V_mp_ref           8.4
Alpha_sc         0.003
Beta_oc          -0.04
A_ref            0.473
I_l_ref          7.545
I_o_ref      1.943e-09
R_s              0.094
R_sh_ref         15.72
Adjust            10.6
Gamma_r           -0.5
Source      Multi-c-Si
Name: Example_Module, dtype: object

The Sandia module database.


In [19]:
sandia_modules = pvsystem.retrieve_sam(name='SandiaMod')
sandia_modules


Out[19]:
Advent_Solar_AS160___2006_ Advent_Solar_Ventura_210___2008_ Advent_Solar_Ventura_215___2009_ Aleo_S03_160__2007__E__ Aleo_S03_165__2007__E__ Aleo_S16_165__2007__E__ Aleo_S16_170__2007__E__ Aleo_S16_175__2007__E__ Aleo_S16_180__2007__E__ Aleo_S16_185__2007__E__ ... Uni_Solar_US_64__1997__E__ Uni_Solar_US_64__2005__E__ Uni_Solar_USF_11__2003__E__ Uni_Solar_USF_32__2003__E__ Uni_Solar_USF_5__2003__E__ Yingli_Solar_YL220_Module___2008_ Yingli_Solar_YL220_Module__2008__E__ Yingli_Solar_YL230_29b_Module___2009_ Yingli_Solar_YL230_29b_Module__2009__E__ Yingli_YL210__2008__E__
Vintage 2006 2008 2009 2007 (E) 2007 (E) 2007 (E) 2007 (E) 2007 (E) 2007 (E) 2007 (E) ... 1997 (E) 2005 (E) 2003 (E) 2003 (E) 2003 (E) 2008 2008 (E) 2009 2009 (E) 2008 (E)
Area 1.312 1.646 1.646 1.28 1.28 1.378 1.378 1.378 1.378 1.378 ... 1.012 1.012 0.235 0.606 0.136 1.7 1.7 1.634 1.634 1.7
Material mc-Si mc-Si mc-Si c-Si c-Si mc-Si mc-Si mc-Si mc-Si mc-Si ... 3-a-Si 3-a-Si 3-a-Si 3-a-Si 3-a-Si mc-Si mc-Si mc-Si mc-Si mc-Si
#Series 72 60 60 72 72 50 50 50 50 50 ... 11 11 11 11 11 60 60 60 60 60
#Parallel 1 1 1 1 1 1 1 1 1 1 ... 2 2 1 1 1 1 1 1 1 1
Isco 5.564 8.34 8.49 5.1 5.2 7.9 7.95 8.1 8.15 8.2 ... 5.1 4.8 0.78 2.4 0.37 8.163 8.1 8.222 8.4 7.8
Voco 42.832 35.31 35.92 43.5 43.6 30 30.1 30.2 30.3 30.5 ... 21.3 23.8 23.8 23.8 23.8 36.871 36.6 37.28 37 36
Impo 5.028 7.49 7.74 4.55 4.65 7.08 7.23 7.38 7.53 7.67 ... 4.1 3.88 0.62 1.94 0.3 7.388 7.4 7.727 7.8 7.2
Vmpo 32.41 27.61 27.92 35.6 35.8 23.3 23.5 23.7 23.9 24.1 ... 15.6 16.5 16.5 16.5 16.5 28.633 30 29.886 29.5 29.5
Aisc 0.000537 0.00077 0.00082 0.0003 0.0003 0.0008 0.0008 0.0008 0.0008 0.0008 ... 0.001 0.001 0.001 0.001 0.001 0.000436 0.000436 0.000746 0.000746 0.001
Aimp -0.000491 -0.00015 -0.00013 -0.00025 -0.00025 -0.0003 -0.0003 -0.0003 -0.0003 -0.0003 ... 0.001 0.001 0.001 0.001 0.001 -0.000176 -0.000176 0.000176 0.000176 -0.0002
C0 1.0233 0.937 1.015 0.99 0.99 0.99 0.99 0.99 0.99 0.99 ... 1.121 1.121 1.096 1.096 1.096 0.9877 0.9877 0.9993 0.9993 0.977
C1 -0.0233 0.063 -0.015 0.01 0.01 0.01 0.01 0.01 0.01 0.01 ... -0.121 -0.121 -0.096 -0.096 -0.096 0.0123 0.0123 0.0007 0.0007 0.023
Bvoco -0.1703 -0.133 -0.135 -0.152 -0.152 -0.11 -0.11 -0.11 -0.11 -0.11 ... -0.088 -0.088 -0.088 -0.088 -0.088 -0.1378 -0.1378 -0.1294 -0.1294 -0.133
Mbvoc 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0
Bvmpo -0.1731 -0.135 -0.136 -0.158 -0.158 -0.115 -0.115 -0.115 -0.115 -0.115 ... -0.051 -0.051 -0.051 -0.051 -0.051 -0.1421 -0.1421 -0.137 -0.137 -0.133
Mbvmp 0 0 0 0 0 0 0 0 0 0 ... 0 0 0 0 0 0 0 0 0 0
N 1.174 1.495 1.373 1.25 1.25 1.35 1.35 1.35 1.35 1.35 ... 3.51 3.51 3.77 3.77 3.77 1.442 1.442 1.263 1.263 1.384
C2 -0.76444 0.0182 0.0036 -0.15 -0.15 -0.12 -0.12 -0.12 -0.12 -0.12 ... -1.24058 -1.24058 -1.14162 -1.14162 -1.14162 -0.050321 -0.050321 -0.058706 -0.058706 -0.3872
C3 -15.5087 -10.758 -7.2509 -8.96 -8.96 -11.08 -11.08 -11.08 -11.08 -11.08 ... -3.91126 -3.91126 -2.89115 -2.89115 -2.89115 -8.81507 -8.81507 -8.35334 -8.35334 -9.5542
A0 0.9281 0.9067 0.9323 0.938 0.938 0.924 0.924 0.924 0.924 0.924 ... 1.047 1.047 1.047 1.047 1.047 0.9407 0.9219 0.9011 0.9219 0.9219
A1 0.06615 0.09573 0.06526 0.05422 0.05422 0.06749 0.06749 0.06749 0.06749 0.06749 ... 0.00082115 0.00082115 0.00082115 0.00082115 0.00082115 0.05086 0.0709 0.1021 0.0709 0.07089
A2 -0.01384 -0.0266 -0.01567 -0.009903 -0.009903 -0.012549 -0.012549 -0.012549 -0.012549 -0.012549 ... -0.0259 -0.0259 -0.0259 -0.0259 -0.0259 -0.008095 -0.0143 -0.02942 -0.0143 -0.01427
A3 0.001298 0.00343 0.00193 0.0007297 0.0007297 0.0010049 0.0010049 0.0010049 0.0010049 0.0010049 ... 0.0031736 0.0031736 0.0031736 0.0031736 0.0031736 0.0003498 0.0012 0.00397 0.0012 0.00117
A4 -4.6e-05 -0.0001794 -9.81e-05 -1.907e-05 -1.907e-05 -2.8797e-05 -2.8797e-05 -2.8797e-05 -2.8797e-05 -2.8797e-05 ... -0.00011026 -0.00011026 -0.00011026 -0.00011026 -0.00011026 8.85e-06 -3e-05 -0.0002105 -3e-05 -3.37e-05
B0 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1 1
B1 -0.002438 -0.002438 -0.002438 -0.002438 -0.002438 -0.002438 -0.002438 -0.002438 -0.002438 -0.002438 ... -0.00502 -0.00502 -0.00502 -0.00502 -0.00502 -0.002438 -0.002438 -0.002438 -0.002438 -0.002438
B2 0.0003103 0.00031 0.00031 0.0003103 0.0003103 0.0003103 0.0003103 0.0003103 0.0003103 0.0003103 ... 0.0005842 0.0005842 0.0005842 0.0005842 0.0005842 0.0003103 0.0003103 0.0003103 0.0003103 0.00031
B3 -1.246e-05 -1.246e-05 -1.246e-05 -1.246e-05 -1.246e-05 -1.246e-05 -1.246e-05 -1.246e-05 -1.246e-05 -1.246e-05 ... -2.3e-05 -2.3e-05 -2.3e-05 -2.3e-05 -2.3e-05 -1.246e-05 -1.246e-05 -1.246e-05 -1.246e-05 -1.246e-05
B4 2.112e-07 2.112e-07 2.112e-07 2.112e-07 2.112e-07 2.112e-07 2.112e-07 2.112e-07 2.112e-07 2.112e-07 ... 3.826e-07 3.826e-07 3.826e-07 3.826e-07 3.826e-07 2.112e-07 2.112e-07 2.112e-07 2.112e-07 2.112e-07
B5 -1.359e-09 -1.359e-09 -1.359e-09 -1.359e-09 -1.359e-09 -1.359e-09 -1.359e-09 -1.359e-09 -1.359e-09 -1.359e-09 ... -2.31e-09 -2.31e-09 -2.31e-09 -2.31e-09 -2.31e-09 -1.359e-09 -1.359e-09 -1.359e-09 -1.359e-09 -1.359e-09
DTC 3 3 3 3 3 3 3 3 3 3 ... 3 3 3 3 3 3 3 3 3 3
FD 1 1 1 1 1 1 1 1 1 1 ... 1 1 1 1 1 1 1 1 1 1
A -3.35 -3.45 -3.47 -3.56 -3.56 -3.56 -3.56 -3.56 -3.56 -3.56 ... -3.581 -3.581 -3.581 -3.581 -3.581 -3.303 -3.303 -3.348 -3.348 -3.54
B -0.1161 -0.077 -0.087 -0.075 -0.075 -0.075 -0.075 -0.075 -0.075 -0.075 ... -0.113 -0.113 -0.113 -0.113 -0.113 -0.1012 -0.1012 -0.09143 -0.09143 -0.072
C4 0.9974 0.972 0.989 0.995 0.995 0.995 0.995 0.995 0.995 0.995 ... 1.059 1.059 1.0515 1.0515 1.0515 0.9892 0.9892 0.995 0.995 0.985
C5 0.0026 0.028 0.012 0.005 0.005 0.005 0.005 0.005 0.005 0.005 ... -0.059 -0.059 -0.0515 -0.0515 -0.0515 0.0108 0.0108 0.005 0.005 0.015
IXO 5.54 8.25 8.49 5.04 5.14 7.8 7.85 8 8.05 8.1 ... 4.73 4.44 0.71 2.22 0.342 8.0491 8.29 8.1509 8.31 7.65
IXXO 3.56 5.2 5.45 3.16 3.25 4.92 5.08 5.18 5.39 5.54 ... 2.87 2.74 0.438 1.37 0.212 5.1339 5.1339 5.5099 5.57 5.06
C6 1.173 1.067 1.137 1.15 1.15 1.15 1.15 1.15 1.15 1.15 ... 1.159 1.159 1.13 1.13 1.13 1.1335 1.1335 1.1325 1.1325 1.113
C7 -0.173 -0.067 -0.137 -0.15 -0.15 -0.15 -0.15 -0.15 -0.15 -0.15 ... -0.159 -0.159 -0.13 -0.13 -0.13 -0.1335 -0.1335 -0.1325 -0.1325 -0.113
Notes Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... ... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9... Source: Sandia National Laboratories Updated 9...

42 rows × 513 columns


In [20]:
sandia_module = sandia_modules.Canadian_Solar_CS5P_220M___2009_
sandia_module


Out[20]:
Vintage                                                   2009
Area                                                     1.701
Material                                                  c-Si
#Series                                                     96
#Parallel                                                    1
Isco                                                   5.09115
Voco                                                   59.2608
Impo                                                   4.54629
Vmpo                                                   48.3156
Aisc                                                  0.000397
Aimp                                                  0.000181
C0                                                     1.01284
C1                                                  -0.0128398
Bvoco                                                 -0.21696
Mbvoc                                                        0
Bvmpo                                                -0.235488
Mbvmp                                                        0
N                                                       1.4032
C2                                                    0.279317
C3                                                    -7.24463
A0                                                    0.928385
A1                                                    0.068093
A2                                                  -0.0157738
A3                                                   0.0016606
A4                                                -6.93035e-05
B0                                                           1
B1                                                   -0.002438
B2                                                   0.0003103
B3                                                  -1.246e-05
B4                                                   2.112e-07
B5                                                  -1.359e-09
DTC                                                          3
FD                                                           1
A                                                     -3.40641
B                                                   -0.0842075
C4                                                    0.996446
C5                                                    0.003554
IXO                                                    4.97599
IXXO                                                   3.18803
C6                                                     1.15535
C7                                                   -0.155353
Notes        Source: Sandia National Laboratories Updated 9...
Name: Canadian_Solar_CS5P_220M___2009_, dtype: object

Generate some irradiance data for modeling.


In [21]:
from pvlib import clearsky
from pvlib import irradiance
from pvlib import atmosphere
from pvlib.location import Location

tus = Location(32.2, -111, 'US/Arizona', 700, 'Tucson')
times = pd.date_range(start=datetime.datetime(2014,4,1), end=datetime.datetime(2014,4,2), freq='30s')
ephem_data = pvlib.solarposition.get_solarposition(times, tus)
irrad_data = clearsky.ineichen(times, tus)
#irrad_data.plot()

aoi = irradiance.aoi(0, 0, ephem_data['apparent_zenith'], ephem_data['azimuth'])
#plt.figure()
#aoi.plot()

am = atmosphere.relativeairmass(ephem_data['apparent_zenith'])

# a hot, sunny spring day in the desert.
temps = pvsystem.sapm_celltemp(irrad_data['GHI'], 0, 30)

Now we can run the module parameters and the irradiance data through the SAPM function.


In [22]:
sapm_1 = pvsystem.sapm(sandia_module, irrad_data['DNI']*np.cos(np.radians(aoi)),
                     irrad_data['DHI'], temps['tcell'], am, aoi)
sapm_1.head()


Out[22]:
Isc Imp Voc Vmp Pmp Ix Ixx Ee
2014-04-01 00:00:00-07:00 0 0 0 0 0 0 0 0
2014-04-01 00:00:30-07:00 0 0 0 0 0 0 0 0
2014-04-01 00:01:00-07:00 0 0 0 0 0 0 0 0
2014-04-01 00:01:30-07:00 0 0 0 0 0 0 0 0
2014-04-01 00:02:00-07:00 0 0 0 0 0 0 0 0

In [23]:
def plot_sapm(sapm_data):
    """
    Makes a nice figure with the SAPM data.
    
    Parameters
    ----------
    sapm_data : DataFrame
        The output of ``pvsystem.sapm``
    """
    fig, axes = plt.subplots(2, 3, figsize=(16,10), sharex=False, sharey=False, squeeze=False)
    plt.subplots_adjust(wspace=.2, hspace=.3)

    ax = axes[0,0]
    sapm_data.filter(like='I').plot(ax=ax)
    ax.set_ylabel('Current (A)')

    ax = axes[0,1]
    sapm_data.filter(like='V').plot(ax=ax)
    ax.set_ylabel('Voltage (V)')

    ax = axes[0,2]
    sapm_data.filter(like='P').plot(ax=ax)
    ax.set_ylabel('Power (W)')

    ax = axes[1,0]
    [ax.plot(sapm_data['Ee'], current, label=name) for name, current in sapm_data.filter(like='I').items()]
    ax.set_ylabel('Current (A)')
    ax.set_xlabel('Effective Irradiance')
    ax.legend(loc=2)

    ax = axes[1,1]
    [ax.plot(sapm_data['Ee'], voltage, label=name) for name, voltage in sapm_data.filter(like='V').items()]
    ax.set_ylabel('Voltage (V)')
    ax.set_xlabel('Effective Irradiance')
    ax.legend(loc=4)

    ax = axes[1,2]
    ax.plot(sapm_data['Ee'], sapm_data['Pmp'], label='Pmp')
    ax.set_ylabel('Power (W)')
    ax.set_xlabel('Effective Irradiance')
    ax.legend(loc=2)

    # needed to show the time ticks
    for ax in axes.flatten():
        for tk in ax.get_xticklabels():
            tk.set_visible(True)

In [24]:
plot_sapm(sapm_1)


For comparison, here's the SAPM for a sunny, windy, cold version of the same day.


In [25]:
temps = pvsystem.sapm_celltemp(irrad_data['GHI'], 10, 5)

sapm_2 = pvsystem.sapm(sandia_module, irrad_data['DNI']*np.cos(np.radians(aoi)),
                     irrad_data['DHI'], temps['tcell'], am, aoi)

plot_sapm(sapm_2)



In [26]:
sapm_1['Pmp'].plot(label='30 C,  0 m/s')
sapm_2['Pmp'].plot(label=' 5 C, 10 m/s')
plt.legend()
plt.ylabel('Pmp')
plt.title('Comparison of a hot, calm day and a cold, windy day')


Out[26]:
<matplotlib.text.Text at 0x7f9e1a2c1940>

SAPM IV curves


In [27]:
import warnings
warnings.simplefilter('ignore', np.RankWarning)

In [28]:
def sapm_to_ivframe(sapm_row):
    pnt = sapm_row.T.ix[:,0]

    ivframe = {'Isc': (pnt['Isc'], 0),
              'Pmp': (pnt['Imp'], pnt['Vmp']),
              'Ix': (pnt['Ix'], 0.5*pnt['Voc']),
              'Ixx': (pnt['Ixx'], 0.5*(pnt['Voc']+pnt['Vmp'])),
              'Voc': (0, pnt['Voc'])}
    ivframe = pd.DataFrame(ivframe, index=['current', 'voltage']).T
    ivframe = ivframe.sort('voltage')
    
    return ivframe

def ivframe_to_ivcurve(ivframe, points=100):
    ivfit_coefs = np.polyfit(ivframe['voltage'], ivframe['current'], 30)
    fit_voltages = np.linspace(0, ivframe.ix['Voc', 'voltage'], points)
    fit_currents = np.polyval(ivfit_coefs, fit_voltages)
    
    return fit_voltages, fit_currents

In [29]:
sapm_to_ivframe(sapm_1['2014-04-01 10:00:00'])


Out[29]:
current voltage
Isc 3.943111 0.000000
Ix 3.850701 25.734151
Pmp 3.508231 40.603933
Ixx 2.559264 46.036117
Voc 0.000000 51.468302

In [30]:
times = ['2014-04-01 07:00:00', '2014-04-01 08:00:00', '2014-04-01 09:00:00', 
         '2014-04-01 10:00:00', '2014-04-01 11:00:00', '2014-04-01 12:00:00']
times.reverse()

fig, ax = plt.subplots(1, 1, figsize=(12,8))

for time in times:
    ivframe = sapm_to_ivframe(sapm_1[time])

    fit_voltages, fit_currents = ivframe_to_ivcurve(ivframe)

    ax.plot(fit_voltages, fit_currents, label=time)
    ax.plot(ivframe['voltage'], ivframe['current'], 'ko')
    
ax.set_xlabel('Voltage (V)')
ax.set_ylabel('Current (A)')
ax.set_ylim(0, None)
ax.set_title('IV curves at multiple times')
ax.legend()


Out[30]:
<matplotlib.legend.Legend at 0x7f9e1a3aecc0>

desoto

The same data run through the desoto model.


In [31]:
IL, I0, Rs, Rsh, nNsVth = pvsystem.calcparams_desoto(S=irrad_data.GHI,
                                                     temp_cell=temps['tcell'],
                                                     alpha_isc=cecmodule['Alpha_sc'],
                                                     module_parameters=cecmodule,
                                                     EgRef=1.121,
                                                     dEgdT=-0.0002677)

In [32]:
IL.plot()
plt.ylabel('Light current (A)')


Out[32]:
<matplotlib.text.Text at 0x7f9e20198240>

In [33]:
Rsh.plot()
plt.ylabel('Shunt resistance (ohms)')
plt.ylim(0,100)


Out[33]:
(0, 100)

Single diode model


In [34]:
sdDFOut = pvsystem.singlediode(module=cecmodule,
                               IL=IL,
                               I0=I0,
                               Rs=Rs,
                               Rsh=Rsh,
                               nNsVth=nNsVth)
sdDFOut


Out[34]:
Isc Rsh Rs nNsVth I0 IL VH VL V1 V2 f1 f2 SW_Flag Imp Voc Vmp Pmp Ix Ixx
2014-04-01 00:00:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:00:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:01:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:01:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:02:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:02:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:03:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:03:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:04:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:04:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:05:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:05:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:06:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:06:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:07:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:07:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:08:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:08:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:09:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:09:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:10:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:10:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:11:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:11:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:12:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:12:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:13:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:13:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:14:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 00:14:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...
2014-04-01 23:45:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:46:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:46:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:47:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:47:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:48:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:48:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:49:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:49:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:50:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:50:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:51:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:51:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:52:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:52:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:53:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:53:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:54:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:54:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:55:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:55:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:56:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:56:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:57:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:57:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:58:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:58:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:59:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-01 23:59:30-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN
2014-04-02 00:00:00-07:00 NaN inf 0.094 0.441271 5.330515e-11 0 0.022756 0 0.022756 0.014064 NaN NaN False NaN 0.019739 0.022756 NaN NaN NaN

2881 rows × 19 columns


In [35]:
sdDFOut.Pmp.plot()


Out[35]:
<matplotlib.axes._subplots.AxesSubplot at 0x7f9e1a2f9b70>

In [ ]: