-
Notifications
You must be signed in to change notification settings - Fork 3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feat: script for generating pv module coefficients #11
base: main
Are you sure you want to change the base?
Feat: script for generating pv module coefficients #11
Conversation
@cwhanse @cpaulgilman @kanderso-nrel |
Seems PySAM's 6ParSolver fails when there are fewer than 36 cells in series ( |
Thanks @allenlawrence94. It may be a few days yet before I get to look through this. |
@allenlawrence94 Thanks for posting your work so far. This is great progress! Here are some files I generated using the 6parsolve module in SAM from the LK scripts that we use to build the SAM module library file. This is based on the Excel file from the CEC that I downloaded on Dec 1, 2021:
The solver uses the number of cells in series to generate an initial guess for the value if Io (see the source code here and here). I should have some time in the next few weeks to compare your Python scripts to our process. |
We've not used poetry in any pvlib/* project so far, and I'm only passingly familiar with it myself. I don't want to be a luddite, but I'm also not enthusiastic about learning a new package maintenance tool without a compelling reason. @allenlawrence94 for my own education can you comment on how it compares to a more old-school approach like |
Apologies for the slow response Kevin! I'm a big poetry fan and default to it these days, but it's definitely not necessary - would be happy to switch to requirements.txt / setup.py if consistency with other pvlib repos is important. For context, here's a blog outlining some of the advantages of poetry: https://towardsdatascience.com/solving-dependency-management-in-python-with-poetry-165b92069e9d Basically poetry is a lot like the other popular dependency managers from other languages - like js's npm and yarn, and rust's cargo. |
@dguittet Here is an updated set of files that should help with troubleshooting the 6parsolve issues: It contains: Bad Modules 2022-May-29_10-19.csv is a list of modules that caused 6parsolve to fail with informative error messages and input parameters as separate columns to make it easier to sort and troubleshoot. CEC Modules 2022-May-29_10-19.csv is a SAM library file with list of modules for which 6parsolve was successful.. PV_Module_List_Full_Data_ADA-2022-5-25_processed.csv is the complete list of modules from the CEC Excel workbook. This is the file that our LK script reads to generate the SAM library file. PV_Module_List_Full_Data_ADA-2022-5-25.xlsx is the original Excel file that I downloaded from the CEC website, with data from May 25, 2022. |
Script for generating CEC PV coefficients using PySAM. See the README for how to run it. Here's what it currently does:
Current issues:
Lots of modules fail with
6parsolve execution error
from PySAM. I haven't looked closely at what is causing this.I won't be able to prioritize this work for the next few months, but I will let you all know if that changes. For now, I just want to make this available in case anyone wants to pick up where I've left off.