Quantify energy losses due to tracking errors¶
In this example, we will show how to quantify energy losses due to tracking issues.
We will:
- Import measured tracking angles from the Measurement DB
- Create a site and define its design
- Compare energy yield assuming ideal and measured tracking angles
- Visualize results
In [1]:
from pvradar.sdk import PvradarSite, R, resource_plot, for_resource, make_tracker_design, describe, MeasurementGroup
Get measured tracking angle¶
In [2]:
measurement_group = MeasurementGroup('pvradar-webinar-2')
measured_angle = measurement_group.measurement(R.tracker_rotation_angle, label='measurement')
describe(measured_angle)
Out[2]:
tracker_rotation_angle: mean minutely tracker rotation angle in deg labeled "measurement" 44640 data points (2020-03-01 00:00:00-07:00 to 2020-03-31 23:59:00-07:00)
In [3]:
resource_plot(measured_angle)
Define the location and plant design¶
In [4]:
location = 35.0545, -106.539 # Albuquerque, New Mexico, USA
site = PvradarSite(location=location, interval='2020-03-01..2020-03-31')
site.design = make_tracker_design(max_tracking_angle=60, backtracking=True)
Calculate ideal tracking angle¶
In [5]:
site.freq = 'min'
ideal_angle = site.resource(R.tracker_rotation_angle, label='ideal')
describe(ideal_angle)
Out[5]:
tracker_rotation_angle: mean minutely tracker rotation angle in deg labeled "ideal" 44640 data points (2020-03-01 00:00:00-07:00 to 2020-03-31 23:59:00-07:00)
In [6]:
resource_plot(measured_angle, ideal_angle)
Compare energy yield with idea and measured tracking angle¶
In [7]:
# Energy without tracking failures
ideal_yield = site.resource(R.dc_energy(to_unit='MWh'), label='ideal')
# Energy with soiling losses
with site.hooks(for_resource(R.tracker_rotation_angle).use(measured_angle)):
actual_yield = site.resource(R.dc_energy(to_unit='MWh'), label='actual')
# Plot both
resource_plot(actual_yield, ideal_yield)
Summary: How much energy is lost to the tracking issues?¶
In [8]:
import numpy as np
misaligned_moments = np.sum(np.abs(measured_angle.values - ideal_angle.values) > 0.5) # deviates by more than 0.5 degrees
misaligned_fraction = misaligned_moments / len(measured_angle)
print(f'The share of time when the tracker was misaligned: {misaligned_fraction*100:.2f}%')
The share of time when the tracker was misaligned: 10.38%
In [9]:
# Actual share of energy lost (as %)
tracking_loss_fraction = (ideal_yield.sum() - actual_yield.sum()) / ideal_yield.sum()
print(f'The share of energy actually lost is: {tracking_loss_fraction*100:.2f}%')
The share of energy actually lost is: 4.57%
To understand how exactly the energy yield was calculated we can always plot a flowchart¶
In [10]:
with site.hooks(for_resource(R.tracker_rotation_angle).use(measured_angle)):
site.profile(R.dc_energy).display_flowchart()
¶
Conclusion: Why use PVRADAR for loss modeling?¶
With just a few lines of code, you estimated the energy losses due to tracker failures.
But this is just the beginning.
Model and optimize the real-world behavior of your PV plants¶
PVRADAR allows you to model the effect of any technical or environmental factor on plant performance — not just snow:
- Combine snow, soiling, albedo, clipping, battery storage, and more in a single modeling workflow.
- Quantify impacts in terms of energy yield, PR, LCOE, and financial KPIs.
- Explore what-if scenarios and optimize plant design and O&M strategies.
Build internal tools and advanced applications¶
With PVRADAR, you can turn your models into robust, organization-wide tools:
- Build internal web apps that allow colleagues to apply validated models without writing code.
- Standardize modeling across teams and projects.
- Automate reporting and performance analysis to save time and ensure consistency.
One Python line away from your data¶
The PVRADAR SDK simplifies data access:
- Seamlessly connect to satellite data, meteo stations, and internal performance databases.
- Standardize and pre-process data for modeling — ready to use in one line of Python.
- Keep full control over your data, whether in the cloud or on-premises.
Supported by deep expertise¶
PVRADAR is more than software — it is backed by industry-leading expertise:
- Model validation and tuning with high-quality reference data.
- Consulting and support on snow losses, soiling, O&M optimization, and yield forecasting.
- Proven track record with leading IPPs, developers, and consultants.
👉 Ready to go further? Contact us to learn how we can help solve your modeling challenge!