captest.calcparams.apparent_zenith_pvsyst

captest.calcparams.apparent_zenith_pvsyst(data, site=None, altitude_override=0, shift_minutes=30, verbose=True)

Apparent solar zenith at the mid-point of each PVsyst interval.

PVsyst reports hourly values labelled at the start of each interval but computes sun positions at the interval mid-point. To match that convention we shift data.index forward by shift_minutes before calling pvlib.location.Location.get_solarposition(), then shift the resulting Series index back by the same amount so the output aligns with the original data.index.

The site timezone should be a fixed-offset Etc/GMT±N string because PVsyst data is not DST-aware. CapTest.setup() auto-converts meas.site to an Etc/GMT±N variant when propagating it to sim.site.

Parameters:
  • data (DataFrame) – DataFrame with a tz-naive DatetimeIndex at the PVsyst cadence.

  • site (dict) – Same shape as apparent_zenith(). Auto-injected from cd.site.

  • altitude_override (numeric, default 0) – See apparent_zenith().

  • shift_minutes (int, default 30) – Interval mid-point offset applied to data.index before the pvlib solar-position call. Set to 0 to disable the shift.

  • verbose (bool, default True) – Set to False to suppress the explanatory print message.

Returns:

Apparent zenith angle (degrees) indexed like data.index.

Return type:

Series