Replies: 10 comments 3 replies
-
I do not have a python version of SOLPOS; in the comparison notebook I called out to I have also been eyeing "Efficient calculation of solar position using rectangular coordinates", which is apparently "SPA but faster":
|
Beta Was this translation helpful? Give feedback.
-
I'm not opposed to implementing more algorithms. It's consistent with the pvlib philosophy of providing reference implementations of algorithms commonly used in the solar modeling community. But I think the discussion would still benefit from identifying if there is real world problem we're trying to solve. Match PVSyst more closely? Are we speculating that lots of people would benefit from a faster default algorithm and they're also uncomfortable with the documentation/validation of the existing I recently wrote down some related thoughts in Unidata/MetPy#1440 (comment) TLDR: python (or python wrappers) of a fast algorithm that supports arrays of space and time would be useful to a lot of people. |
Beta Was this translation helpful? Give feedback.
-
I do want to be able to duplicate the PVsyst model chain to remove any doubt about differences we see from pvlib/SPA. The Michalsky seems to be cited so frequently that it just seems philosophically aligned for it to be covered by pvlib. Ditto for USNO. It should not be difficult to find the raw implementation details for these models if folks need to duplicate a prior assessment. Speed of calculation is less of a concern for me, but it may be for others. If algorithms become popular we should find a way to wrap them or make them accessible to analysts. |
Beta Was this translation helpful? Give feedback.
-
@mikofski @wholmgren Earlier today I was talking to @YvesMSaintDrenan from MINES ParisTech who has developed a fast algorithm for calculating solar position for a grid of points and is interested in contributing it to pvlib. I personally would find this very useful, as none of the existing pvlib methods today can handle this. What is the general opinion on welcoming such a contribution? |
Beta Was this translation helpful? Give feedback.
-
Is the fast algorithm documented somewhere? |
Beta Was this translation helpful? Give feedback.
-
@AdamRJensen The home page for the SG2 algorithm has a link to a paper documenting the algorithm. I took at look at the SG2 repository. The source is almost all C++. For this reason I would vote no on porting the code into pvlib-python. If we can figure out the API it might make sense to add a function to iotools to make it easier for users to combine SG2 with pvlib code (primarily, to handle variable name translations). |
Beta Was this translation helpful? Give feedback.
-
Just as a comment to the original list of software and their usage of solar position algorithms: SAM has since version 2020.11.29 been using SPA - the change was implemented here: NREL/ssc#450. |
Beta Was this translation helpful? Give feedback.
-
Thanks to @kanderso-nrel for pointing me to this conversation. Just want to note that SAM has some interest in exploring these different solar position algorithms as well. |
Beta Was this translation helpful? Give feedback.
-
related to #1714 |
Beta Was this translation helpful? Give feedback.
-
Precision really isn't the main criterion for me most of the time, it's getting the same angles as whatever I'm comparing with. I'm less interested in new algorithms even if they somehow provide a more attractive balance of accuracy vs. flops because after all running SPA once is usually acceptable. |
Beta Was this translation helpful? Give feedback.
-
Should we consider adding more published solar position algorithms? Maybe related to #1065 do we already have the Michalsky aglorithm in pvlib? I see it cited frequently, but I don't know the actual algorithm. Also supposedly pvsyst uses the USNO algorithm. How good or bad is it? I have never seen the actual algorithm or what inputs it uses. Also I am a big fan of NREL SOLPOS which is actually an input to SPECTRL2, so did @kanderso-nrel already implement it? Do we have it already and not even know it. There's an excel version and a C version, it's pretty short so I bet we could reimplement it as python with numba if needed.
comparison (from Adam's DTU classmate: Nick Riedel, @nicorie)
more info
Beta Was this translation helpful? Give feedback.
All reactions