Run the model starting with broadband irradiance in the plane of array.

Data must include direct, diffuse and total irradiance (W/m2) in the plane of array. Reflections and spectral adjustments are made to calculate effective irradiance (W/m2).


data (DataFrame, or tuple or list of DataFrame) –

Required column names include 'poa_global', 'poa_direct' and 'poa_diffuse'. If optional columns 'temp_air' and 'wind_speed' are not provided, air temperature of 20 C and wind speed of 0 m/s are assumed. If optional column 'cell_temperature' is provided, these values are used instead of temperature_model. If optional column 'module_temperature' is provided, temperature_model must be 'sapm'.

If the ModelChain’s PVSystem has multiple arrays, data must be a list or tuple with the same length and order as the PVsystem’s Arrays. Each element of data provides the irradiance and weather for the corresponding array.



  • ValueError – If the number of DataFrames in data is different than the number of Arrays in the PVSystem.

  • ValueError – If the DataFrames in data have different indexes.


Assigns attributes to results: times, weather, solar_position, airmass, total_irrad, aoi, aoi_modifier, spectral_modifier, and effective_irradiance, cell_temperature, dc, ac, losses, diode_params (if dc_model is a single diode model).