pvlib-python
pvlib-python copied to clipboard
Add a model for spectral corrections
Additional context First of all, I introduce myself, my name is Jose Antonio Caballero, and I have recently finished my PhD in photovoltaic engineering at the University of Jaén, Spain.
I have developed a python script to apply spectral corrections as a function of AM, AOD, PW based on this work (https://doi.org/10.1109/jphotov.2017.2787019).
We have found that in pvlib there is already a similar methodology developed by First solar, in which the spectral corrections are based only on the AM and PW parameters, so we intend to include our proposed method in pvlib in a similar way.
As an example, I attach the code developed in python (.zip file) to estimate the spectral effects related to different flat photovoltaic technologies from the AM, AOD and PW parameters included in a .csv file. PV-MM-AM_AOD_PW_data.csv PV_Spectral_Corrections.zip
Kind regards
Hello @Jacc0027 and welcome to this community.
I would welcome submission of a function implementing that model. It differs from the existing functions by including parameters for perovskite cells.
It would need to be coded as a function similar to first_solar_spectral_correction using the same parameter names, where possible.
The script isn't in a function format. The time series in the .csv file appear to be related to the SMARTS simulations used to set up this model, is that correct? If so, then these data don't need to come into pvlib.
My pleasure @cwhanse , thank you very much for the welcome.
No problem, I can adapt the code in a similar way to the one you attached, and assuming the same variables.
Yes, you are right, the script I attached is not made as a function, it was just a sample to verify the results. And again you are right, the time series in the .csv file are obtained through SMARTS simulations
Therefore, I will attach in this thread the modified code as we have just agreed.
Hi @cwhanse , please find attached the updated script, in which we have tried to meet the requested requirements.
I look forward to any comments you may have.
Hi Jacc0027, I have looked at the code in the attachment. Can you make a pull request? When there are some tests, I think we can start the review process.
Is this model for clear-sky conditions only, or all sky? Is it for 30-degree tilt only, a range of tilts, or any orientation? Any other restrictions or limitations the users should know about?
PS. The issue should probably remain open until the PR is merged.
Hello Anton,
the proposed experimental equations are applicable in all sky conditions.
The fit coefficients were obtained experimentally with broadband and spectral irradiance measurements with an inclination of 30º above the horizontal. Strictly speaking, this would be the valid tilt for the model.
Regarding the orientation, the experimental installation was completely oriented towards the south, so it can be applied considering this scenario and subsequently applying the corresponding adjustment for orientation losses associated with a different orientation to the one considered in the model. This methodology is usually applied in the modelling of PV systems independently of this spectral adjustment.
The limitations of the model remain to be verified, as indicated in both, the proposed python script and the published paper. It remains to be seen how the adjustment coefficients are modified in locations with extreme climates where AOD and PW values are frequently high. In any case, we are firmly convinced that this model performs better than others that do not consider AOD as an input parameter, since it is an important factor that affects short wavelengths significantly.
I remain at your disposal in case of any further questions.