pvlib.tracking.PVSystem¶
-
class
pvlib.tracking.PVSystem(surface_tilt=0, surface_azimuth=180, albedo=None, surface_type=None, module=None, module_parameters=None, series_modules=None, parallel_modules=None, inverter=None, inverter_parameters=None, racking_model='open_rack_cell_glassback', **kwargs)[source]¶ The PVSystem class defines a standard set of PV system attributes and modeling functions. This class describes the collection and interactions of PV system components rather than an installed system on the ground. It is typically used in combination with
LocationandModelChainobjects.See the
LocalizedPVSystemclass for an object model that describes an installed PV system.The class is complementary to the module-level functions.
The attributes should generally be things that don’t change about the system, such the type of module and the inverter. The instance methods accept arguments for things that do change, such as irradiance and temperature.
Parameters: surface_tilt: float or array-like
Tilt angle of the module surface. Up=0, horizon=90.
surface_azimuth: float or array-like
Azimuth angle of the module surface. North=0, East=90, South=180, West=270.
albedo : None, float
The ground albedo. If
None, will attempt to usesurface_typeandirradiance.SURFACE_ALBEDOSto lookup albedo.surface_type : None, string
The ground surface type. See
irradiance.SURFACE_ALBEDOSfor valid values.module : None, string
The model name of the modules. May be used to look up the module_parameters dictionary via some other method.
module_parameters : None, dict or Series
Module parameters as defined by the SAPM, CEC, or other.
inverter : None, string
The model name of the inverters. May be used to look up the inverter_parameters dictionary via some other method.
inverter_parameters : None, dict or Series
Inverter parameters as defined by the SAPM, CEC, or other.
racking_model : None or string
Used for cell and module temperature calculations.
**kwargs
Arbitrary keyword arguments. Included for compatibility, but not used.
See also
pvlib.location.Location,pvlib.tracking.SingleAxisTracker,pvlib.pvsystem.LocalizedPVSystemMethods
__init__([surface_tilt, surface_azimuth, ...])ashraeiam(aoi)Determine the incidence angle modifier using self.module_parameters['b'],aoi, and theashraeiam()function.calcparams_desoto(poa_global, temp_cell, ...)Use the calcparams_desoto()function, the input parameters andself.module_parametersto calculate the module currents and resistances.get_aoi(solar_zenith, solar_azimuth)Get the angle of incidence on the system. get_irradiance(solar_zenith, solar_azimuth, ...)Uses the irradiance.total_irrad()function to calculate the plane of array irradiance components on a tilted surface defined byself.surface_tilt,self.surface_azimuth, andself.albedo.i_from_v(resistance_shunt, ...)Wrapper around the i_from_v()function.localize([location, latitude, longitude])Creates a LocalizedPVSystem object using this object and location data. physicaliam(aoi)Determine the incidence angle modifier using self.module_parameters['K'],self.module_parameters['L'],self.module_parameters['n'],aoi, and thephysicaliam()function.sapm(poa_direct, poa_diffuse, temp_cell, ...)Use the sapm()function, the input parameters, andself.module_parametersto calculate Voc, Isc, Ix, Ixx, Vmp/Imp.sapm_celltemp(irrad, wind, temp)Uses sapm_celltemp()to calculate module and cell temperatures based onself.racking_modeland the input parameters.singlediode(photocurrent, ...)Wrapper around the singlediode()function.snlinverter(v_dc, p_dc)Uses snlinverter()to calculate AC power based onself.inverter_parametersand the input parameters.