pvlib.iam.fit#
- pvlib.iam.fit(measured_aoi, measured_iam, model_name, weight=<function _sin_weight>, xtol=None)[source]#
- Find model parameters that best fit the data. - Parameters:
- measured_aoi (array-like) – Angle of incidence values associated with the measured IAM values. [degrees] 
- measured_iam (array-like) – IAM values. [unitless] 
- model_name (str) – Name of the model to be fit. Must be - 'ashrae',- 'martin_ruiz', or- 'physical'.
- weight (function, optional) – A single-argument function of AOI (degrees) that calculates weights for the residuals between models. Must return a float or an array-like object. The default weight function is \(f(aoi) = 1 - sin(aoi)\). 
- xtol (float, optional) – Passed to scipy.optimize.minimize. 
 
- Returns:
- dict – Parameters for target model. - If target model is - 'ashrae', the dictionary will contain the key- 'b'.- If target model is - 'martin_ruiz', the dictionary will contain the key- 'a_r'.- If target model is - 'physical', the dictionary will contain the keys- 'n',- 'K', and- 'L'.
 - References - Note - Model parameters are determined by minimizing \[\sum_{AOI} weight \left( AOI \right) \times \| IAM \left( AOI \right) - model \left( AOI \right) \|\]- The sum is over - measured_aoiand \(IAM \left( AOI \right)\) is- measured_IAM.
 
    
  
  
