Multicore Simulation of Power System Transients
Multicore technology has brought about the reexamination of traditional power system electromagnetic transient simulation methods. The technological penetration of this advancement in power system simulation is not noticeable, but its demand is growing in importance in anticipation of the manycore shift. The availability of this technology in personal computers has orchestrated the redesign of simulation approaches throughout the software industry  and in particular, the parallelization of power system simulation. Multicore Simulation of Power System Transients shows how to parallelize the simulation of power system transients using a multicore desktop computer. The book begins by introducing a power system large enough to demonstrate the potential of multicore technology. Then, it is shown how to formulate and partition the power system into subsystems that can be solved in parallel with a program written in C#. Formulating a power system as subsystems exploits multicore technology by parallelizing its solution and can result in significant speedups. For completeness, the power system presented in this book is also built and run in MATLAB®/Simulink® SimPowerSystems  one of the most widelyused commercial simulation tools today.
Inspec keywords: timedomain analysis; power apparatus; power system simulation; multiprocessing systems; power system transients; multithreading
Other keywords: time domain simulation; power system model; power apparatus model; multicore simulation; network formulation; multithreading; data partitioning; power system transient
Subjects: Multiprocessing systems; General and management topics; Parallel software; General electrical engineering topics; Power system management, operation and economics; Power engineering computing
 Book DOI: 10.1049/PBPO067E
 Chapter DOI: 10.1049/PBPO067E
 ISBN: 9781849195720
 eISBN: 9781849195737
 Page count: 312
 Format: PDF

Front Matter
 + Show details

Hide details
 + Show details


1 Introduction
 + Show details

Hide details

p.
1
–5
(5)
The purpose of this book is to present and demonstrate an alternative simulation approach to simulate power system transients. Toward this end, the approach adopted is tailored to multicore computers, and its usefulness is justified by comparing the runtime against a widelyused commercial simulation tool. The development of multicore solver needs expertise from two areas: power system engineering and software engineering. Bridging these two areas often requires the collaboration of a team of professionals to complete the development in acceptable time.
 + Show details


2 The power system model
 + Show details

Hide details

p.
7
–24
(18)
The simulation methodology presented in this book is demonstrated by parallelizing the simulation of a notional Navy shipboard power system model on a quadcore desktop computer running Windows 7. The model presents characteristics of Navy shipboard power systems (AC^{10}radial type), but it does not represent any particular vessel.
 + Show details


3 Time domain simulation
 + Show details

Hide details

p.
25
–34
(10)
The development of this book required writing a multicore solver for Windows to demonstrate the performance of the partitioning method presented herein. Such program requires implementing several time domain simulation concepts not always transparent to users. This chapter introduces such concepts and their notations. In addition to what is presented in this chapter, readers are referred to numerous good books and papers in the area of time domain simulation. Excellent resources to learn power system simulation theory are the books written by H. W. Dommel and N. Watson and J. Arrillaga. Not much theoretical background in time domain simulation is assumed to follow the discussion presented in this chapter. Instead, this chapter was written to provide a foundation of key principles required to develop a time domain solver that can address intermittent highfrequency switching actions.
 + Show details


4 Discretization
 + Show details

Hide details

p.
35
–73
(39)
This chapter examines the mathematical concept of discretization and its application to power system simulation. Discretization is a transformation by which continuous differential equations are transformed into difference algebraic equations. The importance of discretization is that it allows to produce solutions at and between time grid divisions.
 + Show details


5 Power apparatus models
 + Show details

Hide details

p.
75
–120
(46)
This chapter presents basic 'place holder' models to represent the power apparatus such as power cables, protective devices, power filters, rectifiers, inverters, and induction motor drives.
 + Show details


6 Network formulation
 + Show details

Hide details

p.
121
–141
(21)
This chapter starts by introducing multiterminal component theory to illustrate how isolated power apparatus blocks interconnect to form a connected network. Then, it is shown how to blockdiagonalize said power apparatus equations, how to form the tensor, and, finally, how to obtain the immittance matrices of the electrical network.
 + Show details


7 Partitioning
 + Show details

Hide details

p.
143
–201
(59)
This chapter explains how to partition a power system model. Diakoptics is introduced first in honor of the legacy partitioning method developed by Gabriel Kron. Following the introduction of diakoptics, the reader will find the partitioning approaches used in this book, which are node and mesh tearing.
 + Show details


8 Multithreading
 + Show details

Hide details

p.
203
–214
(12)
The first half of this chapter introduces the solution procedure for multicore simulation of power system transient; that is, the sequence of steps that the multicore solver takes during each timestep. The second half of this chapter provides a simple C# program to show how to parallelize the solution of the equations using threads, and how to synchronize these threads in a “fork/join” algorithm. Each thread will represent a subsystem, which implies that communication between threads will be necessary. Thread synchronization is necessary to exchange data (results) across subsystems at each timestep of the simulation, and it is an important consideration in developing multithreaded solvers.
 + Show details


9 Performance analysis
 + Show details

Hide details

p.
215
–242
(28)
The sequence of steps taken by the multicore solver when solving the parallel equations presented in the previous chapters was carried out using Microsoft C# as the programming language. This chapter evaluates runtimes as power systems are partitioned several times. This chapter also evaluates the potential speedups of using node and mesh tearingand of other metrics as wellof simulating Systems 1, 2, 3, and 4 with the multicore solver developed for this book. Such multicore solver, written entirely in C#, implements all concepts introduced in earlier chapters.
 + Show details


10 Overall summary and conclusions
 + Show details

Hide details

p.
243
–249
(7)
This book demonstrated a methodology to reduce the runtime of power system transient simulations by parallelizing the solution on a multicore desktop computer running Windows as the operating system. This book directed research and parallel programming efforts toward the solution of this problem by properly exploiting the rapid advancement in multicore technology.
 + Show details


Appendix A: Compatible frequencies with Δt
 + Show details

Hide details

p.
251
–256
(6)
The timestep Δt is said to be compatible with a signal if it fits the signal's period an integernumber of times. The compatibility ensures PWM carrier frequencies (assumed constant) are sampled exactly at their peaks and zerocrossings, which avoids aliasing. This exact (compatible) fit avoids the 2ndharmonic problem in RMS measurements. It is also assumed that the signal frequency (60 Hz) is constant.
 + Show details


Appendix B: Considerations of mesh and nodal analysis
 + Show details

Hide details

p.
257
–262
(6)
The parallel equations of the multicore solver were presented using both mesh and nodal formulations. The reason for including both methods was to compare their performance in a parallel scenario. It was determined that the main difference between these two formulation methods in a parallel environment is the rate at which the boundary network grows with increasing number of partitions. This is an important consideration to produce finegrained parallel simulations. In addition to this outcome, and for completeness, some contrast considerations and practical experiences in working with both methods are summarized in this appendix. Before the summary, a clarification between mesh and loop analysis is provided.
 + Show details


Back Matter
 + Show details

Hide details
 + Show details
