# -*- coding: utf-8 -*- """ Created on Thu Oct 3 10:22:43 2019 @author: cwhanse """ import pandas as pd from pvlib.pvsystem import sapm parameters = {'A0': 0.928385, 'A1': 0.068093, 'A2': -0.0157738, 'A3': 0.0016606, 'A4': -6.93E-05, 'B0': 1, 'B1': -0.002438, 'B2': 0.0003103, 'B3': -0.00001246, 'B4': 2.11E-07, 'B5': -1.36E-09, 'C0': 1.01284, 'C1': -0.0128398, 'C2': 0.279317, 'C3': -7.24463, 'C4': 0.996446, 'C5': 0.003554, 'C6': 1.15535, 'C7': -0.155353, 'Isco': 5.09115, 'Impo': 4.54629, 'Voco': 59.2608, 'Vmpo': 48.3156, 'Aisc': 0.000397, 'Aimp': 0.000181, 'Bvoco': -0.21696, 'Mbvoc': 0.0, 'Bvmpo': -0.235488, 'Mbvmp': 0.0, 'N': 1.4032, 'Cells_in_Series': 96, 'IXO': 4.97599, 'IXXO': 3.18803, 'FD': 1} # parameters in columns, modules in rows module = pd.DataFrame(data=parameters, index=['CS5M'], columns=parameters.keys()) # fails when more than one irradiance/temperature conditions is provided out = sapm(effective_irradiance=[1, 1], temp_cell=[25, 25], module=module) # parameters in rows, modules in columns module = pd.Series(parameters).to_frame(name='CS5M') # fails with KeyError out = sapm(effective_irradiance=1, temp_cell=25, module=module)