1

I am using pvlib to forecast solar installations. I have been running into issues with the infer_aoi_model().

def infer_aoi_model(self):
    params = set(self.system.module_parameters.keys())
    if set(['K', 'L', 'n']) <= params:
        return self.physical_aoi_loss
    elif set(['B5', 'B4', 'B3', 'B2', 'B1', 'B0']) <= params:
        return self.sapm_aoi_loss
    elif set(['b']) <= params:
        return self.ashrae_aoi_loss
    else:
        raise ValueError('could not infer AOI model from ' +
                         'system.module_parameters')

I see that I will need values in the selected module series for either B5 - B0, 'b', or K', 'L', 'n' depending on which aoi loss model is used. When I import modules from the Sandia module database, I see the B5-B0 inputs, however, when I take in the CEC module db, I do not see any of the necessary inputs as needed for AOI loss. Unfortunately, the Sandia Module db does not seem to have the correct module type, and the CEC db always raises a ValueError as no needed inputs are in the series.

Does the Sandia Module db get updated? Is there another place to look for this? Can anyone offer me help on this topic?

Ivan Kolesnikov
  • 1,787
  • 1
  • 29
  • 45
Rivers31334
  • 644
  • 1
  • 12
  • 30

1 Answers1

0

If you're ok with using default values, you can pass aoi_model='physical' or aoi_model='ashrae' when you create your ModelChain object. This may or may not be good enough for your application.

This github issue is related: https://github.com/pvlib/pvlib-python/issues/289

Will Holmgren
  • 696
  • 5
  • 12