Tutorial 5. Multiple years
Tutorial 5 is a multi-year analysis.
In addition to the sim-to-sim variability applied in the previous tutorials, Tutorial 5 contains year-to-year variability — i.e., interannual variability (IAV).
Since the tutorial applies two probability distributions to the same variable, we will first recap the approach used in SunSolve P90:
At each time step within an analysis, the value of a parameter is calculated to be its base value multiplied by a sim-to-sim modifier and a year-to-year modifier :
,
where is randomly determined from the sim-to-sim distribution at the beginning of the simulation, and is randomly determined from the year-to-year distribution at the beginning of each year of each simulation.
We demonstrate by performing a 15-year analysis that contains two parameters with a significant uncertainty: GHI and the annual degradation rate.
For GHI, we apply the following:
-
is the GHI at each time step of the TMY weather file.
-
The sim-to-sim variability is a Gaussian distribution with a 95% confidence interval of ±2% (i.e., a relative standard deviation of 1%). This error is similar to the calibration error in a high-quality pyranometer, such as the one used in the experiment referenced in Tutorial 4.
-
The year-to-year variability is the same asymmetric distribution from Tutorial 4, which represented the IAV of GHI measured at Mokpo, Korea, a particularly asymmetric site.
For the annual degradation rate (an additive rather than a compound rate), we apply the following:
-
, since the absolute rate is contained in the asymmetric sim-to-sim variability.
-
The sim-to-sim variability is the skewed Gaussian shown in the graph below (and defined in the table). This is the average degradation rate applied in a simulation, i.e., for all 15 years. The median degradation rate is 0.63%/year.
-
The year-to-year variability is a Gaussian with a confidence interval of ±50% (i.e., a relative standard deviation of 25%). Thus, if the average rate for a simulation happened to be 0.8%/yr, the rate applied at each year of that simulation would vary within the range (0.8 ± 0.4)%/yr.
| Input | ξ | ω | α |
|---|---|---|---|
| Annual degradation rate | 0.003 | 0.005 | 3 |
Note that the units for the degradation rate are a fraction per year; i.e., 0.003 represents 0.3%/year.
We can now find the yield uncertainty over a 15 year period for our default SAT system with the described uncertainty in GHI and degradation. Simply load the code blocks below into the Notebook.
First, load the inputs by copying this text block into Step 3:
# Set uncertainty simulation constants (Note: number_of_years * number_of_simulations must be <= 250000)simulation_options = build_simulation_options( number_of_years=15, number_of_simulations=5000)
# Load weather: sydney.pvw file is an example weather fileweather_file_path = "Data/sydney.pvw"weather_data = load_weather_data_from_pvw_file(weather_file_path)
# Assign specific system inputsoperational_settings = build_operational_settings( annual_degradation_rate=1,)
# Use defaults for other inputs
optical_settings = build_optical_settings()module_info = build_module_info()system_info = build_system_info()electrical_settings = build_electrical_settings()thermal_settings = build_thermal_settings()
# Set output optionsresult_options = build_result_options( bin_min=0.85, bin_delta=0.01, p_values=[5, 10, 25, 75, 90, 95])
print("Setup complete.")Then load the distributions by copying the text block below into Step 6. Notice that the distributions contain both sim-to-sim and year-to-year distributions.
distribution_list = [ create_distribution(DistributionInput.GHI, simToSim=['Gaussian', 1, 0.01], yearToYear=['SkewedGaussian', 1.029, 0.04, -5]), create_distribution(DistributionInput.AnnualDegradationRate, simToSim=['SkewedGaussian', 0.003, 0.005, 3], yearToYear=['Gaussian', 1, 0.25]),]print("Distribution list created.")The resulting histogram for years 1, 7 and 15 are plotted below. The results for Years 7 and 15 are relative to the Year 1 P50.
The histograms exhibit an asymmetry in which the downside tail is longer than the upside. This arises due to the strong asymmetry contained in the GHI and degradation.
The next figure plots the downside P-values against the year of operation. It shows how the uncertainty increases as the years progress, a consequence of being uncertain about the degradation rate.
We stress that the values in these outputs were simply for demonstration purposes and do not quantify a forecast for an actual PV plant.