Modal Analysis (Added in Version 22)

 

Modal Analysis takes as an input a time-series of a numeric value (we call this a Signal) and then does a calculation of a specified time-window to break this time-series up into the summation of a set of damped sinusoidal waves. Each of these damped sinusoidal waves we call a Mode.

 

Signal

A signal is a time-series of a numeric value. In our case for transient stability this is the value of one field for one object over the period of time. For example it may be the Rotor Speed at a generator between 3 and 10 seconds and thus be a numeric representation of the following picture. From this example you can see that this signal is not just one frequency and that it has components of multiple frequencies. We will shortly numerically define an approximation of this signal as a summation of Modes.

 

Mode

In our application, a mode is an exponential multiplied by a sinusoidal. Thus one mode is a time varying signal defined as follows.

The exponential term defines the envelope of the sinusoidal. Modes can be either damped or undamped depending on the value in the exponent of the exponential term. Consider as an example a 2 Hz waveform which has either damped or undamped as in the following figure.

Damping Ratio Percentage

The value of Lambda is a measure of damping, but the description of how damped a signal is should also depend on the frequency of the oscillation. Engineers frequency define a Damping Ratio Percentage as follows. Notice that when Lambda is negative (meaning the mode is damped), then the damping ratio percentage is positive.

Approximating a Signal as Multiple Modes

A signal as shown earlier is made up of multiple models. We will define an approximation of our signal as a summation of modes, but the contribution of each mode to each signal is defined by a complex number representing both a magnitude and a phase relationship. As an example consider 3 modes as follows

And then approximate our signal x(t) as a summation of those three modes

Detrending

PowerWorld will also take into account a "trend" of the signal as well. Consider a signal like that shown in the next figure which is a linear increase with time added to a pure sine wave.

Overall Signal Approximation

Our general modal analysis tool will do either a linear or quadratic detrending, but for now the Transient Result Analyzer always does a linear detrending calculation. The overall signal is then approximated as follows. The greentext parameters are assigned to the TSResultAnalysisMode objects. The purple text parameters are assigned to the TSResultAnalysisSignal objects which the red values are part of the TSResultAnalysisModeMagAngle objects. If we have 5 modes and 10 signals, then we will have 50 ModeMagAngle objects (one for each combination of 1 mode and 1 signal).

Rank

In addition to the complex number assigned to each TSResultAnalysisModeMagAngle object, we also calculate a numeric value to rank each mode's contribution to the signal. To do this we only want to use the magnitude portion of that contribution as the phase angle simple represents a phase shift (basically a time-shift) of how the mode impacts the signal. The exponential matter too though because even though the pure magnitude may be small relative to other modes, if the mode is undamped then it will grow with time. As a result, to calculate a rank, PowerWorld uses the pure magnitude if the mode is damped and for undamped modes it uses the magnitude multiplied by the exponential at the end of the time window. This is depicted in the next image. The values actually displayed for Rank are then normalized across all modes for 1 signal so that the summation of the Rank values is 100. In this way the Rank can be thought of as a percentage contribution of the mode to a particular signal.

When making decisions for user display about which signal are damped or undamped, we then use this Rank to determine whether to consider a model as contributing enough (Rank > UndampMinRank specified with the time window) to the signal that we would consider the signal to be undamped if the model has too low of a damping ratio percentage. This is determined by the value

Choosing the Time Window

When doing a Modal Analysis calculation, special care should be taken when choosing the Start and End Time of the time window. If a time window is chosen which has a large discrete jump (like occurs upon apply or clearing a fault), then the algorithms will still try to fit a set of damped sinusoids to these signals. You may even get what appears to be a decent match, but will not be a useful calculation.

Calculation of Modes using Iterated Matrix Pencil Method

There are many numerical techniques which can be used to calculate the modes within a group of signals. The Transient Result Analyzer uses the Iterated Matrix Pencil method.

Realize that the modes apply to the entire group of signals. Thus if you have 20,000 bus frequencies, there are not 20,000 different modes associated with that group of signals. In most power system signals we're looking at, there are probably only a dozen or less modes within that group of signals. Because of this knowledge that we don't need all the signals to calculate our modes, the Result Analyzer uses the following process to perform modal analysis

  1. Calculate the trend line or quadratic for each signal in your list of 20,000 signals. The curves passed to the algorithm for finding models will then use the numerical values with these trend lines substracted from them (this is called detrending).

  2. Choose one signal from the list in step 1 (This is the ModalStartObject and ModalStartField as defined in the time window .

  3. Sample the chosen signals a frequency of 2 times the ModalMaxHz as specified with the time window.

  4. Perform a modal analysis calculation using the Matrix Pencil method on the signals in Step #3. (This creates the TSResultAnalysisMode objects)

  5. Calculate all the complex numbers that fit the list of all 20,000 signals you have to this short list of modes (this calculation is much faster than the modal analysis so doing it on all signals is very fast). This calculates the TSResultAnalysisSignal objects and the TSResultAnalysisModeMagAngle objects.

  6. Calculate the signal error cost function for each signal by comparing the actual signal numeric values to the approximated signal. Whatever signal has the worse match will now be added to the list of signals to include in the modal calculation

  7. Go back to Step #3 and repeat the process until you reach the ModalMaxIterations as specified with the time window.