opened
wholmgren
username_0
We should consider adding an implementation of the GTI DIRINT model described in Marion 2015:

https://www.sciencedirect.com/science/article/pii/S0038092X15005757

In short, the GTI DIRINT model converts plane of array irradiance to DNI, DHI, and GHI.

I have a partial implementation that I've been sitting on for a few months. I'll try to get it into a PR soon.
Add GTI DIRINT model
issue
created
jforbess
username_1
Trying to implement this myself for a quick and dirty prototype. Any hint as to whether the iteration can be performed over the entire time series of POA or whether each time stamp has to be iterated? I am torn on how to evaluate the min D if evaluating over the entire timeseries at once.
comment
created
wholmgren
username_0
Real quick... here's my implementation: 

https://github.com/username_0/pvlib-python/blob/gtidirint/pvlib/irradiance.py#L1408

Off the top of my head I don't remember. I'll try to come back to this in the next few days.
comment
created
cwhanse
username_2
The iteration removes the error introduced by approximating GHI/cos(zenith) by GTI/cos(AOI).  The difference lies in the diffuse sky and ground irradiance received by a horizontal vs. tilted module. It appears that Bill applies iteration separately for each hourly value (Fig 2 in his paper), which I think is appropriate, because AOI changes with time.

I believe also that the convergence method in his paper could be improved, but I haven't got an alternate method to propose.
comment
created
adriesse
username_3
I'm sure you could do the iteration in parallel.  You would then have the same number of iterations for each time step, and your termination condition would have to be based on all time steps.  

I have no experience with this algorithm, but suspect that if you just iterate a small fixed number of times you would be adequate, or you could keep going until the biggest error for the year falls below some threshold.  Probably still way faster than looping through hour by hour.
comment
closed
cwhanse
username_2
issue