pvlib.modelchain.ModelChain

class pvlib.modelchain.ModelChain(system, location, orientation_strategy=None, clearsky_model='ineichen', transposition_model='haydavies', solar_position_method='nrel_numpy', airmass_model='kastenyoung1989', dc_model=None, ac_model=None, aoi_model=None, spectral_model=None, temp_model='sapm', losses_model='no_loss', name=None, **kwargs)[source]

The ModelChain class to provides a standardized, high-level interface for all of the modeling steps necessary for calculating PV power from a time series of weather inputs.

See https://pvlib-python.readthedocs.io/en/stable/modelchain.html for examples.

Parameters
  • system (PVSystem) – A PVSystem object that represents the connected set of modules, inverters, etc.

  • location (Location) – A Location object that represents the physical location at which to evaluate the model.

  • orientation_strategy (None or str, default None) – The strategy for aligning the modules. If not None, sets the surface_azimuth and surface_tilt properties of the system. Allowed strategies include ‘flat’, ‘south_at_latitude_tilt’. Ignored for SingleAxisTracker systems.

  • clearsky_model (str, default 'ineichen') – Passed to location.get_clearsky.

  • transposition_model (str, default 'haydavies') – Passed to system.get_irradiance.

  • solar_position_method (str, default 'nrel_numpy') – Passed to location.get_solarposition.

  • airmass_model (str, default 'kastenyoung1989') – Passed to location.get_airmass.

  • dc_model (None, str, or function, default None) – If None, the model will be inferred from the contents of system.module_parameters. Valid strings are ‘sapm’, ‘desoto’, ‘cec’, ‘pvsyst’, ‘pvwatts’. The ModelChain instance will be passed as the first argument to a user-defined function.

  • ac_model (None, str, or function, default None) – If None, the model will be inferred from the contents of system.inverter_parameters and system.module_parameters. Valid strings are ‘snlinverter’, ‘adrinverter’, ‘pvwatts’. The ModelChain instance will be passed as the first argument to a user-defined function.

  • aoi_model (None, str, or function, default None) – If None, the model will be inferred from the contents of system.module_parameters. Valid strings are ‘physical’, ‘ashrae’, ‘sapm’, ‘no_loss’. The ModelChain instance will be passed as the first argument to a user-defined function.

  • spectral_model (None, str, or function, default None) – If None, the model will be inferred from the contents of system.module_parameters. Valid strings are ‘sapm’, ‘first_solar’, ‘no_loss’. The ModelChain instance will be passed as the first argument to a user-defined function.

  • temp_model (str or function, default 'sapm') – Valid strings are ‘sapm’. The ModelChain instance will be passed as the first argument to a user-defined function.

  • losses_model (str or function, default 'no_loss') – Valid strings are ‘pvwatts’, ‘no_loss’. The ModelChain instance will be passed as the first argument to a user-defined function.

  • name (None or str, default None) – Name of ModelChain instance.

  • **kwargs – Arbitrary keyword arguments. Included for compatibility, but not used.

__init__(system, location, orientation_strategy=None, clearsky_model='ineichen', transposition_model='haydavies', solar_position_method='nrel_numpy', airmass_model='kastenyoung1989', dc_model=None, ac_model=None, aoi_model=None, spectral_model=None, temp_model='sapm', losses_model='no_loss', name=None, **kwargs)[source]

Initialize self. See help(type(self)) for accurate signature.

Methods

__init__(system, location[, …])

Initialize self.

adrinverter()

ashrae_aoi_loss()

cec()

complete_irradiance([times, weather])

Determine the missing irradiation columns.

desoto()

effective_irradiance_model()

first_solar_spectral_loss()

infer_ac_model()

infer_aoi_model()

infer_dc_model()

infer_losses_model()

infer_spectral_model()

infer_temp_model()

no_aoi_loss()

no_extra_losses()

no_spectral_loss()

physical_aoi_loss()

prepare_inputs([times, weather])

Prepare the solar position, irradiance, and weather inputs to the model.

pvsyst()

pvwatts_dc()

pvwatts_inverter()

pvwatts_losses()

run_model([times, weather])

Run the model.

sapm()

sapm_aoi_loss()

sapm_spectral_loss()

sapm_temp()

singlediode()

Deprecated

snlinverter()

Attributes

ac_model

aoi_model

dc_model

losses_model

orientation_strategy

spectral_model

temp_model