pvlib.modelchain.ModelChain#
- class pvlib.modelchain.ModelChain(system, location, 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, temperature_model=None, dc_ohmic_model='no_loss', losses_model='no_loss', name=None)[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. The same models are applied to all
pvsystem.Arrayobjects, so each Array must contain the appropriate model parameters. For example, ifdc_model='pvwatts', then eachArray.module_parametersmust contain'pdc0'.See ModelChain for examples.
- Parameters:
system (PVSystem) – A
PVSystemobject that represents the connected set of modules, inverters, etc.location (Location) – A
Locationobject that represents the physical location at which to evaluate the model.clearsky_model (str, default 'ineichen') – Passed to location.get_clearsky. Only used when DNI is not found in the weather inputs.
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 (str, or function, optional) – If not specified, the model will be inferred from the parameters that are common to all of system.arrays[i].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 (str, or function, optional) – If not specified, the model will be inferred from the parameters that are common to all of system.inverter_parameters. Valid strings are ‘sandia’, ‘adr’, ‘pvwatts’. The ModelChain instance will be passed as the first argument to a user-defined function.
aoi_model (str, or function, optional) – If not specified, the model will be inferred from the parameters that are common to all of system.arrays[i].module_parameters. Valid strings are ‘physical’, ‘ashrae’, ‘sapm’, ‘martin_ruiz’, ‘interp’ and ‘no_loss’. The ModelChain instance will be passed as the first argument to a user-defined function.
spectral_model (str or function, optional) –
Valid strings are:
'sapm''first_solar''no_loss'
The ModelChain instance will be passed as the first argument to a user-defined function. If not specified,
'no_loss'is assumed.temperature_model (str or function, optional) – Valid strings are: ‘sapm’, ‘pvsyst’, ‘faiman’, ‘fuentes’, ‘noct_sam’. The ModelChain instance will be passed as the first argument to a user-defined function.
dc_ohmic_model (str or function, default 'no_loss') – Valid strings are ‘dc_ohms_from_percent’, ‘no_loss’. 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 (str, optional) – Name of ModelChain instance.
Methods
__init__(system, location[, clearsky_model, ...])cec()complete_irradiance(weather)Determine the missing irradiation columns.
Calculate time series of ohmic losses and apply those to the mpp power output of the dc_model based on the pvsyst equivalent resistance method.
desoto()Infer AC power model from system attributes.
Infer DC power model from Array module parameters.
Infer temperature model from system attributes.
prepare_inputs(weather)Prepare the solar position, irradiance, and weather inputs to the model, starting with GHI, DNI and DHI.
prepare_inputs_from_poa(data)Prepare the solar position, irradiance and weather inputs to the model, starting with plane-of-array irradiance.
pvsyst()Calculate DC power using the PVWatts model.
run_model(weather)Run the model chain starting with broadband global, diffuse and/or direct irradiance.
Run the model starting with effective irradiance in the plane of array.
run_model_from_poa(data)Run the model starting with broadband irradiance in the plane of array.
sapm()with_pvwatts(system, location[, ...])ModelChain that follows the PVWatts methods.
with_sapm(system, location[, ...])ModelChain that follows the Sandia Array Performance Model (SAPM) methods.
Attributes
Examples using pvlib.modelchain.ModelChain#
Use different Perez coefficients with the ModelChain
4.7 MW CdTe single-axis tracking (OEDI System 9068)