Skip to content
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

normalize residuals in contrib_gencoeffs to help solver with poor initial guesses #92

Open
mikofski opened this issue Sep 24, 2018 · 1 comment

Comments

@mikofski
Copy link
Contributor

relevant to #88, currently the gen_coeffs solver is very sensitive to initial guess, and so any non sunpower module is hard to solve for. when using PVLife we never had this problem, but in PVLife, all of the parameters were scaled to values between 1 and zero, this helps the solver.

EG: use

x[0] = log(isat1) / log(isat1_char)
x[1] = log(isat2) / log(isat2_char)
x[2] = (rs / rs_char)**2
x[3] = (rsh / rsh_char)**2

where _char means a "characteristic" value for the class of pv device being fit.

@markcampanelli
Copy link

@mikofski Again I make no claims about the effectiveness of my approach as compared to others, but I normalize single I-V curves against the "empirical" Isc and Voc values from the data, and after some algebra this will give a rescaling of all the parameters too. For sets of I-V curves (e.g., an IEC-81653 "matrix" of curves), I scale all the data to the empirical STC values Isc0 and Voc0, which assumes that there is a curve in the set that is sufficiently close to STC to work with.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants