Pour la documentation en FRANÇAIS, utilisez l’outil de traduction de votre navigateur Chrome, Edge ou Safari. Voir un exemple.

# Explanation of Improved Speed with SSN

This section explains the fundamental reasons behind SSN speed improvements over regular state-space methods, in both real-time and non-real-time applications.

The reason is that SSN makes fewer multiply-addition operations for the same network.

In the figure above, we compare SSN and state-space (SS) for a system with x states and y inputs.

In SS there is, therefore:

x*x+x*y mult-add operations (operations in SS method)

to be done at each time step. In the SSN method, two SSN groups separated by 3 nodal connection points (separating the complete network in two equal part let say) are defined. In this case, the algorithm would imply 2 state-space system iterations with x/2 state variables each, plus a 3x3 nodal matrix inversion.

This results in:

(x*x+x*y)/2 mult-add operations (operations in SSN method)

plus 3x3 matrix factorization.

If the number of SSN nodes is small compared to x, then SSN cuts approximately by half the total number of operations required by the state-space iterations.

More generally, if the Q SSN groups are balanced in size, the state-space part of SSN will be Q times faster than pure state-space. Then the challenge is to keep the admittance matrix small. Full LU factorization of an admittance matrix is O(r3) operation, where r is the rank or row size of the admittance matrix.

Since ARTEMiS v7.0, the SSN LU factorization routine is made according to the 1969 Dommel paper, in which only modified row/column of the admittance matrix are refactorized. Therefore, the real criteria in SSN are to keep the switched nodes of the admittance matrix small. For example, applications in voltage control with few switches and many controlled PQ injections can have large admittance matrix without the noticeable impact of the real-time computational speed. This is because unswitched row/column of the admittance matrix are pre-factorized before going into the real-time loop.

• No labels