Next Article in Journal
Comprehensive Evaluation of a Landscape Fabric Based Solar Air Heater in a Pig Nursery
Next Article in Special Issue
A Hybrid Optimization Algorithm for Solving of the Unit Commitment Problem Considering Uncertainty of the Load Demand
Previous Article in Journal
Towards a Systemic Assessment of Gendered Energy Transition in Urban Households
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Extended Equal Area Criterion Revisited: A Direct Method for Fast Transient Stability Analysis

1
Department of Electrical Engineering and Computer Science Montefiore Institute, University of Liège, 4000 Liège, Belgium
2
Intelligent Systems Solutions, Haulogy, 4120 Neupré, Belgium
3
French Transmission System Operator Réseau de Transport d’Electricité (RTE), 7C Place du Dome, 92800 Puteaux, France
*
Author to whom correspondence should be addressed.
Energies 2021, 14(21), 7259; https://doi.org/10.3390/en14217259
Submission received: 20 September 2021 / Revised: 29 October 2021 / Accepted: 30 October 2021 / Published: 3 November 2021
(This article belongs to the Special Issue Enhancing Power System Transient Stability)

Abstract

:
For transient stability analysis of a multi-machine power system, the Extended Equal Area Criterion (EEAC) method applies the classic Equal Area Criterion (EAC) concept to an approximate One Machine Infinite Bus (OMIB) equivalent of the system to find the critical clearing angle. The system-critical clearing time can then be obtained by numerical integration of OMIB equations. The EEAC method was proposed in the 1980s and 1990s as a substitute for time-domain simulation for Transmission System Operators (TSOs) to provide fast, transient stability analysis with the limited computational power available those days. To ensure the secure operation of the power system, TSOs have to identify and prevent potential critical scenarios through offline analyses of a few dangerous ones. These days, due to increased uncertainties in electrical power systems, the number of these critical scenarios is increasing, substantially, calling for fast, transient stability analysis techniques once more. Among them, the EEAC is a unique approach that provides not only valuable information, but also a graphical representation of system dynamics. This paper revisits the EEAC but from a modern, functional point of view. First, the definition of the OMIB model of a multi-machine power system is redrawn in its general form. To achieve fast, transient stability analysis, EEAC relies on approximate models of the true OMIB model. These approximations are clarified, and the EAC concept is redefined with a general definition for instability, and its conditions. Based on the defined conditions and definitions, functions are developed for each EEAC building block, which are later put out together to provide a full-resolution, functional scheme. This functional scheme not only covers the previous literature on the subject, but also allows to introduce several possible new EEAC approaches and provides a detailed description of their implementation procedure. A number of approaches are applied to the French EHV network, and the approximations are examined.

1. Introduction

To ensure the secure operation of the power system, Transmission System Operators (TSOs) perform offline Transient Stability Analysis (TSA) for a few dangerous scenarios and design remedial actions for the critical ones, i.e., the ones with lower Critical Clearing Time (CCT) (CCT is the maximum fault elimination time without the system losing its capability to recover a normal operating condition [1]). The reference technique for TSA is time-domain simulation using numerical integration of the nonlinear differential equations representing the system dynamic model. Time-domain simulation is flexible, and it can consider a detailed model for almost any component of the power system. However, this detail comes at a cost, a high computational time. Moreover, the time-domain simulation cannot provide a direct indication of the CCT, thus the system equations should be solved for different fault elimination times to search for the critical time. In the early 20th century, this was very restricting, even for transient stability analysis of a Single Machine connected to an Infinite Bus (SMIB). This led to the development of another class of stability analysis techniques, the direct method.
As one of the most interesting direct methods, the Equal Area Criterion (EAC) was proposed in the 1930s and 1940s to assess the transient stability of the classical model of a SMIB system in a simple and comprehensive way without a formal solution to the system equations [2,3,4]. EAC was able to estimate the SMIB system Critical Clearing Angle (CCA) with negligible computational time. Once the CCA has been calculated, the CCT can be obtained by numerical integration of SMIB differential equations up to CCA.
EAC could provide a fast TSA and unique graphical representation of system dynamics. However, it was restricted to the classical model of a SMIB system. The idea of Extended Equal Area Criterion (EEAC) was proposed in the late 1980s. It relies on the observation that in loss of synchronism in a multi-machine power system, there is a separation between generators into two groups. The critical group with increasing rotor angles, and the non-critical group of remaining generators. EEAC replaces the generators of the two groups by a two-machine system and then by a One Machine Infinite Bus (OMIB) equivalent. It then applies the EAC concept to the OMIB equivalent model to estimate its CCA.
The first techniques in the area were proposed under two main assumptions [5,6,7,8]: (i) power system classical model is valid and (ii) the angles of machines within each of the groups are equal to the center of angle of the group. These assumptions lead to a time-invariant OMIB model on which the EAC can be applied. While a revised version of this method was proposed in [9], the fact is that the OMIB model in not time-invariant. To overcome this limitation, a piecewise time-variant method is proposed in [10,11]. Hybrid methods have been proposed in the following years, coupling a time-domain transient stability program with the equal-area criterion [12,13,14,15,16]. The other researches in the area are mainly on the advanced applications of the concept [17,18,19,20,21,22,23,24,25], and its extension to consider a more detailed generator model and the regulators [26,27], or to consider renewable generation units [28] and AC/DC systems [29]. The various approaches proposed differ in many respects, but they all rely on the same concept, the OMIB transformation.
These days, power systems are operating closer to their security limits and the uncertainties are increasing. Thus, the list of scenarios to study is increasing substantially. Therefore, though the recent significant reduction, time-domain simulation computational time is still restrictive for the growing list of case studies, calling for fast, transient stability analysis techniques once more. The EEAC, provides the possibility of a quick TSA, on a large number of case studies, to filter the list of critical contingencies. The limited list of critical contingencies can then be investigated in detail with time-domain simulations.
This paper revisits the EEAC with a modern functional point of view. In Section 2.1, it redraws the concept of the OMIB model of a multi-machine power system and presents the OMIB equations in their general form. The paper redefines the EAC concept in Section 2.2. In Section 2.3, it clarifies the approximations required for the OMIB equivalent of a multi-machine power system to enable fast TSA. It presents general definitions and conditions for first-swing and backward-swing instability in Section 2.4. As a prerequisite of EEAC, the proposed approaches for Critical Machines Identification (CMI) and Critical Cluster Formation (CCF) are described in Section 3. Section 4 details Taylor series for estimation of CCT from CCA. Each part is presented as a function with a detailed pseudocode. A general full-resolution scheme is then presented in Section 5 that discusses the possible combinations of the functions. It covers all the previous literature on the subject and introduces interesting possibilities for several new approaches. Finally, a number of the approaches are applied to two test systems to provide a detailed comparison.

2. Extended Equal Area Criterion

EAC relies on the concept of energy, and it coincides with the Lyapunov criterion using the Lyapunov function the energy type [30]. Briefly, it states that the SMIB system is stable (in the first-swing) if after the fault the rotor angle does not increase continuously; therefore, it reaches a maximum value and thereafter decreases. It can be shown that the variations of the SMIB system rotor angle δ , is linked to the area between its input mechanical power P m and output electrical power P e in δ P plane. As shown in Figure 1, the area has a positive portion for which P m > P e and a negative portion for which P m < P e . The first portion is linked to the energy gained during rotor acceleration, and the second portion is linked to the energy dissipated during rotor deceleration. If there is a δ m after which the sum of the areas between P m and P e becomes negative, the system is stable and at δ m the rotor angle starts to decrease. By increasing the fault elimination angle δ e , we reach an angle after which clearing the fault cannot maintain the system’s stability, i.e., the sum of the different areas is always positive and the rotor angle increases continuously. This critical angle is the CCA of the SMIB system. Once the CCA has been calculated, the CCT can be obtained by numerical integration of SMIB differential equations up to CCA.
For a multi-machine power system, the idea of EEAC was proposed in the late 1980s. It belongs to a class of transient stability analysis methods that rely on the OMIB equivalent model of the power system. The OMIB-based methods are based on the observation that the loss of synchronism of a multi-machine power system originates from the irrevocable separation of its synchronous generators into two groups: the Critical Cluster of generators (CC) which push the system towards instability, and the remaining Non-critical Cluster of generators (NC). These methods replace these two groups with a two-machine system and then with an OMIB equivalent [1]. This section presents the OMIB-equivalent general equations and discusses the approximations that let us estimate the CCA of the OMIB model quickly and without a formal solution of its equations.

2.1. One-Machine Infinite Bus Concept and General Formulation

The OMIB can be considered as an approximate transformation of the multidimensional state-space of multi-machine power system dynamics to a lower dimension space. Based on the transformation approach, the resultant OMIB model can be a ‘time-invariant’ or ‘time-variant’ equivalent of the power system. Time-invariant OMIB assumes that the generators within each of the CR and NC groups are coherent. This transformation freezes the relative angles of generators within each group at the fault instant for the during-fault and the post-fault periods. Time-variant OMIB updates the relative angle of generators in each group with respect to each other. The update can be done by estimating the generator angles with simplified models, detailed time-domain simulation, or field measurements. Despite the techniques employed for the transformation, all OMIB-based methods rely on Conjecture 1, given below [1] (Note that the system loses synchronism as soon as the first major generators’ separation occurs. The conjecture needs to be valid until the OMIB loses its stability, and the generators within each of the CC and NC groups may split subsequently into subgroups):
Conjecture 1.
Loss of synchronism in a power system originates from the separation of its generators into two groups:
  •    The critical generators responsible for the loss of synchronism
  •    The non-critical generators
The transient stability behaviour of a multi-machine system may be inferred from that of an OMIB properly derived from the above decomposition pattern into two groups.
The OMIB transformation involves the aggregation of the generators of the NC and CC and the replacement of the two by an OMIB. The same reasoning that is used in mechanics to introduce the concept of center of mass can be invoked for the definition of a Center of Angle (COA) in a multi-machine power system. The COA δ c e can be defined as the inertia weighted average of generator rotor angles [31]:
δ c e = 1 M T j = 1 n M i δ i
where M i and δ i are the inertia coefficient and the rotor angle of generator i, n is the number of generators, and M T is the total inertia of the system:
M T = i = 1 n M i
With generators’ separation to C R and N C sets, the Partial COA (PCOA) of each group can be defined as follows:
δ c r = 1 M c r k C C M k δ k δ n c = 1 M n c l N C M l δ l
where M c r and M n c represent the total inertia of the critical group and the non-critical group, respectively:
M c r = k C C M k
M n c = l N C M l
Ignoring the generators’ damping, for each generator of the critical set, the generator dynamics can be described in the form of the following swing equation:
M k ω 0 d 2 δ k d t 2 = P m k P e k k C C
where P m denotes the mechanical power, P e is the electrical output power, and ω 0 = 2 π f 0 .
With summation over set C R equations:
k C C ( M k ω 0 d 2 δ k d t 2 ) = k C C P m k k C C P e k
Considering Equation (2), we can rewrite this equation in the following form:
M c r ω 0 d 2 δ c r d t 2 = k C C P m k k C C P e k
Similarly, with summation over set N C swing equations we have:
M n c ω 0 d 2 δ n c d t 2 = l N C P m l l N C P e l
Dividing both sides of Equations (5) and (6) by M c r and M n c , respectively, and subtracting them we get:
1 ω 0 ( d 2 δ c r d t 2 d 2 δ n c d t 2 ) = k C C P m k k C C P e k M c r l N C P m l l N C P e l M n c
To derive the OMIB model, we define the OMIB angle δ as follows:
δ = δ c r δ n c
Multiplying both sides of Equation (7) by M = M c r M n c M T we reach to the OMIB model of a multi-machine power system:
M ω 0 d 2 δ d t 2 = P m P e
where:
P m = M n c k C C P m k M c r l N C P m l M T
P e = M n c k C C P e k M c r l N C P e l M T
The OMIB stability can be inferred from Conjecture 2, given below:
Conjecture 2.
An OMIB is first-swing unstable, if after fault inception its angle increases continuously with time. The OMIB CCA, if it exists, is the smallest fault elimination angle after which clearing the fault cannot maintain system stability.

2.2. Extended Equal Area Criterion Concept

Let us consider a simple four-machine power system shown in Figure 2. For a short-circuit fault in one of the transmission lines, the variations of generator angles with time can be obtained using time-domain simulation, based on which one can judge the system transient stability. For example, Figure 3 shows the angle variations of the four machines for two different fault elimination times. The solid lines show the trajectories when the fault is successfully cleared at fault elimination time t e 1 , and the generator angles recover towards stability. The dashed lines show the trajectories for a slightly larger fault elimination time t e 2 , after which the generator angles diverge continuously, and the system losses its transient stability.
The main idea behind the EEAC is to apply the classic EAC concept to the OMIB equivalent of a multi-machine power system. Multiplying both sides of the swing equation of Equation (9) by 2 d δ / d t and integrating we get:
M ω 0 ( d δ d t ) 2 = 2 δ 0 δ ( P m P e ) d δ
where δ 0 is the OMIB equivalent initial pre-fault angle.
The above equation shows that the OMIB angle variation is linked to the area between P m and P e . Consider Figure 4, which shows the δ P and t δ curves for the OMIB equivalent of detailed model of the four-machine power system, when the fault is initiated at t = 0 and corresponding δ 0 , and cleared at t e 1 . The curves are obtained from time-domain simulation results using OMIB equations in their general form. After the fault, δ starts to increase. Based on Equation (9), as at the initial instant of the fault P m > P e , the change of δ in t δ plane is concave-up (the rate of change increases). At t e 1 and corresponding δ e 1 , the fault is eliminated. A short moment after fault elimination, P m < P e and the curve in t δ plane becomes concave-down ( δ is still increasing, but the rate of change is decreasing). The OMIB angle δ will continue increasing until d δ / d t in Equation (12) becomes zero, i.e., the area between P m and P e becomes zero.
As shown, the area can be divided to two portions. The positive area is where P m > P e and the OMIB acceleration in Equation (9) is positive. The negative area is where P m < P e and the acceleration is negative. As shown, the negative area does not necessarily start after fault elimination. If, as in Figure 4, there is a δ m after which the sum of the areas between P m and P e becomes negative, the system is first-swing stable. The δ m at which the sum of the areas becomes zero and δ starts to decrease is the return angle δ r .
Figure 5 shows the δ P and t δ curves for the same scenario, but with a slightly larger fault elimination time t e 2 . Similar to the previous case, a short moment after fault elimination, P m < P e and the variations in t δ plane becomes concave-down, i.e., OMIB decelerates. However, a δ m cannot be found after which the area becomes negative. Therefore, δ increases and reaches δ u at time t u . After this point, P m > P e , the OMIB starts to accelerate again, δ increases continuously, and the system loses its first-swing stability.
It might occur that at the initial instant of the fault P m is lower than P e . In this case, δ will start to decrease. Based on Equation (9), as P m < P e following the fault, the change of δ in t δ plane will be concave-down. At the point where P e becomes lower than P m , due to fault elimination, decreased electrical power, or increased mechanical power, the variations of δ become concave-up, but it will decrease until an angle δ m is reached, at which d δ / d t in Equation (12) becomes zero. If there cannot be a δ m which satisfies this condition, δ will decrease continuously and the system will be ‘backward-swing unstable’.
The EEAC method relies on the general swing equation of Equation (9) in conjunction with the traditional EAC concept to provide fast transient stability assessment. In this equation, P m can be calculated by substituting the mechanical powers of synchronous generators of critical and non-critical sets in Equation (10). Without considering the governor controls, P m is a known parameter equal to its pre-fault value. However, P e in Equation (11) depends on the electrical power of synchronous generators, which are functions of their variable angles.
Let us consider Figure 3 which shows the angle trajectories of the four-machine power system subjected to a short-circuit fault and cleared at two different elimination times. It can be seen that for any time instant of the during-fault period, trajectories of generator angles are similar for different t e . However, for the post-fault period, they depend on t e . In other words, with an exact simulator of the system, for each generator, and for the during-fault period, we can calculate the trajectory of its angle with respect to time. However, for a post-fault period the trajectory depends on δ e , and thus on t e .
Let us consider the OMIB δ P curves in Figure 6 plotted for the same fault scenario and the two different fault elimination times. For the during-fault period, as the variation of each generator angle with respect to time can be defined uniquely, the variations of the electrical power of each generator with respect to time can be uniquely defined. Therefore, as shown, the δ P curves for different t e coincide in the during-fault period. However, for a post-fault period, the variations of each generator angle with respect to time depend on t e . Therefore, the variations of the OMIB P e with δ depend on the fault elimination time. Consequently, as shown, for the post-fault period the δ P curves are different and dependent on δ e .
The problem is that we intend to apply the EAC on the OMIB model to find the critical clearing angle, as the smallest δ e after which the area between P m and P e is always negative. However, the post-fault P e of the OMIB model is uncertain and dependent on δ e . Therefore, the area itself depends on δ e . The scientific question here is how to find the critical clearing angle using uncertain δ P curves which are dependent on the clearing angle.
In response to this question, an approach could be to obtain δ c iteratively. Using hybrid EAC and time-domain techniques, such as Single-Machine Equivalent (SIME), δ c can be obtained iteratively by examining different clearing times. SIME uses a generalized OMIB model and infers its parameters from the multi-machine temporal data. These data can be obtained either from time-domain transient stability simulations (Preventive SIME) or from real-time measurements (Emergency SIME) [1].
However accurate, the iterative approach may not satisfy the computation speed requirements for fast TSA. Therefore, some approximation in OMIB equations is proposed which enable the direct and rapid estimation of CCA.

2.3. Approximations for Rapid Estimation of CCA

All OMIB-based transient stability analysis methods rely on the observation that the loss of synchronism involves the irrevocable separation of generators into two groups: critical generators and non-critical generators [1]. Among the general class, the ones which are able to provide a direct estimation of the CCA are all based on some assumptions and approximations. As the first and common assumption, these approaches model the synchronous generators as a constant voltage behind the transient reactance, as shown in Figure 7.
To discuss the further assumptions, let us consider that for each critical generator δ i = δ c r + ξ i , and for each non-critical generator δ j = δ n c + ξ j , where ξ i and ξ j show the angular offset of each generator in set C R and N C from their respective PCOA δ c r and δ n c . As described in Appendix A, by considering the classical model of synchronous generators, the equation for OMIB electrical power becomes:
P e O M I B = M n c M T k C C i C C [ g k i c o s ( ξ k ξ i ) + b k i s i n ( ξ k ξ i ) ] M c r M T l N C j N C [ g l j c o s ( ξ l ξ j ) + b l j s i n ( ξ l ξ j ) ] + M n c M c r M T k C C j N C [ g k j c o s ( δ + ξ k ξ j ) ] + k C C j N C [ b k j s i n ( δ + ξ k ξ j ) ]
where g i j = E i E j G i j and b i j = E i E j B i j , E i is the constant voltage behind direct axis transient reactance in the classical model of generator i, and B i j and G i j are the real and imaginary parts of the element of row i and column j of the admittance matrix reduced to synchronous generator internal nodes.
The first approximate technique for rapid estimation of CCA assumes that for all generators ξ k and ξ l are zero, which means that the δ i of each generator is equal to its corresponding PCOA [6,7,9]. In this paper, this approach is referred to as Zero Offset OMIB (ZOOMIB). As described in Appendix A, with this assumption, the post-fault electrical power in Equation (13) becomes purely sinusoidal and is no longer dependent on δ e :
P e O M I B = P C + P m a x s i n ( δ v )
where, as discussed in Appendix A, P C , P m a x , and v are constant values for the ZOOMIB model.
As a second approximation approach, instead of using PCOA for all generators, it is possible to assume that the angle offsets are constant and equal to their pre-fault values. In this paper, this approach is referred to as Constant Offset OMIB (COOMIB). As described in Appendix A, similar to considering zero offsets, also with this assumption, the post-fault electrical power in Equation (13) becomes purely sinusoidal, independent of δ e and in the form of Equation (14).
ZOOMIB and COOMIB are both time-invariant models which freeze the generator angle offsets at the fault inception instant. However, the fact is that the angle offsets are not constant. In response to this limitation, a piecewise time-variant method is proposed in [10,11]. This approach, usually referred to as Dynamic OMIB (DOMIB), first makes an initial estimation of δ c and δ u . It then specifies some points between δ 0 and δ u , and simulates the generator angle trajectories by individual Taylor series described in Appendix C.2. Having the generator angles at each point, DOMIB updates the angle offsets and it considers an updated curve with constant offsets between the points. As shown in Figure 8, this approach leads to a piecewise sinusoidal δ P curve.
The most interesting point about the time-invariant and piecewise time-variant approaches is that the assumption of zero or constant ξ i values makes the post-fault P e of the OMIB model independent of δ e . Therefore, the variations of post-fault P e with δ can be defined uniquely. The merit is that EAC can be applied on the unique δ P curves to obtain the critical clearing angle. Table 1 compares the assumptions and approximations of different methods based on the OMIB equivalent.
With the sinusoidal P e in Equation (14), the area between P m and P e among an initial angle δ i and a final angle δ f can be obtained as follows:
A = P m P c ( δ f δ i ) + P m a x [ c o s ( δ f v ) c o s ( δ i v ) ]

2.4. Definition and Conditions of OMIB Stability

This section presents definitions and conditions for OMIB stability, that are based on three main assumptions: (1) generators’ separation to critical and non-critical groups, (2) independence of the post-fault OMIB equivalent electrical power of the clearing time, and (3) for any δ there is only one possible value for P e and P m . These definitions and conditions provide a basis for defining a general function for CCA calculation.
Definition 1
(first-swing instability). An OMIB is first-swing unstable if and only if after fault inception its angle increases continuously with time.
Definition 2
(conditions for critical clearing angle for first-swing instability). Let δ be the angle of the OMIB equivalent of a power system. After a fault, the critical clearing angle δ c is the angle that satisfies the following conditions:
A D ( δ 0 , δ ) > 0 δ [ δ 0 , δ c ]
A D ( δ 0 , δ c + ε δ ) + A P ( δ c + ε δ , δ ) > 0 δ [ δ c + ε δ , δ m a x ]
δ c δ c δ m [ δ c , δ m a x ] A D ( δ 0 , δ c ) + A P ( δ c , δ m ) 0
where A D and A P are the area between P m and during or post-fault P e , and ε δ denotes a very small positive angle increment.
The condition in Equation (16) checks the attainability of δ c . The condition in Equation (17) states that by clearing the fault at δ c + ε δ , d δ / d t will remain positive for any δ above δ c , i.e., continuously increasing angle. The condition of Equation (18) states that for clearing angles less than or equal to δ c , the system remains stable.
Definition 3
(backward-swing instability). An OMIB is backward-swing unstable if and only if after fault inception its angle decreases continuously with time.
Definition 4
(conditions for critical clearing angle for backward-swing instability). Let δ be the angle of the OMIB equivalent of a power system. After a fault, the critical clearing angle δ c is the angle that satisfies the following conditions:
A D ( δ , δ 0 ) < 0 δ [ δ c , δ 0 ]
A D ( δ c ε δ , δ 0 ) + A P ( δ , δ c ε δ ) < 0 δ [ δ m i n , δ c ε δ ]
δ c δ c δ m [ δ m i n , δ c ] A D ( δ c , δ 0 ) + A P ( δ m , δ c ) 0
In this case, the direction of angle variations is backward. The condition in Equation (19) checks the attainability of δ c . The condition in Equation (20) states that by clearing the fault at δ c ε δ , d δ / d t will remain negative for any δ below δ c , i.e., continuously decreasing angle. The condition in Equation (21) states that for clearing angles greater than or equal to δ c the system remains stable.
Theorem 1
(equivalency of first-swing instability and negative backward-swing instability). Let OMIB denote a one machine infinite node equivalent of a power system and let OMIB denote an OMIB at which the signs of electrical power, mechanical power, and angles are negated. The OMIB model of the power system is backward-swing unstable, if and only if the OMIB model is first-swing unstable. The critical clearing angle for the OMIB is equal to the negative of the equivalent OMIB critical clearing angle.
Proof of Theorem. 
Considering that A ( δ a , δ b ) = A ( δ b , δ a ) , by negating the signs of electrical power, mechanical power and angles in the conditions of Definition 2 for the critical clearing angle of a first-swing unstable OMIB we get:
A D ( δ , δ 0 ) < 0 δ [ δ c , δ 0 ]
A D ( δ c ε δ , δ 0 ) + A P ( δ , δ c ε δ ) < 0 δ [ δ m a x , δ c ε δ ]
δ c δ c δ m [ δ m a x , δ c ] A D ( δ c , δ 0 ) + A P ( δ m , δ c ) 0
These equations represent the conditions for the critical clearing angle of a first-swing unstable OMIB . Considering δ m i n = δ m a x , the above conditions are equivalent to the conditions of Definition 4 for the critical clearing angle of a backward-swing unstable OMIB. Therefore, the critical clearing angle for the first-swing stability of OMIB is equal to the negative of the critical clearing angle for the backward-swing stability of OMIB. □

2.5. The EEAC Functions

In previous sections, we discussed the concept of EEAC, OMIB general equations, and approximations that enable one to have uniquely defined P e and P m curves for all δ . We also presented general definitions and conditions for OMIB stability.
Two basic functions are required for OMIB stability evaluation. The first function, as shown in Figure 9, takes the C C , N C , the reduced system admittance matrix, and the synchronous generators’ data to calculate the OMIB model based on the specified type (ZOOMIB, COOMIB, or DOMIB). The output of this function is the OMIB inertia coefficient, P m and P e defined by P c , P m a x , and v as in Equation (14). For DOMIB, the constants defining P e will be different for each interval. The function should be called to form the pre-fault, during-fault, and post-fault OMIB equivalents when required. A pseudocode is presented in Appendix B, Algorithm A1, which details the process of the OMIB function.
The second main function is a function using the conditions presented in the previous section to find the CCA of the developed OMIB models. As shown in Figure 10, this function takes the during-fault and pre-fault OMIB models as inputs. It also requires two input parameters: the angle step size Δ δ and the maximum integration limit δ m a x . The idea is to start at the OMIB initial angle δ 0 and to increase the fault elimination angle by an angle increment Δ δ to find δ c as the smallest fault elimination angle after which for any δ m δ m a x the area between P e and P m is positive.
There are some exceptional cases that should be considered to avoid unreasonable results. The first case might happen when the maximum post-fault electrical power is less than the OMIB mechanical power P m . In such a case, the area between P m and P e is always positive and the system is unstable. Even if the maximum post-fault electrical power is more than P m , there might be other situations where the system is always unstable. As shown in Figure 11a, the area between P m and P e might be such that even for δ c = δ 0 it is always positive. Another exceptional case might happen for less severe disturbances, where the maximum during-fault electrical power is much more than P m . In such cases, shown in Figure 11b, the system will remain stable even without removing the fault.
The function should be able to handle such cases and also backward-swing instability. It outputs the direction of angular deviations, ‘first-swing’ or ‘backward-swing’; the type of the case detected, ‘always stable case’, ‘always unstable case’, or ‘potentially stable case’; and the critical clearing angle. A pseudocode is presented in Appendix B, Algorithm A2, which details the process of CCA function.

3. Critical Machines Identification and Critical Cluster Formation

In a multi-machine power system, transient stability phenomena are governed by the critical machines, i.e., the set of machines responsible for the loss of synchronism following a large disturbance. Up to now, we have assumed that the critical cluster CC and the non-critical cluster NC are known. However, identification of the CC is one of the first steps of the EEAC algorithm and a prerequisite of OMIB equivalent model formation. Different OMIB equivalents can be formed for different possible sets of CC and NC. The true sets of CC and NC will be the ones with the smallest CCT. The reasoning behind this is that adding any critical machine of the true CC to the true NC, or adding any non-critical machine of the true NC to the true CC, will lead to slower OMIB dynamics, i.e., higher CCT.
For a power system with n generators, the true CC can be identified by examining all possible combinations of n generators, i.e., 2 n 1 candidates to find the ones with the smallest CCT. This exhaustive process would, however, be computationally demanding. The other solution is to find of a limited list of candidate critical generators in a CMI process. Then, in a CCF process, different pairs of CC and NC can be formed. An OMIB equivalent should be formed for each pair. The OMIB with the smallest CCT corresponds to the true pair of CC and NC. The next subsections present different methods for CCI and CCF.

3.1. Critical Machines Identification

All the techniques proposed for CMI are designed to provide a ranked list of critical machines to limit the number of possible combinations. Some are based on indices which rank the list of machines based on a criterion calculated for the fault inception time. Some others are based on a pre-estimation of CCT, to obtain the generators’ t δ trajectories, and to rank them based on their estimated rotor angles at an appropriate time after fault inception.

3.1.1. Acceleration Criterion

In the earlier stages of the EEAC development, the first approach for CMI was based on the initial accelerations the generators acquire at the disturbance inception [6,7,9]. According to this so-called “accelerations criterion”, generators likely to be critical were considered to be those with the largest initial accelerations. For a given contingency, this approach first ranks the generators in a decreasing order of their initial accelerations calculated using Equation (A32) immediately following the fault inception.
Despite the encouraging results of this approach, the studies revealed difficulties of two types [9]. First, c m needs to be limited to avoid computational intractability. This may lead to unacceptable results for stability cases involving several critical generators. Second, it may happen that some generators not appearing at the top of the initial acceleration list experience considerable variations in their rotor angles after clearing the fault and eventually become unstable. In such cases, the initial acceleration criterion is not valid.

3.1.2. Composite Criterion

To improve the acceleration criterion, the “composite criterion” is proposed in [9]. The “composite criterion” relies on the initial accelerations together with the generators’ pre-fault electrical distance to the fault to better identify the critical generators. It also considers the post-fault electrical distance of the generators to the fault to obtain a sense of the post-fault network.
To define it in the form of a criterion to rank the generators, for each generator k we can write:
C C k = γ k | t = 0 + d i s t p r e k + d i s t p o s t k
where γ k | t = 0 + is generator k initial acceleration, and d i s t p r e k and d i s t p o s t k denote the pre- and post-fault electrical distances to the fault bus f, calculated as follows:
d i s t k = z k k + z f f 2 z k f
where z i j is the magnitude of the element of row i and column j of non-reduced system impedance matrix Z ^ .
The composite criterion was shown to perform better than the acceleration criterion in ranking the generators [9]. Nevertheless, it requires inversion of the bus admittance matrix to find Z ^ and to calculate the electrical distances. Moreover, calculation of electrical distance would be problematic when network splitting happens after fault clearance.

3.1.3. Trajectory Criterion

The trajectory criterion is proposed in [10,11] to rank the generators in order of their criticality. It is conjectured that the degree of criticality of a given generator is directly proportional to the magnitude of its rotor angle observed at an appropriate instant of time, in its evolution along an appropriate trajectory. The appropriate trajectory is a near-critically cleared one, i.e., cleared at a time nearly above the actual CCT, and the appropriate observation time is defined as the time to reach the unstable equilibrium point of the OMIB equivalent of the power system.
The estimation of the generators’ appropriate trajectory can be obtained by numerical integration. In [10,11], however, the Taylor series is employed as a quick substitute. Having an initial estimation of the CCT and the observation time, the trajectories can be obtained using individual Taylor series detailed in the Appendix C.

3.2. Critical Cluster Formation

The CMI gives a ranked list of critical machines. The aim of CCF is to form different combinations of CC and NC. The combinations should be later evaluated to identify the true combination of the clusters. Different techniques are proposed to form the clusters. A simple approach is to consider all possible combinations of critical machines as possible CCs [6,8,9]. A more efficient technique is presented in [10]. This technique selects c m candidate CCs composed of the first from the top, the first two from the top, , up to all c m machines in the CC set.

3.3. CMI and CCF Functions

Three methods are discussed for CMI. As shown in Figure 12, for the acceleration criterion, the CMI function inputs the synchronous generators’ data, their initial angle, and the during-fault system admittance matrix to provide a ranked list of generators based on calculated initial accelerations. For the composite criterion, the function also needs the pre-fault and post-fault system admittance matrix and the index of the fault bus (for line faults a virtual node should be added at the fault location) in the matrices to calculate the distances in Equation (26). For trajectory criterion, the reduced post-fault system admittance matrix, the fault elimination time, and the observation time are required. The individual Taylor series is employed to obtain the generators’ angle trajectory and to rank them based on their angles at the observation time. In this paper, the observation time is defined as the time to reach the OMIB return angle. After ranking the generators with any of the criteria, the generators which are close to the top generator based on a predefined threshold are selected as critical ones and are outputted as a ranked list. A pseudocode is presented in Appendix B, Algorithm A6, which details the process of the CMI function.
The CCF function, as shown in Figure 13, receives the ranked list of the critical generators and forms different candidate pairs of CC and NC. A pseudocode is presented in Appendix B, Algorithm A7, presenting one simple method, among others, for CCF.

4. Integration

The EAC, despite all the information it provides, cannot directly give an indication of CCT which is of interest in transient stability studies. The CCT may be assessed by integrating the dynamics of the OMIB up to the point where it reaches CCA. In principle any numerical integration algorithm can be used. In [5,6,7,8,9,10], however, the Taylor series is employed as a handy and quick substitute for numerical integration. In the context of EAC-based methods, the Taylor series expansion can be applied to the OMIB equivalent of a power system, or to an individual generator to obtain its rotor angle evolution with time. The equations and the process of the Taylor series is presented in Appendix C.
As shown in Figure 14 and Figure 15, despite the integration techniques employed, two main functions are required. The angle-to-time function inputs the OMIB equivalent model, the initial angle, the initial angular speed, and a desired angle (e.g., the CCA). It integrates the OMIB equations interval by interval to find the time and angular speed associated to the desired angle. The pseudocodes presented in Appendix B, Algorithms A8 and A9, present the details of this process with the Taylor series. As discussed in [9], for large departures of the desired angle from the initial angle, the Taylor series estimation may be inaccurate or may fail to give a result.
The Trajectory function, inputs the generators’ data, their initial angle, during-fault and post-fault reduced system admittance matrices, the fault elimination time, and the desired final time of an individual generator’s angle trajectory. It also receives the desired number of during-fault and post-fault intervals as input parameters. The function specifies some time instants based on the number of intervals and the time spans. It then calculates each individual generator’s angle and angular speed interval by interval to reach the desired final time. The outputs will be the time instants, and the generator’s angle and angular speed at each time. The pseudocodes presented in Appendix B, Algorithms A10 and A11, detail this process with Taylor series.

5. Combining Algorithms for a Full-Resolution Scheme

The functions presented in the previous sections can be combined in different ways to provide an estimation of the CCT. The main functions include CCF and CMI, which can be based on acceleration, composite or trajectory criteria; OMIB which can be of type ZOOMIB, COOMIB, or DOMIB; CCA to estimate the critical clearing angle of the OMIB; angle-to-time to find the time corresponding to an OMIB angle; and Trajectory to find the trajectory of generator angles in time. These functions provide an insight to rethink the schemes proposed in previous literature, and to think of new schemes for direct CCT estimation.
The first step for any TSA technique is the preparation of the synchronous generators and the network data, and the formation and reduction of admittance matrices for pre-fault, during-fault, and post-fault states. EEAC relies on the classical model of the power system. Synchronous generators will be modeled with the classical model, and the admittance matrices include the loads and the generators’ direct axis transient reactance. Admittance matrix reduction can be done by Kron method considering that all the nodes have zero injection currents except the internal nodes of synchronous generators.
The first and the simplest EEAC scheme that was proposed in [5,6,8] is as presented in Figure 16. The types are mentioned within green parenthesis, while the variable parameters are shown within red parenthesis. The pseudocodes presented in Appendix B, Algorithm A12, present the details of the basic-eeac scheme.
The scheme starts by identifying the critical machines (Here, the CMI is done with acceleration criterion, but it can also be done with composite criterion) and forming a set of CCs and a set of NCs. It then evaluates each pair of CC and NC. For each pair, it first forms the pre-fault, during-fault, and post-fault OMIB equivalents (Here, the OMIB models are derived with ZOOMIB assumptions, but they can also be derived with COOMIB assumptions). Having the OMIB equivalents defined, the CCA function is applied to find the CCA of the pair under consideration. Then, the CCT is calculated as the time to reach the CCA. After repeating these steps for each pair, the true CC and true NC are identified as the ones with minimum CCT. The algorithm finally returns the CCT, the identified clusters, the CCA and the angular speed, and the observation time as the time to reach the return angle δ r from δ 0 and may later be used for subsequent calculations.
When an estimation of the CCT is made with the basic-eeac, the estimation can be improved in many ways. One approach can be as shown in Figure 17. Having a first estimation of CCT and observation time, the Trajectory function can be used to estimate the individual generator’s angles for d during-fault and p post-fault intervals within δ 0 to δ m a x . With these estimated angles, the OMIB function can be recalled to make a better estimation of the OMIB equivalent model with DOMIB model assumptions. Then, the CCA function can be applied to the updated OMIB model to estimate the CCA, and the angle-to-time function can be employed to calculate the refined CCT.
The above refinement process just re-estimates the CCT and does not update the estimate of the CC and NC. The second refinement process shown in Figure 18 uses the calculated CCT to find the individual generator angle trajectories and to rank them based on their angles at the estimated observation time. It then runs the CCF function to form a set of CCs and a set of NCs, and evaluates each pair of CC and NC. For each pair, it first forms the pre-fault, during-fault, and post-fault DOMIB equivalents. The CCA and angle-to-time functions are then applied to estimate the CCT for each pair. Finally, the pair with the minimum CCT is identified as the true pair (Here, the OMIB models are derived with DOMIB assumptions, but they can also be derived with ZOOMIB or COOMIB assumptions).
Figure 19 shows a more sophisticated scheme. This scheme was proposed in [10]. Similar to the second refinement scheme, this scheme relies on the ‘trajectory’ CCI. However, for each pair of the CC and NC, it first forms a ZOOMIB equivalent, applies the angle-to-time function, and obtains the generator angle trajectories. It then forms a DOMIB equivalent model using the obtained trajectories, applies the CCA function on the model, and calculates the CCT corresponding to each obtained CCA. Finally, the pair with the smallest CCT is identified as true CC and NC. The pseudocodes presented in Appendix B, Algorithm A13, present the details of the third refinement scheme. The pseudocodes of the other refinement schemes are simplified versions of this scheme and are not presented.
The interesting point about this functional point of view of the EEAC is that the output of the basic-eeac is identical to the inputs and outputs of all three refinement schemes discussed. Therefore, as shown in Figure 20, these schemes can be repeated after each other to achieve the desired accuracy. As shown, after running the basic-scheme or each of the refinement functions, it is possible to terminate the calculations and output the estimated CCT and CC. We define each path from the input to the outputs as a branch. As ZOOMIB and COOMIB equivalents, and acceleration and composite CCIs can be used interchangeably, there are four possible combinations and thus four variants for each branch in Figure 20. Each branch has a different computational time which is a function of the system scale, the short-circuit scenario, and the chosen values for parameters. The parameters of each branch can be optimized to achieve the best performance in terms of CCT estimation accuracy and the computational time.

6. Simulation Studies and Discussions

This section presents the results for the application of the EEAC method on two test systems. The first is the four-machine system discussed before. The second is the French EHV power system with more than 400 synchronous machines, 2900 transmission lines, and 8800 transformers. Applying the EEAC on the four-machine system helps to investigate its approximations in detail, while studies of the French network helps to evaluate its performance for a real-life, large-scale network. For both test systems, the EEAC results are compared against time-domain simulations.

6.1. Four-Machine System

The considered scenario for the first test system, shown in Figure 2, is a three-phase short-circuit fault at one of the transmission lines, which is cleared by opening the line circuit breakers. As shown in Figure 3, for this case study, there is a clear separation between the NC generators and CC generators with increasing angles. A correct estimation of CC and NC allows us to evaluate the effect of assumptions of OMIB equivalent models, and also the effect of considering the classical model for synchronous generators.
To evaluate the assumptions, Figure 21 represents the δ P curves obtained with ZOOMIB- and DOMIB-equivalent models. The curves are compared against the δ P curves obtained from the time-domain simulation results, with the classical model for synchronous machines, and with the detailed model with regulators, i.e., speed governor and automatic voltage regulator. For time-domain simulation results, the angles and powers are obtained using Equations (8), (10), and (11).
As can be seen, the OMIB δ P curve obtained with ZOOMIB assumptions is close to simulation results with the classical model. However, the modified piecewise curves obtained with DOMIB assumptions are much closer. As all the approximate OMIB equivalent models are based on the classical model of synchronous generators, the results they provide do not necessarily match the result obtained with the detailed model with regulators. However, the estimations of CCA are still close.
To better highlight the differences in estimations, Table 2 compares the CCT and CCA values obtained with different OMIB model assumptions against the values obtained from time-domain simulations. The Taylor series is employed to estimate the CCTs with the OMIB equivalents. In comparison with the results obtained with the classical model, the results obtained with ZOOMIB and COOMIB assumptions are acceptable. There is a clear improvement in the results obtained with DOMIB assumptions, and they are close to the classical model results. By considering a detailed model in simulations, the estimation errors increase; however, the DOMID still performs better.

6.2. French Network

This section briefly discusses the results of several fault scenarios considered in the French network. The considered scenarios are three-phase short-circuit faults on transmission lines, on bus-bars or on transformers. The French network covers several voltage levels. The faults are applied at different locations of the network, some close to large power plants on 400 kV, others on 225 kV portions of the network. The model considered for synchronous machines is a detailed model with regulators.
As discussed in Section 5, the functions presented in the previous sections can be combined in different ways to provide an estimation of the CCT. For each fault scenario, four of the possible schemes are examined, the basic scheme shown in Figure 16, and the basic scheme followed by the refinement schemes shown in Figure 17, Figure 18 and Figure 19. The pseudocodes of these schemes are presented in Appendix B. For the basic scheme, the acceleration criterion is used for CMI. The scheme is evaluated with ZOOMIB and COOMIB assumptions.
The results are obtained by considering certain default values for parameters. However, the parameters can be optimized to find more accurate results. The considered values for angle step size Δ δ and maximum integration limit δ m a x are 0.1 and 360 degrees, respectively. Five intervals are considered for each of the during-fault and post-fault periods, and 50% is considered as the threshold for CMI.
The error in CCT calculation is calculated as follows:
E r r o r = C C T a C C T e C C T a × 100
where C C T e and C C T a are the estimated CCT with EEAC and Taylor series, and the actual CCT obtained from the time-domain simulations, respectively.
Table 3 compares the CCT values obtained with time-domain simulations against the basic scheme with ZOOMIB and COOMIB assumptions. Table 4 compares the CCT values obtained with time-domain simulations against the refined schemes for the same fault scenarios. As discussed in Section 2.5, there are some exceptional cases that should be considered to avoid unrealistic results. In both tables, ‘stable’ denotes the detection of an ‘always stable’ case, and ‘unstable’ denotes the detection of an ‘always unstable’ case (see Figure 11). For each of the considered case studies, the error percentage ( E r r o r ) is calculated using Equation (27). Figure 22 and Figure 23 compare the number of cases in each E r r o r interval.
It is better for TSO to be more conservative and have an estimated CCT lower than the actual CCT, than having higher values. In other words, the TSO prefers to have a positive E r r o r rather than a negative E r r o r . As can be seen in the tables and the figures, with the basic scheme and ZOOMIB model assumptions, the errors are mainly positive, while with COOMIB assumptions fewer cases have a high negative E r r o r . The refined schemes produce more accurate results for some fault scenarios. However, as discussed, the use of DOMIB assumptions modifies the estimation towards the classical model and the results are not necessarily close to the results obtained with the detailed model. On average, the basic scheme with ZOOMIB assumptions has better estimations than the other schemes. The first and third refined scheme decrease the maximum error, but all refined schemes have a larger error on average. Moreover, for more cases they detect an exception and do not provide a result.
The results show that a more complicated scheme does not necessarily provide more accurate results, while it might involve more computational time. For the case studies considered, the average computation time for basic schemes with ZOOMIB or COOMIB assumptions was around 30 s, while it was around 45, 70, and 100 s for the first, second, and third refined schemes, respectively. Moreover, the basic scheme does not identify any scenario as stable, thus less risk for the TSO.

7. Conclusions

These days, due to increased uncertainties in electrical power systems, there are an increasing number of transient stability scenarios that are of concern. Therefore, TSOs need fast TSA techniques to filter the scenarios and to identify the critical ones with lower CCT for detailed analysis. EEAC was proposed in the late 1980s as a promising and fast TSA method. However, despite the encouraging results and approaches presented through several papers, it was difficult to obtain a synthetic view of the key building blocks upon which the EEAC was built. This paper has revisited the EEAC from scratch. It has presented its very basic concept, the detailed equations, and the idea behind the approximations for fast TSA. New definitions and conditions have been defined for approximate models forward swing and backward swing stabilities. Based on these definitions and conditions, functions were developed for each EEAC building block, together with detailed pseudocodes. The idea was to propose a general full-resolution functional scheme that not only covers all the previous literature on the subject, but also introduces interesting possibilities for several new approaches.
Our studies show that the accuracy of the EEAC, though acceptable, depends on the selection of the sequence of functions and parameters. Once the optimal sequence of functions and parameters has been identified, the EEAC can serve as an effective tool for contingency filtering. It had reduced the time required for the analysis of a fault scenario in the French network from around 15 minutes for time-domain simulation to just a few seconds. However, further studies are required to design result quality indicators to tag cases where EEAC may not perform well. Moreover, the EEAC equations should be developed to consider non-synchronous generation units (e.g., windfarms) and HVDC links.

Author Contributions

Conceptualization, A.B., D.E. and Y.V.; Methodology, A.B., D.E. and Y.V.; Software, Y.V,; Validation, A.B., Y.V. and C.P.; Formal analysis, A.B., Y.V. and C.P.; Investigation, A.B., Y.V., C.P. and Q.G.; Resources, C.P. and P.P.; Data curation, Y.V., C. Pache and Q. Gemine; Writing—original draft preparation, A.B. and D.E.; Writing—review and editing, A.B., D.E. and C.P.; Visualization, A.B., Y.V. and C.P.; Supervision, D.E., Q.G., C.P. and P.P.; Project administration, D.E., Q.G., C.P. and P.P. All authors have read and agreed to the published version of the manuscript.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

   The following abbreviations are used in this manuscript:
TSOTransmission System Operator
TSATransient Stability Analysis
EACEqual Area Criterion
EEACExtended Equal Area Criterion
OMIBOne-Machine Infinite Bus
SMIBSingle Machine connected to an Infinite Bus
SIMESingle-Machine Equivalent
CCTCritical Clearing Time
CCACritical Clearing Angle
CMICritical Machines Identification
CCFCritical Cluster Formation
CCCritical Cluster of generators
NCNon-critical Cluster of generators
COACenter of Angle
PCOAPartial Centre of Angle
ZOOMIBZero Offset OMIB
COOMIBConstant Offset OMIB
DOMIBDynamic OMIB

Appendix A. OMIB Electrical Power with the Classical Model

The classical model of a power system considers a constant-voltage-behind-transient-reactance model for synchronous generators. In this model of the system, by dividing the network nodes to n synchronous generator internal nodes and r remaining nodes, the relationship between the bus voltages, nodal current injections, and the network admittance matrix is given by:
I n ˜ 0 = Y ^ E n ˜ V r ˜
where E n ˜ denotes the synchronous generators’ internal voltage behind their transient reactance, I n ˜ is the generators’ current, and V r ˜ denotes the voltages of the remaining network nodes. Y ^ is the network admittance matrix which includes the load impedances and generator transient reactances. This matrix can be partitioned as follows:
Y ^ n n Y ^ n r Y ^ r n Y ^ r r
To obtain the electrical power, first we find the reduced admittance matrices by eliminating all the nodes except for the internal nodes of the synchronous generators. The reduction can be achieved through matrix operations considering that all the nodes have zero injection currents except for the source nodes. By eliminating V r ˜ we have:
I n ˜ = Y ^ r e d E n ˜
where:
Y ^ r e d = Y ^ n n Y ^ n r Y ^ r r 1 Y ^ r n
In a power system with n synchronous generators, to calculate the output electrical power of each one we can write:
P e i = R e [ E i ˜ I i ˜ * ] = R e [ E i ˜ j = 1 n ( E j ˜ y i j ^ ) * ]
where E i ˜ = E i δ i is the voltage behind direct axis transient reactance of the synchronous generator i, and y i j ^ = y i j θ i j is the element of row i and column j of the reduced admittance matrix.
Therefore, for each generator we have:
P e i = R e [ j = 1 n ( E i E j ( δ i δ j ) ( G i j j B i j ) ) ]
where G i j and B i j are conductance and susceptance parts of the admittance element of row i and column j.
Expanding Equation (A4) and separating the real and imaginary parts we get:
P e i = j = 1 n E i E j [ G i j c o s ( δ i δ j ) + B i j s i n ( δ i δ j ) ]
For each generator k of set C R we can rewrite Equation (A5) in the following form:
P e k = i C C E k E i [ G k i c o s ( δ k δ i ) + B k i s i n ( δ k δ i ) ] + j N C E k E j [ G k j c o s ( δ k δ j ) + B k j s i n ( δ k δ j ) ]
We can consider that for each critical generator δ i = δ c r + ξ i , and for each non-critical generator δ j = δ n c + ξ j , where ξ i and ξ j show the angular deviation of each generator in sets C R and N C from their respective PSOA δ c r and δ n c . Therefore, for each generator k of set C R we can write:
P e k = i C C E k E i [ G k i c o s ( ξ k ξ i ) + B k i s i n ( ξ k ξ i ) ] + j N C E k E j [ G k j c o s ( δ c r δ n c + ξ k ξ j ) + B k j s i n ( δ c r δ n c + ξ k ξ j ) ]
Similarly, for each generator l of set N C we can write:
P e l = i C C E l E i [ G l i c o s ( δ l δ i ) + B l i s i n ( δ l δ i ) ] + j N C E l E j [ G l j c o s ( δ l δ j ) + B l j s i n ( δ l δ j ) ]
Considering δ i = δ c r + ξ k and δ j = δ n c + ξ j , we have:
P e l = i C C E l E i [ G l i c o s ( δ n c δ c r + ξ l ξ i ) + B l i s i n ( δ n c δ c r + ξ l ξ i ) ] + j N C E l E j [ G k j c o s ( ξ l ξ j ) + B l j s i n ( ξ l ξ j ) ]
Substituting Equations (A7) and (A9) in Equation (11), we have:
P e O M I B = M n c M T k C C i C C E k E i [ G k i c o s ( ξ k ξ i ) + B k i s i n ( ξ k ξ i ) ] + k C C j N C E k E j [ G k j c o s ( δ c r δ n c + ξ k ξ j ) + B k j s i n ( δ c r δ n c + ξ k ξ j ) ] M c r M T l N C i C C E l E i [ G l i c o s ( δ n c δ c r + ξ l ξ i ) + B l i s i n ( δ n c δ c r + ξ l ξ i ) ] + l N C j N C E l E j [ G k j c o s ( ξ l ξ j ) + B l j s i n ( ξ l ξ j ) ]
To have a simpler form of equation, by considering g i j = E i E j G i j and b i j = E i E j B i j , we have:
P e O M I B = M n c M T k C C i C C [ g k i c o s ( ξ k ξ i ) + b k i s i n ( ξ k ξ i ) ] M c r M T l N C j N C [ g l j c o s ( ξ l ξ j ) + b l j s i n ( ξ l ξ j ) ] + M n c M T k C C j N C [ g k j c o s ( δ c r δ n c + ξ k ξ j ) + b k j s i n ( δ c r δ n c + ξ k ξ j ) ] M c r M T l N C i C C [ g l i c o s ( δ n c δ c r + ξ l ξ i ) + b l i s i n ( δ n c δ c r + ξ l ξ i ) ]
Considering that M n c + M c r M T = 1 , Equation (A11) can be written as follows:
P e O M I B = M n c M T k C C i C C [ g k i c o s ( ξ k ξ i ) + b k i s i n ( ξ k ξ i ) ] M c r M T l N C j N C [ g l j c o s ( ξ l ξ j ) + b l j s i n ( ξ l ξ j ) ] + M n c M c r M T k C C j N C [ g k j c o s ( δ + ξ k ξ j ) ] + k C C j N C [ b k j s i n ( δ + ξ k ξ j ) ]

Appendix A.1. Considering Zero Rotor Angle Offsets with Respect to PCOA

In this section, we simplify the P e for the OMIB model by considering zero rotor angle offsets. The assumptions are:
ξ i = ξ j = 0 : i C C , j N C
With these assumptions, we can simplify Equation (A12) to the following form:
P e O M I B = M n c M T k C C i C C g k i M c r M T l N C j N C g l j + M n c M c r M T k C C j N C g k j c o s ( δ ) + k C C j N C b k j s i n ( δ ) = P C + C c o s ( δ ) + D s i n ( δ )
On the other hand, in general we have:
C c o s ( δ ) + D s i n ( δ ) = P m a x s i n ( δ v ) P m a x ( s i n ( δ ) c o s ( v ) c o s ( δ ) s i n ( v ) ) = C c o s ( δ ) + D s i n ( δ ) C = P m a x s i n ( v ) , D = P m a x c o s ( v ) P m a x = ( C 2 + D 2 ) , v = tan 1 ( C / D )
The equation for P e becomes:
P e O M I B = ( P C + P m a x s i n ( δ v ) )
where:
P C = M n c M T k C C i C C g k i M c r M T l N C j N C g l j P m a x = ( C 2 + D 2 ) v = tan 1 ( C / D ) C = M n c M c r M T k C C j N C g k j D = k C C j N C b k j
where P C , P m a x , and v are dependent on M n c , M c r , and g i j , i.e., constants.

Appendix A.2. Considering Constant Rotor Angle Offsets with Respect to PCOA

In this section, we simplify the P e for the OMIB model by assuming that i C C , j N C , ξ i , and ξ j are not necessarily zero, but that they are constant with respect to δ . With this assumption, we can simplify Equation (A12) to the following form:
P e O M I B = P C + M n c M c r M T k C C j N C g k j [ c o s ( δ ) c o s ( ξ k ξ j ) s i n ( δ ) s i n ( ξ k ξ j ) ] + k C C j N C b k j [ s i n ( δ ) c o s ( ξ k ξ j ) + c o s ( δ ) s i n ( ξ k ξ j ) ]
= P C + M n c M c r M T k C C j N C g k j c o s ( δ ) c o s ( ξ k ξ j ) M n c M c r M T k C C j N C g k j s i n ( δ ) s i n ( ξ k ξ j ) + k C C j N C b k j s i n ( δ ) c o s ( ξ k ξ j ) + k C C j N C b k j c o s ( δ ) s i n ( ξ k ξ j )
where:
P C = M n c M T k C C i C C [ g k i c o s ( ξ k ξ i ) + b k i s i n ( ξ k ξ i ) ] M c r M T l N C j N C [ g l j c o s ( ξ l ξ j ) + b l j s i n ( ξ l ξ j ) ]
By separating sine and cosine terms we have:
P e O M I B = P C + [ M n c M c r M T k C C j N C g k j c o s ( ξ k ξ j ) + k C C j N C b k j s i n ( ξ k ξ j ) ] c o s ( δ ) + [ M n c M c r M T k C C j N C g k j s i n ( ξ k ξ j ) + k C C j N C b k j c o s ( ξ k ξ j ) ] s i n ( δ )
= P C + C c o s ( δ ) + D s i n ( δ )
The equation for P e becomes:
P e O M I B = ( P C + P m a x s i n ( δ v ) )
where:
P C = M n c M T k C C i C C [ g k i c o s ( ξ k ξ i ) + b k i s i n ( ξ k ξ i ) ] M c r M T l N C j N C [ g l j c o s ( ξ l ξ j ) + b l j s i n ( ξ l ξ j ) ] P m a x = ( C 2 + D 2 ) v = tan 1 ( C / D ) C = k C C j N C b k j s i n ( ξ k ξ j ) + M n c M c r M T k C C j N C g k j c o s ( ξ k ξ j ) D = k C C j N C b k j c o s ( ξ k ξ j ) M n c M c r M T k C R j N C g k j s i n ( ξ k ξ j )
where P C , P m a x , and v are dependent on M n c , M c r , g i j , b i j , and ξ i , i.e., constants.

Appendix B. Pseudocodes

This appendix presents the pseudocodes of all the algorithms discussed.
Algorithm A1 pseudocode details the function to compute the OMIB model. The function is designed for the DOMIB model, but it can be applied for COOMIB or ZOOMIB, which are similar to DOMIB but with only one interval. It inputs a data class of s generators including their name, inertia constant, internal voltage, mechanical power, and their initial and final angles for n intervals. It also requires the system admittance matrix to be reduced to generators’ internal nodes, and the sets of critical and non-critical generators. The function should be recalled for each pre-fault, during-fault, and post-fault periods. For each period, the pseudocode first estimates OMIB P m and M, which are constant values. Then, for each time interval in the considered period, it estimates the OMIB angle at the beginning and end of the interval, and the terms defining its electrical power in that interval.
Algorithm A1 Forming the OMIB equivalent of a multi-machine power system
OMIB ( S , Y ^ r e d , CC , NC , t y p e , r a n g e )
     Input
1.    
S : data of synchronous generators considering the classical model
         ·    
S [ j ] . n a m e : generator j name: str
         ·    
S [ j ] . M : generator j inertia constant: float
         ·    
S [ j ] . E : generator j internal voltage magnitude: float
         ·    
S [ j ] . P m : generator j mechanical power: float
         ·    
S [ j ] . δ i [ i ] : generator j initial angle of interval i: float
         ·    
S [ j ] . δ f [ i ] : generator j final angle of interval i, set to δ m a x by default: float
2.    
CC : set of names of critical synchronous generators: set of str
3.    
NC : set of names of non-critical synchronous generators: set of str
4.    
Y ^ r e d : reduced system admittance matrix: matrix of complex numbers
5.    
t y p e : type of OMIB approximation, ‘ZOOMIB’ for zero offset, ‘COOMIB’ for constant offset, and ‘DOMIB’ for dynamic: str
6.    
r a n g e : a 2-tuple of the numbers of the first and last intervals in the considered period, set to (1, 1) be default: tuple of int
     Output
1.    
P : OMIB power
         ·    
P [ i ] . δ i : initial angle of interval i: float
         ·    
P [ i ] . δ f : final angle of interval i: float
         ·    
P [ i ] . P c : constant electrical power in interval i: float
         ·    
P [ i ] . P m a x : maximum electrical power in interval i: float
         ·    
P [ i ] . v : angle shift in interval i: float
         ·    
P . P m : mechanical power: float
2.    
M: OMIB inertia constant: float
  1:
s ← l e n g t h ( S ) : number of synchronous generators
  2:
G ← real part ( Y ^ )
  3:
B ← imaginary part ( Y ^ )
  4:
for j = 1 : s do:
  5:
    for  k = 1 : s  do:
  6:
         b [ k , j ] = S [ k ] . E · S [ j ] . E · B [ k , j ]
  7:
         g [ k , j ] = S [ k ] . E · S [ j ] . E · G [ k , j ]
  8:
    end for
  9:
end for
10:
M c r = j C C S [ j ] . M
11:
M n c = j N C S [ j ] . M
12:
M T = M c r + M n c
13:
M = M c r M n c M T
14:
P . P m = 1 M T M n c j C C S [ j ] . P m M c r j N C S [ j ] . P m
15:
n = r a n g e [ 1 ] r a n g e [ 1 ] + 1 : number of intervals in considered period
16:
for  i = 1 : n  do:
17:
     i n t e r v a l = r a n g e [ 1 ] + i 1 : interval number in the trajectory
18:
     δ cr i = 1 M c r j CR ( S [ j ] . M · S [ j ] . δ i [ i n t e r v a l ] )
19:
     δ cr f = 1 M c r j CR ( S [ j ] . M · S [ j ] . δ f [ i n t e r v a l ] )
20:
     δ nc i = 1 M n c j NC ( S [ j ] . M · S [ j ] . δ i [ i n t e r v a l ] )
21:
     δ nc f = 1 M n c j NC ( S [ j ] . M · S [ j ] . δ f [ i n t e r v a l ] )
22:
     P [ i ] . δ i = δ cr i δ nc i
23:
     P [ i ] . δ f = δ cr f δ nc f
24:
    for  j = 1 : s  do:
25:
       if type == ‘ZOOMIB’ then
26:
           ξ [ j ] = 0
27:
       else if  S [ j ] . n a m e CR  then
28:
           ξ [ j ] = S [ j ] . δ i [ i n t e r v a l ] δ cr i
29:
       else
30:
           ξ [ j ] = S [ j ] . δ i [ i n t e r v a l ] δ nc i
31:
    end for
32:
     C = k CR j NC b [ k , j ] · s i n ( ξ [ k ] ξ [ j ] ) + M n c M c r M T g [ k , j ] · c o s ( ξ [ k ] ξ [ j ] )
33:
     D = k CR j NC b [ k , j ] · c o s ( ξ [ k ] ξ [ j ] ) M n c M c r M T g [ k , j ] · s i n ( ξ [ k ] ξ [ j ] )
34:
     P [ i ] . P c = M n c M T k CR j CR ( g [ k , j ] · c o s ( ξ [ k ] ξ [ j ] ) + b [ k , j ] · s i n ( ξ [ k ] ξ [ j ] ) )
35:
     M c r M T k NC j NC ( g [ k , j ] · c o s ( ξ [ k ] ξ [ j ] ) + b [ k , j ] · s i n ( ξ [ k ] ξ [ j ] ) )
36:
     P [ i ] . P m a x = ( C 2 + D 2 )
37:
     P [ i ] . v = tan 1 ( C / D )
38:
end for
39:
return  P , M
Algorithm A2 pseudocode details the function to compute the CCA of an OMIB model. To perform correctly, this function has certain conditions over the interval angles of the input data:
  •     P [ i + 1 ] . δ i n i t i a l = P [ i ] . δ f i n a l : the intervals are continuous, the end of an interval corresponds to the beginning of the next one
  •     P [ i ] . δ i n i t i a l < P [ i ] . δ f i n a l : the interval angles increase monotonically
  •     δ m a x P P [ n ] . δ f i n a l : the post-fault intervals include the maximum angle
  •     δ 0 P D [ 1 ] . δ i n i t i a l : the during-fault intervals include the initial angle
The algorithm inputs the during-fault and post-fault OMIB equivalent models. For each period, the OMIB model includes its mechanical power, its angle at the beginning and at the end intervals, and the terms defining its electrical power in each interval. For ZOOMIB or COOMIB types of the OMIB equivalent, there is only one interval for each period. The algorithm starts from an initial angle δ 0 . It first checks the direction of the angular deviations. If a ‘backward-swing’ case is detected, as discussed in Section 2.4, the algorithm negates the sign of electrical power, mechanical power, and OMIB angles. The search for the critical clearing angle starts from the initial angle δ 0 with an increment Δ δ . With two loops, for any fault elimination angle angle δ e , the algorithm searches for a return angle δ r as a δ m at which the sum of the areas become negative. If a δ r is found, the algorithm increases the δ e . The search continues until finding δ c , as the first δ e after which for any δ m δ m a x the sum of the areas is always positive. A ‘potentially stable case’ refers to a case where the system stability can be maintained by removing the fault at an angle below the identified δ c . The algorithm can also identify an ‘always stable case’ at which for δ e = δ 0 system is unstable, and an ‘always stable case’ at which for δ e = δ m a x system is stable. Algorithms A3A5 serve Algorithm A2 as auxiliary functions.
Algorithm A2 Calculation of critical clearing angle of an OMIB model
CCA ( P D , P P )
     Input
1.
     P D : vector of OMIB during-fault power
         ·    
P D [ i ] . δ i : initial angle of interval i: float
         ·    
P D [ i ] . δ f : final angle of interval i: float
         ·    
P D [ i ] . P c : constant electrical power in interval i: float
         ·    
P D [ i ] . P m a x : maximum electrical power in interval i: float
         ·    
P D [ i ] . v : angle shift in interval i: float
         ·    
P D . P m : mechanical power: float
2.
     P P : vector of OMIB post-fault power
         ·    
P P [ i ] . δ i : initial angle of interval i: float
         ·    
P P [ i ] . δ f : final angle of interval i: float
         ·    
P P [ i ] . P c : constant electrical power in interval i: float
         ·    
P P [ i ] . P m a x : maximum electrical power in interval i: float
         ·    
P P [ i ] . v : angle shift in interval i: float
         ·    
P P . P m : mechanical power: float
     Output
1.    
dflag: presents the direction of angular deviations, ‘first-swing’ or ‘backward-swing’: str
2.    
tflag: indicates the type of the case detected, ‘always stable case’, ‘always unstable case’ or ‘potentially stable case’: str
3.    
δ : for a ‘potentially stable case’ δ gives the critical clearing angle, for an ‘always stable case’ it gives δ m a x , and for an ‘always unstable case’ it gives δ 0 : float
4.    
δ r : for a ‘potentially stable case’ δ gives the return angle, for an ‘always stable case’ it gives δ m a x , and for an ‘always unstable case’ it gives δ 0 : float
     Parameter
1.    
Δ δ : angle step size: float
2.    
δ m a x : maximum integration limit: float
  1:
dflag ← ‘first-swing’
  2:
direction ← 1
  3:
termination ← False
  4:
δ 0 P D [ 1 ] . δ i
  5:
P e , P m = compute-power ( P D , δ 0 )
  6:
if P m < P e then
 7:    
dflag ← ‘backward-swing’
 8:    
direction ← −1
 9:    
P D =negation ( P D )
10:   
P P =negation ( P P )
11:
δ δ 0
12:
δ r δ 0
13:
δ m δ + Δ δ
14:
while  δ < δ m a x & termination=False do
15:    
A D =compute-area ( P D , δ 0 , δ )
16:
    while  δ m δ m a x & termination=False do
17:
         A P =compute-area( P P , δ , δ m )
18:
        if  A D + A P 0  then
19:
             δ c =direction · δ
20:
             δ r = δ m
21:
            termination ← True
22:
         δ m δ m + Δ δ
23:
    end while
24:
    if  δ m > δ m a x  then
25:
        if  δ c = δ 0  then
26:
            tflag ← ‘always unstable case’
27:
             δ r = direction · δ 0
28:
            termination ← True
29:
         P e , P m = compute-powers ( P P , δ r )
30:
        if  P m P e  then
31:
            tflag ← ‘potentially stable case’
32:
            termination ← True
33:
             δ r =direction · δ r
34:
     δ δ + Δ δ
35:
     δ m δ + Δ δ
36:
end while
37:
if  δ δ m a x  then
38:
    tflag ← ‘always stable case’
39:
     δ c =direction · δ m a x
40:
     δ r =direction · δ m a x
41:
return dflag, tflag, δ c , δ r
Algorithm A3 Finding the area between P m and P e for desired δ a and δ b
compute-area ( P , δ a , δ b )
     Input
1.
     P : vector of OMIB power
         ·    
P [ i ] . δ i : initial angle of interval i: float
         ·    
P [ i ] . δ f : final angle of interval i: float
         ·    
P [ i ] . P c : constant electrical power in interval i: float
         ·    
P [ i ] . P m a x : maximum electrical power in interval i: float
         ·    
P [ i ] . v : angle shift in interval i: float
         ·    
P [ i ] . P m : mechanical power in interval i: float
2.
     δ a : desired initial angle: float
3.
     δ b : desired final angle: float
     Output
1.
    A: area: float
  1:
n l e n g t h ( P ) : number of intervals in considered period
  2:
j ← 1
  3:
A← 0
  4:
termination ← False
  5:
for  i = 1 : n  do
  6:
      if  P [ i ] . δ i δ a then
  7:
             P [ i ] . δ i δ a
  8:
             j i
  9:
end for
10:
while j n & termination = False do
11:
      if  P [ j ] . δ f > δ b  then
12:
           P [ j ] . δ f δ b
13:
            A + = ( P [ j ] . P m P [ j ] . P c ) ( P [ j ] . δ f P [ j ] . δ i ) + P [ j ] . P m a x [ c o s ( P [ j ] . δ f P [ j ] . v ) c o s ( P [ j ] . δ i P [ j ] . v ) ]
14:
            termination ← True
15:
        A + = ( P [ j ] . P m P [ j ] . P c ) ( P [ j ] . δ f P [ j ] . δ i ) + P [ j ] . P m a x [ c o s ( P [ j ] . δ f P [ j ] . v ) c o s ( P [ j ] . δ i P [ j ] . v ) ]
16:
        j j + 1
17:
end while
18:
 return A
Algorithm A4 Finding electrical and mechanical powers at any desired angle δ
compute-power ( P , δ )
     Input
1.
     P : vector of OMIB power
         ·    
P [ i ] . δ i : initial angle of interval i: float
         ·    
P [ i ] . δ f : final angle of interval i: float
         ·    
P [ i ] . P c : constant electrical power in interval i: float
         ·    
P [ i ] . P m a x : maximum electrical power in interval i: float
         ·    
P [ i ] . v : angle shift in interval i: float
         ·    
P . P m : mechanical power: float
2.
     δ : desired angle: float
     Output
1.
     P e : electrical power at the desired angle δ : float
2.
     P m : mechanical power at the desired angle δ : float
  1:
n l e n g t h ( P ) : number of intervals in considered period
  2:
j ← 1
  3:
flag ← ‘not found’
  4:
P m = P . P m
  5:
while j n do
  6:
    if  P [ j ] . δ i δ < P [ j ] . δ f  then
  7:
         P e = P [ j ] . P c + P [ j ] . P m a x s i n ( δ P [ j ] . v )
  8:
        flag=‘found’
  9:
end while
10:
if flag = ‘not found’ then
11:
     P e = P [ n ] . P c + P [ n ] . P m a x s i n ( δ P [ n ] . v )
12:
return  P e , P m
Algorithm A5 Returning the negated values of power vector elements
negation ( P )
     Input
1.
     P : vector of OMIB power
         ·    
P [ i ] . δ i : initial angle of interval i: float
         ·    
P [ i ] . δ f : final angle of interval i: float
         ·    
P [ i ] . P c : constant electrical power in interval i: float
         ·    
P [ i ] . P m a x : maximum electrical power in interval i: float
         ·    
P [ i ] . v : angle shift in interval i: float
         ·    
P . P m : mechanical power: float
     Output
1.
     P : negated vector of power
  1:
for  i = 1 : l e n g t h ( P ) do
  2:
     P [ i ] . P c = P [ i ] . P c
  3:
     P [ i ] . P m a x = P [ i ] . P m a x
  4:
     P [ i ] . v = P [ i ] . v
  5:
     P [ i ] . δ i = P [ i ] . δ i
  6:
     P [ i ] . δ f = P [ i ] . δ f
  7:
end for
  8:
P [ 1 ] . δ f = δ m a x
  9:
P . P m = P . P m
10:
return  P
Algorithm A6 pseudocode details the function to identify a ranked list of critical generators. The inputs are the type of identifier, the synchronous generators’ data class, system admittance matrices, and the index of the faulted bus in the admittance matrix, which helps to find the electrical distance to the fault.
For trajectory criterion, the algorithm uses the Trajectory function to estimate the angles of individual generators at the observation time as the criterion. For the other two criteria, the algorithm first calculates generators’ initial acceleration. If the criterion is acceleration, the initial accelerations are taken as the criterion. Otherwise, the pre-fault and post-fault distances to fault are estimated to calculate the composite criterion. Finally, the generators for which the calculated criterion is close to that of the top generator based on a predefined threshold are selected as critical generators, and a sorted list of them is outputted.
Algorithm A6 Critical machines identification
CMI ( S , Y ^ d u r r e d , Y ^ p o s t r e d , Y ^ p r e , Y ^ p o s t , t y p e , f, t o b s , t e )
     Input
1.
     S : data of synchronous generators considering the classical model
         ·    
S [ j ] . n a m e : generator j name: str
         ·    
S [ j ] . M : generator j inertia constant: float
         ·    
S [ j ] . E : generator j internal voltage magnitude: float
         ·    
S [ j ] . P m : generator j mechanical power: float
         ·    
S [ j ] . δ i [ 1 ] : generator j initial angle of the first interval: float
2.
     t y p e : type of CMI technique, ‘Acc’ for acceleration criterion, ‘Comp’ for composite criterion and ‘Traj’ for trajectory criterion: str
3.
     Y ^ d u r r e d : reduced during-fault system admittance matrix: matrix of complex numbers
4.
     Y ^ p o s t r e d : reduced post-fault system admittance matrix: matrix of complex numbers
5.
     Y ^ p r e : pre-fault system admittance matrix: matrix of complex numbers
6.
     Y ^ p o s t : post-fault system admittance matrix: matrix of complex numbers
7.
    f: index of the faulted bus in system admittance matrix, set to 1 by default: int
8.
     t o b s : observation time for the trajectory criterion, set to 0 by default: float
9.
     t e : fault elimination time for the trajectory criterion, set to 0 by default: float
     Output
1.
     CM : ranked set of names of synchronous generators identified as critical: set of str
     Parameter
1.
     f 0 : system base frequency: float
2.
     t h r e s h o l d : CMI threshold: float
  1:
CM
  2:
s ← l e n g t h ( S ) : number of synchronous generators
  3:
criterion [ j ] 0 , j = 1 , , s
  4:
ω 0 = 2 π f 0
  5:
if t y p e = = ‘Traj’ then
  6:
     t , S . δ i , S . δ f , S . ω i , S . ω f = Trajectory ( S , Y ^ d u r r e d , Y ^ p o s t r e d , t e , t o b s )
  7:
     criterion = S . δ f
  8:
else
  9:
    for  j = 1 : s  do:
10:
         P e = S [ j ] . E · k = 1 s S [ k ] . E · | Y ^ d u r r e d [ j , k ] | · c o s ( S [ j ] . δ i [ 1 ] S [ k ] . δ i [ 1 ] Y ^ d u r r e d [ j , k ] )
11:
         a c c = ω 0 S [ j ] . M ( S [ j ] . P m P e )
12:
        if  t y p e = = ‘Acc’ then
13:
            criterion [ j ] = a c c
14:
        else
15:
            Z ^ pre = inverse of Y ^ p r e
16:
            Z ^ post = inverse of Y ^ p o s t
17:
            d i s t p r e = | Z ^ pre [ j , j ] | + | Z ^ pre [ f , f ] | 2 | Z ^ pre [ j , f ] |
18:
            d i s t p o s t = | Z ^ post [ j , j ] | + | Z ^ post [ f , f ] | 2 | Z ^ post [ j , f ] |
19:
            criterion [ j ] = a c c d i s t p r e + d i s t p o s t
20:
    end for
21:
for  j = 1 : s  do:
22:
    if  criterion [ j ] > t h r e s h o l d · m a x ( criterion )  then
23:
        append S [ j ] . n a m e to C M
24:
end for
25:
sort CM in decreasing order of criterion
26:
return  CM
Algorithm A7 pseudocode details the function to form different candidate CCs and NCs. This pseudocode represents a simple method among others. For c m critical machines, the algorithm selects c m candidate CCs composed of the first from the top, the first two from the top, …, up to all c m machines in the CC set. It outputs the set of candidate CCs and the set of candidate NCs.
Algorithm A7 Critical clusters formation
CCF ( S . name , CM )
     Input
1.
     S . name : set of names of synchronous generators: set of str
2.
     CM : ranked set of names of synchronous generators identified as critical: set of str
     Output
1.
     SCC : sets of CC: sets of str
2.
     SNC : sets of NC: sets of str
  1:
c m l e n g t h ( CM ) : number of critical machines
  2:
for  j = 1 : c m do:
  3:
     SCC [j] = CM [1:j]
  4:
     SNC [j] = S . name not in SCC [j]
  5:
end for
  6:
return  SCC , SNC
Algorithm A8 pseudocode details the function to estimate the time associated with a desired angle for the OMIB model. The function angle-to-time updates the time and OMIB angular speed interval by interval up to reaching the desired time associated to the desired angle. This function relies on Algorithm A9 pseudocode which presents the GTS function. For each interval, this function employs the Taylor series equations to find the time and angular speed associated to a desired angle using the interval initial values.
Algorithm A8 Finding the time and angular speed associated to a desired angle for the OMIB model using the global Taylor series
angle-to-time ( P , M, δ d e s , δ i , ω i )
     Input
1.
     P : OMIB power
         ·    
P [ i ] . δ i : initial angle of interval i: float
         ·    
P [ i ] . ω i : initial angular speed of interval i: float
         ·    
P [ i ] . P c : constant electrical power in interval i: float
         ·    
P [ i ] . P m a x : maximum electrical power in interval i: float
         ·    
P [ i ] . v : angle shift in interval i: float
         ·    
P . P m : mechanical power: float
2.
    M: OMIB inertia constant: float
3.
     δ d e s : OMIB desired angle: float
4.
     δ i : initial angle for Taylor series initialization: float
5.
     ω i : initial angular speed for Taylor series initialization: float
     Output
1.
     t d e s : desired time at the given desired angle: float
2.
     ω d e s : desired angular speed at the given desired angle: float
  1:
n l e n g t h ( P ) : number of intervals in considered period
  2:
for  i = 1 : n do
  3:
    if  P [ i ] . δ f > δ d e s  then
  4:
         t d e s , ω d e s = GTS ( P , M, δ d e s , δ i , ω i , i)
  5:
    else if  i < n  then
  6:
         t [ i + 1 ] , P [ i + 1 ] . ω i = GTS ( P , M, P [ i + 1 ] . δ i , δ i , ω i , i)
  7:
         δ i = P [ i + 1 ] . δ i
  8:
         ω i = P [ i + 1 ] . ω i
  9:
end for
10:
return  t d e s , ω d e s
Algorithm A10 pseudocode details the function to estimate the generators’ angle trajectory in time. The function Trajectory updates the generator angles interval by interval up to a final time. This function relies on the function ITS, detailed in Algorithm A11 pseudocode, which employs Taylor series equations for each individual generator to find a desired angle and angular speed in an interval at a desired time and using the initial values.
Algorithm A9 Global Taylor series to find the OMIB time and angular speed associated with a desired angle, starting from an initial angle, time and angular speed
GTS ( P , M, δ d e s , δ i , ω i , i)
     Input
1.
     P : OMIB power
         ·    
P [ i ] . P c : constant electrical power in interval i: float
         ·    
P [ i ] . P m a x : maximum electrical power in interval i: float
         ·    
P [ i ] . v : angle shift in interval i: float
         ·    
P . P m : mechanical power: float
2.
    M: OMIB inertia constant: float
3.
     δ d e s : OMIB desired angle: float
4.
     δ i : initial angle for Taylor series initialization: float
5.
     ω i : initial angular speed for Taylor series initialization: float
6.
    i: interval number at which the Taylor series equations are initialized: int
     Output
1.
     t d e s : desired time at the given desired angle: float
2.
     ω d e s : desired angular speed at the given desired angle: float
     Parameter
1.
     f 0 : system base frequency: float
  1:
ω 0 = 2 π f 0
  2:
P e = P [ i ] . P c + P [ i ] . P m a x · s i n ( δ i P [ i ] . v )
  3:
d γ d δ = ω 0 M P [ i ] . P m a x · c o s ( δ i P [ i ] . v )
  4:
d 2 γ d δ 2 = ω 0 M P [ i ] . P m a x · s i n ( δ i P [ i ] . v )
  5:
d 3 γ d δ 3 = d γ d δ
  6:
d δ d t = ω 0 · ω i
  7:
d 2 δ d t 2 = ω 0 M ( P . P m P e )
  8:
d 3 δ d t 3 = d γ d δ · d δ d t
  9:
d 4 δ d t 4 = d 2 γ d δ 2 · ( d δ d t ) 2 + d γ d δ · d 2 δ d t 2
10:
d 5 δ d t 5 = d 3 γ d δ 3 · ( d δ d t ) 3 + d γ d δ · d 3 δ d t 3 + 3 d 2 γ d δ 2 · d 2 δ d t 2 · d δ d t
11:
t d e s = positive real root of ( δ i δ d e s ) + 1 2 d 2 δ d t 2 t 2 + 1 6 d 3 δ d t 3 t 3 + 1 24 d 4 δ d t 4 t 4
12:
ω d e s = ω i + 1 ω 0 d 2 δ d t 2 t d e s + 1 2 d 3 δ d t 3 t d e s 2 + 1 6 d 4 δ d t 4 t d e s 3 + 1 24 d 5 δ d t 5 t d e s 4
13:
return t d e s , ω d e s
Algorithm A12 clarifies the steps of the basic scheme for estimations of CCT with EEAC. The algorithm inputs the synchronous generators’ data, the admittance matrices, the type of the OMIB equivalent which can be of the ZOOMIB or COOMIB type for the basic EEAC, the type of CMI, and the index of the faulted bus if the CMI criterion is ’composite’. Besides the inputs, the algorithm also requires certain parameters: system base frequency as a constant parameter, and variable parameters including CMI threshold, angle step size, and maximum integration limit for CCA function. The algorithm starts by identifying the critical generators and forming a set of c m CCs (SCC) and a set of NCs (SNC). It then evaluates each pair of CC and NC. For each pair it first forms the pre-fault, during-fault and post-fault OMIB equivalents. The initial angle δ 0 is defined as the intersection point of the pre-fault OMIB electrical power and the mechanical power. Then, the boundaries of the OMIB equivalents of during-fault and post-fault states are set to δ 0 and δ m a x .
Algorithm A10 Finding synchronous generators’ angle trajectory in time using an individual Taylor series
Trajectory ( S , Y ^ d u r r e d , Y ^ p o s t r e d , t e , t e n d )
     Input
1.
     S : data of synchronous generators considering the classical model
         ·    
S [ j ] . M : generator j inertia constant: float
         ·    
S [ j ] . E : generator j internal voltage magnitude: float
         ·    
S [ j ] . P m : generator j mechanical power: float
         ·    
S [ j ] . δ i [ 1 ] : generator j initial angle of the first interval: float
2.
     Y ^ d u r r e d : reduced during-fault system admittance matrix: matrix of complex numbers
3.
     Y ^ p o s t r e d : reduced post-fault system admittance matrix: matrix of complex numbers
4.
     t e : fault elimination time: float
5.
     t e n d : end of trajectory time span: float
     Output
·    
S . δ f : generators’ final angle of all intervals: vectors of float
·    
S . ω f : generators’ final angular speed of all intervals: vectors of float
·    
S . δ i : generators’ initial angle of all intervals: vector of float
·    
S . ω i : generators’ initial angular speed of all intervals: vectors of float
·    
t : intervals time instants: vectors of float
     Parameter
1.
    d: number of during-fault period intervals: int
2.
    p: number of post-fault period intervals: int
  1:
t [ 1 ] 0
  2:
s ← l e n g t h ( S ) : number of synchronous generators
  3:
S [ j ] . ω i [ 1 ] 0 , j = 1 , , s
  4:
for  i = 1 : d do
  5:
     t [ i + 1 ] = t [ i ] + t e / d
  6:
     S [ j ] . δ f [ i ] , S [ j ] . ω f [ i ] = ITS( S , Y ^ d u r r e d , t [ i + 1 ] ,i)
  7:
     S [ j ] . δ i [ i + 1 ] S [ j ] . δ f [ i ] , j = 1 , , s
  8:
     S [ j ] . ω i [ i + 1 ] S [ j ] . ω f [ i ] , j = 1 , , s
  9:
end for
10:
for  i = d + 1 : d + p  do
11:
     t [ i + 1 ] = t [ i ] + ( t e n d t e ) / p
12:
     S [ j ] . δ f [ i ] , S [ j ] . ω f [ i ] = ITS( S , Y ^ p o s t r e d , t [ i + 1 ] ,i)
13:
     S [ j ] . δ i [ i + 1 ] S [ j ] . δ f [ i ] , j = 1 , , s
14:
     S [ j ] . ω i [ i + 1 ] S [ j ] . ω f [ i ] , j = 1 , , s
15:
end for
16:
return  S . δ i , S . δ f , S . ω i , S . ω f , t
Algorithm A11 Individual Taylor series to find generators’ angle and angular speed at a desired time, starting from an initial angle and angular speed
ITS ( S , Y ^ r e d , t d e s ,i)
     Input
1.
       S : data of synchronous generators considering the classical model
         ·    
S [ j ] . M : generator j inertia constant: float
         ·    
S [ j ] . E : generator j internal voltage magnitude: float
         ·    
S [ j ] . P m : generator j mechanical power: float
         ·    
S [ j ] . δ i [ i ] : generator j initial angle of interval i: float
         ·    
S [ j ] . ω i [ i ] : generator j initial angular speed of interval i: float
2.
       Y ^ r e d : reduced system admittance matrix: matrix of complex numbers
3.
       t d e s : desired time: float
4.
      i: interval number at which the Taylor series equations are initialized: int
     Output
·    
δ des : synchronous generators’ angle at the given desired time: vector of float
·    
ω des : synchronous generators’ angular speed at the given desired time: vector of float
     Parameter
1.
     f 0 : system base frequency: float
  1:
s ← l e n g t h ( S ) : number of synchronous generators
  2:
ω 0 = 2 π f 0
  3:
for  j = 1 : s do:
  4:
     P e = S [ j ] . E · k = 1 s S [ k ] . E · | Y ^ r e d [ j , k ] | · c o s ( S [ j ] . δ i [ i ] S [ k ] . δ i [ i ] Y ^ r e d [ j , k ] )
  5:
     d γ d δ = ω 0 S [ j ] . M S [ j ] . E · k = 1 s S [ k ] . E · | Y ^ r e d [ j , k ] | · s i n ( S [ j ] . δ i [ i ] S [ k ] . δ i [ i ] Y ^ r e d [ j , k ] )
  6:
     d 2 γ d δ 2 = ω 0 S [ j ] . M S [ j ] . E · k = 1 s S [ k ] . E · | Y ^ r e d [ j , k ] | · c o s ( S [ j ] . δ i [ i ] S [ k ] . δ i [ i ] Y ^ r e d [ j , k ] )
  7:
     d 3 γ d δ 3 = d γ d δ
  8:
     d δ d t = ω 0 · S [ j ] . ω i [ i ]
  9:
     d 2 δ d t 2 = ω 0 S [ j ] . M ( S [ j ] . P m P e )
10:
     d 3 δ d t 3 = d γ d δ · d δ d t
11:
     d 4 δ d t 4 = d 2 γ d δ 2 · ( d δ d t ) 2 + d γ d δ · d 2 δ d t 2
12:
     d 5 δ d t 5 = d 3 γ d δ 3 · ( d δ d t ) 3 + d γ d δ · d 3 δ d t 3 + 3 d 2 γ d δ 2 · d 2 δ d t 2 · d δ d t
13:
     δ des [ j ] = S [ j ] . δ i [ i ] + d δ d t t d e s + 1 2 d 2 δ d t 2 t d e s 2 + 1 6 d 3 δ d t 3 t d e s 3 + 1 24 d 4 δ d t 4 t d e s 4
14:
     ω des [ j ] = S [ j ] . ω i [ i ] + 1 ω 0 d 2 δ d t 2 t d e s + 1 2 d 3 δ d t 3 t d e s 2 + 1 6 d 4 δ d t 4 t d e s 3 + 1 24 d 5 δ d t 5 t d e s 4
15:
end for
16:
return  δ des ,   ω des
Having the OMIB equivalents defined within δ 0 to δ m a x , CCA is applied to find the CCA and the return angle of the pair under consideration. Then, t c and ω c are calculated as the time to reach δ c from δ 0 , and the angular speed at δ c . Similarly, t r and ω r can be calculated as the time to reach δ r from δ c , and the angular speed at δ r . After repeating these steps for each pair, the true CC and the true NC are identified as the ones with minimum t c . The algorithm finally returns the CCT, the identified clusters, the CCA and the angular speed, and the observation time as the time to reach δ r from δ 0 .
Algorithm A13 clarifies the steps of the third refinement scheme for estimations of CCT with EEAC. The steps of the other two refinement schemes are not presented due to their similarity.
Algorithm A12 Basic scheme for EEAC
basic-eeac ( S , Y ^ d u r r e d , Y ^ p o s t r e d , Y ^ p r e , Y ^ p o s t , t y p e O M I B , t y p e C M I , f)
     Input
1.
     S : data of synchronous generators considering the classical model
         ·    
S [ j ] . n a m e : generator j name: str
         ·    
S [ j ] . M : generator j inertia constant: float
         ·    
S [ j ] . E : generator j internal voltage magnitude: float
         ·    
S [ j ] . P m : generator j mechanical power: float
         ·    
S [ j ] . δ i : generator j initial angle: float
2.
     Y ^ d u r r e d : reduced during-fault system admittance matrix: matrix of complex numbers
3.
     Y ^ p o s t r e d : reduced post-fault system admittance matrix: matrix of complex numbers
4.
     Y ^ p r e : pre-fault system admittance matrix: matrix of complex numbers
5.
     Y ^ p o s t : post-fault system admittance matrix: matrix of complex numbers
6.
     t y p e O M I B : type of OMIB equivalent model, ‘ZOOMIB’ for zero offset OMIB, and ‘COOMIB’ for constant offset OMIB: str
7.
     t y p e C M I : type of CMI technique, ‘Acc’ for acceleration criterion, and ‘Comp’ for composite criterion: str
8.
    f: index of the faulted bus in system admittance matrix for ’composite’ CMI, set to 1 by default: int
     Output
1.
     C C T : critical clearing time: float
2.
     CC : set of names of synchronous generators identified as critical: set of str
3.
     NC : set of names of synchronous generators identified as non-critical: set of str
4.
     δ c : OMIB critical clearing angle: float
5.
     ω c : OMIB angular speed at critical clearing angle: float
6.
     t o b s : observation time (the time to reach the return angle): float
     Parameter
1.
     f 0 : system base frequency: float
2.
     t h r e s h o l d : CMI threshold: float
3.
     Δ δ : angle step size: float
4.
     δ m a x : OMIB maximum integration limit: float
  1:
s ← l e n g t h ( S ) : number of synchronous generators
  2:
CM = CMI ( S , Y ^ d u r r e d , Y ^ p o s t r e d , Y ^ p r e , Y ^ p o s t , ‘Acc’)
  3:
SCC , SNC = CCF ( S . name , CM )
  4:
c m l e n g t h ( CM ) : number of critical sets
  5:
for  k = 1 : c m  do
  6:
     CC = SCC [ k ]
  7:
     NC = SNC [ k ]
  8:
     P O , M = OMIB ( S , Y ^ r e d p r e , CC , NC , Z O O M I B )
  9:
     P D , M = OMIB ( S , Y ^ r e d d u r , CC , NC , Z O O M I B )
10:
     P P , M = OMIB ( S , Y ^ r e d p o s t , CC , NC , Z O O M I B )
11:
     δ 0 = s i n 1 P O [ 1 ] . P m P O [ 1 ] . P c P O [ 1 ] . P m a x + P O [ 1 ] . v
12:
     P D [ 1 ] . δ f = δ m a x
13:
     P P [ 1 ] . δ f = δ m a x
14:
     P D [ 1 ] . δ i = δ 0
15:
     P P [ 1 ] . δ i = δ 0
16:
    dflag, tflag, δ c [ k ] , δ r [ k ] = CCA ( P D , P P )
17:
     t c [ k ] , ω c [ k ] = angle-to-time ( P D , M , δ c [ k ] , δ 0 , 0 )
18:
     t r [ k ] , ω r [ k ] = angle-to-time ( P P , M , δ r [ k ] , δ c [ k ] , ω c [ k ] )
19:
end for
20:
C C T = m i n ( t c )
21:
index = index of CCT in t c
22:
True-CC = SCC [ i n d e x ]
23:
True-NC = SNC [ i n d e x ]
24:
δ c = δ c [ i n d e x ]
25:
ω c = ω c [ i n d e x ]
26:
t r = t r [ i n d e x ]
27:
t o b s = C C T + t r
28:
return CCT, True-CC, True-NC, δ c , ω c , t o b s
Algorithm A13 Third refinement scheme for EEAC
refinement-3 ( C C T , C C , N C , δ c , ω c , t o b s )
     Input
1.
     C C T : critical clearing time: float
2.
     CC : set of names of synchronous generators identified as critical: set of str
3.
     NC : set of names of synchronous generators identified as non-critical: set of str
4.
     δ c : OMIB critical clearing angle: float
5.
     ω c : OMIB angular speed at critical clearing angle: float
6.
     t o b s : observation time (the time to reach the return angle): float
     Output
1.
     C C T : critical clearing time: float
2.
     CC : set of names of synchronous generators identified as critical: set of str
3.
     NC : set of names of synchronous generators identified as non-critical: set of str
4.
     δ c : OMIB critical clearing angle: float
5.
     ω c : OMIB angular speed at critical clearing angle: float
6.
     t o b s : observation time (the time to reach the return angle): float
     Parameter
1.
     f 0 : system base frequency: float
2.
     t h r e s h o l d : CMI threshold: float
3.
     Δ δ : angle step size: float
4.
     δ m a x : OMIB maximum integration limit: float
5.
    d: number of during-fault intervals for DOMIB or for generators’ angle trajectory calculation: float
6.
    p: number of OMIB post-fault intervals for DOMIB or for generators’ angle trajectory calculation: float
  1:
s ← l e n g t h ( S ) : number of synchronous generators
  2:
CM = CMI ( S , Y ^ d u r r e d , Y ^ p o s t r e d , Y ^ p r e , Y ^ p o s t , ‘Traj’ , t o b s )
  3:
SCC , SNC = CCF ( S . name , CM )
  4:
c m l e n g t h ( CM ) : number of critical sets
  5:
for  k = 1 : c m do
  6:
     CC = SCC [ k ]
  7:
     NC = SNC [ k ]
  8:
     P O , M = OMIB ( S , Y ^ r e d p r e , CC , NC , ‘ZOOMIB’)
  9:
     P D , M = OMIB ( S , Y ^ r e d d u r , CC , NC , ‘ZOOMIB’)
10:
     P P , M = OMIB ( S , Y ^ r e d p o s t , CC , NC , ‘ZOOMIB’)
11:
     δ 0 = s i n 1 P O [ 1 ] . P m P O [ 1 ] . P c P O [ 1 ] . P m a x + P O [ 1 ] . v
12:
     P D [ 1 ] . δ f = δ m a x
13:
     P P [ 1 ] . δ f = δ m a x
14:
     P D [ 1 ] . δ i = δ 0
15:
     P P [ 1 ] . δ i = δ 0
16:
    dflag, tflag, δ c , δ r = CCA ( P D , P P )
17:
     t c , ω c =angle-to-time ( P D , M , δ c , δ 0 , 0 )
18:
     t r , ω r =angle-to-time ( P P , M , δ r , δ c , ω c )
19:
     t o b s = t c + t m a x
20:
     S . δ i , S . δ f , S . ω i , S . ω f , t = Trajectory ( S , Y ^ d u r r e d , Y ^ p o s t r e d , t c , t o b s )
21:
     P O , M = OMIB ( S , Y ^ r e d p r e , CC , NC , ‘COOMIB’)
22:
     P D , M = OMIB ( S , Y ^ r e d d u r , CC , NC , ‘DOMIB’ , ( 1 , d ) )
23:
     P P , M = OMIB ( S , Y ^ r e d p o s t , CC , NC , ‘DOMIB’ , ( d + 1 , d + p ) )
24:
     δ 0 = s i n 1 P O [ 1 ] . P m P O [ 1 ] . P c P O [ 1 ] . P m a x + P O [ 1 ] . v
25:
     P D [ 1 ] . δ f = δ m a x
26:
     P P [ 1 ] . δ f = δ m a x
27:
     P D [ 1 ] . δ i = δ 0
28:
     P P [ 1 ] . δ i = δ 0
29:
    dflag, tflag, δ c [ k ] , δ r [ k ] = CCA ( P D , P P )
30:
     t c [ k ] , ω c [ k ] =angle-to-time ( P D , M , δ c [ k ] , δ 0 , 0 )
31:
     t r [ k ] , ω r [ k ] =angle-to-time ( P P , M , δ r [ k ] , δ c [ k ] , ω c [ k ] )
32:
end for
33:
C C T = m i n ( t c )
34:
index = index of CCT in t c
35:
True-CC = SCC [ i n d e x ]
36:
True-NC = SNC [ i n d e x ]
37:
δ c = δ c [ i n d e x ]
38:
ω c = ω c [ i n d e x ]
39:
t r = t r [ i n d e x ]
40:
t o b s = C C T + t r
41:
return CCT, True-CC, True-NC, δ c , ω c , t o b s

Appendix C. Taylor Series Expansion

The following subsections provide the Taylor series equations for the OMIB equivalent model and for an individual generator.

Appendix C.1. Taylor Series for OMIB Equivalent

A Taylor series is a series expansion of a function about a point. A one-dimensional Taylor series of a differentiable function f ( x ) about a point x = a is given by:
f ( x ) = f ( a ) + f ( a ) 1 ! ( x a ) + f ( a ) 2 ! ( x a ) 2 + f ( a ) 3 ! ( x a ) 3 +  
The series is employed to relate the rotor angle evolution of OMIB model with time. Forming the Taylor series about an initial angle δ i (corresponding to time t i ) and truncating it after the t 4 term yields:
δ ( t ) = δ | t i + d δ d t | t i t + 1 2 d 2 δ d t 2 | t i t 2 + 1 6 d 3 δ d t 3 | t i t 3 + 1 24 d 4 δ d t 4 | t i t 4
This polynomial equations can help to estimate the time to reach a predefined angle from δ i . The derivatives of δ with respect to time can be obtained as follows:
d δ d t | t i = ω 0 ω | t i
d 2 δ d t 2 | t i = γ | t i = ω 0 M ( P m P e | t i )
d 3 δ d t 3 | t i = d γ d t | t i = d γ d δ | t i ( d δ d t | t i )
d 4 δ d t 4 | t i = d 2 γ d t 2 | t i = d 2 γ d δ 2 | t i ( d δ d t | t i ) 2 + γ | t = t i d γ d δ | t i
where, by considering the sinusoidal form of Equation 14 for P e , we have:
d γ d δ | t i = ω 0 M P m a x c o s ( δ | t i v )
d 2 γ d δ 2 | t i = ω 0 M P m a x s i n ( δ | t i v )
At t i = 0 + , the angular speed ω = 0 and the polynomial of Equation (A20) can be solved to estimate the time to reach a predefined angle from δ i . However, as can be seen in Equation (A21), for the next time intervals, ω should also be estimated. This can be done by forming a Taylor series for ω :
ω ( t ) = ω | t i + d ω d t | t i t + 1 2 d 2 ω d t 2 | t i t 2 + 1 6 d 3 ω d t 3 | t i t 3 + 1 24 d 4 ω d t 4 | t i t 4
The derivatives of ω with respect to time can be obtained as follows:
d ω d t | t i = 1 ω 0 γ | t i = 1 ω 0 ( P m P e | t i )
d 2 ω d t 2 | t i = 1 ω 0 d γ d δ | t i d δ d t | t i
d 3 ω d t 3 | t i = 1 ω 0 d 2 γ d δ 2 | t i ( d δ i d t | t i ) 2 + d γ d δ | t i ( d 2 δ d t 2 | t i )
d 4 ω d t 4 | t i = 1 ω 0 ( d 3 γ d δ 3 | t i ( d δ d t | t i ) 3 + d γ d δ | t i d 3 δ d t 3 | t i + 3 d 2 γ d δ 2 | t i d 2 δ d t 2 | t i d δ d t | t i )
where d γ i d δ | t = t a and d 2 γ i d δ 2 | t = t a can be calculated using the equations below Equations (A24) and d 3 γ d δ 3 | t i = d γ d δ | t i .
To obtain the evolution of OMIB δ and ω with time, Equations (A20) and (A25) should be updated together. The obtained values at each time instant should be employed to initialize the Taylor series for the next time step.

Appendix C.2. Taylor Series for an Individual Generator

Expanding the Taylor series about the generator k initial angle δ k , at time t i , and truncating it after the t 4 term, we have:
δ k ( t ) = δ k | t i + d δ k d t | t i t + 1 2 d 2 δ k d t 2 | t i t 2 + 1 6 d 3 δ k d t 3 | t i t 3 + 1 24 d 4 δ k d t 4 | t i t 4
The derivatives of δ k can be obtained as follows:
d δ k d t | t i = ω 0 ω k | t i
d 2 δ k d t 2 | t i = γ k | t i = ω 0 M k ( P m k P e k | t i )
d 3 δ k d t 3 | t i = d γ k d δ | t i d δ k d t | t i
d 4 δ k d t 4 | t i = d 2 γ k d δ 2 | t i ( d δ k d t | t i ) 2 + d γ k d δ | t i ( d 2 δ k d t 2 | t i )
where, considering the classical model for synchronous generators we have:
P e k | t i = j = 1 n [ E k E j y i j c o s ( δ k | t i δ j | t i θ k j ) ]
d γ k d δ | t i = ω 0 M k j = 1 n [ E k E j y k j s i n ( δ k | t i δ j | t i θ k j ) ]
d 2 γ k d δ 2 | t i = ω 0 M k j = 1 n [ E k E j y k j c o s ( δ k | t i δ j | t i θ k j ) ]
where n is the number of generators.
At t i = 0 + , the angular speed ω k = 0 and the polynomial of Equation (A30) can be solved to estimate δ k for the next time instant. However, to obtain the generator angles for the next intervals, the generators’ angular speed at their initial time needs to be estimated. The Taylor series expansion of ω k can be formed to obtain the evolution of each generator angular speed with time:
ω k ( t ) = ω k | t i + d ω k d t | t i t + 1 2 d 2 ω k d t 2 | t i t 2 + 1 6 d 3 ω k d t 3 | t i t 3 + 1 24 d 4 ω k d t 4 | t i t 4
The derivatives of ω k can be obtained as follows:
d ω k d t | t i = 1 ω 0 γ k | t i = 1 M ( P m k P e k | t i )
d 2 ω k d t 2 | t i = 1 ω 0 d γ k d δ | t i d δ k d t | t i
d 3 ω k d t 3 | t i = 1 ω 0 d 2 γ k d δ 2 | t i ( d δ k d t | t i ) 2 + d γ k d δ | t i ( d 2 δ k d t 2 | t i )
d 4 ω k d t 4 | t i = 1 ω 0 ( d 3 γ k d δ 3 | t i ( d δ k d t | t i ) 3 + d γ k d δ | t i d 3 δ k d t 3 | t i + 3 d 2 γ k d δ 2 | t i d 2 δ k d t 2 | t i d δ k d t | t i )
where d γ k d δ | t i and d 2 γ k d δ 2 | t i can be calculated as described below Equation (A34) and d 3 γ k d δ 3 | t i = d γ k d δ | t i .
To obtain the evolution of δ k and ω k with time, Equations (A30) and (A35) should be updated together. The obtained values at each time instant should be employed to initialize the Taylor series for the next time step.

References

  1. Pavella, M.; Ernst, D.; Ruiz-Vega, D. Transient Stability of Power Systems: A Unified Approach to Assessment and Control, 1st ed.; Springer Science & Business Media: New York, NY, USA, 2012. [Google Scholar]
  2. Dahl, O.G.C. Electric Circuits; Theory and Applications, 1st ed.; McGraw-Hill: New York, NY, USA, 1938. [Google Scholar]
  3. Skilling, H.H.; Yamakawa, M.H. A graphical solution of transient stability. Electrical Eng. 1940, 59, 462–465. [Google Scholar] [CrossRef]
  4. Kimbark, E.W. Power System Stability, 1st ed.; John Wiley & Sons: New York, NY, USA, 1948. [Google Scholar]
  5. Xue, Y.; Rousseaux, P.; Gao, Z.; Belhomme, R.; Euxible, E.; Heilbronn, B. A new decomposition method and direct criterion for trasient stability assessment of large-scale electric power systems. In Proceedings of the IMACS-IFAC Symposium on Modelling and Simulation for Control of Lumped and Distributed Parameter Systems, Lille, France, 3–6 June 1986. [Google Scholar]
  6. Xue, Y.; Van Cutsem, T.; Pavella, M. A simple direct method for fast transient stability assessment of large power systems. IEEE Trans. Power Syst. 1988, 3, 400–412. [Google Scholar] [CrossRef]
  7. Xue, Y.; Van Custem, T.; Pavella, M. Extended equal area criterion justifications, generalizations, applications. IEEE Trans. Power Syst. 1989, 4, 44–52. [Google Scholar] [CrossRef]
  8. Xue, Y.; Pavella, M. Extended equal-area criterion: An analytical ultra-fast method for transient stability assessment and preventive control of power systems. Int. J. Electrical Power Energy Syst. 1989, 11, 131–149. [Google Scholar] [CrossRef]
  9. Xue, Y.; Wehenkel, L.; Belhomme, R.; Rousseaux, P.; Pavella, M.; Euxibie, E.; Heilbronn, B.; Lesigne, J.-F. Extended equal area criterion revisited (EHV power systems). IEEE Trans. Power Syst. 1992, 7, 1127–1130. [Google Scholar] [CrossRef]
  10. Xue, Y.; Rousseaux, P.; Gao, Z.; Belhomme, R.; Euxible, E.; Heilbronn, B. Dynamic extended equal-area criterion. Part I: Basic formulation. Part II: Recent extensions. In Proceedings of the Athens Power Tech, Athens, Greece, 5–8 September 1993; pp. 889–900. [Google Scholar]
  11. Xue, Y.; Pavella, M. Extended equal area criterion justifications, generalizations, applications. IEE Proc. C 1993, 140, 481–489. [Google Scholar]
  12. Xue, Y.; Yu, Y.; Li, J.; Gao, A.; Ding, C.; Xue, F.; Wang, L.; Morison, G.K.; Kundur, P. A New Tool for Dynamic Security Assessment of Power Systems. In Proceedings of the IFAC/CIGRE Symposium on Control of Power Systems and Power Plants, Beijing, China, 12–15 August 1989; pp. 389–393. [Google Scholar] [CrossRef]
  13. Zhang, Y. Hybrid Extended EqualArea Criterion: A General Method for Transient Stability Assessment of Multimachine Power Systems. Ph.D. Thesis, University of Liége, Liége, Belgium, February 1995. [Google Scholar]
  14. Zhang, Y.; Wehenkel, L.; Rousseaux, P.; Pavella, M. SIME: A Hybrid Approach to Fast Transient Stability Assessment and Contingency Selection. J. EPES 1997, 119, 195–208. [Google Scholar] [CrossRef]
  15. Zhang, Y.; Wehenkel, L.; Pavella, M. SIME: Method for RealTime Transient Stability Emergency Control. In Proceedings of the CPSPP’97, IFAC/CIGRE Symp on Control of Power Systems and Power Plants, Beijing, China, 18–21 August 1997; pp. 673–678. [Google Scholar]
  16. Zhang, Y.; Wehenkel, L.; Pavella, M. SIME: A Comprehensive Approach to Fast Transient Stability Assessment. Trans. IEE Jpn. 1998, 118B, 127–133. [Google Scholar] [CrossRef] [Green Version]
  17. Ernst, D.; Bettiol, A.L.; RuizVega, D.; Wehenkel, L.; Pavella, M. Compensation Schemes for Transient Stability Assessment and Control. In Proceedings of the LESCOPE’98, Halifax, NS, Canada, 7–9 June 1998; pp. 225–230. [Google Scholar]
  18. Ernst, D.; Bettiol, A.L.; Zhang, Y.; Wehenkel, L.; Pavella, M. RealTime Transient Stability Emergency Control of the South-Southeast Brazilian System. In Proceedings of the SEPOPE’98, Curitiba, Brazil; 1998; pp. 1–9. Available online: https://www.researchgate.net/publication/224007124_Real-Time_Transient_Stability_Emergency_Control_of_the_South-Southeast_Brazilian_System (accessed on 30 September 2021).
  19. Ernst, D.; RuizVega, D.; Pavella, M. Preventive and Emergency Transient Stability Control. In Proceedings of the SEPOPE’2000, Curitiba, Brazil, 21–26 May 2000; pp. 1–10. Available online: https://www.researchgate.net/publication/229003465_Preventive_and_emergency_transient_stability_control (accessed on 30 September 2021).
  20. Ernst, D.; Ruiz-Vega, D.; Pavella, M.; Hirsch, P.; Sobajic, D. SIME: A Unified Approach to Transient Stability Contingency Filtering, Ranking and Assessment. IEEE Trans. Power Syst. 2001, 16, 435–443. [Google Scholar] [CrossRef]
  21. McNabb, P.; Bialek, J. A priori transient stability indicator of islanded power systems using extended equal area criterion. In Proceedings of the IEEE Power and Energy Society General Meeting, San Diego, CA, USA, 22–26 July 2012. [Google Scholar]
  22. Chen, C.; Tang, A.; Huang, Y.; Zheng, X.; Xu, Q. The Research of DPFC Considering EEAC. In Proceedings of the International Conference on Industrial Informatics-Computing Technology, Intelligent Technology, Industrial Information Integration, Wuhan, China, 2–3 December 2017; pp. 246–249. [Google Scholar] [CrossRef]
  23. Chenlu, W.; Xiaohua, Z.; Yuan, Z.; Chen, L.; Dezhuang, M. Impact identification of DFIG model on transient security analysis in power system. Energy Rep. 2020, 6, 307–311. [Google Scholar] [CrossRef]
  24. Li, Y.; Huang, S.; Li, H.; Zhang, J. Application of phase sequence exchange in emergency control of a multi-machine system. Int. J. Electr. Power Energy Syst. 2020, 121, 106136. [Google Scholar] [CrossRef]
  25. Li, F.; Wang, Q.; Tang, Y.; Xu, Y. An integrated method for critical clearing time prediction based on a model-driven and ensemble cost-sensitive data-driven scheme. Int. J. Electr. Power Energy Syst. 2021, 125, 106513. [Google Scholar] [CrossRef]
  26. Xue, Y.; Zhang, Y. Practical and Flexible Incorporation of AVR into Extended Equal Area Criterion. IFAC Proc. Vol. 1993, 26, 753–759. [Google Scholar] [CrossRef]
  27. Xue, Y.; Zhang, Y. Direct transient stability assessment with two-axis generator model. IFAC Proc. Vol. 1990, 23, 7–12. Available online: https://www.sciencedirect.com/science/article/pii/S1474667017513907 (accessed on 30 September 2021). [CrossRef]
  28. Xue, Y.; Sun, K. Generalized Equal Area Criterion for Transient Stability Analysis. In Proceedings of the 4th IEEE Conference on Energy Internet and Energy System Integration, Wuhun, China, 30 October–1 November 2020; pp. 2363–2368. [Google Scholar]
  29. Tao, Q.; Xue, Y.; Li, C. Transient Stability Analysis of AC/DC System Considering Electromagnetic Transient Model. In Proceedings of the IEEE Innovative Smart Grid Technologies, Chengdu, China, 21–24 May 2019; pp. 313–317. [Google Scholar]
  30. Pavella, M.; Murthy, P.G. Transient Stability of Power Systems, Theory and Practice, 1st ed.; John Wiley & Sons: Chichester, UK, 1993. [Google Scholar]
  31. Tavora, C.J.; Smith, O.J.M. Characterization of equilibrium and stability in power systems. IEEE Trans. Power App. Syst. 1972, 3, 1127–1130. [Google Scholar] [CrossRef]
Figure 1. Equal area criterion for a synchronous generator connected to an infinite bus. There is a δ m after which the area becomes negative and δ starts to decrease, i.e., stable case.
Figure 1. Equal area criterion for a synchronous generator connected to an infinite bus. There is a δ m after which the area becomes negative and δ starts to decrease, i.e., stable case.
Energies 14 07259 g001
Figure 2. Simplified diagram of a four-machine power system.
Figure 2. Simplified diagram of a four-machine power system.
Energies 14 07259 g002
Figure 3. Time-angle trajectories of the four-machine power system obtained by time-domain simulation. Dashed and solid lines show unstable and stable trajectories, respectively.
Figure 3. Time-angle trajectories of the four-machine power system obtained by time-domain simulation. Dashed and solid lines show unstable and stable trajectories, respectively.
Energies 14 07259 g003
Figure 4. OMIB δ P and t δ curves defined by the swing equation for a first-swing stable case.
Figure 4. OMIB δ P and t δ curves defined by the swing equation for a first-swing stable case.
Energies 14 07259 g004
Figure 5. OMIB δ P and t δ curves defined by the swing equation for a first-swing unstable case.
Figure 5. OMIB δ P and t δ curves defined by the swing equation for a first-swing unstable case.
Energies 14 07259 g005
Figure 6. Dependence of post-fault OMIB power on t e . The δ P curves are not necessarily sinusoidal.
Figure 6. Dependence of post-fault OMIB power on t e . The δ P curves are not necessarily sinusoidal.
Energies 14 07259 g006
Figure 7. Representation of a synchronous generator by a constant voltage behind transient reactance.
Figure 7. Representation of a synchronous generator by a constant voltage behind transient reactance.
Energies 14 07259 g007
Figure 8. Schematic representation of DOMIB with two added update points (two during-fault intervals and two post-fault intervals). Dashed lines show the initial ZOOMIB (or COOMIB) δ P curves and solid lines show the updated DOMIB curves.
Figure 8. Schematic representation of DOMIB with two added update points (two during-fault intervals and two post-fault intervals). Dashed lines show the initial ZOOMIB (or COOMIB) δ P curves and solid lines show the updated DOMIB curves.
Energies 14 07259 g008
Figure 9. Schematic representation of the OMIB function to form the OMIB equivalent model based on the specified type.
Figure 9. Schematic representation of the OMIB function to form the OMIB equivalent model based on the specified type.
Energies 14 07259 g009
Figure 10. Schematic representation of CCA function to find the CCA of the equivalent OMIB model.
Figure 10. Schematic representation of CCA function to find the CCA of the equivalent OMIB model.
Energies 14 07259 g010
Figure 11. Exceptional case: (a) the sum of the areas is always positive and (b) system is always stable.
Figure 11. Exceptional case: (a) the sum of the areas is always positive and (b) system is always stable.
Energies 14 07259 g011
Figure 12. Schematic representation of CMI function to find the ranked list of critical synchronous generators.
Figure 12. Schematic representation of CMI function to find the ranked list of critical synchronous generators.
Energies 14 07259 g012
Figure 13. Schematic representation of CCF function to form the candidate CCs and NCs.
Figure 13. Schematic representation of CCF function to form the candidate CCs and NCs.
Energies 14 07259 g013
Figure 14. Schematic representation of angle-to-time function to find the time and angular speed associated with a desired angle.
Figure 14. Schematic representation of angle-to-time function to find the time and angular speed associated with a desired angle.
Energies 14 07259 g014
Figure 15. Schematic representation of Trajectory function to find synchronous generators’ angle trajectory in time.
Figure 15. Schematic representation of Trajectory function to find synchronous generators’ angle trajectory in time.
Energies 14 07259 g015
Figure 16. The basic scheme to estimate the CCT with EEAC.
Figure 16. The basic scheme to estimate the CCT with EEAC.
Energies 14 07259 g016
Figure 17. First refinement scheme to improve the estimation of the CCT.
Figure 17. First refinement scheme to improve the estimation of the CCT.
Energies 14 07259 g017
Figure 18. Second refinement scheme to improve the estimation of the CCT.
Figure 18. Second refinement scheme to improve the estimation of the CCT.
Energies 14 07259 g018
Figure 19. Third refinement scheme to improve the estimation of the CCT.
Figure 19. Third refinement scheme to improve the estimation of the CCT.
Energies 14 07259 g019
Figure 20. Possible schemes to apply the EEAC concept to make an estimation of the CCT and the CC.
Figure 20. Possible schemes to apply the EEAC concept to make an estimation of the CCT and the CC.
Energies 14 07259 g020
Figure 21. Comparison of the δ P curves obtained with ZOOMIB and DOMIB models with time-domain simulations.
Figure 21. Comparison of the δ P curves obtained with ZOOMIB and DOMIB models with time-domain simulations.
Energies 14 07259 g021
Figure 22. Number of cases in each Error percentage interval for the basic scheme (a) with ZOOMIB assumptions and (b) with COOMIB assumptions.
Figure 22. Number of cases in each Error percentage interval for the basic scheme (a) with ZOOMIB assumptions and (b) with COOMIB assumptions.
Energies 14 07259 g022
Figure 23. Number of cases in each Error percentage interval for the refined schemes (a) first refinement scheme, (b) second refinement scheme, and (c) third refinement scheme.
Figure 23. Number of cases in each Error percentage interval for the refined schemes (a) first refinement scheme, (b) second refinement scheme, and (c) third refinement scheme.
Energies 14 07259 g023
Table 1. A comparison between the assumptions of different OMIB equivalents.
Table 1. A comparison between the assumptions of different OMIB equivalents.
Assumptions and ApproximationsTrue OMIBZOOMIBCOOMIBDOMIB
Separation of generators to CC and NC
OMIB P e ( δ ) and P m ( δ ) have only one value for each δ ×
Classical model for synchronous generators×
Constant offsets between generator angles and their receptive PCOA× (a)
Zero offsets between generator angles and their receptive PCOA×××
(a) DOMIB updates the constant offsets between generator angles.
Table 2. A comparison between time-domain simulation results with the results obtained with different OMIB equivalent assumptions and Taylor series.
Table 2. A comparison between time-domain simulation results with the results obtained with different OMIB equivalent assumptions and Taylor series.
ModelCCA (rad)CCT (ms)
ZOOMIB1.084199.58
COOMIB1.085199.96
DOMIB1.038189.15
Time-domain with classical model1.036187
Time-domain with detailed model0.937160
Table 3. A comparison between time-domain simulation results with the results obtained with different basic schemes for the French network.
Table 3. A comparison between time-domain simulation results with the results obtained with different basic schemes for the French network.
Time-DomainBasic Scheme ZOOMIB aBasic Scheme COOMIB b
ScenarioCCT (ms)CCT (ms)Error (%)CCT (ms)Error (%)
1231323.71−40.13324.46−40.46
2159238.1649.79242.21−52.33
3173151.72−12.30155.4910.12
4277240.49−13.18263.374.92
5106122.7115.76124.27−17.24
6258unstable cunstable
7227159.41−29.78167.3526.28
8225203.00−9.78210.206.58
9195216.8411.20221.99−13.84
10205234.2014.24239.63−16.89
11184202.4810.04207.15−12.58
12198227.2614.78232.42−17.38
13182201.3110.61205.15−12.72
14189217.1114.87221.58−17.24
15267286.327.24295.36−10.62
16259279.337.85288.07−11.22
17258280.438.69288.68−11.89
1815918.74−88.2157.6263.76
19135136.731.28132.621.76
20119233.8496.50222.42−86.90
2198217.54121.98202.96−107.11
229577.97−17.9368.1428.27
2310481.34−21.7873.7029.14
24120111.19−7.34104.8312.64
25124116.86−5.76110.5610.84
2610579.86−23.9572.6430.82
27129125.42−2.78122.285.21
28129126.42−2.00122.285.21
29129124.75−3.30120.436.65
30122112.53−7.76106.8012.46
31126115.95−7.98110.4912.31
32140146.384.56143.14−2.25
33142148.514.58145.43−2.42
minimum d9518.741.2857.621.76
maximum d277323.71121.98324.46107.11
mean d168.76173.7021.50175.1221.88
a Basic scheme with acceleration criterion for CMI and ZOOMIB assumptions for OMIB equivalent. b Basic scheme with acceleration criterion for CMI and COOMIB assumptions for OMIB equivalent. c An ‘always unstable case’ is detected. d Scenarios detected as stable or unstable are not considered in calculations. Absolute values are considered.
Table 4. A comparison between time-domain simulation results with the results obtained with different refined schemes for the French network.
Table 4. A comparison between time-domain simulation results with the results obtained with different refined schemes for the French network.
Time-DomainFirst Refinement Scheme aSecond Refinement Scheme aThird Refinement Scheme a
ScenarioCCT (ms)CCT (ms)Error (%)CCT (ms)Error (%)CCT (ms)Error (%)
1231unstable b586.39−153.85stable c
2159235.91−48.37235.91−48.37235.86−48.34
3173132.5323.39132.5323.39133.1823.02
4277262.315.30262.315.30265.414.18
5106119.10−12.36119.10−12.36119.10−12.36
6258unstableunstableunstable
7227161.4328.89150.5033.70unstable
8225208.277.43197.8312.08unstable
9195232.52−19.24232.52−19.24unstable
10205255.70−24.73255.70−24.73245.51−19.76
11184215.32−17.02215.32−17.02201.38−9.44
12198249.73−26.12249.73−26.12241.21−21.82
13182212.02−16.49212.02−16.49194.26−6.73
14189236.59−25.18236.59−25.18229.82−21.60
15267306.82−14.91306.82−14.91unstable
16259299.81−15.76299.81−15.76294.38−13.66
17258failed354.87−37.54294.26-14.05
1815948.4169.55stablestable
19135129.993.71129.993.71unstable
20119209.06−75.68209.06−75.68209.73−76.25
2198187.45−91.28187.45−91.28188.22−92.06
229552.1445.12stablestable
2310455.2746.85stablestable
24120100.4616.29100.4616.2994.1221.57
25124105.9014.60105.9014.6099.9019.43
2610553.5549.00stablestable
27129107.9616.31104.4619.02unstable
28129107.9616.31104.4619.02unstable
29129105.7418.03101.4221.38unstable
3012289.3126.7984.4030.82unstable
3112692.7926.3688.1030.08unstable
32140130.886.51128.058.53122.1212.77
33142132.886.42130.168.34120.4015.21
minimum d9548.413.7184.403.7194.124.18
maximum d277306.8291.28586.39153.85294.3892.06
mean d168.76161.2627.13197.2129.46193.4625.43
a Basic scheme with ZOOMIB assumptions for OMIB equivalent plus a refinement scheme. b An ‘always unstable case’ is detected. c An ‘always stable case’ is detected. d Scenarios detected as stable or unstable are not considered in calculations. Absolute values are considered.
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Bahmanyar, A.; Ernst, D.; Vanaubel, Y.; Gemine, Q.; Pache, C.; Panciatici, P. Extended Equal Area Criterion Revisited: A Direct Method for Fast Transient Stability Analysis. Energies 2021, 14, 7259. https://doi.org/10.3390/en14217259

AMA Style

Bahmanyar A, Ernst D, Vanaubel Y, Gemine Q, Pache C, Panciatici P. Extended Equal Area Criterion Revisited: A Direct Method for Fast Transient Stability Analysis. Energies. 2021; 14(21):7259. https://doi.org/10.3390/en14217259

Chicago/Turabian Style

Bahmanyar, Alireza, Damien Ernst, Yves Vanaubel, Quentin Gemine, Camille Pache, and Patrick Panciatici. 2021. "Extended Equal Area Criterion Revisited: A Direct Method for Fast Transient Stability Analysis" Energies 14, no. 21: 7259. https://doi.org/10.3390/en14217259

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop