-
Notifications
You must be signed in to change notification settings - Fork 1.1k
Trouble figuring out how to run IV gold standard test cases in pvlib #1578
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
Comments
The title of this issue is incorrect in my opinion. I cannot find where in pvlib-python/pvlib/pvsystem.py Line 2874 in b7768b4
and it passes diode voltages as expected and returns both cell voltage & current. I think you are looking for either |
The current behavior as @mikofski describes is consistent with the function's docstring: pvlib-python/pvlib/pvsystem.py Lines 2819 to 2824 in b7768b4
Although the most useful part of the IV curve is in the first quadrant, the curve as a whole does extend into quadrant II (and IV), so negative voltages in and of themselves are not physically illegitimate. Is the objection that the function would be more useful if it only returned points in the first quadrant? |
I think in this case I may have given wrong direction to @reepoi. We are attempting to use some precisely computed IV pairs as tests for pvlib single diode equation solutions. We want to supply known voltage and get back the corresponding current. When I first looked, I thought that was the intent of pvlib-python/pvlib/pvsystem.py Line 2876 in b7768b4
On second look, that line is passing voltages that are akin to initial guesses at the cell voltages. To me it suggests that #418 is still relevant: there are uses when e.g. voltage is known and the corresponding current is desired, and |
I think if given specific known voltages and the corresponding currents are desired, then pvlib.singlediode.bishop88_i_from_v() should be used. IMHO there's not an expectation that pvlib-python/pvlib/pvsystem.py Lines 2708 to 2710 in dd6062a
|
I'm not sure what the best place is for this thought, but perhaps it could be useful if IV curve validation data sets actually included the diode voltage as well. |
Describe the bug
When
pvsystem.singlediode
is called withmethod = 'brentq'
ormethod = 'newton'
andivcurve_pnts > 0
,singlediode.bishop88
is called to calculate the voltage and current of the ivcurve points.singlediode.bishop88
expects diode voltage, butpvsystem.singlediode
passes it voltage instead.To Reproduce
Steps to reproduce the behavior:
method = 'brentq'
ormethod = 'newton'
,Expected behavior
The ivcurve points should be on this curve: https://cwhanse.github.io/ivcurves/test_cases.html#case-21
Versions:
pvlib.__version__
: 0.9.3pandas.__version__
: 1.4.3The text was updated successfully, but these errors were encountered: