Reducing Intermittence of Renewable Energy Sources with Seasonal-Pumped-Storage Plants


This paper presents a computational method to model and evaluate if Pumped Storage Plants (PSP) have the potential to reduce the intermittency of wind generation from different sites in Brazil and to improve the operation efficiency of hydroelectric plants when operating in cascade. Since the problem to be solved does not have a defined analytic solution, a Stochastic Optimization Algorithm was implemented to reach an optimal solution to the set of equations, inputs and proposed scenarios. A case study was developed based on the Paraná River Basin and the results shows that the model can operate in a variety of different operational patterns, making feasible the evaluation of different hydrological and wind scenarios. Given the Model support, it is easy to assume different PSP storage and generation capacities, allowing the comparison between the efficiency improvement of a conventional Pumped-Storage and a Season-al-Pumped-Storage in the same scenario. The study concludes that a PSP can effectively reduce the intermittency of wind and solar sources and contribute to the optimization of the Brazilian electricity sector.

Share and Cite:

Machado, P. , Ramos, D. , Tenaglia, G. and Hunt, J. (2017) Reducing Intermittence of Renewable Energy Sources with Seasonal-Pumped-Storage Plants. Energy and Power Engineering, 9, 273-292. doi: 10.4236/epe.2017.94019.

1. Introduction

The Brazilian power grid had, in June 2016, a total of 144, 129 MW of installed capacity in the interconnected system, based mainly in the hydro plants participation that answers for 64.5% [1] of all installed power connected to the Brazilian Interconnected System (BIS). However, new environmental laws are only permitting the construction of run-of-the-river dams, with the intention to reduce the flooded area and avoid environmental impact. This reduces the amount of energy the system can store, which makes dams vulnerable to the water regime in the river.

This results in important constraints to the BIS operation efficiency. To fully comprehend the BIS operation, it is essential to understand the Brazilian weather and geography. The BIS is divided geographically into four subsystems and each has unique characteristics. While the South and Southeast/Center-West subsystems have a temperate climate, both North and Northeast subsystems, being closer to the Equator Line, have a tropical weather. Every subsystem is characterized by two very distinct seasons, a wet summer and fall and a dry winter and spring. It should be pointed out that there is a hydrological diversity between those regions, in such way that the interconnection between regions is an important alternative to reduce operation costs. Considering that new hydropower facilities are run-of-the-river plants in the Amazon region with no energy storage and small capacity factor: full generation in the wet season, very reduced generation, otherwise. Secondly, run-of-the-river plants do not have the same regulation potential as the conventional hydroelectric facilities to manage the introduction of intermittent sources of energy such as wind and solar power.

Another issue with the Brazilian interconnected system is that its storage potential is largely concentrated in the Southeast/Center-West subsystem, as shown in Table 1, making the electricity system vulnerable. Due to this, in cases of long dry periods occurrences in this region, such as happened in the last couple of years, electricity generation capacity may be seriously reduced.

Considering the predicted expansion of the wind farms in the next decade, especially in the Northeast Subsystem [8] , it is essential to implement regulatory constraints to allow the continuing expansion of the technology. A possible approach is to increase energy storage and transmission lines.

Given that most of the energy storage capacity is located far from the intermittent generating sources, it is also important to decentralize the energy potential of Brazil. Storage plants closer to the wind and solar potential would regulate the intermittency introduced in the northeast region. This would secure power supply providing spinning reserve and energy production backup, allowing a more reliable energy management in the BIS.

Apart from traditional dams in a typical hydroelectric plant, there are few energy storage technologies available and fewer that suits to an application in a large-scale system, due to either low cycle efficiency or high implementation

Table 1. Storage capacity in each Brazilian subsystem.

The rational of PSP is to use the unconsumed energy during reduced load periods in order to pump the water from a lower reservoir to a higher reservoir, and turbine it when needed at the same plant power house. It consists on transforming electrical energy into hydraulic energy, in large scale and an efficiency of approximately 75%.

As Brazil reached the limit in available conventional hydropower reservoirs, this research analyzes the implementation of Pumped-Storage with seasonal (SPS) and daily cycles (PSP). SPS is a pumped storage plant that operates combined with a series of dams in cascade downstream defined by [2] Given their short response time, SPS could be used to regulate the power generation from wind farms, as well as, store energy seasonally. Considering new run-of-the river dams being constructed in the north region, such as Belo Monte, Jirau and Santo Antonio, a PSP could store energy generated in the wet season to generate energy in the dry season, regulating and increasing the Brazilian energy storage capacity. It is worthwhile to say that if seasonal PSP are allocated in a different region, it is possible to considerably diminish the system vulnerability due to climate changes, improving the country’s generation profile.

In order to evaluate this technology in the Brazilian scenario, a part of the Brazilian hydroelectric system was modelled considering the interaction of dams in cascade and the issue on how the outflow of an upstream dam can influence the inflow of a downstream dam. Through a routine developed in the software MATLAB [5] , once an electrical demand is established, it is possible to obtain a power generation function of the hydro system based on the natural water inflow of the rivers as input to the model.

To introduce non-existent PSP in the system operating in an optimized form, it was implemented an Evolutionary Algorithm called Genetic Algorithm (GA), in order to maximize the system’s efficiency at the end of the analyzed period. When running this computational method, it is necessary to establish the optimizable variable of the study. Considering that pumped inflows or outflows of the PSP do not have an analytic solution; it was decided to make it a target variable to be optimized in the study, being it the individuals of the population of the GA.

This model allows an evaluation of a series of different scenarios, it is flexible to the point that allows the user to choose the desired inflow data, the amount of demand that the system must attend, the size of the SPS reservoirs, making possible a comparison between a conventional daily cycle PSP and a PSP with seasonal reservoir. Also the amount of wind generation is configurable by choosing the wind power installed. As desired, it is also possible to choose every input parameter required by the GA.

2. Methodology

A partial model of the Brazilian interconnected national grid was developed, composed by the Paranaíba Basin, Grande Basin and Paraná Basin, using a routine in MATLAB to simulate it. Then it was introduced two virtual pumping facilities, the first called Canastra and connected to the Furnas Dam in the Grande River, and the second called Catalão connected to the Serra do Facão Dam in the São Marcos River as proposed by [2] .

The scheme of the Paraná Basin is shown in Figure 1. The data used for each PSP is shown in Table 2.

Figure 1. Diagram of dams in the Paraná, Paranaíba and Grande Watersheds with two proposed Seasonal-Pumped-Storage schemes.

Table 2. Technical aspects of each reservoir.

2.1. Model Premises: Hydropower

The first step in order to simulate the behavior of the system described in Figure 1 is to establish the power function of a conventional dam as developed by [3] . The power generated by a hydroelectric plant is given by Equation (1).



-η: efficiency of the hydroelectric plant;

-ρ: water density [kg/m3];

-g: acceleration due to gravity [m/s2];

-h: water head [m];

-q(t): water flow through the plant’s turbines [m3/s];

Taking into account that it is possible to assume that the efficiency of the turbine does not vary with the water head for such kind of simulation, without important lose in the results precision, there are two mutual dependent variables in the generation function described by Equation (1): the water flow and the water head. Therefore, the only feasible alternative to calculate the power generated by the plant is through an iterative process.

Besides, the plant’s generation is limited by the turbines or the generators capacity, depending on the water head. If the head is too low, turbines could operate in a partial load, however it could lead to a prohibited region of cavitation and, in this case, the generator cannot produce its effective power because the turbine cannot supply it with enough power. In this case, the turbine is limiting the turbine-generator set operation. On the other hand, the bigger the net head, the closer the turbine can be to its nominal capacity and in this case, if the turbine produces all the possible power, the generator can be overloaded.

It is possible to define two acting regions to characterize the plant behavior:

-If the water head is too low, the generator cannot generate its effective power because the turbine cannot supply enough power. In this case, the turbine is limiting the set’s operation.

-If the head is too big, its distributor vanes cannot be open 100% in order to protect the generator. In this case, the generator limits the set’s operation.

These two acting areas of the generators and turbines are important because according to the reservoir level of a hydroelectric plant, it may deeply influence its generation. So, the impacts that an upstream dam causes in a downstream dam given the water flow going through the upstream dam and the characteristics of the lower plant need to be considered. However, given that there are a series of dams in cascade, and the interaction between them impact the generation function, since q(t) is limited by qmax, it was necessary to establish an iterative process to arrive to the maximum swallowing the plant allows.

Once the maximum power and flow of each plant based on its reservoir initial conditions have been established, the next step would be calculating the inflow of each dam given its upstream conditions and its natural inflow.

2.2. Water Inflow with Dams in Cascade

Given that the natural inflow in the dams connected to the BIS have their natural inflow available in [7] , it is possible to calculate the incremental inflow (yinc) and their total inflow (yi) given the downstream flow of the dams upstream (uj) according to Equation (2) and Equation (3) as proposed by [3] .



where Ω is the set of dams upstream to dam i and u is its downstream flow.

Considering the monthly average inflow, it is reasonable to apply this equation to the system. However, in the case of an hourly study as it is required in this paper, this could be not appropriate given that the dams may be hundreds of kilometers away and there is a transit time for the outflow of an upstream dam to arrive to a downstream dam. This constraint, however, was not considered in the study, as the main purpose of the analysis could be achieved even if in approximated terms. Thus, the behavior of an upstream plant will affect the downstream plant in the following hour of study.

2.3. Simulation Modeling for Hydroelectric Plants in Cascade

Considering the inflow of every plant in the system in Figure 1, its own characteristics and the interactions between the dams, it is possible to calculate the downstream flow of each plant in the system given the load to be supplied at each discretization period. Taking into account the hourly wind generation, it is possible to incorporate it directly into the energy production of the system, since it is a non-dispatchable source of power. In Figure 2 it is possible to visualize the parameters considered in the study: entries, calculated and optimizable.

In this study, it was considered that the reservoirs are operated ruled by a parallel operation politic, meaning that all of them are emptied or filled in the same proportion accordingly to a linkage factor denominated λ, greater than 0 and lower than 1. The volume of the reservoir, x, may be determined in function of λ according to Equation (4).



Figure 2. Block diagram of the simulation considering an hourly discretization and wind generation.

-xmin is the minimum operative volume of the reservoir;

-xmax is the maximum operative volume of the reservoir;

Through λ it is possible to arrive to the stored volume at the end of the discretization period. Through the variation of volume of the conventional reservoirs, it is calculated its total downstream flow, meaning the sum of the spilled flow and the turbine flow. To adjust λ so that it secures the required generation, it was used an iterative process shown in Figure 3. In the block “Restrictions, conflicts and generation” the turbine flow was limited accordingly to the plants restrictions (both generation and turbine) and an algorithm to avoid spillage was used when there is available volume in the reservoir and the downstream flow calculated in the “Water Balance” block is greater than supported by the turbine or generator, qmax.

Running the implemented algorithm, it is possible to determine the outflow of each dam in the system considering the effects caused by upstream plants in previous periods and their own restrictions.

When adjusting λ, it must always be between 0 and 1, in case it is adjusted to a value outside of this limit, it means that either there is an excess of water and there must be spillage (λ > 1) or there is lack of reservoir and there will be a shortage of energy (λ < 0).

2.4. Genetic Algorithm

To consider the effect of the PSP in the system, the water flow going through their turbines or pumps was optimized using the Genetic Algorithm where the population of the algorithm was composed by the inflow (if q > 0) or outflow (if q < 0) of the PSP. Then, after simulating the system for each individual of the population, it was established an objective function, given by Equation (5), to maximize the energy generated and stored in the end of the period under analysis as well as minimize the spillage of water.



Figure 3. Algorithm used for the iteration process to calculate the total generation [3] .




- W(t): generation from wind source

- H(t): generation from hydroelectric plants.

- Θ represents the set with all the hydroelectric plants with conventional reservoirs and the PSP.

Considering that there is a possibility, when applying the algorithm from Figure 3, that the load could be not completely supplied, it was established a penalization factor applied to the objective function in that case. On Equation (9) it is possible to see the penalization established when Egenerated is outside of a tolerance factor ε, defined at 5%.


In the case that the generated energy is greater than the load, it was applied a multiplier factor that lowered its influence in the objective function, since it would be uncertain that another system could absorb a generation excess. In this case, this energy would be spilled.

In order to visualize the GA applied in the system, it is represented in Figure 4 the process used. Inside the block “System’s model” it is incorporated to every hydroelectric plant generation function, and the maximum water flow the turbine and generator allows according to the water head.

Figure 4. Block diagram with the GA applied in the simulation.

2.5. Wind Generation Profile

In order to obtain the wind generation data, using the wind data for each field in a certain period it is possible to calculate the generation profile of each field given the power curve of a wind turbine. Since the total wind power installed is a variable, it was decided to use the generation profile in p.u. based in the plant’s physical guarantee as supplied by [6] .

Using an hourly discretization, totalizing 8760 points, the wind profile was traced for the same year as the natural inflows that were used in each study.

It was used the wind profile of four different fields, from four different Brazilian sites, with an installed capacity proportional to 2014 capacity. On Table 3, it is shown each field with its location, installed power and capacity factor used to trace each wind power generation pattern.

Since the intention is to use the total wind generation profile, the four profiles were added altogether to trace the final wind generation profile in the period under analysis. Then it was incorporated into the system’s total generation.

2.6. Energy Market

Considering the horizon of a year, it was considered a peak demand between November and March that totalized 52.8% of the installed capacity, and a lower demand in the rest of the year (48.9% of the installed power). In addition, since the simulation is in a daily basis, there was a daily peak between 12 to 18 o’clock according to Figure 5. 1 p.u. in the image corresponds to the current month’s demand.

3. Results

The current scenario in Brazil is very dry, especially in Northeast region, so it was decided to simulate a past period, with an average river flow. Therefore, it was taken both the fluvial and wind records from 1990.

In every simulation, it was established the same GA parameters as shown on Table 4.

The stop criteria applied to this case was the amount of iterations without improvement to the objective function result.

Figure 5. Daily energy market.

Table 3. Wind fields considered in the study.

Table 4. Parameters applied to the GA.

3.1. Case 1?SPS with Seasonal Storage Cycle

The SPS reservoirs were dimensioned to a seasonal storage size according to each one’s power (as given on Table 2). Both conventional and pumped reservoirs were with 50% of its volume in the beginning of the simulation and wind generation capacity is responsible for 10% of all the system installed power.

After the simulation, it is possible to analyze the results hourly. In Figure 6 it is possible to look the system’s behavior after February 10th.

In this graph, energy generated by the SPS plant is represented in red, energy from wind farms in dark blue, energy consumed by the SPS in light blue and energy generated from conventional hydroelectric plants in green. A dashed line represents the total power generated in the system.

The main functionalities of a SPS are represented in Figure 6. Along the night, when wind speed is more intense and demand is smaller, the SPS is consuming energy supplied by conventional hydroelectric plant and wind farms. This way, in the following day, during the peak hour when the wind generation is much smaller, as it can be seen by the dark blue area, the SPS is able to change its operational sense and supply the system in way to attend all the required demand. In addition, in this period it was possible to identify that the wind generation along the night was greater than along daytime. In consequence, at night the SPS operate in pumping mode while at the peak during the day operate generating energy.

At the same period, the pumping flow at Catalão and Canastra work in a way to compensate the generation from the wind sources, creating the generation/ consume profile established in Figure 7 and Figure 8. Both PSP keep a flux of water, when pumping, more stable and much below the nominal capacity of the plant, meanwhile when generating energy it has peaks of generation with a flow very close to its nominal capacity.

This happens because the profile of the energy availability to pump is more stable, while it needs to be much more variable when generating, according to the wind profile. For example, it is noticeable that on February 17th, near to midnight, there is big drop in the wind generation, getting close to zero.

When that happens, both SPS, including Canastra, which was turned off in the previous hour, inverted their operation mode with a high flux going through the turbines to generate the amount of energy required to compensate a decrease in wind generation. This happened not only in the peak-hours, but every time when wind generation was below average it is observed a generation by both SPS also at night.

Figure 6. Generation profile in a week of February 1990.

Figure 7. Pumped water flow at Catalão in February.

Figure 8. Pumped water flow at Canastra SPS in February.

The same effect can be observed along the year for a few times given the high variability of the wind generation and the volatility of the SPS to adjust to a variable generation profile. It is, however, possible to identify a pumping pattern. The SPS operates generating energy along the day, when the load is greater and wind generation lower, while at night, with a greater wind generation and smaller load, the SPS pump water to the higher reservoir, storing energy from both wind and hydroelectric plants with no regulation capacity at time, either because it has no storage capacity available or because it has to keep a minimum outflow at the dam.

Looking into the one-year horizon of the SPS operation, it is possible to see at Canastra that most of the time it is operating in way to fill the reservoir, always storing more energy than consuming, which happens mostly in the peak hours of the day. This is due to the size of the reservoir that was dimensioned by [2] to be a seasonal cycle reservoir.

However, from May on, it is possible to notice an increase in the turbine mode of the SPS while the pumping operation mode is reduced given it is in a dry season of the year and it becomes important as a backup reservoir for the whole system.

A similar effect happens at Catalão, that when the dry season begins, it reduces its pumping mode keeping oscillating between both modes, but always emptying its reservoir more than filling, injecting energy in the cascade. The reservoir levels for both plants are shown in Figure 9 and in Figure 10.

Taking another example along the year, now in July, in the middle of the dry season, it is possible to observe a diverse behavior of the pumps. Due to the dry period, the pumps start to work constantly to regulate the generation by supplying the plants in cascade with a regular water flow as well as counterbalancing the wind generation intermittence (Figure 11).

Figure 9. Reservoir level at Canastra PSP.

Figure 10. Reservoir level at Catalão PSP.

Figure 11. Power x Demand in July.

3.2. Case 2?PSP with Daily Storage Cycle

In this case it is considered a smaller reservoir dimensioned according to Table 5, an increased wind generation capacity (20% of the system installed capacity), and a higher minimum outflow in the dams (1.5 times nominal). This was made to stress the dams and verify the functionality of a PSP with daily cycle.

It was considered a greater demand than in the previous case, it was 5% greater in peak hours, lasting from 1pm to 8 pm. Through Case 2 it was possible to analyze how a PSP helps regulating peak and off-peak demand.

As in the previous case it works together with the wind profile, looking into February 2nd and 3rd, it is possible to see, through the dark and light blue area, that wind generation was smaller than on February 19th, for example. Due to this, PSP do not pump as much water since there is not a large exceeding amount of energy in the system, and it only turbine during the peak hours (Figure 12 and Figure 13).

As shown in Case 1, also with a daily cycle, both PSP have similar flow patterns. At night when demand is smaller, they consume energy from a non-dis- patchable source and avoid water spillage in hydroelectric dams. Meanwhile, in the next day, at peak hours, both PSP operate in turbine mode, generating

Table 5. Inputs for each PSP with daily storage cycle.

Figure 12. Power × demand in February.

Figure 13. Pumped reservoir level in February.

energy in such way to allow conventional hydroelectric plants to save their storaged energy for future critical periods.

In a regular winter day, when less water is inflowing to the dams and there is a larger wind generation, both PSP have a more defined cycle filling and emptying on a daily basis, since there is less energy available in hydroelectric power plants, especially run-of-the-river dams (Figure 14).

At this point, it is possible to observe that the PSP filled completely at some points, causing energy to be spilled since the conventional hydroelectric plants with reservoir have a minimum water flow required at all times (Figure 15 and Figure 16).

Observing the daily cycle it is possible to see how a pumped storage facility could be implemented, in a much smaller scale, in order to just counterbalance the wind generation profile and store an exceeding energy from off-peak periods to use it during the peak demand of the day.

4. Conclusions

After simulating these two scenarios, it was possible to compare them to a case where the pumped storage plant was not present.

Looking Table 6 that follows it is possible to compare the improvements to the amount of energy wasted for each case. As it was predicted, the larger the SPS reservoir, the better results it would supply.

In case 1, considering two SPS that together sum 22.34 TWh of storage capacity, the spillage expressed into energy unit was only 1.52% of all energy generated in the period, a great improvement from the 10.86% of wasted energy from the case

Table 6. Final results.

Figure 14. Pumped reservoir level in September.

Figure 15. Power × demand profile in September.

Figure 16. Pump flow at Canastra in September.

without an EPS.

Meanwhile, in Case 2 that included a daily cycle PSP in the system, it already showed an improvement of 1% in the wasted energy.

Considering that the Energy Consumed column includes both the electrical load and the pumping energy consumed, it was expected for Case 2 to have the highest amount of energy consumed due to the higher load used as input for this case. The result can only be compared among the three cases when looking into the third column since its load levels are different.

Comparing the stress case to the case without a SPS plant, the amount of energy stored in the end is also superior with the PSP, since less water was spilled, being stored in the system’s reservoirs.

Through the incorporation of wind farms, it showed an efficient way to manage and operate the reservoirs allowing it to store peak wind generation, which occurs in the middle of the night, using it along the next day to regulate the peak load in the afternoon. Considering the overall efficiency of a PSP that is between 70% and 80%, it is according to the literature review of one of the most efficient storage methods and the only method that allows a large storage in the form of potential energy as well.

Besides, its presence along the year, managed to regulate the water flows in the system along the dry season, sparing conventional reservoirs from emptying.

In general, the case analysis allowed observing the influence and effects of an SPS in a portfolio of hydro and wind generation and how its inclusion would be beneficial for the system, allowing a peak regulation through storage of wind power. Considering the future scenario in Brazil where wind generation is constantly growing and latest auctions started to introduce photovoltaic power plants, mainly in the Northeast subsystem, the intermittency from these renewable sources will need a regulation. Given this fact, since hydroelectric power is the main component in the Brazilian energy matrix, a pumped storage plant becomes a good alternative to play this role.

The biggest challenges when introducing PSP or SPS in Brazil are site availabilities and environmental concerns. There are not many sites that could be appropriate to implement high water heads hydroelectric plants and, simultaneously, large reservoirs, making it difficult to obtain an environmental license, necessary for its construction. Also, sites making feasible to implement high water head plants are frequently environmental reserves, which requires deforestation even with a small flooded area. A possible approach is to change the current tendency, in such a way to implement large storage plants again in Brazil, seeking to allow a safer and more efficient expansion of other renewable sources such as wind and solar. This would reduce the dependence of thermal power plants to supply energy at peak loads.


The authors gratefully thank the support and help provided by the University of São Paulo and its contributors to the elaboration of this paper.

Conflicts of Interest

The authors declare no conflicts of interest.


[1] ANEEL. (2017) BIG-Generation Information Data (Banco de Informação de Gera-ção).
[2] Hunt, J.D., Freitas, M.A.V. and Junior, A.O.P. Enhanced-Pumped-Storage: Combining Pumped-Storage in a Yearly Storage Cycle with Dams in Cascade in Brazil. Elsevier, Energy, 78, 513-523.
[3] Filho, D.S. (2003) Hydroelectric Dimensioning through evolutionary optimizationt echniques. Dimensionamento de usinas hidrelétricas através de técnicas de otimização evolutiva). Ph.D. Dissertation, Dept. Energy and Automation, Universityof São Paulo.
[4] Krüger, K. and Rotering, N. (2015) Successful Energy Transition in Germany by Pumped Storage Expansion (Energiewende erfolgreichg estalten durch Pumpspeicher ausbau). Wasserkraft & Energie, 2, 23-36.
[5] Machado, P.P.B. (2015) Incorporation of Enhanced Pumped Storage in the Brazilian National Grid Considering the Expansion of Wind Farms. BEng Dissertation, Dept. Energy and Automation, University of São Paulo.
[6] Witzler, L. (2015) Methodology to Reconstruct Historical Series of Wind and Wind Energy Generation Aiming at the Energetic Complementary in the National Interconnected System (Metodologia para reconstrução de sérieshistóricas de vento e geração eólicavisandoaanálise da complementariedadeenergética no sistemainterligadonacional). MSc Dissertation, Dept. Energy and Automation, University of São Paulo.
[7] ONS (2016) Update Onhistoricalinflows-Periodfrom 1931 to 2015 (Atualização de séries históricas de vazoes–período 1931 a 2015). ONS, Rio de Janeiro, RJ.
[8] EPE, MME. (2015) 10-Year Energy Expansion Plan 2024 (Plano decenal de expansão de energia 2024). Mining and Energy Ministry, Energy Research Company, Brasilia, DF, Brazil.
[9] Carneiro, A.A.F.M. and Soares, S. (1993) Reservoir Operation Rules for Hydroelectric Power System Optimization. In: IEEE/NTUA Athens PowerTech Conference: Planning, Operation and Control of Today’s Electric Power Systems, Athens, 965-969.
[10] Carneiro, A.A.F.M., Filho, D.S., et al. (1998) Genetic Algorithms Applied to Hydrothermal System Scheduling. In: International Conference on Power System Technology POWERCON’98, 1, Beijing, 547-551.

Copyright © 2023 by authors and Scientific Research Publishing Inc.

Creative Commons License

This work and the related PDF file are licensed under a Creative Commons Attribution 4.0 International License.