-
Notifications
You must be signed in to change notification settings - Fork 3
Description
Using hourly data has been the standard for solar energy applications for the past decades, where the irradiance value represents the average over the hour. During such long time intervals, the solar position changes quite a bit though (roughly 15 degrees in azimuth). For this reason, it is common practice to calculate the solar position at the middle of the hour. This practice works reasonably well when the sun is above the horizon for the entire time interval. However, for time intervals that contain sunrise or sunset, there is the possibility that the sun is below the horizon at the middle of the interval. This causes problems for solar radiation modeling (e.g., decomposition and transposition), as irradiance is non-zero but solar elevation is negative.
This issue was recently brought up again by @williamhobbs.
I see two potential solutions:
- Option A: Calculate sunrise/sunset times. For time intervals without sunrise/sunset simply calculate solar position for the middle of the interval. For periods that do contain sunrise/sunset, the middle of the period has to be adjusted such that it is in the middle of the sunrise/sunset and the end/start of the interval, respectively. For example, assuming hourly data with centered time stamps (8:30 corresponds to 8-9) and a sunrise time of 08:40. Then, solar position should be calculated for 8:50 instead of the original 8:30.
- Option B: Calculate solar position for a much finer resolution (e.g., 1 minute) and then calculate the average solar position within each interval based only on the subset of the fine time stamps for which the sun is above the horizon. This is likely significantly slower than Option A, but with fast algorithms such as Michalsky, it should be very feasible. It might even have the added benefit that the average solar position is more representative than the solar position calculated at the middle of the interval.