Вы находитесь на странице: 1из 1100

PowerFactory Users Manual

DIgSILENT PowerFactory Version 14.0

DIgSILENT GmbH Gomaringen, Germany 2008

Publisher: DIgSILENT GmbH Heinrich-Hertz-Strae 9 72810 Gomaringen / Germany Tel.: +49 (0) 7072 - 9168-0 Fax: +49 (0) 7072 - 9168-88

Please visit our homepage at: http://www.digsilent.de

Copyright DIgSILENT GmbH. All rights reserved. No part of this publication may be reproduced or distributed in any form without permission of the publisher November 2008

DIgSILENT PowerFactory

Users Manual

Contents

General Information
Welcome DIgSILENT Contact and Support About this Guide 1-1 2-1 3-1

3.1 The PowerFactory Users Manual . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-1 3.2 Used Conventions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-1 3.3 The PowerFactory Help System . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .3-3

PowerFactory Overview
4.1 4.2 4.3 4.4 4.5 General Concept . . . . . . . . . . . . . PowerFactory Simulation Functions General Design of PowerFactory . . Data Arrangement . . . . . . . . . . . . User Interface . . . . . . . . . . . . . . . 4.5.1 Menu Bar . . . . . . . . . . . . . 4.5.2 Main Toolbar . . . . . . . . . . . 4.5.3 The Output Window. . . . . . 4.6 Getting Help . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ...... ...... ...... ...... ...... ...... ...... ...... ...... . . . . . . . . . ...... ...... ...... ...... ...... ...... ...... ...... ...... ... ... ... ... ... ... ... ... ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

4-1
. .4-1 . .4-2 . .4-3 . .4-4 . .4-6 . .4-9 . .4-9 .4-13 .4-17

Program Setting, Logging on and User Accounts


5.1 Program Configurations and Settings . . . . . . . . . . . . . . . . 5.2 The Log-on Dialogue . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.1 Log On Configuration . . . . . . . . . . . . . . . . . . . . . . 5.2.2 License Settings . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.3 Network Settings . . . . . . . . . . . . . . . . . . . . . . . . . 5.2.4 Database Configuration . . . . . . . . . . . . . . . . . . . . 5.2.5 Advanced Settings . . . . . . . . . . . . . . . . . . . . . . . . 5.2.6 Appearance Settings . . . . . . . . . . . . . . . . . . . . . . 5.3 User Accounts and User Groups. . . . . . . . . . . . . . . . . . . . 5.3.1 PowerFactory Database Overview . . . . . . . . . . . . . 5.3.2 The Database Administrator . . . . . . . . . . . . . . . . 5.3.3 Creating and Managing User Accounts . . . . . . . . . . 5.3.4 Creating User Groups . . . . . . . . . . . . . . . . . . . . . . 5.3.5 The Demo Account . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

5-1
.5-1 .5-1 .5-2 .5-3 .5-4 .5-5 .5-5 .5-5 .5-5 .5-6 .5-6 .5-7 .5-8 .5-8
i

DIgSILENT PowerFactory

Users Manual

User Settings
6.1 6.2 6.3 6.4 6.5 6.6 6.7 6.8 General Settings . . . . . . . . . Graphic Windows Settings . . Data Manager Settings . . . . . Output Window Settings. . . . Functions Settings . . . . . . . . Directories . . . . . . . . . . . . . Editor . . . . . . . . . . . . . . . . . Station Ware . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... .... .... .... .... .... .... .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... .... .... .... .... .... .... .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

6-1
. 6-1 . 6-2 . 6-4 . 6-5 . 6-5 . 6-6 . 6-6 . 6-7

The PowerFactory Data Model


7.1 Database, Objects and Classes . . . . . . . . . . . . . . . . . . . . . . . . . 7.2 PowerFactory Project Structure . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.1 The Library. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.2 The Network Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.3 Operation Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.4 Study Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.5 Changed Settings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3 The Network Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3.1 Network Diagrams. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3.2 Network Topology Handling . . . . . . . . . . . . . . . . . . . . . . 7.3.3 Network Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.3.4 Variations and Expansion Stages . . . . . . . . . . . . . . . . . . 7.4 The Equipment Type Library . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.5 The Operational Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.5.1 Circuit Breaker Ratings . . . . . . . . . . . . . . . . . . . . . . . . . 7.5.2 Demand Transfer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.5.3 Faults. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.5.4 Capability Curves for Generators. . . . . . . . . . . . . . . . . . . 7.5.5 Outages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.5.6 Running Arrangements . . . . . . . . . . . . . . . . . . . . . . . . . 7.5.7 Thermal Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.6 The Templates Library . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.7 Parameter Characteristics and Parametric Studies . . . . . . . . . . . . 7.8 DIgSILENT Programming Language (DPL) Scripts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

7-1
. . . . . . . 7-1 . . . . . . . 7-2 . . . . . . . 7-3 . . . . . . . 7-5 . . . . . . . 7-5 . . . . . . . 7-6 . . . . . . . 7-6 . . . . . . . 7-7 . . . . . . . 7-8 . . . . . . 7-10 . . . . . . 7-12 . . . . . . 7-17 . . . . . . 7-19 . . . . . . 7-20 . . . . . . 7-21 . . . . . . 7-22 . . . . . . 7-23 . . . . . . 7-27 . . . . . . 7-27 . . . . . . 7-29 . . . . . . 7-30 . . . . . . 7-31 . . . . . . 7-31 . . . . . . 7-32

General Information about Analyses in PowerFactory


8.1 8.2 8.3 8.4 Calculation Commands in PowerFactory . . . Edit relevant Objects for Calculation . . . . . Results . . . . . . . . . . . . . . . . . . . . . . . . . . Comparisons Between Calculations . . . . . . 8.4.1 Editing a Set Of Comparison Cases . 8.4.2 Update Database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

8-1
. 8-1 . 8-2 . 8-3 . 8-3 . 8-4 . 8-5

ii

DIgSILENT PowerFactory

Users Manual

Handling
Basic Project Definition
9.1 Defining and Configuring a Project. . . . . . . 9.1.1 The Project Edit Dialogue . . . . . . . . 9.1.2 Project Settings . . . . . . . . . . . . . . . 9.1.3 Activating and Deactivating Projects 9.1.4 Exporting and Importing of Projects 9.2 Creating New Grids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... .... .... .... .... .... . . . . . . ......... ......... ......... ......... ......... ......... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

9-1
.9-1 .9-3 .9-4 .9-5 .9-6 .9-6

The Graphics Editor

10-1

10.1 Defining Network Models with the Graphical Editor . . . . . . . . . . . . . . . . . .10-1 10.1.1 Adding New Power System Elements . . . . . . . . . . . . . . . . . . . . . . .10-1 10.1.2 Drawing Nodes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-3 10.1.3 Drawing Branch Elements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .10-4 10.1.4 Marking and Editing Power System Elements . . . . . . . . . . . . . . . . .10-5 10.1.5 Interconnecting Power Subsystems . . . . . . . . . . . . . . . . . . . . . . . . 10-6 10.1.6 Working with Substations in the Graphical Editor . . . . . . . . . . . . . . 10-9 10.1.7 Working with Branches in the Graphical Editor . . . . . . . . . . . . . . . 10-10 10.1.8 Working with Templates . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-11 10.1.9 Defining and Working with Transmission Lines . . . . . . . . . . . . . . . 10-13 10.1.10 Working with Single Phase Elements . . . . . . . . . . . . . . . . . . . . . 10-15 10.2 Graphic Windows and Database Objects . . . . . . . . . . . . . . . . . . . . . . . . . 10-15 10.2.1 Network Diagrams and Graphical Pages . . . . . . . . . . . . . . . . . . . . 10-16 10.2.2 Active Graphics, Graphics Board and Study Cases . . . . . . . . . . . . . 10-17 10.2.3 Single Line Graphics and Data Objects . . . . . . . . . . . . . . . . . . . . . 10-18 10.2.4 Editing and Selecting Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-19 10.2.5 Creating New Graphic Windows. . . . . . . . . . . . . . . . . . . . . . . . . . 10-21 10.3 Basic Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-22 10.3.1 The Page Tab . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-22 10.3.2 The Drawing Toolboxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-23 10.3.3 The Active Grid Folder (Target Folder) . . . . . . . . . . . . . . . . . . . . . 10-23 10.4 Drawing of Network Components from Templates or Predefined Objects . . 10-24 10.4.1 Creating a new substation in an Overview Diagram . . . . . . . . . . . . 10-24 10.4.2 Show Detailed Substation Graphic . . . . . . . . . . . . . . . . . . . . . . . . 10-25 10.4.3 Drawing Diagrams from Predefined Objects . . . . . . . . . . . . . . . . . 10-26 10.5 Graphic Commands, Options and Settings. . . . . . . . . . . . . . . . . . . . . . . . 10-30 10.5.1 General Commands and Settings . . . . . . . . . . . . . . . . . . . . . . . . . 10-30 10.5.2 Commands and Settings for Block Diagrams and Single Line Graphics10-37 10.5.3 Commands and Settings for Single Line Graphics . . . . . . . . . . . . . 10-38 10.5.4 Graphic Layers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-41 10.5.5 Color Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-45 10.5.6 The Title Block. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-46 10.5.7 The Legend Block . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-46 10.5.8 Editing and Changing Symbols of Elements . . . . . . . . . . . . . . . . . 10-46 10.6 Result Boxes-Text Boxes and Labels. . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-47 10.6.1 General Concept . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-47 10.6.2 Editing Result Boxes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-48 10.6.3 Formatting Result Boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-51 10.6.4 Text Boxes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-51 10.6.5 Labels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10-51
iii

DIgSILENT PowerFactory

Users Manual

The Data Manager


11.1 Using the Data Manager . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1.1 Moving Around in the Database Tree. . . . . . . . . . . . . . . . . 11.1.2 Adding New Items . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1.3 Deleting an Item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.1.4 Cut, Copy, Paste and Move Objects . . . . . . . . . . . . . . . . . . 11.1.5 The Data Manager Message Bar . . . . . . . . . . . . . . . . . . . . 11.1.6 Additional Features . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Defining Network Models with the Data Manager . . . . . . . . . . . . . 11.2.1 Defining New Network Components in the Data Manager . . 11.2.2 Connecting Network Components in the Data Manager . . . . 11.2.3 Defining Substations in the Data Manager . . . . . . . . . . . . . 11.2.4 Defining Branches in the Data Manager . . . . . . . . . . . . . . . 11.2.5 Defining Sites in the Data Manager . . . . . . . . . . . . . . . . . . 11.2.6 Editing Network Components using the Data Manager . . . . 11.3 Searching for Objects in the Data Manager. . . . . . . . . . . . . . . . . . 11.3.1 Sorting Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3.2 Searching by Name . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3.3 Using Filters for Search . . . . . . . . . . . . . . . . . . . . . . . . . . 11.4 Editing Data Objects in the Data Manager . . . . . . . . . . . . . . . . . . 11.4.1 Editing in Object Mode. . . . . . . . . . . . . . . . . . . . . . . . . . . 11.4.2 Editing in "Detail'' Mode . . . . . . . . . . . . . . . . . . . . . . . . . . 11.4.3 Copy and Paste while Editing . . . . . . . . . . . . . . . . . . . . . . 11.5 The Flexible Data Page Tab in the Data Manager . . . . . . . . . . . . . 11.5.1 Customizing the Flexible Data Page. . . . . . . . . . . . . . . . . . 11.6 The Input Window in the Data Manager. . . . . . . . . . . . . . . . . . . . 11.6.1 Input Window Commands . . . . . . . . . . . . . . . . . . . . . . . . 11.7 Save and Restore Parts of the Database. . . . . . . . . . . . . . . . . . . . 11.7.1 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.8 Spreadsheet Format Data Import/Export . . . . . . . . . . . . . . . . . . . 11.8.1 Export to Spreadsheet Programs (e. g. MS EXCEL) . . . . . . . 11.8.2 Import from Spreadsheet Programs (e. g. MS EXCEL) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

11-1
. . . . . 11-1 . . . . . 11-3 . . . . . 11-4 . . . . . 11-6 . . . . . 11-6 . . . . . 11-7 . . . . . 11-7 . . . . . 11-8 . . . . . 11-9 . . . . . 11-9 . . . . . 11-9 . . . . 11-10 . . . . 11-11 . . . . 11-11 . . . . 11-12 . . . . 11-12 . . . . 11-13 . . . . 11-13 . . . . 11-16 . . . . 11-17 . . . . 11-17 . . . . 11-19 . . . . 11-20 . . . . 11-21 . . . . 11-22 . . . . 11-22 . . . . 11-23 . . . . 11-24 . . . . 11-25 . . . . 11-25 . . . . 11-26

Grouping Objects

12-1

12.1 Areas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1 12.2 Virtual Power Plants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-1 12.2.1 Defining and Editing a New Virtual Power Plant . . . . . . . . . . . . . . . 12-2 12.2.2 Applying a Virtual Power Plant . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3 12.2.3 Inserting a Generator into a Virtual Power Plant and Defining its Virtual Power Plant Properties . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-3 12.3 Boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-4 12.4 Circuits . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-6 12.5 Feeders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-6 12.6 Network Operators. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-8 12.7 Network Owners . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-8 12.8 Paths . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-9 12.9 Zones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12-9

iv

DIgSILENT PowerFactory

Users Manual

Study Cases
13.1 13.2 13.3 13.4 13.5 13.6 13.7 13.8 Creating and Using Study Cases. . . . . . . . . . . . . . . . . . . . . . Summary Grid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Study Time . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . The Study Case Edit Dialogue . . . . . . . . . . . . . . . . . . . . . . . Variation Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . Operation Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Commands . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Events. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.8.1 Switching Events . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.8.2 Set Parameter Events . . . . . . . . . . . . . . . . . . . . . . . . 13.8.3 Short-Circuit Events . . . . . . . . . . . . . . . . . . . . . . . . . 13.8.4 Intercircuit Fault Events . . . . . . . . . . . . . . . . . . . . . . 13.8.5 Events of Synchronous Machines . . . . . . . . . . . . . . . . 13.8.6 Events of Loads . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.8.7 Outage of Element . . . . . . . . . . . . . . . . . . . . . . . . . . 13.8.8 Save Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.9 Results Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.10 Variable Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.11 Triggers. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13.12 Graphic Board . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

13-1
. . 13-2 . . 13-3 . .13-3 . .13-4 . .13-6 . . 13-6 . .13-6 . .13-7 . . 13-8 . . 13-8 . . 13-8 . .13-8 . . 13-8 . .13-9 . .13-9 . .13-9 . . 13-9 . 13-11 . 13-12 . 13-12

The Equipment Type Library The Operational Library


15.1 15.2 15.3 15.4 Circuit Breaker Ratings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Demand Transfers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Fault Cases and Fault Groups . . . . . . . . . . . . . . . . . . . . . . . . . Capability Curves (MVAr Limit Curves) for Generators . . . . . . . . 15.4.1 Creating a New Capability Curve Object . . . . . . . . . . . . . 15.4.2 Applying a Capability Curve from the Operational Library . 15.4.3 Defining an MVAr Limits Curve . . . . . . . . . . . . . . . . . . . 15.4.4 Editing a Capability Curve . . . . . . . . . . . . . . . . . . . . . . . 15.4.5 Defining a Variation of an MVAr Limits Curve . . . . . . . . . 15.4.6 Activating a Variation of an MVAr Limits Curve . . . . . . . . 15.5 Element Outages and Generator Deratings . . . . . . . . . . . . . . . . 15.6 Running Arrangements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15.6.1 Creating a Running Arrangement. . . . . . . . . . . . . . . . . . 15.6.2 Selecting a Running Arrangement . . . . . . . . . . . . . . . . . 15.6.3 Applying and Resetting a Running Arrangement . . . . . . . 15.6.4 Assigning a Running Arrangement . . . . . . . . . . . . . . . . . 15.7 Thermal Ratings. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

14-1 15-1
. . . . . . . 15-1 . . . . . . .15-2 . . . . . . .15-3 . . . . . . . 15-4 . . . . . . .15-4 . . . . . . .15-5 . . . . . . .15-5 . . . . . . .15-5 . . . . . . .15-6 . . . . . . . 15-6 . . . . . . . 15-6 . . . . . . .15-8 . . . . . . . 15-8 . . . . . . .15-9 . . . . . . 15-10 . . . . . . 15-11 . . . . . . 15-11

Operation Scenarios
16.1 16.2 16.3 16.4 Operation Scenario Subsets. . . . . . Storage of Operational Data . . . . . Creating a New Operation Scenario Activating Operation Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... ... ... ... . . . . . . . . . . . . . . . . . . . . . . . .

16-1
. . 16-2 . .16-8 . . 16-8 . 16-10
v

DIgSILENT PowerFactory

Users Manual

16.5 Saving Operation Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-11 16.6 Deactivating Operation Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16-13 16.7 Performing Actions on Operation Scenarios . . . . . . . . . . . . . . . . . . . . . . 16-13 16.8 Applying Operational Data from Operation Scenarios. . . . . . . . . . . . . . . . 16-14 16.9 Reporting Information about Operation Scenarios . . . . . . . . . . . . . . . . . . 16-15 16.10 Copying a Subset of an Operation Scenario to Another Operation Scenario16-15 16.11 Comparing Two Operation Scenarios . . . . . . . . . . . . . . . . . . . . . . . . . . 16-16

Network Variations and Expansion Stages

17-1

17.1 Basic Functionality . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-1 17.2 Creating New Variations and Expansion Stages . . . . . . . . . . . . . . . . . . . . . 17-2 17.3 Activating Variations and Expansion Stages . . . . . . . . . . . . . . . . . . . . . . . 17-3 17.4 Conflicts During Activation of Variations . . . . . . . . . . . . . . . . . . . . . . . . . . 17-4 17.5 Deleting an Expansion Stage. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-5 17.6 Displaying the Activation Times of Expansion Stages . . . . . . . . . . . . . . . . . 17-5 17.7 Editing the Activation Times of Expansion Stages . . . . . . . . . . . . . . . . . . . 17-5 17.8 The Recording Expansion Stage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-5 17.9 Setting a Expansion Stage as the Recording Stage . . . . . . . . . . . . . . . . . . 17-6 17.10 Displaying the Recording Expansion Stage in the Status Bar. . . . . . . . . . . 17-6 17.11 Checking/Editing the Study Time (Date/Time of the Calculation Case). . . . 17-6 17.12 The Variation Scheduler . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-6 17.13 Comparing Variations and Expansion Stages . . . . . . . . . . . . . . . . . . . . . . 17-8 17.14 Splitting Expansion Stages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-9 17.15 Applying Expansion Stages Changes . . . . . . . . . . . . . . . . . . . . . . . . . . 17-10 17.16 Consolidation of Variations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17-10 17.17 Coloring Variations and their Changes from within the Single Line Graphic17-10

Parameter Characteristics
18.1 18.2 18.3 18.4 18.5 18.6 18.7 18.8 18.9 Defining Scalar Characteristics . . . . . . . . . . . . . . . . Defining Discrete Time Characteristics . . . . . . . . . . . Defining Discrete Parameter Characteristics . . . . . . . Defining Continuous Parameter Characteristics . . . . . Defining Frequency Parameter Characteristics . . . . . Defining Time Parameter Characteristics . . . . . . . . . Defining Two-dimensional Parameter Characteristics . Importing Parameter Characteristics from Files . . . . . Handling Scales and Characteristics . . . . . . . . . . . . . ....... ....... ....... ....... ....... ....... ....... ....... ....... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

18-1
. . 18-1 . . 18-2 . . 18-3 . . 18-5 . . 18-7 . . 18-7 . . 18-8 . 18-10 . 18-11

Defining Variable Sets


19.1 19.2 19.3 19.4 The Variable Set Monitor Dialogue. Searching the Variables to Monitor Examples of Variable Selection . . . Selecting the Bus to be Monitored . . . . . . . . . . . . . . . . . .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

19-1
. . . 19-1 . . . 19-3 . . . 19-4 . . 19-10

Reporting Results in PowerFactory


20.1 Virtual Instruments . . . . . . . . . . 20.1.1 Virtual Instrument Panels . 20.1.2 Plots . . . . . . . . . . . . . . . 20.1.3 The Vector Diagram. . . . .
vi

20-1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... .... .... .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20-1 . . . 20-3 . . . 20-9 . . 20-19

. . . .

. . . .

. . . .

. . . .

. . . .

DIgSILENT PowerFactory

Users Manual

20.1.4 The Voltage Profile Plot . . . . . . . . . . . . . . . . . . . 20.1.5 Schematic Visualization . . . . . . . . . . . . . . . . . . . 20.1.6 The Waveform Plot . . . . . . . . . . . . . . . . . . . . . . 20.1.7 The Curve-Input Command. . . . . . . . . . . . . . . . . 20.1.8 Embedded Graphic Windows. . . . . . . . . . . . . . . . 20.1.9 Tools for Virtual Instruments. . . . . . . . . . . . . . . . 20.1.10 User-Defined Styles . . . . . . . . . . . . . . . . . . . . . 20.2 Results, Graphs and Documentation. . . . . . . . . . . . . . . . 20.2.1 Result Objects . . . . . . . . . . . . . . . . . . . . . . . . . . 20.2.2 The Form Editor. . . . . . . . . . . . . . . . . . . . . . . . . 20.2.3 The DIgSILENT Output Language . . . . . . . . . . . . 20.2.4 The Output of Device Data . . . . . . . . . . . . . . . . . 20.2.5 Output of Results. . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. . . . . . . . . . . . .

. 20-22 . 20-24 . 20-25 . 20-27 . 20-30 . 20-31 . 20-41 . 20-45 . 20-45 . 20-48 . 20-50 . 20-57 . 20-60

Data Management

21-1

21.1 Project Versions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-1 21.1.1 Creating a New Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21-2 21.1.2 Rollback Function. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21-3 21.1.3 Checking Dependencies of a Version . . . . . . . . . . . . . . . . . . . . . . . 21-3 21.1.4 Deleting a Version . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-3 21.2 Derived Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21-4 21.3 Comparing and Merging Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .21-7 21.4 Project Baselining. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-9 21.5 Sharing Projects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21-10

Power System Analysis Functions


Load Flow Analysis 22-1
22.1 Technical Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-2 22.1.1 Network Representation and Calculation Methods . . . . . . . . . . . . . .22-2 22.1.2 Active and Reactive Power Control. . . . . . . . . . . . . . . . . . . . . . . . . 22-5 22.1.3 Load Flow Analysis of Low Voltage Systems . . . . . . . . . . . . . . . . . .22-6 22.2 Executing Load Flow Calculations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22-6 22.3 Load Flow Calculation Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-7 22.3.1 Basic Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22-7 22.3.2 Active Power Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .22-9 22.3.3 Advanced Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-10 22.3.4 Iteration Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-12 22.3.5 Outputs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-13 22.3.6 Low Voltage Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-14 22.3.7 Advanced Simulation Options . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-15 22.4 Troubleshooting Load Flow Calculations . . . . . . . . . . . . . . . . . . . . . . . . . 22-16 22.5 Load Flow Sensitivities . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-17 22.5.1 Load Flow Sensitivities Options . . . . . . . . . . . . . . . . . . . . . . . . . . 22-18 22.5.2 Load Flow Sensitivities Execution and Results . . . . . . . . . . . . . . . . 22-19 22.5.3 Technical Background . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22-20

vii

DIgSILENT PowerFactory

Users Manual

Short-Circuit Analysis
23.1 Technical Background . . . . . . . . . . . . . . . . . . . . . . . . . 23.1.1 The Complete Method . . . . . . . . . . . . . . . . . . . . 23.1.2 The IEC 60909/VDE 0102 Method . . . . . . . . . . . . 23.2 Executing Short-Circuit Calculations . . . . . . . . . . . . . . . . 23.2.1 Toolbar/Main Menu Execution. . . . . . . . . . . . . . . 23.2.2 Context-Sensitive Menu Execution. . . . . . . . . . . . 23.2.3 Faults on Busbars/Terminals. . . . . . . . . . . . . . . . 23.2.4 Faults on Lines and Branches . . . . . . . . . . . . . . . 23.2.5 Multiple Faults Calculation . . . . . . . . . . . . . . . . . 23.3 Short-Circuit Calculation Options . . . . . . . . . . . . . . . . . . 23.3.1 Basic Options (All Methods) . . . . . . . . . . . . . . . . 23.3.2 Verification . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23.3.3 Basic Options (IEC 60909/VDE 0102 Method). . . . 23.3.4 Advanced Options (IEC 60909/VDE 0102 Method) 23.3.5 Basic Options (ANSI C37 Method) . . . . . . . . . . . . 23.3.6 Advanced Options (ANSI C37 Method). . . . . . . . . 23.3.7 Basic Options (Complete Method) . . . . . . . . . . . . 23.3.8 Advanced Options (Complete Method). . . . . . . . . . . . . . . . . . . . . . . . . . . ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

23-1
. . . . . . 23-1 . . . . . . 23-3 . . . . . . 23-5 . . . . . . 23-7 . . . . . . 23-7 . . . . . . 23-8 . . . . . . 23-8 . . . . . . 23-9 . . . . . 23-10 . . . . . 23-12 . . . . . 23-12 . . . . . 23-15 . . . . . 23-16 . . . . . 23-17 . . . . . 23-20 . . . . . 23-22 . . . . . 23-23 . . . . . 23-25

Harmonics Analysis
24.1 Harmonic Load Flow. . . . . . . . . . . . . . . . 24.1.1 Basic Options . . . . . . . . . . . . . . . 24.1.2 Advanced Options . . . . . . . . . . . . 24.2 Frequency Sweep . . . . . . . . . . . . . . . . . 24.2.1 Basic Options . . . . . . . . . . . . . . . 24.2.2 Advanced Options . . . . . . . . . . . . 24.3 Filter Analysis . . . . . . . . . . . . . . . . . . . . 24.4 Modelling Harmonic Sources . . . . . . . . . . 24.4.1 Harmonic Distortion Results . . . . . 24.4.2 Magnitudes and Phase values . . . . 24.4.3 Frequency Dependent Parameters. 24.4.4 Waveform Plot . . . . . . . . . . . . . . 24.5 Definition of Result Variables . . . . . . . . . ... ... ... ... ... ... ... ... ... ... ... ... ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... ....... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

24-1
. . . . 24-2 . . . . 24-2 . . . . 24-4 . . . . 24-4 . . . . 24-5 . . . . 24-6 . . . . 24-6 . . . . 24-8 . . . . 24-9 . . . 24-11 . . . 24-12 . . . 24-14 . . . 24-15

Stability and EMT Simulations


25.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . 25.2 Calculation Methods . . . . . . . . . . . . . . . . . . . . . 25.2.1 Balanced RMS Simulation . . . . . . . . . . . . 25.2.2 Three-Phase RMS Simulation . . . . . . . . . 25.2.3 Three-Phase EMT Simulation . . . . . . . . . 25.3 Setting Up a Simulation . . . . . . . . . . . . . . . . . . 25.3.1 Basic Options . . . . . . . . . . . . . . . . . . . . 25.3.2 Step Sizes. . . . . . . . . . . . . . . . . . . . . . . 25.3.3 Step Size Adaptation . . . . . . . . . . . . . . . 25.3.4 Advanced Options . . . . . . . . . . . . . . . . . 25.3.5 Noise Generation. . . . . . . . . . . . . . . . . . 25.3.6 Advanced Simulation Options - Load Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... .... .... .... .... .... .... .... .... .... .... .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

25-1
. . . . . . . . . 25-2 . . . . . . . . . 25-3 . . . . . . . . . 25-3 . . . . . . . . . 25-3 . . . . . . . . . 25-4 . . . . . . . . . 25-4 . . . . . . . . . 25-6 . . . . . . . . . 25-7 . . . . . . . . . 25-8 . . . . . . . . . 25-9 . . . . . . . . 25-11 . . . . . . . . 25-12

viii

DIgSILENT PowerFactory

Users Manual

25.4 Result Objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.4.1 Saving Results from Previous Simulations. . . . . . . . . . . . . . 25.5 Events. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.5.1 Switch Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.5.2 Parameter Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.5.3 Short-Circuit Events . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.5.4 Intercircuit Fault Events . . . . . . . . . . . . . . . . . . . . . . . . . . 25.5.5 Events of Synchronous Machines . . . . . . . . . . . . . . . . . . . . 25.5.6 Events of Loads . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.5.7 Outage of Element . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.5.8 Save Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.5.9 Set Integration Step Size . . . . . . . . . . . . . . . . . . . . . . . . . 25.5.10 Tap Event . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.6 Running a Simulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.7 Models for Stability Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.7.1 System Modelling Approach . . . . . . . . . . . . . . . . . . . . . . . 25.7.2 The Composite Model. . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.7.3 The Composite Frame . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.7.4 The Common Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.7.5 The Composite Block Definition . . . . . . . . . . . . . . . . . . . . . 25.7.6 Drawing Composite Block Diagrams and Composite Frames . 25.8 User Defined (DSL) Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.8.1 Modeling and Simulation Tools . . . . . . . . . . . . . . . . . . . . . 25.8.2 DSL Implementation: an Introduction . . . . . . . . . . . . . . . . 25.8.3 Defining DSL Models . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.9 The DIgSILENT Simulation Language (DSL) . . . . . . . . . . . . . . . . . 25.9.1 Terms and Abbreviations . . . . . . . . . . . . . . . . . . . . . . . . . 25.9.2 General DSL Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.9.3 DSL Variables . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.9.4 DSL Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.9.5 Definition Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.9.6 Initial Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.9.7 Equation Code . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.9.8 Equation Statement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.9.9 DSL Macros . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.9.10 Events and Messages . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.9.11 Example of a Complete DSL Model. . . . . . . . . . . . . . . . . . 25.10 Matlab Integration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.10.1 Implementation of Voltage Controller - Example . . . . . . . . 25.10.2 Implementation with Built-In Model . . . . . . . . . . . . . . . . . 25.10.3 Implementation with Matlab Model . . . . . . . . . . . . . . . . . 25.10.4 The Matlab File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25.10.5 Additional notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

. 25-13 . 25-14 . 25-15 . 25-18 . 25-18 . 25-18 . 25-19 . 25-19 . 25-19 . 25-19 . 25-20 . 25-20 . 25-20 . 25-20 . 25-21 . 25-21 . 25-26 . 25-29 . 25-32 . 25-36 . 25-37 . 25-43 . 25-45 . 25-46 . 25-50 . 25-54 . 25-54 . 25-55 . 25-55 . 25-56 . 25-56 . 25-57 . 25-60 . 25-60 . 25-61 . 25-62 . 25-63 . 25-64 . 25-64 . 25-65 . 25-66 . 25-69 . 25-70

Modal Analysis / Eigenvalue Calculation


26.1 Theory of Modal Analysis . . . . . . . . . . 26.2 Performing an Eigenvalue Analysis . . . . 26.3 Visualization of Modal Analysis Results . 26.3.1 Output Window . . . . . . . . . . . . 26.3.2 Modal Analysis Plots . . . . . . . . . 26.3.3 Data Browser . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... ... ... ... ... ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

26-1
. . 26-1 . .26-4 . . 26-5 . .26-5 . . 26-7 . 26-10
ix

DIgSILENT PowerFactory

Users Manual

Model Parameter Identification


27.1 Target Functions and Composite Frames . . . 27.1.1 The Measurement File Slot . . . . . . . . 27.1.2 Power System Element Slot . . . . . . . 27.1.3 Comparison Slot . . . . . . . . . . . . . . . 27.2 Creating The Composite Identification Model 27.2.1 The Comparison Object . . . . . . . . . . 27.3 Performing a Parameter Identification . . . . . 27.4 Identifying Primary Appliances . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... .... .... .... .... .... .... .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

27-1
. 27-2 . 27-3 . 27-3 . 27-4 . 27-4 . 27-5 . 27-6 . 27-8

Contingency Analysis

28-1

28.1 Single Time Phase Contingency Analysis . . . . . . . . . . . . . . . . . . . . . . . . . 28-1 28.2 The Single Time Phase Contingency Analysis Command . . . . . . . . . . . . . . 28-3 28.2.1 Basic Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28-4 28.2.2 Effectiveness. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28-8 28.2.3 Advanced Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28-8 28.2.4 Representing Contingency Situations - Contingency Cases. . . . . . . . 28-9 28.3 Multiple Time Phase Contingency Analysis . . . . . . . . . . . . . . . . . . . . . . . 28-12 28.4 The Multiple Time Phase Contingency Analysis Command . . . . . . . . . . . . 28-13 28.4.1 Basic Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28-14 28.4.2 Effectiveness. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28-15 28.4.3 Advanced Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28-16 28.4.4 Defining Time Phases for Contingency Analyses . . . . . . . . . . . . . . 28-16 28.4.5 Representing Contingency Situations with Post-Fault Actions . . . . . 28-17 28.5 Creating Contingency Cases Using Fault Cases and Groups . . . . . . . . . . . 28-19 28.5.1 Browsing Fault Cases and Fault Groups . . . . . . . . . . . . . . . . . . . . 28-20 28.5.2 Defining a Fault Case. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28-21 28.5.3 Defining a Fault Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28-21 28.6 Creating Contingency Cases Using the Contingency Definition Command . 28-22

Reliability Assessment

29-1

29.1 Network Reliability Assessment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29-1 29.1.1 Probabilistic Reliability Assessment - Technical Background . . . . . . . 29-2 29.1.2 The Reliability Assessment Command . . . . . . . . . . . . . . . . . . . . . . 29-6 29.1.3 Calculated Results for Reliability Assessment . . . . . . . . . . . . . . . . 29-13 29.1.4 Failure Models for Reliability Assessment . . . . . . . . . . . . . . . . . . . 29-17 29.1.5 Load Modeling for Reliability Assessment . . . . . . . . . . . . . . . . . . . 29-34 29.1.6 System State Enumeration in Reliability Assessment . . . . . . . . . . . 29-39 29.1.7 Failure Effect Analysis in Reliability Assessment . . . . . . . . . . . . . . 29-42 29.2 Voltage Sag Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29-48 29.2.1 Calculation Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29-48 29.2.2 Performing a Voltage Sag Table Assessment . . . . . . . . . . . . . . . . 29-51 29.3 Compact Reliability Glossary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29-54

Optimal Power Flow

30-1

30.1 OPF (Non-Linear Optimization) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30-1 30.1.1 Basic Options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30-1 30.1.2 Initialization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30-15
x

DIgSILENT PowerFactory

Users Manual

30.1.3 Advanced Options . 30.1.4 Iteration Control . . 30.1.5 Output . . . . . . . . . 30.2 OPF (Linear Optimization) . 30.2.1 Basic Options . . . . 30.2.2 Initialization . . . . . 30.2.3 Advanced Options . 30.2.4 Iteration Control . . 30.2.5 Output . . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

... ... ... ... ... ... ... ... ...

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. 30-16 . 30-16 . 30-18 . 30-20 . 30-22 . 30-26 . 30-27 . 30-28 . 30-29

Optimization Tools for Distribution Networks


31.1 Optimal Capacitor Placement . . 31.1.1 Objective Function . . . . 31.1.2 Optimization Procedure 31.1.3 Basic Options Page . . . 31.1.4 Advanced Options Page 31.1.5 Results . . . . . . . . . . . . 31.2 Open Tie Optimization . . . . . . 31.2.1 Optimization Procedure 31.2.2 Options Page. . . . . . . . 31.3 Cable Size Optimization. . . . . . 31.3.1 Objective Function . . . . 31.3.2 Optimization Procedure 31.3.3 Basic Options Page . . . 31.3.4 Advanced Options Page ... ... ... ... ... ... ... ... ... ... ... ... ... ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ........... ........... ........... ........... ........... ........... ........... ........... ........... ........... ........... ........... ........... ........... . . . . . . . . . . . . . . .... .... .... .... .... .... .... .... .... .... .... .... .... .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

31-1
. . 31-1 . .31-1 . .31-3 . . 31-4 . .31-6 . .31-9 . . 31-9 . .31-9 . 31-10 . 31-11 . 31-11 . 31-12 . 31-12 . 31-14

Protection
32.1 Creating a Protection Device . . . . . . . . . . . . . . . . . . . . . 32.1.1 Example: a Time-Overcurrent Relay. . . . . . . . . . . 32.1.2 Editing the Relay Elements . . . . . . . . . . . . . . . . . 32.2 Basic Protection Devices . . . . . . . . . . . . . . . . . . . . . . . . 32.2.1 The Current Transformer . . . . . . . . . . . . . . . . . . 32.2.2 The Voltage Transformer . . . . . . . . . . . . . . . . . . 32.2.3 The Relay Model . . . . . . . . . . . . . . . . . . . . . . . . 32.2.4 Directional Relay . . . . . . . . . . . . . . . . . . . . . . . . 32.2.5 The Frequency Measurement Unit . . . . . . . . . . . . 32.2.6 The Frequency Relay . . . . . . . . . . . . . . . . . . . . . 32.2.7 The Fuse Model . . . . . . . . . . . . . . . . . . . . . . . . . 32.2.8 The Instantaneous Overcurrent Relay . . . . . . . . . 32.2.9 The Logic Unit . . . . . . . . . . . . . . . . . . . . . . . . . . 32.2.10 The Measurement Unit . . . . . . . . . . . . . . . . . . . 32.2.11 The Time Overcurrent Relay . . . . . . . . . . . . . . . 32.2.12 Under-/Overvoltage Relay . . . . . . . . . . . . . . . . . 32.3 Path Definitions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.4 Protection Analysis Results . . . . . . . . . . . . . . . . . . . . . . 32.4.1 Reports. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.4.2 Results in Single Line Graph . . . . . . . . . . . . . . . . 32.4.3 Plots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.5 Short-Circuit Sweep . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.5.1 Options. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

32-1
. .32-1 . . 32-2 . .32-7 . 32-10 . 32-10 . 32-12 . 32-16 . 32-17 . 32-19 . 32-19 . 32-20 . 32-21 . 32-22 . 32-23 . 32-24 . 32-26 . 32-26 . 32-27 . 32-27 . 32-27 . 32-27 . 32-28 . 32-28
xi

DIgSILENT PowerFactory

Users Manual

32.5.2 Advanced Options . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.6 Time-Overcurrent Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.6.1 Changing Tripping Characteristics . . . . . . . . . . . . . . . . 32.7 The Time-Distance Diagram . . . . . . . . . . . . . . . . . . . . . . . . . 32.7.1 The Path Axis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.7.2 Methods for calculation of tripping times . . . . . . . . . . . 32.7.3 Short-Circuit Calculation Settings . . . . . . . . . . . . . . . . 32.7.4 The x-Unit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.7.5 The Reference Relay . . . . . . . . . . . . . . . . . . . . . . . . . 32.7.6 Double-Click Positions . . . . . . . . . . . . . . . . . . . . . . . . 32.7.7 The Context Sensitive Menu . . . . . . . . . . . . . . . . . . . . 32.7.8 Set Relays Buttons . . . . . . . . . . . . . . . . . . . . . . . . . . 32.8 Relay Plot . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32.8.1 Modifying the Relay Settings. . . . . . . . . . . . . . . . . . . . 32.9 The Protection Coordination Wizard . . . . . . . . . . . . . . . . . . . . 32.9.1 Starting the Protection Coordination Wizard . . . . . . . . . 32.9.2 The Protection Coordination Wizard Dialogue Window. .

... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . .

32-29 32-30 32-31 32-38 32-40 32-40 32-41 32-42 32-42 32-42 32-43 32-43 32-43 32-45 32-47 32-47 32-49

Network Reduction
33.1 Network Reduction Example . . . . . . . . . . . . . . . . 33.2 Executing the Reduction Process . . . . . . . . . . . . . 33.3 Network Reduction Command . . . . . . . . . . . . . . . 33.3.1 Basic Options . . . . . . . . . . . . . . . . . . . . . 33.3.2 Outputs . . . . . . . . . . . . . . . . . . . . . . . . . 33.3.3 Advanced Options . . . . . . . . . . . . . . . . . . 33.3.4 Verification . . . . . . . . . . . . . . . . . . . . . . . 33.4 Technical Background . . . . . . . . . . . . . . . . . . . . 33.4.1 Network Reduction for Load Flow . . . . . . . 33.4.2 Network Reduction for Short-Circuit . . . . . 33.4.3 Handling of Slack Bus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... ... ... ... ... ... ... ... ... ... ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

33-1
. 33-1 . 33-3 . 33-5 . 33-5 . 33-7 . 33-8 . 33-9 33-10 33-10 33-10 33-10

State Estimation
34.1 Objective Function . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34.2 Components of the PowerFactory State Estimator . . . . . . . . . . 34.2.1 Plausibility Check. . . . . . . . . . . . . . . . . . . . . . . . . . . . 34.2.2 Observability Analysis . . . . . . . . . . . . . . . . . . . . . . . . 34.2.3 State Estimation (Non-Linear Optimization) . . . . . . . . . 34.3 State Estimator Data Input . . . . . . . . . . . . . . . . . . . . . . . . . . 34.3.1 Measurements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34.3.2 Activating the State Estimator Display Option . . . . . . . . 34.3.3 Editing the Element Data . . . . . . . . . . . . . . . . . . . . . . 34.4 Running SE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34.4.1 Basic Setup Options. . . . . . . . . . . . . . . . . . . . . . . . . . 34.4.2 Advanced Setup Options for the Plausibility Check . . . . 34.4.3 Advanced Setup Options for the Observability Check . . 34.4.4 Advanced Setup Options for Bad Data Detection . . . . . 34.4.5 Advanced Setup Options for Iteration Control . . . . . . . 34.5 Results . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34.5.1 Output Window Report . . . . . . . . . . . . . . . . . . . . . . . 34.5.2 External Measurements . . . . . . . . . . . . . . . . . . . . . . .
xii

34-1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34-2 . . . . . . . 34-2 . . . . . . . 34-4 . . . . . . . 34-4 . . . . . . . 34-5 . . . . . . . 34-5 . . . . . . . 34-6 . . . . . . 34-11 . . . . . . 34-12 . . . . . . 34-14 . . . . . . 34-14 . . . . . . 34-18 . . . . . . 34-18 . . . . . . 34-18 . . . . . . 34-19 . . . . . . 34-21 . . . . . . 34-21 . . . . . . 34-22

DIgSILENT PowerFactory

Users Manual

34.5.3 Estimated States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34-23 34.5.4 Color Representation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34-25

Appendix
Glossary Hotkeys References
B.1 B.2 B.3 B.4 Graphic Windows Hotkeys . . Data Manager Hotkeys . . . . . Dialogue Hotkeys . . . . . . . . . Output Window Hotkeys . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .... .... .... .... . . . . .. .. .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

A-1 B-1
B-2 B-4 B-6 B-7

Elements Reference
C.1 2-Winding Transformers (ElmTr2/ElmTr2n) . . . . . . . . . . . . . . . . C.2 3-Winding Transformer (ElmTr3) . . . . . . . . . . . . . . . . . . . . . . . . C.3 Asynchronous Machine (ElmAsm) . . . . . . . . . . . . . . . . . . . . . . . C.4 Booster Transformer (ElmTrb). . . . . . . . . . . . . . . . . . . . . . . . . . C.5 Cable System (ElmCabsys) . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.6 Common Impedance (ElmZpu) . . . . . . . . . . . . . . . . . . . . . . . . . C.7 Doubly Fed Induction Machine (ElmAsmsc) . . . . . . . . . . . . . . . . C.8 External Network (ElmXnet) . . . . . . . . . . . . . . . . . . . . . . . . . . . C.9 Load General (ElmLod) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.10 Load Low Voltage (ElmLodlv) . . . . . . . . . . . . . . . . . . . . . . . . . C.11 Load Partial (ElmLodlvp) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.12 Line Route (ElmLneroute) . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.13 Line Sub-Section (ElmLnesec) . . . . . . . . . . . . . . . . . . . . . . . . . C.14 Motor Driven Machine (ElmMdm__X ) . . . . . . . . . . . . . . . . . . . C.15 Neutral Earthing Element (ElmNec) . . . . . . . . . . . . . . . . . . . . . C.16 PWM AC/DC Converter - 1 DC Connection (ElmVscmono). . . . . . C.17 PWM AC/DC Converter - 2 DC Connections (ElmVsc) . . . . . . . . . C.18 Rectifier/Inverter 1-DC Connection (ElmRecmono) . . . . . . . . . . C.19 Rectifier/Inverter 2-DC Connection (ElmRec) . . . . . . . . . . . . . . C.20 Series Capacitances (ElmScap) . . . . . . . . . . . . . . . . . . . . . . . . C.21 Series Reactance (ElmSind). . . . . . . . . . . . . . . . . . . . . . . . . . . C.22 Shunt/Filter Element (ElmShnt) . . . . . . . . . . . . . . . . . . . . . . . . C.23 Soft Starter (ElmVar) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.24 Static Generator (ElmGenstat) . . . . . . . . . . . . . . . . . . . . . . . . . C.24.1 Basic Data. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.24.2 Load Flow Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.24.3 VDE/IEC Short-Circuit Data . . . . . . . . . . . . . . . . . . . . . . C.24.4 Full Short-Circuit Data . . . . . . . . . . . . . . . . . . . . . . . . . C.24.5 Optimization Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . C.24.6 RMS- / EMT-Simulation Data. . . . . . . . . . . . . . . . . . . . . C.25 Static Var System (ElmSvs) . . . . . . . . . . . . . . . . . . . . . . . . . . . C.26 Synchronous Machine (ElmSym) . . . . . . . . . . . . . . . . . . . . . . . C.27 Tower Line Coupling (ElmTow) . . . . . . . . . . . . . . . . . . . . . . . . C.28 Transmission Lines (ElmLne) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

C-1
. C-1 . C-7 .C-11 .C-13 .C-14 .C-16 .C-18 .C-20 .C-23 .C-25 .C-27 .C-28 .C-30 .C-31 .C-35 .C-36 .C-39 .C-41 .C-42 .C-44 .C-46 .C-47 .C-51 .C-53 .C-53 .C-54 .C-55 .C-55 .C-55 .C-55 .C-56 .C-58 .C-61 .C-62
xiii

DIgSILENT PowerFactory

Users Manual

C.29 C.30 C.31 C.32 C.33 C.34 C.35 C.36 C.37

Voltage Source (ElmVac) . . . . . . . . Voltage Source (ElmVdc) . . . . . . . . Digital Clock (ElmClock) . . . . . . . . . Fast Fourier Transform (ElmFft) . . . File Object (ElmFile). . . . . . . . . . . . Fourier Source (ElmFsrc) . . . . . . . . Digital Register (ElmReg) . . . . . . . . Sample and Hold Model (ElmSamp). Trigger Model (ElmTrigger). . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

... ... ... ... ... ... ... ... ...

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. . . . . . . . .

. C-66 . C-67 . C-68 . C-69 . C-70 . C-71 . C-72 . C-73 . C-73

Types Reference
D.1 2-Winding Transformer Type (TypTr2) . D.2 3-Winding Transformer Type (TypTr3) . D.3 Asynchronous Machine (TypAsmo) . . . . D.4 Booster Transformer Type (TypTrb) . . . D.5 Cable Type (TypCab). . . . . . . . . . . . . . D.6 Conductor Type (TypCon) . . . . . . . . . . D.7 General Load (TypLod) . . . . . . . . . . . . D.8 Line Type (TypLne) . . . . . . . . . . . . . . . D.9 Rectifier Type (TypRec) . . . . . . . . . . . . D.10 Synchronous Machine Type (TypSym) . D.11 Tower Types (TypTow/TypGeo) . . . . . . . . . . . . . . . . .... .... .... .... .... .... .... .... .... .... .... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... ... ... ... ... ... ... ... ... ... ... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

D-1
. .D-1 . .D-4 . .D-8 . D-11 . D-13 . D-14 . D-16 . D-17 . D-21 . D-22 . D-25

Reference to the use of Symbols in PowerFactory


E.1 The Symbol General Definitions . . . . . . . . . . . . E.2 Geometrical Description . . . . . . . . . . . . . . . . . . E.2.1 Geometrical Primitives . . . . . . . . . . . . . . E.2.2 Showing self defined pictures in symbols . . . . . . . . . . . . . . . . . ....... ....... ....... ....... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

E-1
. E-1 . E-2 . E-2 . E-4

Interfaces with Other Programs


F.1 DGS Interface . . . . . . . . . . . . . . . . . . . . . . . . F.2 Converting PSS/E Files . . . . . . . . . . . . . . . . . . F.2.1 Importing PSS/E Steady-State Data . . . F.2.2 Import of PSS/E file (Dynamic Data) . . . F.2.3 Exporting a project to a PSS/E file. . . . . F.3 StationWare Interface . . . . . . . . . . . . . . . . . . F.3.1 About StationWare . . . . . . . . . . . . . . . F.3.2 Component Architecture . . . . . . . . . . . F.3.3 Fundamental Concepts . . . . . . . . . . . . F.3.4 Configuration . . . . . . . . . . . . . . . . . . . F.3.5 Getting Started . . . . . . . . . . . . . . . . . . F.3.6 Reference. . . . . . . . . . . . . . . . . . . . . . F.3.7 Technical Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ ........ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

F-1
. . . . . . . F-1 . . . . . . . F-1 . . . . . . . F-1 . . . . . . . F-5 . . . . . . . F-7 . . . . . . . F-9 . . . . . . . F-9 . . . . . . F-10 . . . . . . F-11 . . . . . . F-17 . . . . . . F-17 . . . . . . F-25 . . . . . . F-32

The DIgSILENT Programming Language - DPL


G.1 The Principle Structure of a DPL Command G.2 The DPL Command Object . . . . . . . . . . . . G.2.1 Creating a new DPL Command . . . . G.2.2 Defining a DPL Commands Set . . . .
xiv

G-1
. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .G-1 .G-2 .G-3 .G-3

. . . .

. . . .

.. .. .. ..

. . . .

. . . .

. . . .

... ... ... ...

DIgSILENT PowerFactory

Users Manual

G.2.3 Executing a DPL Command . . . . . . . . . . . . . . . . . G.2.4 DPL Advanced Options. . . . . . . . . . . . . . . . . . . . . G.2.5 DPL Script Page . . . . . . . . . . . . . . . . . . . . . . . . . G.3 The DPL Script Editor . . . . . . . . . . . . . . . . . . . . . . . . . . . G.4 The DPL Script Language . . . . . . . . . . . . . . . . . . . . . . . . G.4.1 Variable Definitions . . . . . . . . . . . . . . . . . . . . . . . G.4.2 Constant parameters . . . . . . . . . . . . . . . . . . . . . . G.4.3 Assignments and Expressions . . . . . . . . . . . . . . . . G.4.4 Standard Functions . . . . . . . . . . . . . . . . . . . . . . . G.4.5 Program Flow Instructions . . . . . . . . . . . . . . . . . . G.4.6 Input and Output . . . . . . . . . . . . . . . . . . . . . . . . G.5 Access to Other Objects . . . . . . . . . . . . . . . . . . . . . . . . . G.5.1 Object Variables and Methods . . . . . . . . . . . . . . . G.6 Access to Locally Stored Objects . . . . . . . . . . . . . . . . . . . G.7 Accessing the General Selection . . . . . . . . . . . . . . . . . . . G.8 Accessing External Objects . . . . . . . . . . . . . . . . . . . . . . . G.9 Remote Scripts and DPL Command Libraries . . . . . . . . . . G.9.1 Subroutines and Calling Conventions. . . . . . . . . . . G.10 DPL Functions and Subroutines . . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ...

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. . . . . . . . . . . . . . . . . . .

. G-4 . G-4 . G-5 . G-5 . G-6 . G-6 . G-7 . G-7 . G-7 . G-9 G-10 G-11 G-12 G-12 G-13 G-14 G-15 G-16 G-17

DPL Reference
H.1 DPL Internal Methods. . . . . . . . . . . . . . . . . . . . . . . . . . . H.2 DPL External General Types . . . . . . . . . . . . . . . . . . . . . . H.2.1 DPL Set Methods. . . . . . . . . . . . . . . . . . . . . . . . . H.2.2 DPL Object Methods . . . . . . . . . . . . . . . . . . . . . . H.3 Reference of DPL External Specialized Types . . . . . . . . . . H.3.1 ComOutage Methods . . . . . . . . . . . . . . . . . . . . . . H.3.2 ComSimoutage Methods . . . . . . . . . . . . . . . . . . . H.3.3 IntPrj Methods . . . . . . . . . . . . . . . . . . . . . . . . . . H.3.4 IntCase Methods . . . . . . . . . . . . . . . . . . . . . . . . . H.3.5 ElmNet Methods . . . . . . . . . . . . . . . . . . . . . . . . . H.3.6 IntVariant Methods . . . . . . . . . . . . . . . . . . . . . . . H.3.7 TypAsm Methods. . . . . . . . . . . . . . . . . . . . . . . . . H.3.8 TypAsmo Methods. . . . . . . . . . . . . . . . . . . . . . . . H.3.9 ElmFeeder Methods . . . . . . . . . . . . . . . . . . . . . . . H.3.10 ComNmink Methods. . . . . . . . . . . . . . . . . . . . . . H.3.11 ElmComp Methods. . . . . . . . . . . . . . . . . . . . . . . H.3.12 ComRes Methods. . . . . . . . . . . . . . . . . . . . . . . . H.3.13 ComEcho Methods . . . . . . . . . . . . . . . . . . . . . . . H.3.14 SetTime Methods. . . . . . . . . . . . . . . . . . . . . . . . H.3.15 IntMon Methods . . . . . . . . . . . . . . . . . . . . . . . . H.3.16 SetFilt Methods . . . . . . . . . . . . . . . . . . . . . . . . . H.3.17 ComDpl Methods . . . . . . . . . . . . . . . . . . . . . . . . H.3.18 IntMat Methods. . . . . . . . . . . . . . . . . . . . . . . . . H.3.19 IntVec Methods . . . . . . . . . . . . . . . . . . . . . . . . . H.3.20 ElmCoup Methods . . . . . . . . . . . . . . . . . . . . . . . H.3.21 ElmLne Methods . . . . . . . . . . . . . . . . . . . . . . . . H.3.22 ElmLneroute Methods . . . . . . . . . . . . . . . . . . . . H.3.23 TypLne Methods . . . . . . . . . . . . . . . . . . . . . . . . H.3.24 ElmRes Methods . . . . . . . . . . . . . . . . . . . . . . . . H.3.25 ElmZone Methods . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

H-1
. H-1 H-36 H-36 H-43 H-57 H-57 H-59 H-62 H-63 H-64 H-65 H-65 H-66 H-66 H-70 H-71 H-72 H-73 H-74 H-76 H-79 H-79 H-80 H-84 H-86 H-88 H-92 H-93 H-94 H-99
xv

DIgSILENT PowerFactory

Users Manual

H.3.26 H.3.27 H.3.28 H.3.29 H.3.30 H.3.31 H.3.32 H.3.33 H.3.34 H.3.35 H.3.36 H.3.37 H.3.38 H.3.39

ComRel3 Methods . . . . . . ComInc Methods. . . . . . . ComLdf Methods. . . . . . . ComShc Methods . . . . . . StaSwitch Methods . . . . . SetFeeder Methods . . . . . SetPath Methods. . . . . . . SetSelect Methods. . . . . . IntForm Methods . . . . . . SetDesktop Methods . . . . SetVipage Methods . . . . . VisPlot/VisPlot2 Methods . VisFft Methods . . . . . . . . IntPlot Methods . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... ..... .....

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. . . . . . . . . . . . . .

. H-102 . H-104 . H-105 . H-105 . H-106 . H-108 . H-109 . H-113 . H-121 . H-123 . H-128 . H-137 . H-155 . H-156

DSL Reference

I-1

I.1 DSL Standard Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I-1 I.2 DSL Special Functions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . I-2

Index

J-1

xvi

DIgSILENT PowerFactory

General Information

DIgSILENT PowerFactory

Welcome

Chapter 1 Welcome

The calculation program PowerFactory, as written by DIgSILENT, is a computer aided engineering tool for the analysis of industrial, utility, and commercial electrical power systems. It has been designed as an advanced integrated and interactive software package dedicated to electrical power system and control analysis in order to achieve the main objectives of planning and operation optimization. The name DIgSILENT stands for "DIgital SImuLation and Electrical NeTwork calculation program''. DIgSILENT Version 7 was the world's first power system analysis software with an integrated graphical one-line interface. That interactive one-line diagram included drawing functions, editing capabilities and all relevant static and dynamic calculation features. The PowerFactory package was designed and developed by qualified engineers and programmers with many years of experience in both electrical power system analysis and programming fields. The accuracy and validity of the results obtained with this package has been confirmed in a large number of implementations, by organizations involved in planning and operation of power systems. In order to meet today's power system analysis requirements, the DIgSILENT power system calculation package was designed as an integrated engineering tool which provides a complete 'walk-around' technique through all available functions, rather than a collection of different software modules. The following key-features are provided within one single executable program: 1 2 3 4 5 6

PowerFactory core functions: definition, modification and organization of cases;


core numerical routines; output and documentation functions Power system element and base case database Integrated calculation functions (e.g. line and machine parameter calculation based on geometrical or nameplate information) Power system network configuration with interactive or on-line access to the SCADA system Generic interface for computer-based mapping systems Integrated interactive single line graphic and data case handling

By using just a single database, containing all the required data for all equipment within a power system (e.g. line data, generator data, protection data, harmonic data, controller data), PowerFactory can easily execute any or all available functions, all within the same program environment. Some of these functions are load-flow, short-circuit calculation, harmonic analysis, protection coordination, stability calculation and modal analysis. DIgSILENT PowerFactory has originally been designed as a complete package for the high-end user. Consequently, there are no special 'lightweight' versions, no cut-outs of a 'heavy' version. This does not, however, mean that non high end users will find them1-1

DIgSILENT PowerFactory

Welcome

selves at sea when using PowerFactory. The program is also friendly to the basic user. Users who are learning about power systems are able to easily and quickly perform loadflows and short-circuit calculations, without needing to immediately master the mathematical intricacies of the calculations. PowerFactory allows the user to learn primarily about power systems and not PC quirks- all that is required is a reasonable working knowledge of Windows applications such as Word and Excel. The program is shipped with all of the engines and algorithms that are required for highend use. The functionality that has been bought by a user is configured in a matrix, where the licensed calculation functions, together with the maximum number of busses, are listed as coordinates. In addition, there are options available which will allow the configuration and fine-tuning of the software according to the user's needs, for some of the functions. In this manner, not every PowerFactory license contains all functionality described in this manual, but only those actually required, thereby reducing the complexity of the outset. As requirements dictate further functionality can be added to the license. The user thus does not have to learn a whole new interface for new functions, but merely uses new commands within the same environment. In addition, the original network data is used and only extra data, as may be required by the new calculation function, needs to be added.

1-2

DIgSILENT PowerFactory

DIgSILENT Contact and Support

Chapter 2 DIgSILENT Contact and Support

For further information about the company DIgSILENT, our products and services please visit our web page www.digsilent.de or contact us at: DIgSILENT GmbH Heinrich-Hertz-Strae 9 72810 Gomaringen / Germany www.digsilent.de General Information: If you are looking for general information about DIgSILENT or your PowerFactory license, please contact us via: Phone: +49-(0)7072-9168-0 Fax: +49-(0)7072-9168-88 E-mail: mail@digsilent.de Technical Support: If you need technical support concerning PowerFactory, DIgSILENT experts offer direct assistance to users with valid maintenance agreements via: Phone: +49-(0)7072-9168-50 E-mail: support@digsilent.de Adding your company affiliation and the build number of your PowerFactory version to your query will help us to answer your questions faster. The build number is in "Help -> About PowerFactory..." on the main menu. Here you also will find an abbreviation containing of three letters, which is helpful for us ("This Program is Licensed to XXX"). Additionally, if you send us an *.dz or *.pfd file concerning to your query, it is often easier for us to reproduce your reported items.

2-1

DIgSILENT PowerFactory

DIgSILENT Contact and Support

2-2

DIgSILENT PowerFactory

About this Guide

Chapter 3 About this Guide

This chapter will give you information about how to use this documentation, the used conventions and information about additional documentations.

3.1

The PowerFactory Users Manual

This Users Manual is intended to be a reference for users of the DIgSILENT PowerFactory software. In the first part, the PowerFactory interface and the basic program

settings are discussed. Then a data model approach is used to describe how to represent power systems in PowerFactory and how to manage studies over them.

Following the discussion about the program handling, comes the presentation of the available calculation functions. Each chapter deals with a different calculation, presenting the most relevant theoretical aspects, the PowerFactory approach and the corresponding interface. Additional tools such as the DIgSILENT Programming Language (DPL), the reporting functions, and the communication interfaces with other programs are presented in the final part. The online version of this manual includes a especial section dedicated to the mathematical description of the models and their parameters. The section comprises a set of Technical Reference Papers, each one corresponding to a specific component of a power system. To facilitate its portability, visualization, and printing, the papers are attached to the online help as PDF documents. They are downloaded by clicking on the indicated links. References for the functions of the DIgSILENT Programming Language (DPL) and the DIgSILENT Simulation Language (DSL), are also included as appendixes of the online version. This Reference Users Manual is written for end users involved in the analysis of electrical power systems. It is assumed that the program has been installed and the user has a basic understanding of the PowerFactory work environment. Before starting with this guide, new users are recommended to read the information and complete the hands-on Tutorial from the Getting Started Manual.

3.2

Used Conventions

Mouse and keyboard handling actions are abbreviated, and a 'shorthand' is also used to describe actions that the user should take. To assist the user these shorthand descriptions are specifically formatted to stand out, as follows:

3-1

DIgSILENT PowerFactory

About this Guide

Key

As in "Press the left mouse key''. A key is either one of the mouse keys or a key on the keyboard. Mouse keys are sometimes called 'buttons', as in 'the mouse button.' As in "Press the OK button''. The word "button'' is used for screen areas which perform some action when clicked using the mouse. In other words, a 'virtual' button. Icons are usually described by the popup name that you read when you hover the cursor over it. For example, press to open the user settings dialogue. Icons are also shown as seen on screen, as in the press to open the user settings dialogue.

Button

Icons

Right/Left clicking As in "Right click the browser''. Means pointing the cursor at the object described (the browser) and pressing the right/left mouse key. Double Clicking As in "Double click the button''. Means pointing the cursor at the object described and pressing the left mouse key twice within about half a second (the time interval is as set in the Windows operating system). Ctrl-B (key combination example) means that the user should press the combination of keys described. For example, "Press Ctrl-B to toggle between balanced/unbalanced case,'' means that the user should press and hold down the first keyboard key (the Control key on the keyboard in this example) and then press the second key (B) as well.

Menu sequences When a user needs to select a command through cascaded menu options the sequence is shown by arrows that indicate what option to choose next, starting from the original menu button. For example, setting the drawing format can be done by pressing the Options button to access the options menu, then by choosing "Graphic" from the list offered, and finally "Drawing Format..." from the last list; this series of actions is all simply described by Options --> Graphic -->

Drawing Format...

" " and ' '

'These' quotes are used to indicate that the description is one that can be found within the program- one that is not user definable, for example, the balloon help description 'Calculate Load Flow' that you see when you hover your cursor over the Load Flow icon. "These" are used to indicate data that a user has entered or should enter. "These" quotes are also used to indicate a process or series of objects that have no discernible name, but which need to be described. For example, the "drawing tools panel", which is found on the right hand side of the drawing canvas.

and [1] [2] [3], etc. Show a sequence of events that should be performed. Where they are numbered they will be associated with a graphic in which the numbers appear. left-clicking, right-clicking, clicking, double-clicking, etc. Wherever the instruction clicking or double-clicking appears it should be taken to mean clicking and double-clicking using the left mouse
3-2

DIgSILENT PowerFactory

About this Guide

button. When the right mouse button is to be used it will be explicitly stated.

3.3

The PowerFactory Help System

DIgSILENT PowerFactory is provided with a complete help package to support users

at all levels of expertise. Documents with the basic information on the program and its functionality are combined with references to advanced simulation features, mathematical descriptions of the models and of course application examples.

PowerFactory offers the following help resources:


Installation Manual: PowerFactory installation guide, describes the procedures followed to install and set the program. It is available in the PowerFactory installation CD and the DIgSILENT support site (PDF file). Licensed costumers receive a hard copy. Tutorial: Basic Information for new users and hands-on tutorial. Access via Help menu (CHM file) of PowerFactory, and the DIgSILENT support site (PDF). Licensed users receive a Hard copy. User's Manual: This document. Access via Help menu (CHM file) of PowerFactory, and the DIgSILENT support site (PDF). Licensed users receive a Hard copy. Technical References: Description of the models implemented in PowerFactory for the different power systems components. The technical reference documents are attached to the online help (chapters D (Types Reference) and C (Elements Reference)). Additionally they can be downloaded from the DIgSILENT support site. Context Sensitive Online Help: Pressing the key F1 while working with PowerFactory will lead you directly to the related topic inside the User's Manual. Examples on the Demo account: The Demo account is a special user account set with every installation of the program. It contains several application examples of PowerFactory calculation functions. First Steps Document: Guide to use the calculation examples from the Demo version. Access via the installation CD and the DIgSILENT support site (PDF). FAQs: Users with a valid maintenance agreement can access the DIgSILENT support site and its FAQ section, which contains interesting questions and answers regarding specific applications of PowerFactory. Support: Users with a valid maintenance agreement will get individual support from DIgSILENT experts via: Phone: +49-(0)7072-9168-50 E-mail: support@digsilent.de

All new versions and builds of the program include 'Release-Notes' documenting the implemented changes.
3-3

DIgSILENT PowerFactory

About this Guide

3-4

DIgSILENT PowerFactory

PowerFactory Overview

Chapter 4 PowerFactory Overview

4.1

General Concept

The general concept behind the program design and application can be described by means of the three basic integration characteristics that contribute to make PowerFactory a unique power system analysis tool:  Functional Integration gram, and is fully compatible with Windows 95/98/NT/2000/XP/Vista. The programming method employed allows for a fast 'walk around' the execution environment, and eliminates the need to reload modules and update or transfer results between different program applications. As an example, the power flow, fault analysis, and harmonic load flow analysis tools can be executed sequentially without resetting the program, enabling additional software modules and engines or reading external data files.  Vertical Integration A special feature of the DIgSILENT PowerFactory software is the unique vertically integrated model concept. This allows models to be shared for all analysis functions and more importantly, for categories of analysis, such as Generation, Transmission, Distribution and Industrial. No longer are separate software engines required to analyze separate aspects of the power system, as DIgSILENT PowerFactory can accommodate everything within one integrated frame and one integrated database.  Database Integration

DIgSILENT PowerFactory software is implemented as a single executable pro-

DIgSILENT PowerFactory provides optimal organization of data and definitions

There is no need to keep and organize hundreds of files on hard disc, every thing you require to model and simulate a power system is integrated in a single database!

required to perform any type of calculation, memorization of settings or software operation options. There is no need in tedious organization of several files for defining the various analysis aspects. The PowerFactory database environment fully integrates all data required for defining cases, operation scenarios, single-line graphics, outputs, run conditions, calculation options, graphics, user-defined models, etc.

Single Database Concepts: all data for standard and advanced functions are organized in a single, integrated database. This is applied also for graphics, study case definitions, outputs, run conditions, calculation options, fault sequences, monitoring messages as well as user defined models.
4-1

DIgSILENT PowerFactory

PowerFactory Overview

Project Management: All the data that defines a power system model and allows its calculation is stored in so called 'Project' folders within the database. Inside a 'Project', folders called 'Study Cases' are used to define different studies of the system considering the complete network, only parts of it or variations on its current state. This 'project and study case' approach to define and manage power system studies is a unique application of the object-oriented software principle. Standard software packages often require the user to create a large number of similar saved cases, with multiple nested directories for large complex networks and studies. However, DIgSILENT PowerFactory has taken a totally new approach, and introduced a structure that is both easy to use while avoiding redundancy. Multi-User Operation: Multiple users each holding its own projects or working with data shared from other users are supported by a 'Multi-user' database operation. In this case the definition of access rights, user accounting and groups for data sharing are managed by a database administrator.

4.2

PowerFactory Simulation Functions

functions including:

PowerFactory incorporates an impressive and continuously growing list of simulation

Load Flow and Fault Analysis, allowing meshed and mixed 1-,2-, and 3-phase AC and/ or DC networks. Low Voltage Network Analysis Distribution Network Optimization IEC Cable Sizing Dynamic Simulation EMT Simulation Eigenvalue Analysis System Identification Protection Analysis Harmonic Analysis Reliability Analysis Voltage Stability Analysis Contingency Analysis Power Electronic Device Modeling Grounding A/D Interfacing Interface for SCADA/GIS/NIS Compatibility with other software systems such as PSS/E & PSS/U Multi-User Database and User Accounting Optimal Power Flow

4-2

DIgSILENT PowerFactory

PowerFactory Overview

4.3

General Design of PowerFactory

In order to better understand how to use a program it is useful to first get an idea of what the designers had in mind when they designed the user interface. In the next few paragraphs we will attempt to explain what this philosophy is.

PowerFactory is intended to be initially used and operated in a graphical environment.

That is, data entry is accomplished by drawing the network under study and then by editing the objects on the drawing canvas to assign data to them. Figure 4.1 shows how PowerFactory looks like when a project is active. It shows the Graphic window (up) and the Output window (below).

Fig. 4.1:

Main PowerFactory windows

As users progress and become more adept with the program, data will be manipulated by using a data viewer called the Data Manager. The two means of accessing the data are thus via the graphics page/s and via the Data Manager. Data is accessed from the graphics page by double-clicking on an object. An input dialogue pops up and the user may then edit the data for that object. All of the data that is entered for such objects is hierarchically structured in folders to al4-3

DIgSILENT PowerFactory

PowerFactory Overview

low the user to navigate through it. To view the data and its organization, a "Data Manager" is used. Figure 4.2 shows the Data Manager Window. The data manager is similar in appearance and working to a Windows Explorer. As mentioned, data pertaining to a study is organized into several folders. Before examining this structure we should understand the philosophy behind this arrangement.

Fig. 4.2:

PowerFactory Data Manager window

4.4

Data Arrangement

Firstly, it is clear that, for the study of any system, there are two distinct sets of information that can be defined: Data that pertains directly to the system under study, that is, electrical data. Study management data, for example, which graphics should be displayed, what options have been chosen for a load flow, which 'areas' of the network should be considered for calculation, etc. The electrical data itself can also be further divided into logical sets. When we construct a power system we make use of standardized materials or components - a roll of cable for example. In simple terms we can describe the cable electrically by its impedance per km length whilst it is still on the cable drum; in other words, generic information about this cable, is called "Type" data. When we cut a length of the cable for installation the type data is retained in a modified way, as follows: 600m of cable that has a Type impedance of 'Y' Ohms/ km will now have an impedance of '0.6*Y' Ohms. We can thus see that the length of the cable, 0.6 km, can be seen as a separate set of information. This set will contain all of that information particular to the specific installation or application of the piece of cable we are considering. Information such as the derating factor of the installed cable, its local name, the nodes that it is connected to at either end; in other words, all information that is non-generic, will fall into this information set. In PowerFactory we call this "Element Data". Within the element data, there is information related to the operational point of a devise but not to the devise itself i.e. the tap position on a transformer or the active power dispatch of a generator. These kind of data, which is subject to frequent changes during a
4-4

DIgSILENT PowerFactory

PowerFactory Overview

study and may be used to simulate different operation scenarios of the same network, is further grouped inside the element data set in a subset called "Operational Data". This means that there are now four distinct sets that we need to arrange the data into. In 'data base' terms this means four folders, which, in PowerFactory, we call: ''Network Data'' folder: Holds all the element data. ''Operation Scenario'' folder: Holds the operational data defining a certain operational point. ''Equipment Type'' folder: Holds all the type data ''Study Case'' folder: Holds all the study management data. For an optimal advantage of the flexibility offered by this data arrangement approach, the aforementioned folders should be hierarchically organized within a higher directory. In PowerFactory this higher directory is called ''Project''. Besides the described data sets, a project stores all the additional database ''objects'' required to model, simulate, analyze and visualize a particular power system. The PowerFactory database supports multiple users (as mentioned in 4.1) and each user can manage several projects. ''User Account'' folders with access privileges only for their owners (and other users with shared rights) must then be used. User accounts are of course in a higher level than projects.

Fig. 4.3:

Structure of a PowerFactory project in the Data Manager

Figure 4.3 shows a snapshot from a database as seen by the user in a data manager window.The folders listed contain the following type of data:

User Folder
Three user accounts (Demo, Manual and Peter) containing different projects are shown.

Project
In this case named Simple Power System. This folder is the frame for all project subfolders.

Equipment Types
Holds all the type data.
4-5

DIgSILENT PowerFactory

PowerFactory Overview

Network Model
Holds the Network Data folder containing the element data. The Network Model folder also contains the graphical objects folders (Diagrams), storing network diagrams and the network modifications folders (Variations) storing expansions or topological changes to be applied in the original networks. Operation Scenarios Holds sets of operational data.

Study Cases
Contains the study Management Data - the 'tools' and 'tool settings' that are used to perform the calculations and the visualization of the results. All the aspects related to the use and management of the project folder, including the subfolders listed above is given in chapters: For information about user accounts please refer to Chapter 5 Program Setting, Logging on and User Accounts.

4.5

User Interface

The PowerFactory windows are the users interface to the program and the means to enter or manipulate data and/or graphics. DIgSILENT PowerFactory uses several kinds of windows some of which have been shown previously. To follow the explanation, please see Figure 4.4: The main PowerFactory window is described in the title bar- "DIgSILENT PowerFactory 14.0" 1. The main menu bar contains the drop down menu selections 2. The Graphical Editor 3 displays single line diagrams, block diagrams and/or simulation plots of the current project. Studied networks and simulation models can be directly modified from the graphical editor by placing and connecting elements. The "Data Manager" 4 is the direct interface with the database. It is similar in appearance and working to a Windows Explorer. The left pane displays a symbolic tree representation of the complete database. The right pane is a data browser that shows the content of the currently selected folder. When an object is right clicked (in the graphical editor or in the data manager) a context sensitive menu with several possible actions appears 5. When an object is double clicked its edit dialogue pops up 6. The edit dialogue is the interface between an object and the user. The parameters defining the object are accessed trough this edit dialogue. Normally an edit dialogue is composed of several 'pages' (also called tabs). Each tab groups parameters that are relevant to a certain function. In the example of Figure 4.4 the 'Load Flow' tab of a generator is shown, therefore only the generator parameters relevant to a load flow calculation are available. At the bottom of the PowerFactory window, an output window 7 with its own toolbar is shown.

4-6

DIgSILENT PowerFactory

PowerFactory Overview

Fig. 4.4:

PowerFactory initial appearance

The data manager sub-window (this window is created by pressing the icon, which is the first icon on the left of the main toolbar) is always floating and more than one can be active at the same time. The database manager itself has several appearances: it may only show the database tree for selecting a database folder, or it may be the full version with the database tree, the data browser, and all editing capabilities. One of the major tasks for the data manager is to provide access to the power system components. The power system components shown in the data manager can be 'gangedited' (or 'group-edited') within the data manager itself, where the data is presented in a tabular format, for all the selected objects. Alternatively each object may also be individually edited by double clicking on an object (or right click -> "Edit"). The output window, at the bottom of the screen, is always there; it cannot be closed although it can be minimized. The output window can be "docked'', that is: fixed to a location on the bottom of the main window. The docked state is the default, as shown in the Figure 4.4. When clicking the right mouse button, when the cursor is in the output window area, the context sensitive menu of the output window appears. The output window can then be undocked by deselecting the "Docking View" (by clicking the mouse onto "Docking View"
4-7

DIgSILENT PowerFactory

PowerFactory Overview

to 'untick' it. The undocked output window is still confined to the main window, but now as a free floating window. This sometimes occurs 'accidentally' when the user left clicks the tool bar for the output window and drags the mouse (keeping the mouse button down) to somewhere outside of the output window boundaries. To rectify this simply left click in the title bar of the undocked window and drag it down to the bottom of the screen where it will dock once more (if you have right clicked 'unticked' "Docking View" to right click and select "Docking View" once more. The undocked state is not a normal situation for the output window. Because the output messages that appear in this window are important at any stage while using the program, the docked state is the best place because it will be visible then and easy to locate. The edge of the output window shows a splitter bar [a] which is used to change the size of the output window. The 'drag' cursor, as shown at [a], appears automatically when the cursor is placed on the splitter bar. The left mouse button can be pressed when the 'drag' cursor is visible. This will turn the splitter bar to grey and the output window can now be resized by holding down the mouse button and moving the mouse up or down. The icon "Maximize Output Window'' ( ) on the main toolbar will enlarge the output window to almost full-screen. Left click the button again to switch back to the small output window. On the right of the title bar of any window or sub-window there are three buttons that are used to "Minimize", "Maximize"/"Restore Down" or "Close" the window.  The button minimizes the window to a small object, somewhere on the screen (usually in the lower left corner- this is the default position) in the case of a subwindow, or to the task bar for your computer- at the bottom of the screen.  The button 'opens' the minimized window to full screen size.

 The button reduces the window to a smaller size on the screen; initially there is a default size for this window but the user may re-size it as desired.  The button will close the sub-window or end the program if this button is clicked on the main window. Sub-windows can be re-sized as follows: place the cursor over the lower right corner of the window and left click and hold the button down- now drag the window to the size you require. You will find that each corner can be sized like this, as well as each edge.

Re-sizing sub-windowsThe following sections provide further information about the PowerFactory windows and their tool bars. Because the Graphical Editor and the Data Manager are main interfaces and their use is fundamental in the definition and analysis of
4-8

DIgSILENT PowerFactory

PowerFactory Overview

power systems with PowerFactory, they are explained in separate chapters (11 The Data Manager and 10 The Graphics Editor).

4.5.1

Menu Bar

The menu bar contains the main PowerFactory menus. Each menu entry has a drop down list of menu options and each menu option performs a specific action. To open a drop down list, either click on the menu entry with the left mouse button, or press the Alt key together with the underlined letter in the menu. For instance, to open the Help menu, press the Alt and the h key together. Menu options that occur in grey are not available these become available as the user activates projects or calculation modes, as required.

Fig. 4.5:

The help menu on the Menubar

 Press Alt-H to open the help menu. Use your keyboard to select the Getting Started Tutorial. Press return to open the Tutorial. The on-line Getting Started Tutorial is exactly the same as the printed version.  Close the Getting Started Tutorial help (Use the to the main PowerFactory program window. on the main bar). You will return

 Left click the Help menu. Left click the option Users Manual. This opens the on-line User's Manual.

4.5.2

Main Toolbar

The main toolbar (see Figure 4.6) shows the main PowerFactory command buttons/ icons. Buttons that appear in grey only become active when appropriate.

Fig. 4.6:

The main toolbar

All command icons are equipped with balloon help text which pop up when the cursor is held still at the icon for a moment, and no key is pressed.  Find the icon for User Settings by using the balloon help. Do not use the mouse keys: just point at the icons, hold still, and a balloon text will pop up. Scan all icons until you find the right one. Using a command icon couldn't be easier: just click on it with the left mouse icon. Those icons that perform a task will automatically jump back when that task is finished. Some command icons however will switch between two modes, for instance the one which will
4-9

DIgSILENT PowerFactory

PowerFactory Overview

reserve more place for the output window on the workspace ( ). This icon will stay down to show the activated mode. Click the command icon again to switch back to the normal view. When PowerFactory has just been started, the toolbar shows only the general command icons. The 'toolbar select' icon ( icons. ) can be clicked to select additional command

Main Toolbar Definitions


The main PowerFactory toolbar provides the user with quick access to the main commands available in the program. This section provides a brief explanation of the purpose of the icons found on this toolbar. More detailed explanations for each of the functions that the icons command are provided in the other sections of the manual. The main toolbar is depicted in two parts in Figure 4.7 and Figure 4.8. The icons from the lower part of figures 4.7 and 4.8 correspond to the options of the Graphic Window and are presented in Section 10.5.1.

Fig. 4.7:

Main Toolbar, left part

Fig. 4.8:

Main Toolbar, right part

New Database Manager Opens a new database manager. When the option "Use Multiple Data Manager" (see under User Settings >General) is enabled in the user settings menu the user will be able to open as many data manager windows as required. If "Use Multiple Data Manager" is disabled in the user settings menu, the user will be able to open only one data manager window. For more information please refer to Chapter 11. Edit Relevant Objects for Calculation Provides a list of elements (colored in green) or types (colored in red) that are considered for calculation: e.g. transformer types, line elements, composite models, etc. The study case determines which objects are considered for calculation (for more information about study cases refer to Chapter 13: Study Cases). These objects are grouped by 'Class' (see the Chapter: Glossary for an explanation of 'Class' in the PowerFactory context). If, for instance, no relay objects are used, then the relay-button will not be shown. All objects from the selected class(es) will be shown in a browser. For more information please refer to Section 8.2.

4 - 10

DIgSILENT PowerFactory

PowerFactory Overview

Date/Time of Calculation Case Displays the date and time for the calculation case. This option is useful when parameter characteristics of specific elements (e.g. active and reactive power of loads) are set to change according to a certain time scale. Modifying the date/time in this dialogue adjusts those Parameters that have time based triggers/scales accordantly. Edit Trigger Displays a list of all triggers that are in current use by the active study case. These triggers can be edited in order to change the values for which one or more characteristics are defined. These values will be modified with reference to the new trigger value. All triggers for all relevant characteristics are automatically listed. If required, new triggers will be created in the study case. For more information, see 7.7 Parameter Characteristics and Parametric Studies. Calculate Load-Flow Activates the load-flow command dialogue. For more information about the specific settings, please refer to Chapter 22 Load Flow Analysis. Calculate Optimal Power Flow Activates the optimal power flow command dialogue. Calculate Short-Circuit Activates the short-circuit calculation command dialogue. For more information, please refer to Chapter 23 Short-Circuit Analysis. Edit Short-Circuits Edits Short-Circuit events. Events are used when a calculation requires more than one action or considers more than one object for the calculation. Multiple fault analysis is an example of this. If, for instance, the user multi selects two busbars (using the cursor) and then clicks the right mouse button Calculate > Multiple Faults a Short-circuit event list will be created with these two busbars in it. Execute DPL Scripts Displays a list of DPL scripts that are available. For more information about DPL scripts, please refer to Chapter G The DIgSILENT Programming Language - DPL. Output Calculation Analysis Presents calculation results in various formats. The output is printed to the output window and can be then used in external reports, or may be of assistance to interpret calculation results. Several different reports, depending on the actual calculation, can be created. For more information about the output of results please refer to Section 20.2.5 Output of Results.

4 - 11

DIgSILENT PowerFactory

PowerFactory Overview

Documentation of Device Data Presents a listing of device data (a device is the model of any physical object that has been entered into the project for study). This output may be used in reports, or may be of use in checking data that has been entered. Depending on the element chosen for report, the user has two possibilities: to generate a short listing, or a detailed report. For more information please refer to Section 20.2.5 Output of Results Comparing of Results On/Off Compares the differences between two or more calculation results, for example, where certain settings or designs options of a power system have been changed from one calculation to the next. For more information please refer to 8.4 Comparisons Between Calculations. Edit Comparing of Results Enables the user to select the cases/ calculation results that are to be compared to one another, or to set the coloring mode for the difference reporting. For more information please refer to 8.4 Comparisons Between Calculations. Update database Utilizes the current calculations results (i.e. the calculation 'output' data) to change input parameters (i.e. that data that the user has entered). An example is the transformer tap positions, where these have been calculated by the load-flow command option "Automatic Tap Adjust of Tap Changers." For more information please refer to Section 8.4 Comparisons Between Calculations. Break

Stops a transient simulation or DPL script that is running.

Reset Calculation Resets any calculation performed previously. This icon is only enabled after a calculation has been carried out. User Settings User options for many global features of PowerFactory may be set from the dialogue accessed by this icon. For more information please refer to Chapter 6 User Settings. Maximize Graphic Window Maximizes the graphic window. Pressing this icon again will return the graphic window to its original state. Maximize Output Window Maximizes the output window. Pressing this icon again will return the output window to its original state.

4 - 12

DIgSILENT PowerFactory

PowerFactory Overview

Current Study Case This drop down window displays the name of the study case that is currently activate. The user may also 'toggle' between study cases in the project by selecting them from this drop down list. Select ToolBar Drops down when pressed to present sets of icons (to the right of it) for various calculation commands: e.g. Stability, Reliability, Harmonics, Optimal Capacitor Placement and Data Acquisition.

4.5.3

The Output Window

All textual output of DIgSILENT PowerFactory will be written to the output window. This includes all error messages or warnings, command messages, device documentation, result of calculations, generated reports, etc. The output window, at the bottom of the screen, is always there; it cannot be closed although it can be minimized. The output window can be "docked'', that is: fixed to a location on the bottom of the main window. The docked state is the default, as shown in Figure 4.9.

Fig. 4.9:

The PowerFactory output window

When clicking the right mouse button, when the cursor is in the output window area, the context sensitive menu of the output window appears. The output window can then be undocked by deselecting the "Docking View'' (by clicking the mouse onto "Docking View" to 'untick' it). The undocked output window is still confined to the main window, but now as a free floating window.

Note

This sometimes occurs 'accidentally' when the user left clicks the tool bar for the output window and drags the mouse (keeping the mouse button down) to somewhere outside of the output window boundaries. To rectify this simply left click in the title bar of the undocked window and drag it down to the bottom of the screen, where it will dock once more (if you have right-clicked 'unticked' "Docking View" to right-click and select "Docking View" once more.

The undocked state is not a normal situation for the output window. Because the output messages that appear in this window are important at any stage while using the program, the docked state is the best place because it will be visible then and easy to locate. The upper edge of the output window shows a splitter bar which is used to change the
4 - 13

DIgSILENT PowerFactory

PowerFactory Overview

size of the output window. The 'drag' cursor, appears automatically when the cursor is placed on the splitter bar. The left mouse button can be pressed when the 'drag' cursor is visible. This will turn the splitter bar to grey and the output window can now be resized by holding down the mouse button and moving the mouse up or down. The output window may be moved and resized by: Dragging the splitter bar as shown in Figure 4.9, when the output window is in the 'docking' mode Double-clicking the frame of the output window to dock/undock it from the main window. Pressing the on the main toolbar, which enlarges the graphics board by hiding the output window. Pressing the icons on the main toolbar, which enlarges the output window

The contents of the output window may be stored, edited, redirected, etc., using the following icons: Opens an editor and pastes any selected or complete text from the output window Opens a different output file Either saves the selected text to an ASCII file, or the complete contents of the output window if no selection was made Copies the selected text to the Windows Clipboard for use in other programs Clears the output window by deleting all messages Searches the text in the output window for the occurrences of a given text. A "?'' wild cart may be used Changes the font used in the output window Redirects everything to a file on disk. The output window will stop displaying messages while this icon is down Acts like "redirect to disk", but all messages will now be printed directly Pre-sets the option for the print dialogue. Either chooses printing of the selected text or all buffered text if no selection was made

Using the Output Window


The output window is more than just a dumb message viewer. It is an interactive tool, which helps in preparing your data for calculations and it improves any search for errors
4 - 14

DIgSILENT PowerFactory

PowerFactory Overview

or bugs in your projects. Every line in the output window with a full folder and object name can be double-clicked with the left mouse button. This will open the appropriate edit dialogue for the shown object. See the example in Figure 4.10.

Fig. 4.10:

The interactive output window

In this example, a calculation function reported an error because a transformer element has not been assigned a transformer type. Double-clicking the error message opens the edit dialogue of the transformer.

Context Sensitive Menu inside the Output Window


It is also possible to press the right mouse button while pointing at the object name. The context sensitive menu will pop-up and show entries to easily find and edit objects, if the printed object name was found to be an existing object in the database tree. These option are Edit Object will open the edit dialogue of the printed object, which is i.e. the reason for the error message

4 - 15

DIgSILENT PowerFactory

PowerFactory Overview

Edit and Browse Object will open the data manager and show the element and its parameters there. Mark in Graphic will mark the clicked element in the single line diagram and zoom into the region of its place. The interactive feature of the output window is extremely convenient when 'debugging' a new or changed power system design. Faulty elements don't have to be searched for in order to correct their parameters.

Output Window Legend


The output window uses colors and other formatting to distinguish between different types of messages or for specials like bar diagrams. Text messages formats: DIgSI/err - ... Error messages. Format: red colored. DIgSI/info - ....Information messages. Format: green colored. DIgSI/wrng - ...Warning message. Format: brown colored. DIgSI/pcl - ...' Protocol message. Format: blue colored. Text only Output text. Format: black colored. Reports of calculation results may contain bar graph information. The "voltage profiles'' report after a load-flow command, for instance, produces bar graphs of the per-unit voltages of busbars. These bars will be colored blue, green or red if the "Verification'' option in the load-flow command dialogue has been enabled. They will be hatch-crossed if the bars are too large to display. An part of a bar graph output is shown in Figure 4.11. The following formatting is visible:

Fig. 4.11:

Output window bar diagram

Green Solid Bar Used when the value is in the tolerated range.

4 - 16

DIgSILENT PowerFactory

PowerFactory Overview

Blue Solid Bar Used when the value is too low. Red Solid Bar Used when the value is too high Hatch-crossed Bar Used when the value is out of reach and cannot be displayed correctly.

Copying from the output window


The contents of the output window, or parts of its contents, may be copied to the buildin editor of PowerFactory or to any other program. Normally, not all selected lines will be copied and the format of the copied text may undergo changes. The latter is caused by the fact that the PowerFactory output window uses special formatting 'escape sequences'. Other programs may not be capable of dealing with these formatting commands.

Fig. 4.12:

The output window Info Message

Which lines will be copied is determined by the output window settings. See Section 6.4 for more information. When text from the output window is about to be copied, an info message will pop up, informing the user about the current settings. See Figure 4.12. A button is supplied which brings the user directly to the user settings dialogue. The info message may be disabled, in which case it will never show up again.

4.6
1 2 3

Getting Help

The PowerFactory software comes with a number of help facilities: The licensed version comes with a printed hard copy of the Users Manual and the Getting Started Tutorial. An on-line version of the Users Manual and the Getting Started Tutorial, which can be opened from the Help option on the main menu (see Figure 4.5). A context sensitive help which will directly jump to the right page of the on-line Users Manual when the F1 key is pressed.
4 - 17

DIgSILENT PowerFactory

PowerFactory Overview

Balloon help which will give the names of command icons, or input parameters, if the cursor is positioned over these items and held still for about half a second. The graphical elements for which balloon help is provided are: 1 Buttons/icons (available for all command icons). 2 3 Class-icons. Parameter fields.

Command buttons/icons are sometimes referenced by their name, instead of by their image. For large buttons, this is normally the case. The name of a button is either the name on the button itself (OK, Cancel), or the name that appears in the balloon help (e. g. = User Settings).

4 - 18

DIgSILENT PowerFactory

Program Setting, Logging on and User Accounts

Chapter 5 Program Setting, Logging on and User Accounts

This chapter provides reference information on how to configure the program, how to log on and how to create and manage user Accounts. More Detailed descriptions of the process introduced here can be found in the PowerFactory Installation Manual.

5.1

Program Configurations and Settings

In general there are 3 main questions to be answered before installing the software, the answers to these questions will determine the installation settings: License: Where should the license key(s) reside? Installation: Where should PowerFactory be installed? Database: Where should the database reside? Once PF has been set up in a computer, the installation setting is carried out by means of a 'Log-on' dialogue. This dialogue pops up automatically when the program is opened for the first time. Through the Licence, Network and Database tabs of the Log-on dialogue, the answers to the questions above are provided and the program installation is configured. A detailed description of the installation procedure and the program configuration alternatives is given in the PowerFactory Installation Manual. The next section provides reference information about the Log-on dialog.

5.2

The Log-on Dialogue

The application of PowerFactory is carried out within a user session. Since an account system is used, it is necessary to log on when starting a session. Immediately after opening the program a 'Log-on' dialogue is presented, there the user must specify his/her credentials. As indicated in Section 5.1 the Log-on dialogue also serves as interface to the program settings. To start a session, the user must always provide the corresponding name and password (credentials). Unless they have changed, the installations settings do not need to be update every time a session starts. In the next subsections a description of the fields presented in the log-on dialogue is given.

5-1

DIgSILENT PowerFactory

Program Setting, Logging on and User Accounts

Note:

A user account is the working space of a specific user (the account owner) within the DB. It is the object where the user stores his projects and settings. To access a specific account the corresponding user name and password must be given. Information on the account management system and how to share information with other users is given in Chapter 21 (Data Management). The description on how data is arranged within PF is given in Chapter 7 (The PowerFactory Data Model).

5.2.1

Log On Configuration

Fig. 5.1:

The Log-on Dialogue, User Credentials

Once the PF installation had been set, a name and a password must be given in order to access an account and start to use the program. Two special accounts are created when installing PF, the Demo and the Administrator. The Demo account is used to access and run the examples provided with the program. The administrator (database administrator) account is used to create and manage user's accounts in a multi-user environment (see Section 5.3). To log on as Demo, just select the corresponding option on the users name drop down menu (Figure 5.1), no password is required. To log on as administrator, select the Administrator name from the menu and use the assigned password. By default the administrator account password is Administrator. Users other than the Administrator and the Demo, require their own name and password to log on. If you are using a stand alone installation, you can create a new user account by typing in a new name and a password of your choice (an empty password is also accepted). After creating the new account the 'Do you really want to create a new user account' message will pop up, click Ok to continue. In a multi-user installation (see Section 5.3) new accounts and passwords are created by the administrator. For further information about the roll of the database administrator please refer to Section 5.3.2. Further information about the Demo account is given in Section 5.3.5.

Note

To run the prepared examples please log on as Demo user. This user requires no password and you have the possibility to use the demo projects with the full functionality of PowerFactory.

5-2

DIgSILENT PowerFactory

Program Setting, Logging on and User Accounts

5.2.2

License Settings

Fig. 5.2:

Log-on Dialogue License Settings

In order to run the program, users require access to a license key (also known as dongle or hardlock). By means of the interface described below (License tab of the Log-on dialogue), this access is defined.

License Key
ry offers four choices to install the license key:
In the License Key field, the installed license key setting must be selected. PowerFacto-

not available (Demo) No local key is installed, only Demo version of PowerFactory can be run. on local port A valid PowerFactory license key ('hardlock') must be connected to a USB or parallel port.

in network (file based communication) A connection to a network computer, which has the PowerFactory network license service running must be available. The communication between the user and the license server is done trough shared directories. in network (protocol based communication) A connection to a network computer, which has the PowerFactory network license service running must be available. The communication between the user and the license server is done trough a protocol. A detailed description of the different license key settings is given in the PowerFactory Installation Manual. Demo users (those without licence) should select 'not available (Demo)'.

Serial Number
Your serial number must be provided in the 'Serial Number' field. It can be found on the
5-3

DIgSILENT PowerFactory

Program Setting, Logging on and User Accounts

page 2 of the license agreement.

License Server
If the you are using a network key with file based communication, the path to the PowerFactory working directory of license server must be provided. This path is usually mapped on the client machine. If you are working with a protocol based communication key, you are required to specify the computer name or the IP network address (as in Figure 5.2) of the license server.

Advanced RPC-Settings
If a network license key with protocol based communication is used, the 'Advanced RPCSettings' must be given. To reach these fields, press the arrow button ( page of the License tab. ) on the first

The 'RPC' settings must be the ones specified in the license server. For detailed information consult your network management or see Section 3.2.3 of the PowerFactory Installation Manual.

NOTE:

If you are not sure about your license key setting please refer to your network administrator. File based communication is only recommended for old versions of PowerFactory that dont support protocol based. For further information on the license key configuration refer to the Installation Manual.

5.2.3

Network Settings

The PowerFactory installation directory contains the applications binaries; the working directory contains some temporary data, an error log file and the local database. In the 'Network' tab of the Log-on dialogue, the location of the PowerFactory installation and working directories is defined. Depending on that location three installation types are available: on local machine Locally installed on individual computers. on file server Only the working directory of each client resides on the local hard disk.

on an application server (e.g. Terminal Server) The installation and working directories reside on a server. A detailed description of the different installation methods is given in the PowerFactory Installation Manual.

Note:

If you are not sure about your installation type please refer to your network administrator. For detailed information about the installation types see the installation manual Chapter 5.

5-4

DIgSILENT PowerFactory

Program Setting, Logging on and User Accounts

5.2.4

Database Configuration

In this tab it is specified how the database is going to be used. You can select among: A single-user database which resides locally on each computer. A multi-user database which resides on an remote server. Here all users have access to the same data simultaneously. In this case user accounts are created and administrated exclusively by the Administrator.

DIgSILENT PowerFactory provides drivers for the following multi-user database systems: Oracle. Microsoft SQL Server. For further information about the database configuration please refer to the PowerFac-

tory Installation Manual.

5.2.5

Advanced Settings

The advanced program settings should only be changed under the guidance of the DIgSILENT PowerFactory support at support@digsilent.de.

5.2.6

Appearance Settings

The appearance settings influence the way in which the toolbar buttons are displayed and the way in which dialogues will open, close or move scroll bars and other objects. These settings may be changed to suit the users personal taste.

5.3

User Accounts and User Groups

The user account philosophy of PowerFactory basically works in the same way as is usual for larger computer systems. The first objectives of the user account managing system are: To protect the 'system' parts of the database from changes by normal users. To protect the part of the databases which belongs to user ''A'' from being changed by user ''B''. To allow users to share data. The user account managing system provides each user with his/her own ''private'' database space. The user is nevertheless able to use shared data, either from the common system database or from other users, and may enable other users to use some of his/her 'private' data. The user account managing system manages this whilst using only one single database in the background, which allows for simple backup and management of the overall database.

5-5

DIgSILENT PowerFactory

Program Setting, Logging on and User Accounts

5.3.1

PowerFactory Database Overview

A brief introduction to the top level structure of the PowerFactory database is convenient before presenting the user accounts and their functionality. The data in PowerFactory is stored inside a set of hierarchical directories. The top level structure is constituted by the following folders: The Configuration folder Contains company specific customizing for user groups, user default settings, project templates and class templates for objects The main Library folder Contains all standard types and models provided with PowerFactory. The main library folder is read only for normal users. The System folder Contains all objects that are used internally by PowerFactory. The system folder is read only for all normal users. Changes are only permitted when logged on as the Administrator, and should be conducted under the guidance of DIgSILENT customer support. User account folders Contain the project folders and all other folders in which the normal user defines her/his power systems and all accompanying objects and settings. Project folders are the housing for the data model that allows the definition and analysis of a power system: Chapter 7 (The PowerFactory Data Model) is dedicated to them. The top level structure described above can be seen in the Data Managers screen shot from Figure 5.3.

Fig. 5.3:

Basic database structure

5.3.2

The Database Administrator

A database administrator account is created with the PowerFactory installation. The main functions of the administrator are: Creation and management of user accounts. System database maintenance under the guidance of the DIgSILENT customer support.

5-6

DIgSILENT PowerFactory

Program Setting, Logging on and User Accounts

Under a multiuser database environment, the administrator is the only user with the rigth to: Add and delete users. Define users groups. Set individual user rights. Restrict or allow calculation functions. Set/reset user passwords. The administrator is also the only user that can modify the main library and the system folders. Although the administrator has access to all the projects of all the users, it does not have the rigth to perform any calculation. To log on as administrator, select the 'Administrator' user from the drop down menu of the 'Log on' page from the Log-on dialogue and write the corresponding password. By default the administrator password is Administrator. For further information about the administrator roll, please refer to the PowerFactory Installation Manual (Chapter 6).

5.3.3

Creating and Managing User Accounts

In the case of an installation with a local database, the simplest way to create a new user account is to enter an unknown account name and an arbitrary password in the Log-on dialogue (see Section 5.2.1). In this case the program will automatically create and activate the new account, without administrator intervention. In multi-user database installations, the administrator creates new user accounts by means of a tool called the 'User Manager', which is found in the Configuration folder. To create a new user:  Log on as administrator.  In the left pane of the Data Manager click on Configuration folder to display its contents.  Double click on the User Manager icon ( button. The User edit dialogue will pop up:  In the 'General' tab, enter the new user name and password.  If a licensed version with a restricted number of functions is used (i.e. you may have 4 licences with basic functionality, but only 2 stability licences), the 'License' tab may be used to define the functions that a user can access. The 'Multi User Database' option (bottom of the tab) should be checked for all users that will access the multi user database. The administrator can edit any user account to change the user name, set new calculation rights or change the password. To edit an existing user account:  Right-click on the desired user and select Edit from the context sensitive menu. The User edit dialogue will pop up. Any user can edit her/his own account by means of the User edit dialogue. In this case only the full name and the password can be changed.
5-7

, rigth pane) and press the Add User...

DIgSILENT PowerFactory

Program Setting, Logging on and User Accounts

Note:

The administrator is the only one who may delete a user account. Although users can delete all projects inside their account folder, they cannot delete the account folder itself or the standard folders that belong to it (i.e. the 'Recycle Bin' or the 'Settings' folder).

5.3.4

Creating User Groups

Any project or folder in a user account may be shared. This action can performed selectively by sharing only with certain user groups. User groups are created by the administrator via the User Manager. To create a new user group:  Log on as administrator.  In the Data Manager open the Configuration folder and double click on the User Manager icon( ).  In the User manager dialogue that pops up press Add Group.....  Enter the name of the new group, optionally a description and press Ok.  The new group is automatically created in the User Groups directory of the Configuration folder. The administrator can change the name of an existing group by means of the corresponding edit dialogue (rigth clicking on it and selecting Edit from the context sensitive menu). Via the context sensitive menu, groups can also be deleted. The administrator can add users to a group by:  Copying the user in the Data Manager (right click on the user and select Copy from the context sensitive menu).  Selecting a user group in the left pane of the Data Manager.  Pasting a shortcut of the copied user inside the group. The last action is carried out by: Right-clicking the user group and selecting Paste ShortUsers are taken out of a group by deleting their shortcut from the corresponding group. For information about sharing projects please refer to Chapter 21 (Data Management).

cut from the context sensitive menu.

5.3.5

The Demo Account

The demo account is special user account for demonstration or testing purposes. Like the administrator account it is automatically created with the program installation. The demo account folder is filled with numerous demonstration projects. These projects are accompanied by demonstration command scripts which can automatically activate a demo project and perform commands such as load-flow, short-circuit or transient analysis. Execution of these command scripts is started by selecting a demonstration from the main menu option File > Examples. This menu option has several sub-menus from which a demonstration may be selected. Selecting a demonstration will start the appropriate command script.

5-8

DIgSILENT PowerFactory

Program Setting, Logging on and User Accounts

Note:

The menu option File > Examples is only available when one is logged into the Demo account.

The ''Demo'' projects may also be activated and observed in the manner normally employed by PowerFactory. To learn how this is achieved it is best to work through the on-line tutorial that is provided. A demo user has read and write permissions for all demonstration projects. However, calculations will only be permitted for the demonstration networks as long as they have not been changed in a topological sense. This means that adding or deleting lines, transformers, loads, machines, etc., will lead to error messages. Licensed users may log on as demo users, change the demonstration projects in any way, and still be able to start a calculation (as long as their hardlock is available to PowerFactory). However licensed users are recommended to copy and paste into their own account the ''Demo'' projects of their interest. As long as a user does not make any topological changes, these demonstration projects may be used to experiment with PowerFactory. Such experimentation may include: Changing and executing commands such as load-flow, short-circuit or transient analysis. Changing power system elements such as selecting other line types, changing generator settings, etc. Creating new calculation cases Changing the appearance of the single line graphics except for adding or deleting power system elements. Creating or changing virtual instruments panels such as defining graphs or changing bar diagrams.

5-9

DIgSILENT PowerFactory

Program Setting, Logging on and User Accounts

5 - 10

DIgSILENT PowerFactory

User Settings

Chapter 6 User Settings

The User Settings dialogue, shown in Figure 6.1, offers options for many global features of PowerFactory. This chapter is dedicated to describe this options. The User settings ) on the main dialogue may be opened either by clicking the User Settings icon ( tool bar, or by selecting the Options > User Settings... menu item from the main menu.

6.1

General Settings

Fig. 6.1:

User Settings dialogue

The general settings include (Figure 6.1): Confirm Delete Activity Pops up a confirmation dialogue whenever something is about to be deleted. Open Graphics Automatically Causes the graphics windows to re-appear automatically when a project is activated. When not checked, the graphics window must be opened manually. Beep on user errors May be de-selected to suppress sounds. Use Multiple Data Manager When enabled, more than one data manager dialogue can be opened at a time. When disabled only one data manager may be opened at a
6-1

DIgSILENT PowerFactory

User Settings

time and pressing the New Data Manager button will pop up the minimized data manager. Use operating system Format for Date and Time the operating system date and time settings are used when this is checked. Use Default Graphic Converter. Edit Filter before Execute Presents the filter edit dialogue when a filter is selected, allowing the user to edit the filter before application. However, this is sometimes irksome when a user is applying a filter several times. Thus one may choose to go straight to the list of filtered objects when the filter is applied by un-checking this option. Always confirm Deletion of Grid Data When this option checked a confirmation dialogue is popped up when the user deletes grid data. Decimal Symbol Selects the symbol selected to be used for the decimal point. Use Standard Database Structure In order to simplify the operation of PowerFactory for users who do not use the program often, or who are just starting out certain restrictions may be introduced into the database structure, for example, allowing only 'Type' data to be placed in Library folders (when this option is un-checked). However, this may be irksome for advanced users or those who are used to the standard database working where a great deal of flexibility is permitted, so as to suit the users needs, and thus the standard structure may be engaged by checking this option. System Stage Profile The ability to create system stages may be limited by this option. Existing system stages will still be visible but the right menu options that create new revisions or system stages will be removed. This is once again a tool that may be used to 'simplify' PowerFactory for users not familiar with the program by limiting the operations that they may use.

6.2

Graphic Windows Settings

The graphic windows has the following settings.

Cursor settings
Defines the cursor shape: Arrow Crosshair A normal, arrow shaped cursor. A large, full screen cross.

6-2

DIgSILENT PowerFactory

User Settings

Tracking cross

A small cross.

General Options
Valid for all graphs: Show Grid only if stepsize will be least Grid points smaller than the selected size will not be shown. Show Text only if height will be least Text smaller than the selected size will not be shown. No. of columns in graphics floater Specifies the width of the graphics toolbar when this is a floating window. No. of columns in graphics docker Specifies the width of the graphics toolbar when it is docked on the right side of the drawing space. Line factor when printing The width of all lines in the graphics will be multiplied by the specified percentage when printing.

Coordinate Output at statusbar in mm


Specifies that the status bar will display the cursor position in millimeters.

Update Hidden pages always


Results in all graphical pages on a graphics board being updated, even when they are not visible. Note that this can slow the processing speed considerably. The advantage is that no updating is required when a different graphics page is selected.

Exclude Feeder Colors


May be used to exclude colors, by number code, which are to be used for feeder definitions. This is used to prevent the use of colors which are already used for other purposes. Ranges of color numbers are entered as '2-9'. Multiple ranges of colors must separated by commas, as in '2-9;16-23'.

Update Graphic while Simulation is running Use own background color for single line graphics
If the option is enabled, the user can define the background color of the single line graphics by using the pop up menu and then pressing OK.

By pressing the (

)button more graphic setting options are available:

6-3

DIgSILENT PowerFactory

User Settings

Allow Resizing of branch objects


If the option is enabled, the user can left click a branch element within the single line graphic and then resize it.

Edit Mode Cursor Set


Allows the selection of the mouse pointer shape.

Mark Objects in Region


Defines how objects within an user defined region of the single line graphic (defined by left clicking and then drawing a rectangle) are selected: Complete Only the objects, that are completely enclosed in the defined region, are selected. All the objects within the defined area are selected.

Partial

Show balloon Help


Enables or disables the balloon help dialogues. For information about the Graphic Window refer to Chapter 10 (The Graphics Editor).

6.3

Data Manager Settings

The data manager tab specifies which object types will be displayed or hidden in the tree representation, and whether confirmation prompts will appear when objects or data is changed in the data manager itself.

Show in Treelist
Object classes that are selected will be displayed in the database tree.

Browser
Save data automatically The data manager will not ask for confirmation every time a value is changed in the data browser when this option is selected. Sort Automatically Specifies that objects are automatically sorted (by name) in the data browser.

Operation Scenario
If the Save active Operation Scenario automatically is enabled, the period for automatic
6-4

DIgSILENT PowerFactory

User Settings

saving must be defined.

Export/Import Data
Configures the export and import of PowerFactory 'DZ'-files, as follows: Binary Data Saves binary data, such as results in the result folders, to the 'DZ' export files according to selection.

Export References to Deleted Objects Will also export references to objects which reside in the recycle bin. Normally, connections to these objects are deleted on export. Enable export of activated projects Will permit the export of an activated project.

Folders for Global Library


The default global type folder is the System\Library\Types folder. This default folder contains many predefined object types, but objects within this folder may not be changed by the user (read-only access). This option allows the user to specify a different ''Global Type Folder'', possibly a company specific and defined type library. For information about the Power Factory Database Manager refer to Chapter 11 (The Data Manager).

6.4

Output Window Settings

The output window settings control the way in which messages selected by the user, in the output window are to be copied for pasting into other programs. Whichever options are checked will determine what will be copied. The text in the output window itself will not be influenced. Escape sequences are special hidden codes which are used for coloring the text, or other formatting commands. Some text processing programs are not capable of using the PowerFactory escape codes. The Text Only option should be set in such cases. The text in the output window itself will not be influenced by the options chosen here. The number of lines displayed in the output window may also be limited.

6.5

Functions Settings

The functions settings page provides check boxes for the function modules that are accessible from the data manager or from the object edit dialogues. The user may choose to see only certain modules in order to ''unclutter'' dialogues. This may also be used to protect data by allowing only certain calculation functionality to be seen by certain users. This is particularly useful in a multi-user environment or in when inexperienced users utilize PowerFactory.

6-5

DIgSILENT PowerFactory

User Settings

6.6

Directories

Compiled DSL Models Pre-compiled DSL models may be available for use as external models. The DSL directory should be directed to the correct folder/ directory in order for PowerFactory to find these models. PFM-DSM

6.7

Editor

The editor which is used to enter large pieces of text (such as DPL scripts, objects descriptions, etc.) can be configured on this page.

Options
Enable Virtual Space Allows the cursor to move into empty areas. Enable Auto Indent Automatically indents the next line. Enable Backspace at Start of Line Will not stop the backspace at the left-most position, but will continue at the end of the previous line. View blanks and tabs Shows these spaces. Show Selection Margin Provides a column on the left side where bookmarks and other markings are shown. Show line Numbers Shows line numbers. Tab Size Defines the width of a single tab.

Tabs
Toggles between the use of standard tabs, or to insert spaces when the tab-key is used.

Language coloring
Defines the syntax-highlighting used when the type of text is not known.

ShortCuts
Opens the short-cut definition dialogue.

6-6

DIgSILENT PowerFactory

User Settings

6.8

Station Ware

When working with DIgSILENTs StationWare, connection options are stored in the user settings.The connection options are as follows: Service Endpoint Denotes the StationWare server name. This name resembles a web page URL and must have the form: http://the.server.name/psmsws/psmsws.asmx or http://192.168.1.53/psmsws/psmsws.asmx http denotes the protocol, the.server.name is the computer name (or DNS) of the server computer and psmsws/psmsws.asmx is the name of the StationWare application. Username/Password Username and Password have to be valid user account in StationWare. A StationWare user account has nothing to do with the StationFactory user account. The very same StationWare account can be used by two different PowerFactory users.The privileges of the StationWare account actually restrict the functionality. For device import the user requires read-access rights. For exporting additionally write-access rights are required.

6-7

DIgSILENT PowerFactory

User Settings

6-8

DIgSILENT PowerFactory

The PowerFactory Data Model

Chapter 7 The PowerFactory Data Model

Up to this point, information regarding the general structure of the database, the user interfaces and the administration of users accounts has been given. Now it is time to describe how the data is organized to model and analyze a power system. The set of folders and objects hierarchically organized to model and perform calculations on a power system will be referred to here as the data model.

7.1

Database, Objects and Classes

As explained in Chapter 4 (PowerFactory Overview), PowerFactory uses a hierarchical, object-oriented database. All the data, which represents power system elements, single line diagrams, study cases, system operation scenarios, calculation commands, program settings etc., are stored as objects inside a hierarchical set of folders. The folders are arranged in order to facilitate the definition of the studies and optimize the use of the tools provided by the program. The objects are grouped according to the kind of element that they represent. These groups are known as classes within the PowerFactory environment. For example, an object that represents a synchronous generator in a power system belongs to the class defined for synchronous machines (called ElmSym in PowerFactory); whereas an object storing the settings for a load flow calculation belongs to a class defined to set and execute load flows (called ComLdf ), and so on. Analogous to Windows, classes may be seen as the file extensions of the objects. Each object belongs to a class and each class has a specific set of parameters that defines the objects which it represents. As explained in Section 4.5 (User Interface), the edit dialogues are the interfaces between the user and an object; the parameters defining the object are accessed through this dialogue. This means that there is an edit dialogue for each class of objects. This information may seem somewhat academic to the user at first, as PowerFactory will assign objects automatically. However it is useful for the reader to have some understanding of this arrangement before the data model and its management tools are described. The PowerFactory database philosophy can thus be summarized by one 'golden' rule:

'Everything is an object, all the objects belong to a class and are stored according to a hierarchical arrangement in the database tree'
The following sections describe the arrangement of folders in the database and the objects that are used to represent and analyze power systems with PowerFactory.

7-1

DIgSILENT PowerFactory

The PowerFactory Data Model

7.2

PowerFactory Project Structure

Projects are used in PowerFactory to manage the studies of power systems. They include all of the networks for analysis with their corresponding variations and graphics, the definitions of the calculations performed, the results, etc. When defining and studying a system, the user always works on an active project, creating/modifying networks, performing calculations or analyzing results. From a database point of view, a project is a directory which stores: All the objects that collectively define a power system and its changes over time. Objects that the define the graphical representations of the system. Objects that define the calculations performed on the system. Objects that contain the results of the calculations. The objects mentioned above are stored in folders according to their functionality. These folders are hierarchically arranged within the project in order to facilitate the definition of the studies and optimize the use of the tools provided by the program. To understand the structure of the 'project folder' it is useful to examine which kind of information is represented by the data and what it is used for. This will lead us to PowerFactorys data model, which is organized in folders as illustrated in Figure 7.1. In PowerFactory Version 14, all changes in the projects are tracked: the date (day and time) of each change and the user who made the change are stored inside the database.

7-2

DIgSILENT PowerFactory

The PowerFactory Data Model

Fig. 7.1:

Data Arrangement Inside a Project (Default Structure of a Project Folder)

The default project structure (the data model described above) is shown in Figure 7.1. The remaining sections of this chapter deal with the description of the objects/folders shown above. For information on how to create and configure a new project please refer to Section 9.1 (Defining and Configuring a Project).

7.2.1

The Library

The library contains the equipment types (as in older versions of PowerFactory), special operational information, DPL scripts, templates and user-defined models. To make the library simple to navigate, PowerFactory Version 14 stores equipment types in a special subfolder called Equipment Type Library. Equipment Type Library It is convenient to store all manufacturer-specific data in the same location and organize it in such a way that it can be easily accessed when defining power system elements. Within the data model this

7-3

DIgSILENT PowerFactory

The PowerFactory Data Model

information corresponds to the above mentioned type data and is stored inside the Equipment Type Library folder. An equipment type object holds the essential electrical information for each class of network component. This information is usually provided in manufacturers data sheets. Within the project structure, the type objects are stored inside the Equipment Type Library. Type objects may be sorted by class using library subfolders, i.e. a subfolder for generator types, a subfolder for line types etc. Operational Library It is often desired to change the operation point of a network in order to analyze the effects of different loading levels, changed maintenance schedules or operational limits. An Operational Library folder, which contains sorted operational alternatives, is part of the approach used by PowerFactory to manage this task.

Fig. 7.2:

The Operational Library To create a new element in one of these folders, first select the folder by clicking once on it. Then press the New Object button ( select the desired element. ), and

The network may need to be analyzed at different times of the day, week or year, where changed load conditions and different component ratings are considered. As described above, Operational Library objects and Operation Scenarios facilitate this analysis by allowing the definition of different operational data. The Parameter Characteristics tool is designed to extend this flexibility of analysis via the use of characteristics. Characteristics are defined by a range of values, as opposed to a single fixed value, which are assigned to the parameters of selected power systems elements. Within this range, the selection of the appropriate value for the parameter is carried out according to a user-defined trigger. For example, the active power demand of a load can be modeled by means of a characteristic with 12 values, each one corresponding to a month of the year. If the trigger is set to January (triggers are user-defined), then the value used by the program to perform the calculations will be the first value of the characteristic; if the trigger is set to December, the last value of the characteristic will be used. Additional objects which support the calculations and the modeling of the system are also stored inside the Library folder. These objects include: automation commands developed
7-4

DIgSILENT PowerFactory

The PowerFactory Data Model

with the DIgSILENT Programming Language (DPL) and user-defined templates for composite network elements.

7.2.2

The Network Model

It would be convenient to have simultaneous access to all electrical and graphical data relating to the network to be analyzed (i.e. all objects that define the analyzed system and its graphical representation). This is achieved by storing all network data in the Network Model folder. The Network Model contains the electrical and graphical information for the grid. To further enhance manageability, this information is split into two subfolders: Diagrams and Network Data. An additional subfolder, Variations, contains all expansion stages for planning purposes. Together with Operation Scenarios (see Section 7.2.3) the concept of Variations takes place of the earlier system stage concept in PowerFactory. Network Data The electrical data may be sorted according to logical, organizational and/or geographical areas; therefore within any project, one or more Grid objects may be defined. All Grids are by default contained within the Network Data folder. When drawing a grid, all graphic information is automatically stored in this folder. In order to plan or assess the network under different topological configurations, it is useful to be able to create variations of the current network. These variations are linked to the original network data, so that changes made to the original network are automatically transferred to the variation. Additionally, these variations should be placed in a time frame, in order to allow scheduled expansion plans. PowerFactory uses objects called Expansion Stages to model these time-dependant variations. Expansion stages are stored inside Variation objects. Variations can be seen as expansion plans composed of different expansion stages, which are chronologically activated. Variations, like all other network data, are stored inside the Network Model folder. Expansion Stages (of an active Variation) are activated automatically by PowerFactory, if you set the date and time of the calculation case to a value, which is equal to or higher than the Activation Time of the expansion stage. The concepts of Variations and Expansion Stages are complemented by Operation Scenarios, which are stored on the same hierarchical level as the network model, because these scenarios don't model the grid itself, only its operation.

Diagrams

Variations

7.2.3

Operation Scenarios

Storing recurrent operation points and being able to activate or deactivate them when required, accelerates the analyses of the network under different operative conditions, e.g. different dispatch programs, low or high load periods, etc. PowerFactory can store complete operation points in objects called operation scenarios. This kind of data, which
7-5

DIgSILENT PowerFactory

The PowerFactory Data Model

is subject to frequent changes during a study and may be used to simulate different operation scenarios of the same network, is further grouped into subsets. Within the project folder, operation scenarios are stored inside the Operation Scenarios folder.

Fig. 7.3:

Operation Scenarios

We may need to analyze the network at different times during the day, week or year, where changed loading conditions and different component ratings are considered. As described above, Operational Library objects and Operation Scenarios facilitate this feature by allowing the definition of different operation points. Scenarios facilitate this analysis by allowing the definition of different operational data. The Parameter Characteristics tool is designed to extend this flexibility of analysis via the use of characteristics. Characteristics are defined by a range of values, as opposed to a single fixed value, which are assigned to the parameters of selected power systems elements. Within this range, the selection of the appropriate value for the parameter is carried out according to a userdefined trigger. For example, the active power demand of a load can be modeled by means of a characteristic with 12 values, each one corresponding to a month of the year. If the trigger is set to January (triggers are user-defined), then the value used by the program to perform the calculations will be the first value of the characteristic; if the trigger is set to December, the last value of the characteristic will be used.

7.2.4

Study Cases

Once the network data has been entered and configured, users may wish to perform network studies, including load-flow, various short-circuits, time-dependant simulations, etc. It would be useful if the results of these studies could also be stored for review or repeated later. The concept of the Study Case is the same as it was in previous versions of PowerFactory. In PowerFactory Version 14 all study cases are stored inside a folder called Study Cases.

7.2.5

Changed Settings

Project settings such as user-defined diagram styles for example, which differ from global settings, are stored inside the Changed Settings folder.

7-6

DIgSILENT PowerFactory

The PowerFactory Data Model

7.3

The Network Model

As introduced in Section 7.2.2, the Network Model folder contains the all graphical and electrical data which defines the networks and the single line diagrams of the power system under study. This set of data is referred as the network data model. The following folders are defined inside the Network Model folder: Network Diagrams ( ) Contains all objects pertaining to graphical information (single line diagrams) from the networks defined in the project. Network Data ( ) Contains all network components of the power system: generators, busbars, transformers, lines, switches, controller models, etc. These network components are stored in this folder, in accordance with PowerFactorys handling of network topologies (7.3.2 (Network Topology Handling)) Variations ( ) This folder, as introduced in Section 7.2.2, contains the objects which represent variations of the defined networks, such as topological changes, installation or retirement of network components, etc. Time stamps of these variations can be set in order to make the variations time-dependant.

The following subsections describe how the network data model is organized in these folders. Before any explanation of the Network Data folder is given, a subsection explaining PowerFactorys handling of network topology is presented. For an improved understanding of the following subsections, the key concepts related to the modeling of electric power systems with PowerFactory are recapped: Data model: The hierarchical set of objects from the database which are used to model and analyze a power system. All objects which comprise the data model are stored in the project folder. Network data model: The hierarchical subset of objects, within the data model, which are used to represent and model the electrical networks of the power system under analysis. Most objects from the network data model correspond to: electrical network components; graphical representations of the electrical components and sets of electrical components, grouped for analysis purposes. The objects comprising the network data model are stored inside the Network Model folder, within the Project folder. Network topology handling: The approach used by the data model to represent and connect the nodes and branches of real networks. This is achieved using by single electrical network components and sets of them. Electrical network components (or simply network components or elements): Are the objects used to represent real network elements, i.e. generators, switches, lines, etc. Each of these objects contains a model that DIgSILENT has developed to reproduce the static and dynamic behavior of the represented element. The theoretical information about the models and the relation among their parameters are given in the corresponding technical reference documents, which are attached to the sections of Appendix C and D. Like all objects in PowerFactory, components can be identified by their class, for example ElmLod (for loads), ElmLne (for transmission lines), etc. Each element class has a symbol that helps to distinguish
7-7

DIgSILENT PowerFactory

The PowerFactory Data Model

it within the database, for example the symbol used to represent a load is ( that used to represent a transmission line is ( ).

), and

7.3.1

Network Diagrams

Single line diagrams are defined in PowerFactory by means of graphic folders of class IntGrfNet ( ). Each diagram corresponds to a IntGrfNet folder. They are stored in the Network Diagrams folder ( ) of the Network Model (see database tree in Figure 7.4). Single line diagrams are composed of graphical objects, which represent components of the networks under study. Each graphical object is related (by means of a reference) to the network component that it is representing; additionally it uses a reference to a symbol object (IntSym, Appendix E), which defines its graphical appearance. Figure 7.4 illustrates the information given above. It shows the Network Diagrams folder of a project, containing two single line graphics: North Grid and South Grid. The content of North Grid (graphical objects related to network components) is displayed in the right pane of the Data Manager.

Fig. 7.4:

Network Diagrams

The relation between graphical objects and network components allows the definition and modification of the studied networks directly from the single line diagrams. In addition to this, the network components can be represented by more than one graphical object (manyIntGrf objects can refer to the same network component). Therefore, one component can appear in several diagrams. Thanks to the relation described above, several diagrams for one network can be defined. Diagrams displaying components from different networks are also possible. These diagrams are managed by the active Study Case, and specifically by an object called the Graphics Board. If a reference to a network diagram is stored in a Study Cases Graphics Board, every time the study case is activated, the diagram is automatically opened. As with any other object, diagrams can be added/deleted from the Graphics Boards. Each diagram is related to a specific grid (ElmNet). When a grid is added to an active study case, the user is asked to select (among the diagrams pointing to that grid) the
7-8

DIgSILENT PowerFactory

The PowerFactory Data Model

diagrams that s/he wants to display. References to the selected diagrams are then automatically created in the corresponding Graphics Board. Chapter 10 (The Graphics Editor), explains how to define and work with single line graphics. Additional information about the relation between graphical objects and network components is given below in Section 7.3.2 (Network Topology Handling). For further information about symbols and the appearance of graphical objects, please refer to Appendix E (Reference to the use of Symbols in PowerFactory).

Single Line Graphics and Data Objects


In a simple network there may be a 1:1 relationship between data objects and their graphical representations, i.e. every load, generator, terminal and line is represented once in the graphic. However, in this regard, PowerFactory provides additional flexibility Data objects may be represented graphically on more than one graphic, but only once per individual graphic. Thus a data object for a single terminal can be represented graphically on two or more graphics. Both graphical representations contain the link to the same network component (i.e. the terminal element). Furthermore, graphical symbols may be moved without losing the link to the data object (network component) that they represent. Likewise, data objects may be moved without affecting the graphic. The graphics themselves are saved in the database tree. This makes finding the correct single line graphic representation of a particular grid easy, even in the case where there are several graphical representations of one grid. When PowerFactorys drawing tools are used to place a new component (i.e. a line, transformer, bar graph, etc.) a new data object is also created in the database tree (in a target Grid folder). A Single Line Graphic object therefore has a reference to a target Grid folder. The new data objects are stored in the 'target' folders that the graphics page is associated with. Since data objects may have more than one graphical representation, the deletion of a graphic object should not mean that the data object will also be deleted. Hence the user may choose to delete only the graphical object (context sensitive menu --> Delete Graphical Object Only). In this case the user is warned that the data object will not be deleted. This suggests that a user may delete all graphical objects related to a data object, with the data object still residing in the database and being considered for calculation. This is indeed what will occur, when this kind of graphical deletion is performed. When an element is deleted completely (context sensitive menu --> Delete Element) a warning message will request confirmation of the deletion. This warning may be switched off - see User Settings on the main menu, General tab, and untick Always confirm deletion of Grid Data).

Note:

A graphical object represents an electrical element from the database but is not the element itself. PowerFactory allows the generation of single line graphics containing any of the defined graphical objects. Therefore single line graphics containing objects not necessarily stored in the same grid or substation can be created.

7-9

DIgSILENT PowerFactory

The PowerFactory Data Model

7.3.2

Network Topology Handling

Network components can be classified as node elements or branch elements. Branch elements can be further separated single connection elements (generators, motors, loads, etc.), two connections elements (transmission lines, transformers, etc.) and three connections elements (three winding transformers, AC/DC converters with two DC terminals, etc.). Simple networks are easily modeled in PowerFactory by defining and connecting nodes and branch elements. For larger networks, in order to achieve a more realistic representation and facilitate their analysis, basic components may need to be grouped into higherlevel hierarchical objects to represent electrical substations and composite branches (for example). Furthermore, substations, branches and any other network component can be grouped within Site objects to represent geographical areas of a system. The following subsections provide further information regarding the PowerFactory representation of network topological components.

Nodes
In circuit theory, the junction points connecting lines, generators, loads, etc. to the network are generally termed nodes. In PowerFactory, nodes are modeled by means of objects called 'terminals' (ElmTerm). Depending on their usage within the power system, terminals can represent busbars, junctions or simply internal nodes (their usage is defined by a drop down menu found in the Basic Data tab of the terminal dialogue). According to the selected usage, different calculation functions are enabled; for example the short-circuit calculation can be performed only for busbars or for busbars and internal nodes, and so on. When any branch element is directly connected to a terminal, PowerFactory uses a 'cubicle' (StaCubic) to define the connection. Cubicles may be visualized as the panels on a switchgear board, or bays in a high voltage yard, to which the branch elements are connected. Normally a cubicle is created automatically when an element is connected to a node. In this case the switch configuration of the new cubicles has been previously defined by the user and is carried out using simple switches of class StaSwitch (for further information about defining cubicles refer to Section 11.2: Defining Network Models with the Data Manager). order to model complex busbar-substation configurations) by using switches of class ElmCoup, whose usage can be set to circuit breaker, disconnector, switch disconnector or load switch. In this case the branch elements are connected to the terminals (busbars) through ElmCoup objects. The connection of an ElmCoup to a terminal is carried out by means of automatically generated cubicles without any additional switch (StaSwitch) object. For further information regarding how to connect nodes with branch elements using circuit breakers (ElmCoup objects) please refer to Section 11.2 (Defining Network Models with the Data Manager).

PowerFactory also offers the possibility to create more detailed cubicle connections (in

7 - 10

DIgSILENT PowerFactory

The PowerFactory Data Model

Note:

The use of ElmCoup objects also allows the representation of complex busbar systems by connecting several terminals together. Additionally they allow the application of running arrangements (7.5.6: Running Arrangements).

Branch Elements
As explained earlier, branch elements are connected to nodes via cubicles. A connection between two nodes is made by two-port elements like transformers, switches or lines. Three-port elements require a connection to three different nodes. Generally, branch elements are single components whose connection to the network is automatically set when selecting the connected terminals. From the data model point of view, the case of transmission lines (and cables) is interesting, because they can be defined as a one-to-one connection between two nodes, or as folders containing line sections that together connect two nodes. The purpose of sectionalizing the line into parts is so that different line types may be used for the different sections (such as when a cable connecting two nodes uses different types in different sections, or when a line uses two or more different tower types, or when manual transpositions should be modeled - since the Transposed option in the type object is a perfect, balanced, transposition). For information about how to define transmission lines (and cables) and sections please refer to Section 10.1 (Defining Network Models with the Graphical Editor). For technical information about the transmission line and cable model, please refer to Appendix C.28 (Transmission Lines (ElmLne)).

Substations
Detailed representations of electrical substations can be achieved in PowerFactory by connecting and storing terminals and switches together, under one 'Substation' object (ElmSubstat ). Substations can also be used to model composite busbar systems, by storing terminal and switch arrangements under the same object. Separate single line diagrams of individual substations can be created. Substation objects allow the use of running arrangements to store/set a certain status of the station circuit breakers (ElmCoup objects) (see 7.5.6: Running Arrangements). For information about how to define substations please refer to Section 10.1 (Defining Network Models with the Graphical Editor) and 11.2 (Defining Network Models with the Data Manager).

Branches
Similar to substations, PowerFactory allows nodes and branch elements to be stored under the same object (the branch object, ElmBranch ) in order to represent branched-off connections between two terminals or substations. Branches are 'composite' two-port elements that may be connected at each end to a node. One typical application is a distribution line with branched-off loads along the connection: transmission lines, loads and the corresponding terminals can be stored together under the same branch, and the two ends of the line correspond to the branch connections with the grid. As in the case of substations, separate single line graphics for branches can be created with the
7 - 11

DIgSILENT PowerFactory

The PowerFactory Data Model

graphical editor. For information about how to define branches please refer to Section 10.1 (Defining Network Models with the Graphical Editor) and 11.2 (Defining Network Models with the Data Manager).

Sites
Substations, branches and any other network component can be stored together under the same 'Site' object in order to represent and analyze a network according to its geographical (topological) regions. Sites are high-level hierarchical objects that can store any defined component within a network. For information about how to define sites please refer to Section 11.2 (Defining Network Models with the Data Manager).

7.3.3

Network Data

The Network Data folder contains all components which make up the electrical networks of the power system being analyzed. As introduced in Section 7.2, the electrical data may be sorted according to logical or organizational and/or geographical areas. Consequently different networks may arise. These networks are made up of electrical components which conform to the PowerFactory topology handling approach (explained in the previous section). In PowerFactory, electrical networks (as defined above) are stored in 'Grid' folders ). A power system may have as many grids as defined by the user. These (ElmNet grids may or may not be interconnected. As long as they are active, they are considered by the calculations. An example of this approach is the Tutorial project provided with the Getting Started Manual. In this project, a distribution network and a transmission network are created and analyzed separately. At a later stage both networks are connected and the analysis of the complete system is carried out. Figure 7.5 shows a network model with two grids: North and South. Both networks are active (red-colored icons). The left pane in the Data Manager shows the hierarchical organization of the components in the North grid (only objects containing other elements are shown). The right pane shows the contents of highest hierarchical level of the North Grid.

7 - 12

DIgSILENT PowerFactory

The PowerFactory Data Model

Fig. 7.5:

Network Data - Grid folders

Additionally to grids, the Network Data folder contains a set of special objects that allow the further grouping of network components. This additional grouping of elements is carried out in order to allow further analysis and calculations of the power system. By default, when a new project is created, new empty folders to store these special objects are created inside the Network Model folder. The left pane shown in Figure 7.6 illustrates the complete structure of the Network Data folder from the example shown in Figure 7.5. Besides the two defined grids (North and South), folders to store the grouping objects are created. The user can define any of the corresponding grouping objects inside each of these folders. The right pane shown in Figure 7.6 shows the contents of the 'Feeders' subfolder, which contains a 'Feeder' object named F1.

Fig. 7.6:

The Network Data folder

Descriptions of the above mentioned grouping objects and a component's parameter characteristics is given in the following subsections. The user can define any of these
7 - 13

DIgSILENT PowerFactory

The PowerFactory Data Model

additional grouping objects via the use of references to relevant network components stored in the grid folders. For information about defining grids please refer to Section 9.2 (Creating New Grids).

Note:

A grid (and in general any object comprising the data model) is active when it is referred to by the current study case. Only objects referred in the current (active) study case are considered for calculation. An active object can be distinguished in the data manager because of the red color seen on its icon.

Areas
To facilitate the visualization and analysis of a power system, elements may be allocated into areas (ElmArea ). The single line graphics can then be colored according to these areas and special reports after load flow calculations ('Area summary report' and 'Area interchange report') can be generated. Area objects are stored inside the Areas folder ( ) in the Network Data directory. For information about defining an Area please refer to Chapter 12 (Grouping Objects). For information concerning the visualization of areas within the single line Graphic please refer to 10.5.3 (Commands and Settings for Single Line Graphics). For information about reporting Area results please refer to Chapter 20 (Reporting Results in PowerFactory).

Virtual Power Plants


Virtual Power Plants are used to group generators in the network, in such a way that the total dispatched active power is set to a target value. The dispatch of each generator (the Active Power field available in the Dispatch section of the Load Flow tab in the generator element dialogue) is scaled according to the Virtual Power Plant rules (must run, merit of order, etc.), in order to achieve the total target value. Virtual Power Plant objects (ElmBmu ) are stored inside the Virtual Power Plants folder ( ) within the Network Data directory. For information regarding how to define a Virtual Power Plant, please refer to Chapter 12 (Grouping Objects).

Boundaries
Boundaries are objects used in the definition of network reductions and in summation reports after a load flow calculation (to report the active and reactive power flow along the boundary). Boundary objects (ElmBoundary ) may define topological regions by specifying a topological cut through the network. New boundaries are created by specifying the cubicles that define the cut through the network. An interior region, corresponding to the boundary cut, is defined by specifying a direction for each cubicle. Interior regions and boundaries can be colored in the single line graphic.

7 - 14

DIgSILENT PowerFactory

The PowerFactory Data Model

New boundaries are stored in the Boundaries folder within the Network Data folder. For information on the definition and functionality of boundaries please refer to Chapter 12 (Grouping Objects). For information on coloring options for boundaries and interior points please refer to Section 10.5.3 (Commands and Settings for Single Line Graphics).

Circuits
Circuits are objects of class ElmCircuit ( ), and are used to group branches in order to clarify which branches are connected galvanically. Each branch (ElmBranch) can have a reference to any defined circuit object. This feature allows branches to be sorted according to the circuit to which they belong. For information regarding the definition of circuits and the assignment of branches to a circuit, please refer to Chapter 12 (Grouping Objects).

Feeders
When analyzing a system it is often useful to know where the various elements are receiving their power supply from. In PowerFactory this is achieved using Feeder Definitions (ElmFeeder ). A feeder is defined at a line or transformer end, and then the feeder definition algorithm searches the system from the definition point to determine the extent of the feeder. The feeder ends when: An open breaker is encountered; or The end of a line of supply is encountered; or Terminate feeder at this point is enabled in a cubicle (optional); or A higher voltage is encountered (optional). Once a feeder has been defined it may be used to scale the loads connected along it according to a measured current or power, to create voltage profile plots or to select particular branches and connected objects in the network. Following load flow calculations, special reports can be created for the defined feeders. To distinguish the different feeder definitions, they can be colored uniquely in the single line graphic. All feeder ) in the Network Data folder. objects are stored in the Feeders folder ( For information regarding the definition of feeders and load scaling please refer to Chapter 12 (Grouping Objects). For information about coloring the single line graphic according to feeder definitions please refer to Section 10.5.3 (Commands and Settings for Single Line Graphics). For information about voltage profile plots, please refer to Chapter 20 (Reporting Results in PowerFactory).

Operators
For descriptive purposes, it is useful to sort network components according to their operators. Additionally, system operators may find it advantageous to generate summary reports of the losses, generation, load, etc. according to their designated region(s). PowerFactory allows the definition of operators, the assignment of network components to these operators, and the identification of operators on single line diagrams by means of Operator objects. The Operator objects (ElmOperator, ) are stored in the Operators folder ( ) in the
7 - 15

DIgSILENT PowerFactory

The PowerFactory Data Model

Network Model directory.


Further information about the definition and functionality of Operator objects is given in Chapter 12 (Grouping Objects).

Owners
For descriptive purposes it is useful to sort network components according to their owners. Additionally, for network owners it may prove advantageous to generate summary reports of the losses, generation, load, etc. for their region(s). Similar to Operators, PowerFactory allows the definition of network owners, and the assignment of network components to them, by means of Owner objects. The Owner objects (ElmOwner, Network Model directory. ) are stored in the 'Owners' folder ( ) in the

Further information regarding the definition and functionality of Owner objects is given in Chapter 12 (Grouping Objects).

Paths
A path (SetPath, ) is a set of two or more terminals and their interconnected objects. This is used primarily by the protection module to analyze the operation of protection devices within a network. The defined paths can be colored in a single line graphic using the coloring function. New paths are stored inside the Paths folder ( ) in the Network Data directory. For information regarding how to define a path please refer to Chapter 12 (Grouping Objects). For information about the coloring function please refer to Section 10.5.3 (Commands and Settings for Single Line Graphics). For information about the use of the path definitions for the analysis of the protective devices, please refer to Chapter 32 (Protection).

Routes
Routes are objects which are used to group line couplings (tower elements). Each ). Each coupling (ElmTow) can have a reference to any defined route (ElmRoute, route has a color that can be used to identify it in single line diagrams, when the corresponding coloring function is enabled. For information regarding line couplings please refer to the technical reference for the transmission line model (Appendix C.28 (Transmission Lines (ElmLne))); for information about the definition of routes and the assignment of couplings to a route, please refer to Chapter 12 (Grouping Objects). For information about coloring functions in single line diagrams, please refer to Section 10.5.3 (Commands and Settings for Single Line Graphics).

Zones
Components of a network may be allocated to a zone object (ElmZone, ) in order to represent geographical regions of the system. Each zone has a color which can be used to identify the elements belonging to it in the single line graphic. These elements can be
7 - 16

DIgSILENT PowerFactory

The PowerFactory Data Model

listed in a browser format for group editing; additionally all loads belonging to the zone can be quickly scaled from the zone edit dialogue. Reports for the defined zones can be generated following calculations. Upon being defined, zones are by default stored inside the Zones folder ( ) in the Network Data folder. For information regarding the definition of a zone and its functionality, please refer to Chapter 12 (Grouping Objects).

7.3.4

Variations and Expansion Stages

During the planning and assessment of a power system it is necessary to analyze different variations and expansion alternatives of the original networks. In PowerFactory these variations are modeled by means of 'Variations', which are objects that can store and implement the changes which are expected on a network without affecting the original model. The use of variations allows the user to conduct studies under different network configurations in an organized and simple way. The user only needs to define (by means of Variations) the changes that s/he wants to implement and then activate or deactivate them according to her/his studies. Different variations can be independently applied (activated) at the same time to the same network, which further facilitates the user. The changes can also be implemented gradually according to the study time in order to allow the representation of scheduled expansion plans. Variations objects (IntScheme, ) are stored inside the Variations folder ( ) which resides in the Network Model folder. As introduced in Section 7.2, variations are composed of 'Expansion Stages' (IntStage), which store the changes made to the original network(s). The application of these changes depends on the current study time and the activation time of the expansion stages. The study time is a parameter of the active study case, and is used to situate the current study within a time frame. The activation time is a parameter given to the expansion stages, to determine whether or not, according to the study time, the changes contained within the expansion stages, are applied. If the activation time precedes the study time, the changes are applied to the original network. The changes of a subsequent expansion stage add to the changes of its predecessors. In order that changes to the network configuration are applied and can be viewed, a variation must be activated. These changes are contained in the expansion stage(s) of this active variation. Once the variation is deactivated, the network returns to its original state. The changes contained in an expansion stage can be classified as: Changed parameters of network components; Additions; i.e. objects added to the network. Deletions; i.e. objects removed from the network. The example shown in Figure 7.7 illustrates the concept of variations and expansion stages. Variation 1 is composed of expansion stages: Stage 1, Stage 2 and Stage 3. Assume that the activation time of each of the expansion stages is t1, t2 and t3, respectively. With Variation 1 active and a study time between t1 and t2, the changes stored in Stage 1 apply to the original network. For a study time between t2 and t3, the changes from Stage 1 and Stage 2 apply. Similarly, for a study time greater than t3, changes from Stage 1 to Stage 3 apply. In this case, the red coloring of Variation 1 indicates that it is activated and that the changes included in its expansion stages are considered. The dark
7 - 17

DIgSILENT PowerFactory

The PowerFactory Data Model

red color on Stage 1 means that the stored changes were already applied (the study time precedes t1). The red color on Stage 2 means that this is the current stage (the study time is between t2 and t3). The changes inside it have been applied and modifications carried out on the network will be stored inside this stage. The black color on Stage 3 means that the study time precedes t3; therefore the included changes have not yet been applied.

Fig. 7.7:

Variations and expansion stages

Within an active variation, all changes applied to the actual network (i.e original network plus changes of preceding expansion stages) are recorded in the current expansion stage. Therefore, it is important to note that the current expansion stage is also the "recording" expansion stage. It may be possible to have two (or more) active variations and therefore two (or more) current expansion stages; only one of them can be set as the recording expansion stage (changes can only be stored in one of the actual expansion stages). In such cases the user must set one of the current expansion stages as the recording stage. In the example shown in Figure 7.7, if it assumed that Variation 1 is the only active variation: the recording expansion stage for a study time between t1 and t2 is Stage 1; for a study time between t2 and t3 it is Stage 2 (as illustrated in the figure); for a study time greater than t3 it is Stage 3. The study time may be changed to store modifications in a different expansion stage. It is also possible (and recommended) to directly set the desired stage as the recording expansion stage. This last action will automatically change the study time. Variations and expansion stages are not only used to record time-dependant modifications to the network model. Time dependencies of operational objects can also be modeled by means of them, in this case they are known as 'Variations'. For information about defining, setting, activating and working with Variations and Expansion Stages, please refer to Chapter 17 (Network Variations and Expansion Stages). For information about Study Cases and the Study Time please refer to Section 13.3 (Study Time).

7 - 18

DIgSILENT PowerFactory

The PowerFactory Data Model

Note:

Operational parameters can only be changed if there is no active operation scenario.

7.4

The Equipment Type Library

A type object holds the essential electrical information for each class of network component. This information is usually provided in manufacture's data sheets. Within the project structure the type objects are stored inside the Equipment Type Library. Type objects may be sorted by class using library subfolders ( ). Figure 7.8 shows the equipment library of a project containing generator, load and transformer types, all sorted using library subfolders.

Fig. 7.8:

The Equipment Library

Unlike the Global Library (Section 5.3: User Accounts and User Groups), which is accessible to all users, the local Equipment Type Library can only be used by the project owner and those with which the project is shared. It is used to define types that are going to be used in the specific project. When defining a new network component, the user is asked for a type object. There s/ he can choose among a 'Global Type' (from the Global Library), a 'Project Type' (from the project Equipment Library) or a New Project Type (Figure 7.9). If the latter option is selected, a new type will be defined and automatically stored in the local Equipment Type Library.

Notice:

The local Equipment Type Library is generated automatically with a project. By default the equipment libraries include the 'Scales' folder (IntScales), which is used to store time scales (for further information please refer to Chapter 18: Parameter Characteristics).

7 - 19

DIgSILENT PowerFactory

The PowerFactory Data Model

Fig. 7.9:

Defining the type for a generator element

Inside the equipment libraries, the user can define new suitable types for her/his project or simply copy types from the Global Library or other folders. If the types inside the Equipment Type Library are to be sorted according to their class, the user must create new folders for each class. For information regarding how to set the equipment library please refer to Chapter 14 (The Equipment Type Library). For an explanation about type data please refer to Section 4.4 (Data Arrangement).

7.5

The Operational Library

Network components use references to type objects in order to set parameters related to the equipment itself and avoid data redundancy. For example, two generators defined in a network model (lets call them G1 and G2) may refer to the same generator type (lets call it G 190M-18kV) to set their manufacturer equipment related data, i.e. nominal voltage, nominal power, impedances, etc. G1 and G2 will have the same equipment data but may be operated at different points or may be connected to ground in a different way. That is, they may have the same type data, but different operational and element data. As mentioned, certain parameters of network components do not depend on the equipment itself but on the operational point. These parameters are grouped under the operational data set of the element. In the previous example considering synchronous generators, the active power dispatch or the reactive power limits are part of this operational data. In order to analyze a network under different operational points, operational data may change frequently during a study. Considering that different network components may have identical operational parameters (for example 2 generators with the same MVAr limits or various circuit breakers with the same ratings for short-circuit currents); references to objects storing operational data would facilitate the definition of different network operational points. Similar to types, the use of objects containing operational data avoids redundancy. The Operational Library is the folder where objects containing operational data are stored. The description of these objects and their hierarchical organization within the Operational Library is the subject of the following subsections. Figure 7.10 shows how the Operational Library looks from its uppermost hierarchical level.

7 - 20

DIgSILENT PowerFactory

The PowerFactory Data Model

Fig. 7.10:

Operational Library

Note:

Please note that fault conditions of network components are also considered part of the operational data.

7.5.1

Circuit Breaker Ratings

Circuit Breaker Rating objects (IntCbrating ) contain information that defines the rated short-circuit currents for circuit breakers (objects of class ElmCoup). They are stored inside the CB-Rating folder ( ) in the Operational Library. Any circuit breaker (ElmCoup) defined in the Network Model can use a reference to a Circuit Breaker Rating object in order to change its current ratings. Originally these ratings are defined in the type of the circuit breaker element. The right side of Figure 7.11 shows the edit dialogue of the IntCbrating object. The left side shows the edit dialogue of a circuit breaker where a reference to an IntCbrating object called Rating 1 is created.

7 - 21

DIgSILENT PowerFactory

The PowerFactory Data Model

Fig. 7.11:

CB-Rating

As shown in Figure 7.11, the parameters defined by a circuit breaker rating are: Three phase initial peak short circuit current Single phase initial peak short circuit current Three phase peak break short circuit current Single phase peak break short circuit current Three phase RMS break short circuit current Single phase RMS break short circuit current DC time constant For information about how to define new circuit breaker ratings please refer to Section 15.1 (Circuit Breaker Ratings).

Note:

Circuit breaker elements (ElmCoup) must be distinguished from Switch objects (StaSwitch); the latter are automatically created inside cubicles when connecting a branch element (which differs to a circuit breaker) to a terminal. StaSwitch object employ references to Circuit Breaker Rating objects.

7.5.2

Demand Transfer

The active and reactive power demand defined for loads and feeders in the network model can be transferred to another load (or feeder) within the same system by means
7 - 22

DIgSILENT PowerFactory

The PowerFactory Data Model

of Load Demand Transfers (objects of the class IntOutage). This transfer only takes place if it is applied during a validity period defined by the user (i.e. if the current study time lies within the validity period). Figure 7.12 shows the edit dialogue of a Load Demand Transfer. In this case the user will transfer 13 MW from a load called Load A to a load called Load B (the active power demand of Load of A will be reduced by 13 MW, which will be added to the demand of Load B).

Fig. 7.12:

Load Demand Transfer

The demand transfer can be defined with absolute values (MW and MVA) or with relative (percent) values. For information regarding how to define and how to apply Load Demand Transfers, please refer to Section 15.2 (Demand Transfers).

7.5.3

Faults

The calculation commands provided by the reliability assessment function of PowerFactory use objects called Contingencies (ComContingency and ComOutage) to

simulate the outage (and subsequent recovery) of one or more system elements. In order to facilitate the definition of these Contingencies and to avoid data redundancy, objects called Fault Cases (class IntEvt) are defined in the Operational Library. Whenever it is required, the user can create new Contingencies based on the defined fault cases. Fault cases can be considered to be fault scenarios that determine the outage of one or more system elements. They are comprised of a collection of events (i.e. shortcircuits, switching) that define how the elements are taken out of service. Fault cases are stored inside the Faults folder within the Operational Library. Besides fault cases, other objects which facilitate the management of fault scenarios and the creation of contingencies are stored in the Faults folder. This section focusses on the data structure of the Faults folder and the objects that comprise it. The actual functionality of these objects will be presented in Chapter 29
7 - 23

DIgSILENT PowerFactory

The PowerFactory Data Model

(Reliability Assessment). The 'Faults' folder ( 1 2 ) can store two kinds subfolders: ): stores objects that represent fault Fault Cases folders (IntFltcases ) scenarios (fault cases IntEvt

Fault Groups folders (IntFltgroups, ): stores objects called Fault Groups (IntFaultgrp ), which in-turn store references to fault cases.

The user can define as many subfolders (fault cases-IntFltcases and fault groupsIntFltgroups) and objects (fault cases-IntEvt and fault groups-IntFaultgrp) as s/he needs. The uppermost window in Figure 7.13 shows the Faults folder in a project. Two Fault Cases subfolders (Cases North and Cases South) have been defined; and a Fault Groups subfolder, called Grouping Faults is also contained. The middle window in Figure 7.13 shows the content of Cases South, which stores three fault cases: namely Bus 1, G1 and T1. In the bottom window of Figure 7.13, a fault group called Fault Group has been defined inside Grouping Faults which contains references to the fault case Line2-Line5 (defined in the Cases North).

7 - 24

DIgSILENT PowerFactory

The PowerFactory Data Model

Fig. 7.13:

The Faults Folder

In the following subsections more detailed descriptions of the fault case object and the fault group object are given. For information on how to define new objects in the Faults folder, please refer to Section 15.3 (Fault Cases and Fault Groups).

Fault Cases
Fault cases are objects of class IntEvt (in PowerFactory terminology IntEvt objects are called Simulation Events/Faults) which are used to model fault scenarios as explained in the previous section. They are comprised of objects called Events, which represent the
7 - 25

DIgSILENT PowerFactory

The PowerFactory Data Model

specific events taking place on the network and leading to the unintended outage of the elements. A fault case can of course represent a fault in more than one component; in this case more than one event would be defined. The fault case Line 2-Line 5 shown in Figure 7.13, represents a short-circuit fault in transmission lines Line2 and Line 5 of the sample network. Line 2-Line 5 is therefore made of short-circuit events for the two corresponding components. There are two types of Fault Cases: 1 Fault cases without switch events (Type 1): Independent of the current topology and only stores the fault locations. The corresponding switch events are automatically generated by the contingency analysis tools. For further information please refer to Chapter 29 (Reliability Assessment). Fault Case with at least one switch event (Type 2): A Fault Case of Type 2 predefines the switch events that will be used to clear the fault. No automatic generation of switch events will take place. For further information please refer to Chapter 29 (Reliability Assessment).

Note:

Event objects can generate more than short-circuits. PowerFactory offers several kinds of events for contingency analysis and time-domain simulations, a detailed description of each event class is given in Section 13.8 (Events). In the case of fault representations in the Operational Library by means of fault cases, only shortcircuit and switching events are relevant.

For information on how to define fault cases and how the events of the defined faults are created please refer to Section 15.3 (Fault Cases and Fault Groups).

Fault Cases and The Contingency Analysis Tool


The main purpose of defining fault cases in the Operational Library is to facilitate the definition of reliability analyses on complex networks. From the contingency analysis command (ComSimoutage), the user makes references to the desired fault cases and the program automatically generates the contingencies for the corresponding components. There is no need to redefine the same contingencies each time a contingency analysis of the network (regardless of its operational point or current configuration) is required. This is demonstrated by performing a contingency analysis of the critical components T1, G1 and Bus 1 in the network South in Figure 7.13. Once the fault cases G1, T1 and Bus 1 have been created, the user can call them from the contingency analysis command every time s/he needs to analyze the network, considering the contingencies of these components. For further information regarding the use of fault cases to create outages for PowerFactorys contingency analysis tools please refer to Chapter 29 (Reliability Assessment).

7 - 26

DIgSILENT PowerFactory

The PowerFactory Data Model

Note:

The use of IntEvt objects extends beyond PowerFactorys reliability analysis functions. Time domain simulations (EMT/RMS) make reference to IntEvt objects, in order to include simulation events which take place during runtime. In this case the execution time sequence of the events must be defined by the user.

Fault Groups
A fault group object (IntFaultgrp) as introduced in 7.5.3 can store references to different fault cases; therefore they may be considered as 'sets' of faults. Like fault cases, fault groups can be referred to by the contingency analysis command (ComSimoutage); in this case all the faults contained in the set will be considered. For the use of fault cases to create outages for the contingency analysis tools please refer to Chapter 29 (Reliability Assessment).

7.5.4

Capability Curves for Generators

The Capability Curve objects (IntQlim, ) allow the consideration of distinct minimum /maximum values of the reactive power, at different levels of active power injection. Capability curves are stored inside the Mvar Limit Curves folder ( ) in the Operational Library. Synchronous generators (ElmSym) and static generators (ElmGenstat) defined in the Network Model can use a pointer to a Capability Curve object from the Load Flow tab of their edit dialogue. When a capability curve is used, the dispatch of the generator always stays within its minimum and maximum range. For information regarding how to define new capability curves for generators, please refer to Section 15.4 (Capability Curves (MVAr Limit Curves) for Generators). For information about the dispatch of synchronous generators, please refer to the corresponding technical reference (C.26: Synchronous Machine (ElmSym)). For information about Load Flow calculations and reactive power limits please refer to Chapter 22 (Load Flow Analysis).

7.5.5

Outages

Outages are objects which are used to check and/or apply programmed actions (programmed outages or generator deratings) over a set of network components. An outage object requires the definition of the outage period (start and end time), the actions that are taken during that period (outage type), and the network components affected by these actions. The outages (objects of class IntOutage) are stored in the Outages folder inside the Operational Library. According to the actions performed on the selected elements, the outages can be of two different types: Outage of an Element or Generator Derating.

Outage of Element
Outages of elements are used to intentionally take certain network components out of service according to programmed actions (i.e. because of maintenance). In this case, references to network components which should be out of service during the defined period, are stored inside the outage object. If the Check button of the outage dialogue is
7 - 27

DIgSILENT PowerFactory

The PowerFactory Data Model

pressed, the program looks for the current state of the referred-to elements. If, according to the current study time (and the outage period), a referred-to component is out of service but still energized, a warning message is shown in the output window. The fulfillment of programmed outages can also be checked using the single line graphic coloring functions. If the Apply button is pressed, the program automatically executes the outage (which can also be manually carried out by the user) of the referred-to element(s), as long as the study time lies within the outage period. The outage of an element consists of the disconnection (deenergizing) and the earthing of the target component. Figure 7.14 (front) shows the edit dialogue of the outage object called Planned Outage. The Outage Type selected is Outage of Element'. The outage period starts on 01.01.2007 and ends on 01.10.2007. The outage contains references to the network components G2 and Line 3 (back, right pane of Data Manager window). If the current study time lies between the start and the end of the outage, both G2 and Line 3 must be out of service during this period. This condition may be checked by pressing the Check button or by setting the coloring mode of the single line graphic to Outage Check.

Fig. 7.14:

Outage of an Element

For information on defining Outages please refer to Section 15.5 (Element Outages and Generator Deratings). For information regarding the single line graphic coloring function please refer to Section 10.5.3 (Commands and Settings for Single Line Graphics).

Generator Derating
In this case, a reference to the generator which is to be derated and the amount of MW reduction is given. Similar to Outage of Element, the fulfillment of the derated condition, according to the outage period and the current study time, can be known via the Check button or by setting the coloring function of the single line graphic. The Apply button automatically executes the derating of the generator (according to the outage period). For information on defining Outages please refer to Section 15.5 (Element Outages and
7 - 28

DIgSILENT PowerFactory

The PowerFactory Data Model

Generator Deratings). For information regarding the single line graphic coloring function please refer to Section 10.5.3 (Commands and Settings for Single Line Graphics).

Load Demand Transfer


Please refer to Section 7.5.2 (Demand Transfer).

Note:

If a Planned Outage object is defined in the Outages folder of the Operational Library, only the outage types Outage of Element and Generator Derating are enabled. Similarly if outage objects are defined in the Demand transfer folder, only the outage type Demand Transfer is enabled.

7.5.6

Running Arrangements

Running Arrangements (IntRunarrange ) are operational data objects that store statuses of switches (open or closed) of one substation. As shown in Figure 7.15, a running arrangement uses a reference to the substation object (ElmSubstat) whose switch statuses are stored. An application period (start and end time) is used to discriminate the use of a running arrangement, according to the study time. Running arrangements are stored in the Running Arrangements folder in the Operational Library ( ).

Fig. 7.15:

RA object dialogue

Different configurations of the same substation can be defined by storing the corresponding switch statuses in running arrangements. During the study, the user can apply any of the stored statuses simply by selecting the corresponding running arrangement. If a running arrangement is selected for a substation, the status of the switches cannot be modified (i.e. they become read-only). If there is no setting for a switch in a running arrangement (i.e. the running arrangement is incomplete), the switch will remain unchanged but its status will also be set to read-only. If the current running arrangement is deselected, the switches recover the status that they had before the running arrangement was selected (and therefore resume their write access status). Running arrangements can be defined and selected in the substation object dialogue (Figure 7.16). For information regarding defining, selecting and working with running arrangements please refer to Section 15.6 (Running Arrangements).

7 - 29

DIgSILENT PowerFactory

The PowerFactory Data Model

Fig. 7.16:

Definition of a running arrangement via the station object dialogue

Note:

Running arrangements store only the status of switches of class ElmCoup. The status of switches which are automatically created in a cubicle following the connection of a branch element (StaSwitch objects) are not considered in a running arrangement.

7.5.7

Thermal Ratings

Thermal Ratings objects (IntThrating, ) allow the definition of post-fault operational ratings for certain branch elements, depending on the fault duration and the loading before the fault. IntThrating objects are stored in the Thermal Rating folder in the Operational Library ( ). Basically they are two-dimensional matrices whose cells contain the ''short time'' post-fault ratings (in MVA), according to the pre-fault loading (defined in the first column) and the duration of the fault/overloading (defined in the first row). The components in the Network Model that can use references to thermal ratings are: transmission lines (ElmLne), 2- and 3-winding transformers (ElmTr2 and ElmTr3), series reactors (ElmSind) and series capacitors (ElmScap). Please note that the rating table given on the Ratings tab of the Thermal Rating object (when option Consider short term ratings is enabled) is used solely the contingency analysis command in PowerFactory. In this calculation, the pre-fault loading conditions of the network components are determined after a base load flow calculation. The contingency analysis is then performed using a load flow command, where the post-contingency duration is specified. For information on how to define thermal rating objects, please refer to Section 15.7 (Thermal Ratings). For information about the contingency analysis command in PowerFactory please refer to Chapter 29 (Reliability Assessment).

7 - 30

DIgSILENT PowerFactory

The PowerFactory Data Model

7.6

The Templates Library

Templates of existing network components (or groups of components) can be defined in PowerFactory in order to facilitate the further construction of network models. Once a template has been defined, the user can create new components (or groups of components) based on this template. The result is a new component (or group of components) with the same parameters and configuration as the original one. Components from templates are created using the graphical editor. Four kinds of templates are supported in PowerFactory: 1 2 3 4 Element template for single network elements: New single network elements with the same parameters as the original element are created. Group template for non-composite graphic objects: New groups of objects (including graphical attributes) are created. Substation template (composite node): New substations with the same configuration as the original substation (including its diagram). Branch template (composite branch): New branches with the same configuration as the original branch (including its diagram).

Templates are normally stored in the Templates folder ( ), in the Library. When a template for a single network element is defined, a copy of the original element is automatically created in the Templates folder. New templates of substations and branches will copy the objects together with all of their contents (including the diagram) to the Templates folder. New templates for groups of objects will copy the corresponding objects, together with their graphical information to a subfolder for groups of class IntTemplate ( ) within the Templates Library. For further information about working with templates, please refer to Section 10.1 (Defining Network Models with the Graphical Editor).

7.7

Parameter Characteristics and Parametric Studies

In PowerFactory any parameter may be assigned a range of values that will be selectable by date and time, or by a user-defined trigger (Section 13.11: Triggers). Examples include ambient temperature, temporary overload limit, etc. These kinds of ranges of values are known as characteristics. The range of values may be in the form of a one-dimensional vector or a two-dimensional matrix. The assignment of a characteristic may be made either individually to a parameter or to a number of parameters. If the characteristic is to be applied to parameters across multiple objects (i.e. active power of all loads), then a reference characteristic is used. Studies which utilize characteristics are known as parametric studies. The parametric techniques available in PowerFactory use the flexible, generic 'characteristic vector' (ChaVec, ) or the generic 'characteristic matrix' (ChaMat, ). Both of these characteristics use some sort of scale with which the target parameter is varied. Four types of parameter scale are available: 1 2 Continuous Scale: A continuous function, such as a temperature scale from 0 to 45 degrees. Discrete Scale: A discrete 'case' function, such as 'Temporary Overload' and Emergency Overload'.
7 - 31

DIgSILENT PowerFactory

The PowerFactory Data Model

3 4

Continuous Time Scale: A continuous time-dependent function. Discrete Frequency Scale: A continuous frequency-dependent function.

When the scale is created, a means to 'set' the scale, and thereby to set the parameter to the corresponding value, is required. This is called a trigger (SetTrigger, ). New scales are normally defined in the Scales folder of the Equipment Type Library. After a new scale has been defined, a trigger is automatically created in the active study case folder (see also Section 13.11: Triggers). When a trigger is edited and a 'current' value is set (the triggers are accessed by pressing the in the main toolbar) the scale is set and the parameter value is changed. When a different study case is activated, or a new study case is created, and a load-flow is performed, all relevant triggers are copied into the study case folder and may be used in the new study case. For information about the different kinds of scales and characteristics and how are they defined, please refer to Chapter 18 (Parameter Characteristics).

7.8

DIgSILENT Programming Language (DPL) Scripts

The DIgSILENT Programming Language DPL offers an interface to the user for the automation of tasks in PowerFactory. By means of a simple programming language, the user can define her/his own automation commands (or scripts) to perform iterative or repetitive calculations on target networks, and post-process the results. Such userdefined scripts can be used in all areas of power system analysis, such as: Network optimization Cable-sizing Protection coordination Stability analysis Parametric sweep analysis Contingency analysis DPL scripts may include any/all of the following: Program flow commands such as 'if-else and 'do-while' PowerFactory commands (i.e. load-flow or short-circuit commands: ComLdf, ComShc) Input and output routines Mathematical expressions PowerFactory object procedure calls Subroutine calls DPL command objects (ComDpl, ) contain the DPL script itself (amongst other things). DPL command objects provide an interface for the configuration, preparation and use of DPL scripts. These objects may take input parameters, variables and/or objects,
7 - 32

DIgSILENT PowerFactory

The PowerFactory Data Model

pass these to functions or subroutines, and may then output results. This process takes place following the execution of the objects corresponding DPL script. DPL scripts are written by the user utilizing the DPL editor which resides inside the DPL command object. DPL commands are stored inside the Scripts folder ( ) in the project directory. For further information about DPL commands and how to write and execute DPL scripts please refer to Chapter G (The DIgSILENT Programming Language - DPL) and Appendix H (DPL Reference) (only available in the online help).

7 - 33

DIgSILENT PowerFactory

The PowerFactory Data Model

7 - 34

DIgSILENT PowerFactory

General Information about Analyses in PowerFactory

Chapter 8 General Information about Analyses in PowerFactory

This chapter gives an introduction to the calculation commands used in PowerFactory, additionally it presents the tools that facilitate the visualization and comparison of the calculated results. Chapters, exclusively dedicated to the tools presented here, are available in the subsequent volumes of this manual.

8.1

Calculation Commands in PowerFactory

PowerFactory offers a wide variety of calculation commands, of which the


Load-flow calculations, Short-circuit calculations, Transient simulations, are the most important. Calculations are performed using data as defined by the active study case (see Section 13.1 (Creating and Using Study Cases) for more information on study cases). Therefore a study case, having at least one grid or system stage, should be activated prior to starting any calculation function. See the Chapter 13 (Study Cases) for more information. The main menu calculation icons will be enabled as soon as a correct study case is active. These icons will pop up the default calculation command dialogues which are used to configure and execute a calculation. The default calculation command objects are stored in the active study case. The main toolbar shows the following calculation icons. Calculate Load-Flow (Chapter 22: Load Flow Analysis) Calculate Optimal Power Flow (OPF, Chapter 30: Optimal Power Flow) Calculate Short-Circuit (Chapter 23: Short-Circuit Analysis) Break Reset Calculation

8-1

DIgSILENT PowerFactory

General Information about Analyses in PowerFactory

Undo (to reverse the last changings) Other command icons are grouped together in sub-toolbars which are selected by the toolbar selection list. If you press the 'Select Toolbar' button ( ), the options for the different toolbars are depicted by their icons. If you have selected a toolbar different from the 'Stability' toolbar, the icon for the 'Select Toolbar' button changes.

Fig. 8.1:

Available additional toolbars in the main icon bar The toolbar selection icon (this icon differs in dependence of the selected toolbar). Stability analysis commands (Chapter 25: Stability and EMT Simulations) Modal analysis commands (Chapter 26: Modal Analysis / Eigenvalue Calculation) Contingency analysis commands (Chapter 28: Contingency Analysis) Reliability analysis commands (Chapter 29: Reliability Assessment) Harmonics analysis commands (Chapter 24: Harmonics Analysis) Protection tools (Chapter 32: Protection) Additional tools (sensitivity analysis, network reduction, cable reinforcement optimization etc.) Optimal capacitor placement commands (Chapter 31.1: Optimal Capacitor Placement) User defined tools

8.2

Edit relevant Objects for Calculation

The icon is used to gather and show all objects considered by the study case, and which are of a certain class, in a browser in order to inspect their data or to edit them. Pressing the
8-2

icon will present a menu listing the icons of all classes of objects cur-

DIgSILENT PowerFactory

General Information about Analyses in PowerFactory

rently used for the calculations, as depicted in Figure 8.2. Pressing a class icon will pop up an object filter browser, filled with all the objects of the selected class, which are considered by the calculation. Pressing the line icon, for instance, will open a filter browser which contains a list of all lines. Pressing the transformer icon gives the list of all transformers, etc. The filter browser can be used to inspect, select or edit selected objects. Normally, the filter browser is closed after performing any of these actions. It is possible to open more filter browser at the same time, by repeatedly pressing the icon.

Fig. 8.2:

Selecting calculation relevant objects

8.3

Results

Following calculations some messages are printed to the output window. These generally consist of errors, warnings or information that may be useful when interpreting the calculated data. The load-flow calculation function, for example, will provide the following message when the power system under analysis is has 2 separated areas:
DIgSI/wrng - 1 area(s) are unsupplied. DIgSI/info - Grid splitted into 2 isolated areas

More extensive output is given in the output window, for example, by the (N-1) outage calculation, which is an option in the load-flow command dialogue. The output given by that calculation is a list of load-flow calculations that were performed, each with a table in which the element on outage and all overloaded elements are provided. The usual place, however, to visualize load-flow or short-circuit calculation results is in the single line graphics, or the data manager and object filter (when tabulated results are required). The results on view may configured using the highly flexible, user-definable, variable sets. These are accessed from the results boxes or flexible data tab. See Chapter 19 (Defining Variable Sets) for more information. Some calculations offer additional results in the form of bar-graphs, vector diagrams or other graphical output. All such outputs are presented by so-called virtual instruments, which are placed on a virtual instruments page in the current graphics board.

8.4

Comparisons Between Calculations

At many stages in the development of a power system design, the differences between certain settings or design options become of interest. For a single calculation, the 'absolute' results are shown in the single line graphics. The variables that are shown may be specified by the user by altering the result-box definitions. When comparing two cases, the results of the first calculation are 'frozen'. All subsequent calculations will then show their results as deviations from the first calculation made. The subsequent calculation results are stored together with the first result. This allows the

8-3

DIgSILENT PowerFactory

General Information about Analyses in PowerFactory

user to re-arrange the comparisons as desired by pressing the tion).

icon (see the next Sec-

The differences between cases are colored according to the severity of the deviation, making it possible to recognize the differences between calculation cases very easily. The coloring and severity ranges may be set in the Edit Comparing of Results... menu option, found by pressing (see the next section).

A comparison between cases is made as follows: Calculate the first case by activating a certain calculation case and, for example, calculating a load-flow. Press the icon on the main toolbar. This will store the base case results and prepares to store the results of forthcoming calculations. If relative results are also required for a particular calculation report, in a formatted report, that report has to be generated for the first case by pressing the icon on the main toolbar and selecting the required report. This step is necessary to let the comparison manager know which parameters are to be compared. Change the power system or a calculation setting to create the next case. Permitted alterations include opening/closing switches, altering load settings or any other component parameter, changing calculation cases, adding or deleting elements, etc. Repeat the calculations as performed for the first case. The result boxes in the single line graphic will now show the percentage change as compared to the first case. If the calculation report, as generated for the first case, is generated again, it will also show relative results. Make and calculate the other cases. After each calculation, the comparison to the first case is shown.

8.4.1

Editing a Set Of Comparison Cases


icon on the main toolbar

The set of calculated comparisons may be edited to select the cases which are to be compared to each other or to set the coloring mode. When the is pressed, the Compare dialogue will open. See Figure 8.3.

8-4

DIgSILENT PowerFactory

General Information about Analyses in PowerFactory

Fig. 8.3:

The Compare dialogue

With the Compare dialogue, the two cases which are to be compared can be selected. Furthermore, a list of colors may be set which is then used to color the results displayed in the result boxes, according to certain levels of percentage change.

8.4.2

Update Database

In PowerFactory input (data that has been entered by the user) and output (parameters that have been calculated) data is kept separate and output data, such as the new tap positions following an automatic tap adjustment calculation, does not overwrite the settings that the user originally entered, unless the user specifically commands this, using the icon on the main toolbar.

Note

The corresponding input parameters of the database will be overwritten by the calculated values.

Updating the database may be performed for: Scaling factor of loads Transformer taps Capacitive Steps of Shunts/Filter P,Q of Loads P,Q of asynchronous machines

Example:
A load-flow is calculated with the options "Automatic Tap Adjust of Transformers" and
8-5

DIgSILENT PowerFactory

General Information about Analyses in PowerFactory

"Automatic Shunt Adjustment" enabled. The calculated tap and shunt positions may be seen in the single line diagram, but it will be noticed that the input data parameter in the element data dialogue is as originally entered. The icon is clicked, and the input parameters are now overwritten by the calculated values found on the single line diagram.

8-6

DIgSILENT PowerFactory

Handling

DIgSILENT PowerFactory

Basic Project Definition

Chapter 9 Basic Project Definition

The basic database structure in Power Factory and the data model used to define and study a power system are explained in chapters 4 and 9 respectively. The users are recommended to familiarize themselves with those topics before continuing with this chapter. In this section the information about the definition of the data model objects, stored inside the project folder, is given. The aspects related to the definition of the networks to be analyzed in a project are given in Chapter 12 (Grouping Objects).

9.1

Defining and Configuring a Project

There are three methods to create a new project. Two of them employ the Data Manager window and the third the main menu. Whichever method is used, the end result will be the same, a project object in the data base. Method 1 - Using the Main Menu: On the Main Menu choose File -> New. This opens the New dialog window (ComNew). Tick the option New - Project. Enter the name of the project. Make sure that the 'Target Folder' points to the folder in which you want to create the project (By default it is set to the active user account folder). Press Execute.

Method 2 - Using the Element Selection Dialogue from the Data Manager: In the Data Manager press on the 'New Object' button ( ).

In the field at the bottom of the New Object window type "IntPrj" (after selecting the option 'Others' in the Elements field). Note that the names in PowerFactory are case-sensitive. Press Ok. The window that opens next is the edit dialogue of the project folder. Press Ok. Method 3 - Direct from the Data Manager: Locate the active user in the left-hand portion of the Data Manager. Place the cursor on the icon of the active user or a folder within the active user account and right-click.
9-1

DIgSILENT PowerFactory

Basic Project Definition

From the context sensitive menu choose New -> Project. Press Ok. The window that opens next is the edit dialogue of the project folder. Press Ok.

Note:

The ComNew command is used to create objects of several classes. To create a new project it must be ensured that the 'Project' option is selected.

In order to define and analyze a power system, a project must contain at least one grid and one study case. After the new project is created (by any of the presented methods), a new study case is automatically created and activated. A dialogue used to specify the name and nominal frequency of a new automatically created grid pops up. As the button OK is pressed in the grid edit dialog: The new grid folder is created in the newly created project folder. An empty single line diagram associated to the grid is opened. The newly created project has the default folder structure shown in Figure 9.1. Although a grid folder and a study case are enough to define a system and perform calculations, the new project may be expanded by creating library folders, extra grids, variations, operation operation scenarios, operational data objects, extra study cases, graphic windows, etc. Projects can be deleted by right clicking on the project name on the data manager and selecting Delete from the context sensitive menu. Only non active projects can be deleted.

Note:

The default structure of the Project folder is arranged to take advantage of the data model structure and thus the user is advised to keep to this pre-determined data structure, at least at first until sufficient experience in using PowerFactory is gained. As may be inferred, the user is not limited to the pre-determined structure and may create, within certain limits, their own project structure for advanced or particular studies.

9-2

DIgSILENT PowerFactory

Basic Project Definition

Fig. 9.1:

Default Project Structure

9.1.1

The Project Edit Dialogue

The project dialog of Figure 9.2 pops up when selecting Edit --> Project... on the main menu or when rigth-clicking the project folder in the Data Manager and selecting Edit from the context sensitive menu. The 'Basic Data' page, allows the edition of basic project settings and the creation of new study cases and grids: Pressing the button at the 'Project Settings' field opens a dialogue where the validity period of the project, the input units to be used within the project (unit system and the decimal prefixes for the adaptable element input dialogs within the project) and the calculation settings (the base apparent power and the minimal value of the resistances and conductances in p.u) are defined. Pressing the New Grid button will create a new grid and will open the grid edit dialogue. A second dialogue will ask for the study case to which the new grid folder will be added. For additional information about creating a new grid please refer to Section 9.2 (Creating New Grids). The New Study Case button will create a new study case and will open its dialogue. The new study case will not be activated automatically. For further information about creating study cases please refer to Section 13.1 (Creating and Using Study Cases). When a project is created, its settings (i.e.the result box definitions, the reports definitions, the flexible page selectors, etc.) are defined by the 'default settings' from the system library. If these settings are changed, the changes are stored in the Settings folder of the project. The settings from another project or the original (default) ones can be taken by using the buttons Take from existing Project or

9-3

DIgSILENT PowerFactory

Basic Project Definition

only be changed when a project is inactive.

Set to default in the 'Changed Settings' field of the edit dialogue. The settings can

The name of the active study case is shown in the lower part of the dialog window under the 'Active Study Case' assignment, it's edit dialog can be opened by pressing the button.

Fig. 9.2:

The project dialogue

Pressing the Contents button on the dialog will open a new data browser displaying all the folders included in the current project directory. The 'Sharing' page of the dialogue allows the definition of the project sharing rules. This function is especially suitable when working in a multiple user database environment, further information is given in Chapter 21 (Data Management). The 'Storage' page provides information about the stored data inside the project. The 'Description' page, like all object's description pages is used to add user comments and the approval status.

9.1.2

Project Settings

In the Project Settings you can set up the Validity Period of the Project, the method used for Calculation of symmetrical components for untransposed lines, and other settings.

9-4

DIgSILENT PowerFactory

Basic Project Definition

The Validity Period of the Project


Project may span a period of months or even years considering network expansions, planned outages and other system events. The period of validy of a project specifies therefore the time span the network model, which is defined in the Project, is valid for. The Validity Period is defined by Start Time and End Time of the Project (see Figure 9.2). The Study Case has got a Study Time, which has to be inside the Validity Period of the Project. To specify the Validity Period of the Project: Open the Data Manager and browse for the Project folder object (IntPrj). Right click on it and select Edit from the context sensitive menu. On the Basic Data tab press the 'Project Settings' Edit button (the button with the blue right arrow). The Project Settings dialogue will open. On the 'Validity Period' page adjust the start and end time of the project. Press OK to accept the changes and close the window.

PowerFactory Version 14 extends the idea of a model into the dimension of time. The

Advanced Calculation Parameters


'Calculation of symmetrical components for untransposed lines' The selection of one of these methods defines how the sequence components of lines in PowerFactory will be calculated: - Method 1: apply the 012 transformation (irrespective of line transposition). This is the standard method used; - Method 2: first calculate a symmetrical transposition for untransposed lines, and then apply the 012 transformation.

9.1.3

Activating and Deactivating Projects

To activate a project use the option File -> Open project from the main menu. This brings up a tree with all the projects in your user account. Select the project that you want to activate. Alternatively, you may activate a project using the context sensitive menu on the Data Manager. The last 5 active projects are listed at the File field of the main menu bar. The currently active project is the first one in this list. To deactivate the currently active project, select it in the list (left click on it). Alternatively, you may choose the option File -> Close Project from the main menu. To activate another project, select it in the list of 5 last active projects.

Note:

Only one project can be activated at a time.

9-5

DIgSILENT PowerFactory

Basic Project Definition

9.1.4

Exporting and Importing of Projects

Projects (or any folder in the data base) can be exported using the *.dz or the *.pfd (PowerFactory Data) file format. Whenever possible it is recommended to use the new PFD format (*.pfd). This format (*.pfd) is improved for handling even very large projects. The performance of the import/export has been optimized and the consumption of memory resources is much lower than with the old file format (*.dz). All new functions available in the data base of PowerFactory, e. g. time stamps and versions, are fully supported with the new PFD file format. To export a project select File --> Export... --> Data... from the main menu. Alternatively projects can be exported by selecting the option Export Project on the project context sensitive menu (only available for non active projects). Projects can be imported by selecting File --> Import... --> Data... from the main menu or by clicking on the icon of the Data Manager. The user can select the type of file to import from the 'Files of type' menu of the Windows Open file that pops up. Additionally a lot of Import/Export filters are available for foreign data formats.

9.2

Creating New Grids

Electrical networks can be defined in PowerFactory using the Graphical Editor or the Data Manager. The graphical method is the simplest one, it just consist in selecting the desired network components from the drawing toolbox and place them in the desired location within the single line graphic. In this case the program automatically creates the network components represented by the graphical objects in the active grids/expansion stages. The connections and the corresponding cubicles are automatically created as the new component is placed (and connected). The use of the data manager requires the manual definition of the cubicles within the terminals and the selection of the specific cubicle where a branch element is to be connected. This manual definition is more suitable for big networks whose graphical representation becomes complicated. Advanced users may combine both graphical and data manager methods to define and modify their network models more efficiently. Besides explaining the basic methods used to define and edit the network models, this section is intended to explain practical aspects related with the creation and managing of the network grouping objects (reference to grouping objects). The procedures used to create and manage additional network diagrams are also presented here. Information about defining and working with variations and variations stages will be given in a separate section. To start with the description of the network model definition, a description of how new grid folders are created is required.

Note:

Experienced users may define networks combining the Data Manager and the Graphical Editor. A good practice is to create and connect the network components in the single line graphic and multi edit them in the Data Manager.

The concept and the application context of grid folders are presented in Section 7.3.3 (Network Data). The procedure used to define new grids is given in this section. To add a grid folder to the current network model, various methods may be employed:
9-6

DIgSILENT PowerFactory

Basic Project Definition

1 2 3

Select Edit --> Project on the main menu. This will open the dialogue of the project that is currently active. Press the New Grid button. Right-click the project folder in a data manager and select Edit. Press the New Grid button. Right-click the Network Data folder (of the active project) in a data manager window and select New --> Grid from the context sensitive menu.

The dialogue to create a new grid will pop up after the indicated actions are performed. There the grid name, the nominal frequency and a grid owner (optional) may be specified. A second dialogue will appear after the Ok button has been pressed, here the study case that the grid will be linked to must be selected. Three options are presented: 1 2 3

add this Grid/System Stage to active Study Case: Only available when a
study case is active.

activate a new Study Case and add this Grid/System Stage: Creates and
activates a new study case for the new grid. the new grid folder to an existing, but not yet active study case.

activate an existing Study Case and add this Grid/System Stage: Add

After the Ok button of the second dialogue is pressed, the new grid is created in the Network Model folder and a reference in the Summary Grid object of the selected study case is created. Normally, the second option is preferred because this creates a new study case, dedicated to the new grid only. In that way, the new grid may be tested separately by load-flow or other calculations. To analyze the combination of two or more grids, new study cases may be created later on, or the existing ones may be altered. As indicated in Chapter 13 (Study Cases), grids can be added or removed from the active study case afterwards by right clicking and selecting Add/Remove from Active study case.

9-7

DIgSILENT PowerFactory

Basic Project Definition

9-8

DIgSILENT PowerFactory

The Graphics Editor

Chapter 10 The Graphics Editor

PowerFactory works with three different classes of graphics: Single Line Diagrams,

Block Diagrams, and Virtual Instruments (see 10.2.2 for more information). They constitute the main tools used to design new power systems, controller block diagrams and displays of results.

10.1

Defining Network Models with the Graphical Editor

In this section it is explained how the tools of the Graphical Editor are used to define and work with network models.

10.1.1

Adding New Power System Elements

Drawing power system elements is a simple matter of choosing the required element representation in the Drawing Toolbox. Input parameters of the element are edited through the element and type dialogs. Complete information about the element and type parameters is given in the online available Technical References. To create a new power system element, select the corresponding button in the Drawing Toolbox. This toolbar is only visible to the user when a project and study case is active and the open graphic is unfrozen ( ). As the cursor is positioned over the drawing surface, it will have a symbol of the selected tool 'attached' to it, showing that the cursor is, for example, in 'Terminal' drawing mode (to reset the mode either press the cursor button at the bottom of the toolbox or right-click). Power system elements are placed and connected in the single line graphic by left clicking on empty places on the drawing surface (places a symbol), and by left clicking nodes (makes a connection). If wishing to stop the drawing and connecting process press the Escape key. There are basically three ways of positioning and connecting new power system elements: 1 By left clicking on one or more nodes to connect and position the element directly. Single port elements (loads, machines) will be positioned directly beneath the nodes at a default distance (the symbol can later be moved if required). Double or triple port objects (transformers) will be centered between the first two terminal connections automatically. This ''single click method'' will only work if the option 'Place Branch Objects With One Connection Automatically' in the User Settings is enabled. By first left clicking on an empty place to position the symbol and then left clicking a node to make the connections.
10 - 1

DIgSILENT PowerFactory

The Graphics Editor

By first left clicking on an empty place, consequently clicking on the drawing surface to define a non-straight connection line and finally clicking on a terminal to make the connection.

Note:

To place a branch element in a single line diagram the nodes where it is going to be connected must be already defined. No ''connection free' branch elements are allowed.

Figure 8.SLG1 shows an example of a generator placed according to the first method (left generator), one placed according to the second method (middle generator), and one placed according to the third method (right generator with long connection).

Fig. 10.1:

Three graphical objects

If a load or machine is connected to a terminal using the first method (single left click on busbar), but a cubicle already exists at that position on the busbar, the load or machine symbol will be automatically positioned on the other side of the terminal, if possible. By default all power system elements are positioned ''bottom down''. However, if the Ctrl key is pressed when the graphic symbol is positioned onto the drawing surface, it will be positioned either turned 90 degrees (terminals) or 180 degrees (edge elements). If the element has already been placed and the user wishes to flip it to the other side of the terminal, then he/she must right-click the element -> Flip At Busbar. If wishing to first place a symbol and then rotate or mirror it then click on the graphic to place the symbol and then press the Tab key on the keyboard. This will ''jump'' the ''rubber band'' to the next connection point (or port) of the element. Continual pressing of the Tab key will leave the symbol placed on the graphic (and the data element in the database, without being connected. Manipulate the symbol as required and then rightclick it -> Connect Element. If the element has already been connected it must first be disconnected in order to rotate or mirror it (right-click the symbol -> Disconnect Element. Figure 10.2 shows an example of rotated and flipped power system elements.

10 - 2

DIgSILENT PowerFactory

The Graphics Editor

Fig. 10.2:

Flipped and rotated power system elements

As explained in 7.3.2 (Network Topology Handling), the connection between edge elements and terminals is carried out by means of cubicles. When working with the graphical editor, the cubicles are automatically generated in the corresponding terminal. The configuration of the newly created cubicles is determined by an object called 'Cubicle Parameters'. Each network diagram has its own 'Cubicle Parameters' object, which is automatically set by the program. You can edit these Cubicle Parameters to change the configuration of newly created cubicles; it is done by clicking on the 'Station feeder Options' icon ( ) of the main toolbar.

Note:

When connections to terminals are defined with switch elements of the class ElmCoup (circuit breakers), cubicles without any additional switch (StaSwitch) are generated. In this case the user is free to define the configuration that he wishes by connecting terminals and circuit breakers.

10.1.2

Drawing Nodes

When starting to draw your system it is natural to first draw the nodes that are required. The basic node representation in PowerFactory is done by means of terminals (ElmTerm). There are seven different terminals symbols in the drawing toolbox that may be used. Terminal

This is the most common representation of a node.

Short Terminal Looks the same as a Terminal but is shorter and the results box and name is placed on the "Invisible Objects" layer by default. Typically used to save space or to unclutter the graphic. Point Terminal Typically used to represent a junction point, say between an overhead line and cable. The results box and name is placed on the "Invisible Objects" layer by default. Rectangular Terminal Typically used for reticulation and/ or distribution networks.

10 - 3

DIgSILENT PowerFactory

The Graphics Editor

Circular Terminal Typically used for reticulation and/ or distribution networks. U-Terminal

Typically used for reticulation and/ or distribution networks.

Polygonal-Terminal Typically used for reticulation and/ or distribution networks. Terminals should be placed in position and then, once the cursor is reset, dragged, rotated and sized as required. Re-positioning is performed by first left clicking on the terminal to mark it, and then click once more so that the cursor changes to . Hold the mouse button down and drag the terminal to a new position. Re-sizing is performed by first left clicking on the terminal to mark it. Sizing handles appear at the ends

10.1.3

Drawing Branch Elements

Single port elements (loads, machines, etc.) can be positioned in two ways. The simplest one is to select the symbol from the toolbar and then left click the busbar where the element is going to be placed. This will draw the element at a default distance under the busbar. In case of multi busbar systems, only one of the busbars need be left-clicked. The switch-over connections to the other busbars will be drawn automatically. The 'free-hand' method first places the element symbol wherever desired, that is, first click wherever you wish to place the symbol. The cursor now has a 'rubber band' connected to the element, when the cursor is left clicked onto a node it will be connected. To create corners in the joining line left click on the graphic. The line will snap to grid, be drawn orthogonally, as determined by the "Graphic Options" that have been set. Double port elements (lines, transformers, etc.) are positioned in a similar manner to single port symbols. By left-clicking the first busbar, the first connection is made. The second connection line is now held by the cursor. Again, left-clicking the drawing area will create corners. Double-clicking the drawing area will position the symbol (if not a line or cable - e.g. a transformer). The second connection is made when a node is left clicked. Triple port elements (three-winding transformers) are positioned in the same manner as two port symbols. Clicking the first, and directly thereafter the second node, will place the symbol centered between the two nodes, which may be inconvenient. Better positioning will result from left clicking the first busbar, double-clicking the drawing space to position the element, and then making the second and third connection. The 'free-hand' method for two and triple port elements works the same as for one port elements.

10 - 4

DIgSILENT PowerFactory

The Graphics Editor

Note

Pressing the Tab key after connecting one side will leave the second leg unconnected, or jump to the third leg in the case of three port elements (press Tab again to leave the third leg unconnected). Pressing Esc will stop the drawing and remove all connections. If the element being drawn seems as if it will be positioned incorrectly or untidily there is no need to escape the drawing process. Make the required connections and then right-click the element and use Reconnect Graphically to re-draw the element whilst retaining the data connections

Annotations are created by clicking one of the annotation drawing tools. Tools are available for drawing lines, squares, circles, pies, polygons, etc. To draw some of these symbols left click at some place and release the mouse somewhere else (e.g. circles, lines, rectangles). Other symbols require that you first set the vertices by clicking at different positions and finishing the input mode by double-clicking at the last position.

10.1.4

Marking and Editing Power System Elements

To mark (select) a power system element click on it with the cursor. The element is then highlighted and becomes the ''focus'' of the next action or command. The element can be un-marked or de-selected by clicking on another element or by clicking onto some free space in the graphic.

Fig. 10.3:

a) Marking/ Selecting elements

b)

Astute users may notice that the element is highlighted using a different pattern, depending on whether the graphic has been frozen or not, as seen in Figure 10.3, where (a) is the when the freeze mode is engaged and (b) when 'un-frozen.' There are different ways to mark several objects at once: To mark all graphical elements, press the All-button ( Ctrl+A may also be used. ). The keyboard short cut

To mark a set of elements at the same time click on a free spot in the drawing area, hold down the mouse key and move the cursor to another place where you release the mouse button. All elements in the so defined rectangle will now be marked. A
10 - 5

DIgSILENT PowerFactory

The Graphics Editor

setting, found in the User Settings dialogue under the 'Graphic Windows' tab (on the second page of this tab press the button), can alter the manner in which objects are marked using this marking method, as either 'Partial' or 'Complete'. 'Complete' means that the whole object marked must lie inside the rectangle. To mark more than one object, hold down the Ctrl key whilst marking the object. Clicking once on an element belonging to a multiple busbar system will only mark the chosen object. When clicking on this object again all elements that belong to this section will be marked. A third click on this object will mark the whole busbar system. When clicking on an element and clicking on this element a second time whilst holding down the Alt key will also mark all the elements connected to the first element. If the CtrL+Alt key are pressed simultaneously whilst moving and element then elements connected to it will also be moved. The data of any element (its edit dialogue) may be viewed and edited by either doubleclicking the graphic symbol under consideration, or by right-clicking it and selecting Edit Data. When multiple objects are selected, their data can be viewed and edited trough a data browser by right-clicking the selection and choosing Edit Data from the context sensitive menu.

Note

Finding specific elements in a large project may be difficult if one had to look through the single line diagram alone. PowerFactory includes the Mark in Graphic tool, to assist the user in finding elements within the graphic. The user has to first search for the desired object in the Data Manager using any of the methods presented in Chapter 11 (The Data Manager). Once a searched object is identified, it may be right-clicked and the option Mark in Graphic selected.

10.1.5
1

Interconnecting Power Subsystems

Interconnections between two different graphics is achieved using two methods: Representing a node in additional different graphics by copying and pasting the graphic only and then by connecting branch and edge elements to the graphical object in the additional graphic. By connecting an edge element between two graphics.

The first method is performed by copying the desired node (right-click > Copy) and then clicking on the other graphic in which it should be represented and right-clicking > Paste Graphic Only. Only a graphical object is pasted into the second graphic and no new data element is created. The second method is as follows: First ensure that you have node to connect to in both graphics that are to be interconnected.

10 - 6

DIgSILENT PowerFactory

The Graphics Editor

In this example we will use an autotransformer. Select an autotransformer drawing tool from the toolbar and create the first connection as normal by left clicking a node (see Figure 10.4). Double-click to place the symbol. Your cursor is now attached to the transformer by a 'rubber band'. Move the cursor to the bottom of the drawing page and click on the tab of the graphic that the interconnection is to be made to (see Figure 10.5). Once in the second graphic left click to place the transformer symbol (see Figure 10.6) and then left click on the second node. The interconnected leg is shown by an a Jump to next page option. symbol. Right-clicking on the element presents

Fig. 10.4:

First step to interconnecting

10 - 7

DIgSILENT PowerFactory

The Graphics Editor

Fig. 10.5:

Second step to interconnecting

Fig. 10.6:

Third step to interconnecting

10 - 8

DIgSILENT PowerFactory

The Graphics Editor

Note

The first method of interconnection, that of representing a node in two, or more, different graphics, may lead to confusion at a later point as the 'inflow' and 'outflow' to the node will not appear correct when just one graphic is viewed - especially if a user is not familiar with the system. The node may be right-clicked to show all connections in what is known as the 'Station Graphic' (menu option Show station graphic). Thus, the second method may be preferred. To check for nodes that have connections on other graphics the "Missing graphical connections" coloring mode may be employed.

10.1.6

Working with Substations in the Graphical Editor

New substations are created in the Data Manager, using the procedure described in Section 11.2.3 (Defining Substations in the Data Manager). The definition and connection of the substation components can be carried out in the associated single line diagram, which is automatically generated after the creation of the new substation. All the procedures explained in the previous subsections to create and connect components in the graphical editor can be used here. The connections of the substation with the grid are carried out following any of the procedures described in10.1.5 (Interconnecting Power Subsystems). Existing substations can be used as ''models'' to define templates, which may be used later to create new substations. A new substation template is created by right clicking on the substation single line diagram and selecting Add to template library from the context sensitive menu. This action will copy the substation together with all of its contents (including its diagram even if it is not stored within this substation) in the Templates folder. Substations from previously defined templates are created using the network diagrams. The substations are represented in these diagrams by means of composite node symbols. To create a new substation from a template: Click on the symbol of the composite node ( the right-hand drawing pane. or ) listed among the symbols on

From the second row of the toolbar menu on the top of the graphic window click on the 'Copy from Templates' icon ( ) to see the list of available templates (from the Templates library) for substations. From this list choose the template that you want to create a substation from. Click on the single line diagram to place the symbol. The substation is automatically created in the corresponding grid folder. Close the window of the templates and press Esc to get the cursor back. A diagram of the newly created substation can be opened by double clicking at the composite node symbol. In the new diagram it is possible to rearrange the substation configuration and to connect the desired components to the grid. For further information on templates please refer to 7.6 (The Templates Library). For information about the substation single line diagrams please refer to 7.3.1 (Network Diagrams).
10 - 9

DIgSILENT PowerFactory

The Graphics Editor

10.1.7

Working with Branches in the Graphical Editor

New branches are created in the Data Manager, using the procedure described in Section 11.2.4 (Defining Branches in the Data Manager). The definition and connection of the branch components can be carried out by in the associated single line diagram, which is automatically generated after the creation of the new branch. All the procedures explained in the previous subsections to create and connect components in the graphical editor are supported here. The two connections of the branch with the grid are carried out following any of the procedures described in10.1.5 (Interconnecting Power Subsystems). Existing branches can be used as ''models'' to define templates, which may be used later to create new branches. A new branch template is created by right clicking on the branch single line diagram and selecting Add to template library from the context sensitive menu. This action will copy the branch together with all of its contents (including its diagram) in the Templates folder. Branches from previously defined templates are created using the network diagrams. The branches are represented in these diagrams by means of the composite branch symbols ( ). To create a new branch from a template: ) listed among the symbols on the

Click on the symbol of the composite branch ( right-hand drawing pane.

From the second row of the toolbar menu on the top of the graphic window click on the 'Copy from Templates' icon ( ) to visualize the list of available templates (from the Templates library) for branches. From this list choose the template that you want to create a branch from. If the branch is to be connected with terminals of the same single line graphic, simply click once on each terminal. If the branch is to be connected with a terminal from another single line diagram, you have to 'Paste graphically' one of the terminals on the diagram where you want to represent the branch. If the branch is to be connected with terminals from a substation, click once on each composite node to which the branch is to be connected. You will be automatically taken inside each of those composite nodes to make the connections. In the substation graphic click once on an empty spot near the terminal where you want to connect the branch end, and then on the terminal itself. If the target substation/s is/ are not represented in the grid diagram (by means of a composite model), you have to connect the branch end/s with the target terminal/s in the substation single line graphic, using any of the procedures described in 10.1.5 (Interconnecting Power Subsystems). A diagram of the newly created branch can be opened by double clicking at the composite branch symbol. In the new diagram it is possible to rearrange the branch configuration and to change the branch connections. For further information on templates please refer to 7.6 (The Templates Library). For information about the branch single line diagrams please refer to 7.3.1 (Network Diagrams).

10 - 10

DIgSILENT PowerFactory

The Graphics Editor

10.1.8

Working with Templates

The general information and the applications of 'Templates' are presented in 7.6 (The Templates Library). This section explains how to create and use these templates. Any kind of single network component (lines, transformers, terminals,) can be used to define an ''Element'' template; this is done by right clicking the desired element on a single line graphic and selecting Add to Template Library from the context sensitive menu, a dialogue where the name of the new template is to be written pops up. After the name is given and the Ok button is pressed, a copy of the selected element is stored in the templates folder. To define a new ''Group'' template, select a group of elements in the single line graphic, right on one of the selected elements to open the context sensitive menu and select Add to Template Library. Give the name of the new template in the dialogue that pops up and press the Ok button. A new 'template' folder ( ) storing the objects from the group together with their graphical information is created. If a group of elements containing substation and branches has been selected these substations and branches are not copied. To define a new substation template, right click on the substation single line graphic and select Add to Template Library from the context sensitive menu. Give the name of the new template in the dialogue that pops up and press the Ok button. A copy of the target substation with all of its contents (including its diagram even if it is not stored within the substation) is created in the Templates folder. The same procedure described above can be used to define new Branch templates.

Note:

In case of creating templates which contain graphical information the default settings of the names and result boxes defining their graphical representation (font, frame, size,...) are copied into the template diagram so that they appear as in the source object(s).

To be able to copy objects from the template library the icon Copy from template ( ) has to be pressed. A new window pops up listing the elements of certain template types depending on the symbol selected in the drawing toolbox (i.e. if you selected a 2 winding transformer symbol from the toolbox and then clicked on the ( icon, only templates for 2 winding transformers will be shown). With the drawing cursor active all elements which can be copied from the template folder will be listed. If no template had been created before, the list will be empty. Adding objects from the template folder other than a group template will result in a copy of them (together with all including objects) in the grid which is referenced in the graphic where the object is dropped. Dropping a group template will only make a copy of its containing data elements not of the folder object (IntTemplate) itself. Here only the graphical objects located in the graphic will be copied, not the graphic itself. To apply an element template: Select the symbol of the target element on the drawing toolbox. Click on the "Copy from template" ( ) icon and select the desired template.
10 - 11

DIgSILENT PowerFactory

The Graphics Editor

Insert the new element in the single line graphic, following the same procedures described to draw and connect new power system elements. Close the window of the templates and press Esc to get the cursor back. To apply a group template: Select the symbol of the 'General Templates' ( Click on the "Copy from template" ( ) on the drawing toolbox.

) icon and select the desired Group template.

Left click on the canvas to show a ghost image with the shape of the object to insert. Drop the ghost image by another left mouse click at the desired position. If the line ends of the ghost image are positioned on an existing terminal, an automatic connection will be performed. Close the window of the templates and press Esc to get the cursor back. To apply a substation template: Select the symbol of the 'Composite Node' (( Click on the "Copy from template" ( template. or )) on the drawing toolbox.

) icon and select the desired substation

The new substation will be represented in the single line diagram by means of the selected composite node symbol. Click on the single line diagram to place the symbol. Close the window of the templates and press Esc to get the cursor back. A single line diagram of the substation can be open by double clicking on the 'Composite Node' symbol. To apply a branch template: Select the symbol of the 'Composite Branch' ( Click on the "Copy from template" ( ) on the drawing toolbox.

) icon and select the desired Branch template.

The new branch will be represented in the single line diagram by means of the selected 'Composite Branch' symbol. "Close the window of the templates and press Esc to get the cursor back.

Note:

The use of Substation templates is recommended for diagrams of networks, where components are grouped in branches and substations. In this case the composite nodes can be graphically connected with the composite branch, forming an overview diagram of the complete network.

10 - 12

DIgSILENT PowerFactory

The Graphics Editor

10.1.9

Defining and Working with Transmission Lines

Due to the specific features of the transmission lines model in PowerFactory, this special section has been written. Here the aspects related to the handling of the data model are explained. The technical description is given, along with all the other models of PowerFactory, in Appendix D and C. In PowerFactory, transmission lines and cables are treated alike, they are both instances of the generalized 'transmission line' element ElmLne. A transmission line may be modeled simply as a one-to-one connection between two nodes and will refer to a line (TypLne), tower (TypTow), a tower geometry (TypGeo) type, a line coupling (ElmTow) or a cable system coupling (ElmCabsys). Alternatively, lines may be subdivided into sections referring to different types.

Note:

Anywhere that 'transmission line' or simply 'line' is written in this section, 'lines and/or cables' may be read, unless otherwise specified.

The two basic line configurations are depicted in Figure 8.TL1: "Top line: the simplest transmission line is a single line object (ElmLne). "Bottom line: such a single line may be subdivided into line section objects (ElmLnesec) at any time/location. No terminals are allowed between two sections, but the sections may have different line types.

Fig. 10.7:

Basic line configurations

The purpose of separating lines into sections is to obtain different line parts, with different types (such as when a line uses two or more different tower types, or when manual transpositions should be modelled - since the "Transposed" option in the type object is a perfect, balanced, transposition).

Creating a Transmission Line


The simplest line model is a one-to-one connection between two nodes. This is normally done in the single line graphic by selecting the ( ) icon and by left clicking the first terminal, possibly clicking on the drawing surface to draw a corner in the line and ending the line at the second terminal by left clicking it. This will create an ElmLne object in the database. When this object is edited, the following dialogue will appear.

10 - 13

DIgSILENT PowerFactory

The Graphics Editor

Fig. 10.8:

Editing a transmission line

The dialogue shows the two cubicles to which the transmission line is connected ('terminal i' and 'terminal j'). The example in Figure 10.8 shows a line which is connected between the nodes called 'Line End Terminal' and 'Line Feeder Bus' from a grid called ' North'. The line edit dialogue shows the name of the node (in red) in addition to the name of the cubicle (in blue). The actual connection point to the node is the cubicle and this may be edited by pressing the edit button ( ). The cubicle may be edited to change the name of the cubicle, or to add/remove the breaker. The type of the line is selected by pressing the ( a line/ line route are: ) next to the type field. Line types for

The straight forward TypLne object type, where electrical parameters are directly written (the user can select if the type is defined for an overheat line or a cable). Tower types (TypTow and TypGeo) where the geometrical coordinates and conductor parameters are specified and the electrical parameters are calculated from this data. Once the lines (or cables) had been created it is possible to define couplings between the circuits that they are representing by means of line coupling elements ElmTow (for overheat lines) and cable system coupling elements ElmCabsys (for cables). Further
10 - 14

DIgSILENT PowerFactory

The Graphics Editor

information about line/cable modeling is given in the corresponding the Technical Reference.

Creating Line Sections


To divide a line into sections: Press the Routes/Cubicles/Sections button in the line dialogue. This will open a data browser showing the existing line sections (if the line has not been sectioned, it should be empty). Click on the new object icon (

(ElmLnesec).

) and select the element Line Sub-Section

The edit dialogue of the new line section will pop up. There you have to define the type and length for the new section.

10.1.10

Working with Single Phase Elements

For a lot of element you can define the phase technology, or at least whether they shall be three-phase or single-phase elements. To specify, on which phase a single-phase element shall be connected: Open the dialogue window of the element (by doubleclicking on the element). Press the Figure >> button to display a little figure of the elements with its connections on the bottom of the dialogue window. Doubleclick on the dark-red names for the connections inside this figure. Specify the phase(s). It is possible to color the grid according to the phases (System Type AC/DC and Phases). For more information about the coloring please refer to Section 10.5.5 (Color Representation).

10.2

Graphic Windows and Database Objects

In the PowerFactory graphic windows, graphic objects associated with the active study case are displayed. Those graphics include single line diagrams, station diagrams, block diagrams and Virtual Instruments. Many commands and tools are available to edit and manipulate symbols in the graphics. The underlying data objects may also be accessed and edited from the graphics, and calculation results may be displayed and configured. Many of the tools and commands are found in the drop down menus or as buttons in the toolbars, but by far the most convenient manner of accessing them is to use the right mouse button to display a menu. This menu is known as a 'Context Sensitive Menu'; in other words, PowerFactory evaluates where the tip of your cursor is, and then presents a menu that is appropriate to the cursor location. Thus cursor position is important when selecting various menu options. It is important to keep the cursor in place when rightclicking, as the menu presented is determined from cursor position primarily, and not from the selected or marked object.

10 - 15

DIgSILENT PowerFactory

The Graphics Editor

10.2.1

Network Diagrams and Graphical Pages

Four types of graphical pages are used in PowerFactory: Single Line Diagrams (network diagrams) for entering power grid definitions and for showing calculation results Detailled graphics of substations or branches (a kind of network diagrams, too) for showing busbar (nodes) topologies and calculation results Block Diagrams for designing logic (controller) circuits and relays Virtual Instrument Pages for designing (bar) graphs, e.g. for the results of a stability calculation, bitmaps, value boxes, etc... The symbol for graphical pages is inside the Data Manager. Grids, substations, branches, and controller types (common and composite types in PowerFactory terminology) each have a graphical page. In order to see the graphic on the screen, open a Data Manager and locate the graphic page object you want to show, click on the icon next to it, right-click and select Show Graphic. The "Show Graphic" option is also available directly from each of the above objects themselves. So for example you can select a grid in the data manager, right-click, and show the graphic. The graphic pages of grids and substations are to be found in the subfolder "Diagrams" ( folder. ) under the "Network Model"

Fig. 10.9:

The Diagrams folder inside the Data Manager

10 - 16

DIgSILENT PowerFactory

The Graphics Editor

10.2.2

Active Graphics, Graphics Board and Study Cases

The graphics that are displayed in an active project are determined by the active study case. The study case folder contains a folder called the 'Graphics Board' folder (SetDesktop) in which references to the graphics to be displayed are contained. This folder, much like the 'Summary Grid' folder, is automatically created and maintained and should generally not be edited by the user. Within a PowerFactory project, the Network Model folder contains a sub-folder called Diagrams. This sub-folder should generally also not be edited by the user as it is automatically created and maintained. It contains the objects that represent single line and substation graphics (IntGrfnet objects). More than one graphic (single line or substation diagrams) may be created in/ for a grid, either to display the different grid elements over several pages, or to display the same grid elements in different graphical arrangements. Consider the 'Nine Bus System' project that is shown in Figure 10.10. The active study case is called Old Case and the active grid has two single line graphics that have been created for it, Basic Grid and Basic Grid_Interconnection . The graphics board folder in the study case has a reference to only the Basic Grid graphic object and thus only this graphic for the grid will be shown when the study case is activated. In the case of single line graphics, the references in the graphics board folder are created when the user adds a grid to a study case. PowerFactory will ask the user which graphics of the grid should be displayed. At any time later the user may display other graphics by right-clicking the grid and selecting Show Graphic from the context sensitive menu. Graphics may be removed from the active study case by right-clicking the tab at the bottom of the corresponding graphic page and selecting Remove Page(s). The study case and graphics board folder will also contain references to any other graphics that have been created when the study case is active (Not only Single Line Graphics!).

10 - 17

DIgSILENT PowerFactory

The Graphics Editor

Fig. 10.10:

Relationship between the study case, graphics board and single line diagrams

10.2.3

Single Line Graphics and Data Objects

In a simple network there may be a 1:1 relationship between data objects and their graphical representations, i.e. every load, generator, terminal and line is represented once in the graphics. However, PowerFactory provides additional flexibility in this regard. Data objects may be represented graphically on more than one graphic, but only once per graphic. Thus a data object for one terminal can be represented graphically on two or more graphics. Both graphical representations contain the link to the same data object. Furthermore, graphical symbols may be moved without losing the link to the data object they represent. Likewise, data objects may be moved without affecting the graphic The graphics themselves are saved in the database tree, by deafult in the Diagrams folder of the Network Model. This makes finding the correct Single Line graphic representation of a particular grid, even in the case where there are several graphic representations for one grid, easy. When the drawing tools are used to place a new component (i.e. a line, transformer, bar graph, etc.) a new data object is also created in the database tree. A Single Line Graphic object therefore has a reference to a grid folder. The new data objects are stored into the 'target' folders that the graphics page is associated with (this information may be determined by right-clicking the graphic > Graphic Options see Section 11.4 (Editing Data Objects in the Data Manager) for more information).
10 - 18

DIgSILENT PowerFactory

The Graphics Editor

Since data objects may have more than one graphic representation the deletion of a graphic object should not mean that the data object will also be deleted. Hence the user may choose to delete only the graphical object (right-click menu > Delete Graphical Object only. In this case the user is warned that the data object will not be deleted. This suggests that a user may delete all graphical objects related to a data object, with the data object still residing in the database and being considered for calculation. This is indeed what will occur, when such graphical deletion is done. When an element is deleted completely (right menu option > Delete Element) a warning message will confirm the action. This warning may be switched off - see User Settings, General, "Always confirm deletion of Grid Data").

10.2.4

Editing and Selecting Objects

Once elements have been drawn on the graphic the data for the element may be viewed and edited by either double-clicking the graphic symbol under consideration, or by rightclicking it and selecting Edit Data. The option Edit and Browse Data will show the element in a data manager environment. The object itself will be selected (highlighted) in the data manager and can be doubleclicked to open the edit dialogue. A new data manager will be opened if no data manager is presently active. If more than one symbol was selected when the edit data option was selected, a data browser will pop up listing the selected objects. The edit dialogues for each element may be opened from this data browser one by one, or the selected objects can be edited in the data browser directly, see Section 11.4 (Editing Data Objects in the Data Manager). Finding specific elements in a large project may be difficult if one had to look through the single line diagram alone. PowerFactory includes the Mark in Graphic tool, to assist the user in finding elements within the graphic. To use this tool the user has to first search for the desired object in the Data Manager using any of the methods presented in Chapter 11 (The Data Manager). Once a searched object/element is identified, it may be rightclicked and the option Mark in Graphic selected. This action will mark the selected object in the single line graphic where it appears. When performing this command ensure that the object itself is selected, as shown in Figure 10.11. The menu will be different to that seen when selecting an individual field, as shown in Figure 10.12.

10 - 19

DIgSILENT PowerFactory

The Graphics Editor

Fig. 10.11:

Selecting an object correctly

Fig. 10.12:

Selecting an object incorrectly

Note

The position of an object in the database tree can be found by: -Opening the edit dialogue. The full path is shown in the header of the dialogue. -Right-clicking the object and selecting Edit and Browse. This will open a new database browser when required, and will focus on the selected object.

10 - 20

DIgSILENT PowerFactory

The Graphics Editor

10.2.5

Creating New Graphic Windows

A new graphic window can be created using the New command dialogue. This dialogue may be opened: By pressing the icon.

By selecting the File > New item on the main menu. By pressing the keyboard shortcut Ctrl+N. The ComNew dialogue must be configured to create the desired new object and the new object should be named. Ensure that the correct target folder for the new object is selected. Objects that may be created using this dialogue (DiaPagetyp) are: Project Creates a new Project folder and another dialogue pops up to define a grid folder in the Project folder. Finally the Graphic page in which the single line diagram may be drawn will appear. Creates a new grid folder and a new Single Line Graphic object in that folder. The (empty) single line graphic will pop up. Creates a new Block Diagram folder in the selected folder and a new Block Diagram Graphic object. The (empty) block diagram graphic will pop up.

Grid

Block Diagram

Virtual Instrument Panel Creates a new Virtual Instrument Page object. The (empty) Virtual Instrument Page will pop up. Single Line Graphic Creates a Single Line Graphic in the target folder. Before the graphic can be created the Current Net Data pointer must be set (that is, the relevant grid folder must be selected). The target folder will be set to the \User folder by default, but may be changed to any folder in the database tree. The new grid, Block Diagram or Virtual Instruments folder will be created in the target folder. In all cases, a new graphics board object is also created, because graphic pages can only be shown as a page in a graphics board. An exception is the creation of a new page, while in a graphics board. This can be done by pressing the icon on the graphics board toolbar. This will add the new graphics page to the existing graphics board. More information about how to draw network components is given in the following sections.

10 - 21

DIgSILENT PowerFactory

The Graphics Editor

10.3

Basic Functionality

Each of the four graphic window types are edited and used in much the same way. This section gives a description of what is common to all graphic windows. Specific behavior and functionality of the graphic windows themselves is described in separate sections.

10.3.1

The Page Tab

The page tab of the graphic window displays the name of the graphics in the graphics board. The sequence of the graphics in the graphics board may be changed by the user. A page tab is clicked and moved by dragging and dropping. An arrow marks the insert position during drag and drop. Another way to change the order of the graphics is to select the option Move/Copy Page(s) of the context sensitive menu. In addition virtual instrument panels can be copied very easily. To do so the Ctrl key is pressed during drag and drop. The icon the original panel. copies a virtual instrument panel and inserts the copy alongside

The page tab menu is accessed by a right-click on the page tab of the graphic windows. The following commands are found: Insert Page > Create New Page creates a new page (the do the same). created but which is not yet displayed (the icon in the toolbar will

Insert Page > Open Existing Page opens a page or graphic that has already been icon in the toolbar will do the same). Rename Page presents a dialogue to change the name of the graphic. Move/Copy Page(s) displays a dialogue to move or copy the selected page. Copy is available only for virtual instrument panels.

10 - 22

DIgSILENT PowerFactory

The Graphics Editor

10.3.2

The Drawing Toolboxes

Each graphics window has a specific Drawing Tool Box. This toolbox has buttons for new network symbols and for non-network symbols. See Figure 10.13 for two examples.

Fig. 10.13:

Two tool boxes, for single line diagrams (a) and for block diagrams (b)

The toolboxes have: Network or block diagram symbols, which are linked to a database object: busbars, lines, transformers, switches, adders, multipliers, etc. Graphical add-on symbols: text, polygons, rectangles, circles, etc. The "Graphic Cursor'' ( ) which is mainly used to select graphical objects in order to change their appearance. The toolboxes are only visible when the graphics freeze mode is off. The graphics freeze mode is turned on and off with the window). icon (found at the local icon bar of the graphical

10.3.3

The Active Grid Folder (Target Folder)

Inside the status bar of PowerFactory, the active grid folder is displayed on the leftmost field. Any changes you make in the network diagram refering the data of the grid are stored inside this grid folder. To change the active grid folder (the target folder), doubleclick this field, a window opens in which you can select the new active grid folder.
10 - 23

DIgSILENT PowerFactory

The Graphics Editor

Fig. 10.14:

The Status Bar

10.4

Drawing of Network Components from Templates or Predefined Objects

This chapter provides information about how to draw network components from existing templates or predefined objects.

10.4.1

Creating a new substation in an Overview Diagram

Overview diagrams are single line diagrams without detailed graphical information of the substations. Substations are illustrated as "Composite Nodes", which can be coloured to show the connectivity of the connected elements ("Beach Ball"). Substations from predefined templates (or templates previously defined by the user) are created using the network diagrams. The substations are represented in these diagrams by means of composite node symbols. To draw a substation from a template in an overview diagram: Click on the symbol of the composite node ( the right-hand drawing pane. or ) listed among the symbols on

Then click on the 'Copy from Templates' button ( ) in the icon bar of the graphic window in order to see the list of available templates for substations (from the Templates library). From this list choose the template that you want to create a substation from. Click on the overview single line diagram to place the symbol. The substation is automatically created in the active grid folder. Right click the substation, select Edit Substation, and rename the substation accordingly. Close the window with the templates. Press Esc to get the cursor back. Resize the substation symbol in the overview diagram to the desired size. A diagram of the newly created substation can be opened by double clicking at the composite node symbol. In the new diagram it is possible to rearrange the substation configuration and to connect the desired components to the grid. Existing substations can be used as ''models'' to create user-defined templates, which may be used later to create new substations. A new substation template is created by right clicking on the substation single line diagram and selecting Add to template library from the context sensitive menu. This action will copy the substation together with all of
10 - 24

DIgSILENT PowerFactory

The Graphics Editor

its contents (including its diagram even if it is not stored within this substation) in the Templates folder. To resize a composite node: Click once on the composite node you want to resize. When it is highlighted, place the cursor on one of the black squares at the corners and hold down the left mouse button. A double-arrow symbol appears and you can resize the figure by moving the mouse. For a rectangular composite node you can also resize the shape by placing the cursor on one of the sides. To show the connectivity inside a composite node: Press the button to open the colouring dialog. Select the colouring mode. Change the data, if required, for the selected mode. To show the station connectivity by the colouring select 'Station Connectivity' (Figure 10.15). It is possible to colour the beach balls according to the station connectivity in spite of selecting a different mode by enabling the option 'Always show station connectivity colour for beach balls'. Enabling the option "Show Colour Legend" will create a legend in the active single-line diagram. You can move and resize the legend by using the graphics cursor. If the option 'Always show station connectivity colour for beach balls' is active, it is not possible to show the selected colour option. By deactivating this option and pressing the Button OK, the selected colouring option will be showed. In this case beach balls are not coloured any more according to "station connectivity" but according to the selected colouring.

Fig. 10.15:

Options for colouring graphics of single-line diagram

The button "apply to all graphics" will change the colouring mode not only for the active diagram, but for all diagrams in the active graphics board.

10.4.2

Show Detailed Substation Graphic

There are two ways to open the graphic page of a substation. First is to double-click on the corresponding composite node in the overview diagram. Second is to go to the graphic object of the substation in the data manager, right-click on it and choose Show Graphic.

10 - 25

DIgSILENT PowerFactory

The Graphics Editor

10.4.3

Drawing Diagrams from Predefined Objects

Designing new (extensions to) power system grids, is preferably done graphically. This means that the new power system objects should be created in a graphical environment. After the new components are added to the design, they are edited, either from the graphical environment itself (by double-clicking the objects), or by opening a database manager and using its editing facilities. It is however possible, and sometimes even necessary, to work the other way around. In that case, new data objects are first created and edited in the database manager, and subsequently used in one or more single line diagrams, or imported from other programs.

PowerFactory allows for this either by drag and drop facilities to drag power system objects from the data manager to a graphic window, or by the 'Draw Existing Net Elements' tool. The way this is done is as follows:
1 2 3 4 5 6 Select from the drawing tools toolbox the kind of object that is to be drawn in the graphic. Enable the drag & drop feature in the data manager by double-clicking the drag & drop message in the message bar. Select the data object in the data manager by left clicking the object icon. Hold down the left mouse button and move the mouse to the graphic drawing area (drag it). Position the graphical symbol in the same way as is done normally. A new graphical symbol is created, the topological data is changed, but the graphical symbol will refer to the dragged data object. No new data object is created.

Dragging objects in this manner is supported, however, it is easier to use the 'Draw Existing Net Elements' tool to perform this action, as described in the next sections.

Creating a Composite Branch from Template


Go to the single-line (overview) diagram of the network. Click on the symbol of the composite branch ( ) listed among the symbols on the right-hand drawing pane. Then from the second row of the toolbar menu on the top of the graphic window click on the 'Copy from Templates' button ( ) to see the list of available templates for branches. From this list choose the template that you want to create a branch from. On the overview diagram click once on each composite node to which the branch is to be connected. You are automatically taken inside each of those composite nodes to make the connections. In the substation graphic click once on an empty spot near the terminal where you want to connect the branch end, and then on the terminal itself. Do the same for the other end.

Drawing Existing Terminals


Right click the symbol for terminals ( terminal is now attached to the cursor. ) in the drawing toolbox. The symbol of the

10 - 26

DIgSILENT PowerFactory

The Graphics Editor

Click on the button 'Drawing existing Net Elements' ( ) and a window with a list of all the terminals in the network, that are not visualized in the active diagram appears. If the list is very large, press the button 'Adjacent Element Mode' ( ). This activates the selecting of distance (number of elements) from elements in the active diagram. Select the Distance of 1 in order to reduce the number of terminals shown. The marked or selected element can now be visualised or drawn by clicking somewhere in the active diagram. This element is drawn and disappears from the list. Note that the number of elements in the list can increase or decreases depending on how many elements are a distant away from the element lastly drawn. Scroll down the list, in case only certain elements have to be visualised. Close the window and press Esc to return the Cursor to normal. The drawn terminals can be moved, rotated or manipulated in various ways.

Drawing Existing Lines, Switch Gears and Transformers


Similar to the terminals ( ), elements like lines and transformers connecting the terminals in the substation can be drawn. For lines select the symbol symbol ( ). from the drawing toolbox, for transformers select the

, and so on. Afterwards press the button 'Drawing existing Net Elements'

Similar to terminals a list of all the lines (or transformers, or elements which you have chosen) in the network, that are not in the active diagram are listed. Reduced the list by pressing the button 'Elements which can be completely connected' ( ) at the top of the window with the list. A list of lines with both terminals in the active diagram is preselected. If the list is empty, then there are no lines connecting any two unconnected terminals in the active diagram. For each selected line (or transformers...) a pair of terminals, to which the line is connected is marked in the diagram. Click on the first terminal and then on the second. The selected line is drawn und is removed from the list of lines. Continue drawing all lines (or transformers...), until the list of lines is empty or all the lines to be drawn have been drawn.

Building Single line Diagram from Imported Data


When a power system design is imported from another program, only the non-graphical information is regarded (only some of the converters that are provided in PowerFactory will also import graphics files). Although this includes the connection data in the form of 'from-to' data fields, the graphical single line diagrams are usually not be imported. After the import, a new single line diagram may be built using the imported database information (note that this does not mean that the user will not be able to perform load-flows and other calculations immediately after import; this may be done). This is done by first creating a new single line graphic object in the Diagrams folder of the Network Model (right-click the Diagrams folder and select New > Graphic). This opens
10 - 27

DIgSILENT PowerFactory

The Graphics Editor

the single line graphic dialogue, where the 'Current Net Data' pointer should be set to the respective grid folder. See Section 10.5 for more information. As soon as the correct folder has been set, and OK has been pressed, the single line graphic object ( ) is created and a blank graphic page, appropriately named, pops up. The Draw Existing Net Elements ( ) icon on the graphics toolbar may now be pressed. This opens a database browser listing all elements considered by the active study case (see Figure 10.16) and which have not yet been inserted into the new single line graphic. This list may be filtered to show only particular grids or all grids by using the drop down window (Figure 10.16 b, red circle) provided. Once a drawing tool is chosen, in this case the Terminal tool, the list is further filtered to show only terminals, as can be seen in the example. When the user now clicks on the graphic the highlighted terminal (in the browser, Figure 10.16 b) will be removed from the list and placed onto the graphic, and the next terminal down will be highlighted, ready for placement. In the example three terminals have already been placed in the graphic. After all busbars have been inserted into the single line graphic, branch elements may be selected in the graphic toolbox. In Figure 10.17 a, the transmission liner tool has been selected. The database browser will now show all lines which have not been inserted into the graphics. When one of these lines is selected in the browser (Figure 10.17 b), the corresponding two busbars will be highlighted in the single line graphic. The insertion point and connections for the transformer is thus clear. This is also why the nodes should first be placed on the graphic. Branch elements are placed once the nodes are in position.

a)

10 - 28

DIgSILENT PowerFactory

The Graphics Editor

b) Fig. 10.16:

Using the Draw Net Elements tool

a)

b) Fig. 10.17:

Placing a transformer

10 - 29

DIgSILENT PowerFactory

The Graphics Editor

Note

Before placing elements onto the graphic users may find it useful to configure and display a background layer. This will be a bitmap of an existing single line diagram of the system. It may be used to 'trace' over so that the PowerFactory network looks the same as current paper depictions; see Section 10.5.4 for more information on layers.

10.5

Graphic Commands, Options and Settings

In this section the commands, options and settings that are available in PowerFactory to configure and use the graphic windows are introduced. The first three subsections present the options, commands and settings available for the different windows. The last four are dedicated to the Graphic Layers, the Color Representation, the Title Block and the Legend Block, which are special features that facilitate the visualization of the represented power system within the graphical windows.

10.5.1

General Commands and Settings

The following basic options are available in all graphic windows.

Zooming
Zoom In: Zoom Out: Zoom All: Press the button; the cursor changes to show a magnifying glass; the area to be zoomed into must be selected. This is done by dragging a rectangle around the area to be zoomed > picture the area to be zoomed and left click in the top left hand corner of an imaginary rectangle framing the area. Keep the mouse button held down and drag the cursor down and to the right. A frame is drawn as you do this; when the frame encompasses the area you wish to zoom into let the mouse button go. To zoom ''back'' press the Zoom Out button - this will step the zoom back to the last state. To view the entire page press the Zoom All button (100 percent zoom).

Note

You can also type a zoom percentage directly into the 'Zoom Level' window or use the drop down list to zoom

10 - 30

DIgSILENT PowerFactory

The Graphics Editor

Print Graphic
Main Menu: Keyboard: Icon: This function will send the graphic to a printer. A printer dialogue will appear first.

File > Print


Ctrl + P

Note

The function, Page Setup (accessible via main menu path File > Page Setup), allow a subsize for printing to be set. This will, for example, print an A3 graphic across two A4 pages. Special paper sizes or unusual printer insertion points may be entered as well by using the margins of the print-out. These margins have to be set with care as the print-out will be stretched to the frame. If this remaining page frame has a X/Y - ratio other than 0.707 (A3, A4), the drawing will be distorted.

Rebuild
Right-Click: Icon: The drawing may not be updated correctly in some circumstances. The rebuild function updates the currently visible page by updating the drawing from the database. Drawing >Rebuild

Insert New Page


Page Tab Menu:Insert Page > Create New Page (The page tab menu is opened by right-clicking the page tabs). Icon: Inserts a new graphic object into the Graphic Board folder of the active study case and presents a blank graphics page to the user. A dialogue to configure the new graphics object will appear first.

Insert Existing Page


Page Tab Menu:Insert Page > Open Existing Page (The page tab menu is opened by right-clicking the page tabs). Icon: Inserts existing graphics, which may be one of the following: Graphic folder object (IntGrfnet, opens the selected graphic. single line network or substation diagrams) >

10 - 31

DIgSILENT PowerFactory

The Graphics Editor

Terminal (ElmTerm, ) opens the station graphic of the selected terminal (this may also be accessed by right-clicking the terminal in a Data Manager, or a terminal on the single line graphic > Show Station Graphic. Block Definition (BlkDef, ) The graphic of the block definition is opened. If there is no graphic defined for the block definitions the command is not executed. Virtual Instrument Panels (SetVipage) > A copy of the selected virtual instrument panel is created and displayed. Graphic folder objects (IntGrfnet) may be opened in more than one Graphics Board at the same time, even more than once in the same Graphics Board. Changes made to a graphic will show themselves on all pages on which the graphic object is displayed.

Remove Page
Page Tab Menu:Remove Page (The page tab menu is opened by right-clicking the page tabs). This function will remove the selected graphic from the Graphics Board. The graphic itself will not be deleted and can be re-inserted to the current or any other Graphics Board at any time.

Rename Page
Page Tab Menu:Rename Page (The page tab menu is opened by right-clicking the page tabs). This function will pop up a dialogue to change the name of the selected graphic.

Graphic Options
Right-Click Drawing:Graphic Options Icon: Each graphic window has its own settings, which may be changed using the graphic options function. This function presents a dialogue for the following settings. See Figure 10.18. Basic Attributes tab: Name The name of the graphic

Current Grid Data The reference to the database folder in which new power system elements created in this graphic will be stored. Write protected If enabled, the single line graphic can not be modified. The drawing toolboxes are not displayed and the 'freeze' icon becomes inactive. Snap Snaps the mouse onto the drawing raster.

10 - 32

DIgSILENT PowerFactory

The Graphics Editor

Grid Ortho-Type

Shows the drawing raster using small points. Defines if and how non-orthogonal lines are permitted:

- Ortho Off: Connections will be drawn exactly as their line points were set. - Ortho: Allow only right-angle connections between objects. - Semi Ortho: The first segment of a connection that leads away from a busbar or terminal will always be drawn orthogonally. Line Style for Cables Is used to select a line style for all cables. Line Style for Overhead Lines Is used to select a line style for all overhead lines. Offset Factor for Branch Symbols Defines the length of a connection when a branch symbol is drawn by clicking on the busbar/terminal. This is the default distance from the busbar/terminal in grid points. Show Bus Couplers Can be used to see all couplers, or to hide them. Allow Individual Line Style Permits the line style to be set for individual lines. The individual style may be set for any line in the graphic by right-clicking the line > Set Individual Line Style. This may also be performed for a group of selected lines/cables in one action, by first multi selecting the elements. Allow Individual Line Width As for the individual line style, but may be used in combination with the "Line Style for Cables/Overhead Lines" option. The individual width is defined by selecting the corresponding option in the right mouse menu (may also be performed for a group of selected lines/cables in one action). Equidistant Insertion of Terminals on Lines Is used when an existing line with line-routes is drawn. The terminals between the line-routes can then be drawn either with distances according to the relative length of the routes, or, when this option is enabled, at equidistant positions along the line. This has no effect on the electrical models, only on the graphical representation.

'Additional Attributes' and 'Coordinates' tabs: these should only be configured with the assistance of DIgSILENT support staff.

10 - 33

DIgSILENT PowerFactory

The Graphics Editor

Fig. 10.18:

Graphic options editor

Text Boxes tab: Boxes of Object Names - Background Specifies the transparency of object names boxes: - Opaque:Means that objects behind the results box cannot be seen through the results box. - Transparent:Means that objects behind the results box can be seen through the results box. Result Boxes - Background Specifies the transparency of result boxes (as boxes of object names). Always show result boxes of detailed couplers Self-explanatory.

10 - 34

DIgSILENT PowerFactory

The Graphics Editor

Space saving representation of result boxes on connection lines Self-explanatory. Show line from General Textboxes to referenced objects may be disabled to unclutter the graphic. Reset textboxes completely Textboxes and result boxes have reference points (the point on the box at which the box will 'attach' to its element) that may be changed by the user. If this option is: - Enabled:The default reference will be used. - Disabled:The user defined reference will be used. when the Reset settings option in the right-click menu for moved result boxes is selected. Switches tab: Cubicle representation Selects the switch representation (see Figure 10.19): - Permanent Box:Shows a solid black square for a closed and an frame line for an open switch (left picture). - Old Style Switch:Shows the switches as the more conventional switch symbol (right picture).

Fig. 10.19:

Cubicle representations

Display Frame around Switches Draws a frame around the switch itself (Breakers, Disconnectors, etc.). This only applies to user-drawn breakers and disconnectors. Create switches when connecting to terminal Self-explanatory. Show connected busbars as small dots in simplified substation representation Defines how the connection points on busbars are represented in busbar systems.

10 - 35

DIgSILENT PowerFactory

The Graphics Editor

Note:

The settings for the cursor type for the graphic windows (large crosshair or small tracking cross) may be set in the User Settings dialogue, see Section 6.2. This is because the cursor shape is a global setting, valid for all graphic windows, while all graphic settings described above are specific for each graphic window.

Page Setup for Drawing and Printing


The drawing area for single line diagrams, block diagrams and virtual instruments is selected in the "Drawing Format" dialogue ( icon on the graphics window). One of the predefined paper formats can be selected, each of which can be edited, and new formats can be defined. The selected paper format has 'Landscape' orientation by default and can be rotated by 90 degrees by selecting 'Portrait'. The format definitions, which are shown when an existing format is edited or when a new format is defined, also show the landscape dimensions for the paper format. It is not possible to draw outside the selected drawing area. If a drawing no longer fits to the selected drawing size, then a larger format should be selected. The existing graphs or diagrams are repositioned on the new format (use Ctrl+A to mark all objects and then grab and move the entire graphic by left clicking and holding the mouse key down on one of the marked objects; drag the graphic to a new position if desired). If no 'Subsize for Printing' format has been selected, then, at printing time, the drawing area will be scaled to fit the paper size of the printer. If, for instance, the drawing area is A3 and the selected paper in the printer is A4, then the graphs/diagrams will be printed at 70% of their original size. By selecting a subsize for printing, the scaling of the drawing at printing time can be controlled. The dimensions of the sub-sized printing pages are shown in the graphic page. If, for instance, the drawing size has been selected as A3 landscape, and the printing size as A4 portrait, then a vertical grey line will divide the drawing area in two halves. The drawing area will be accordingly partitioned at printing time and will be printed across two A4 pages. Make sure that the selected subsize for used for printing is available at the printer. The printed pages are scaled to the available physical paper if this is not the case. For instance: The drawing area has been selected as A2 landscape. The subsize for printing has been selected as A3 portrait. The A2 drawing is thus to be printed across two pages. Suppose that the selected printer only has A4 paper. The original A2 drawing is then scaled down to 70% and printed on two A4 sheets of paper.

Mark All
Icon: This function marks (selects) all objects in the drawing. This is helpful for moving the whole drawing to another place or copying the whole drawing into the clipboard. In block diagrams the surrounding block will not be marked. The keyboard short cut Ctrl+A may
10 - 36

DIgSILENT PowerFactory

The Graphics Editor

also be used to perform this action.

10.5.2

Commands and Settings for Block Diagrams and Single Line Graphics

The following basic functions are available in block diagram and single line graphics.

Edit Data
Right-Click Selection:Edit Data Keyboard: Mouse: Icon: This option lets the user edit the device data of all marked objects in the drawing. If only one object is marked, then this object's edit dialogue will pop up directly. When more than one object is marked, a Data Manager window will show the list of marked objects. As with a normal Data Manager, these objects can be double-clicked to open their edit dialogues. See Chapter 11 (The Data Manager) for more information.

Alt+Return
Double-click

Note

Changes made in the device data of objects are not registered by the graphical Undo Function. Undoing these changes is therefore not possible.

Delete
Right-Click Selection:Delete Element Keyboard: Icon: This function deletes all marked objects in the drawing. The database objects for the graphical object will also be deleted (a warning message will pop up first - this may be switched off in the "User Settings" dialogue; see Section 6.2 (Graphic Windows Settings). Del

Delete Graphical Object only


Right-Click Selection:Delete Graphical Object only This function deletes all marked objects in the drawing. The database objects for the graphical object will also be deleted (a warning message will pop up first - this may be switched off in the "User Settings" dialogue; see Section 6.2 (Graphic Windows Settings)).

Copy
Right-Click Selection:Copy Keyboard:

Ctrl+C
10 - 37

DIgSILENT PowerFactory

The Graphics Editor

Icon: Copies all marked objects from the current drawing and puts them into the clipboard.

Paste
Right-Click Drawing:Paste Keyboard: Icon: Copies all objects from the clipboard and pastes them into the current drawing. The objects are pasted at the current graphical mouse position. Objects that are copied and so pasted create completely new graphic and data objects in the graphic that they are pasted into. If you wish to copy and paste just the graphic, then choose Paste Graphic Only from the right-click menu. Similar results are obtained when using the "Draw Existing Net Elements" tool (see Section 10.4.3 (Drawing Diagrams from Predefined Objects)).

Ctrl+V

Undo
Right-Click Selection:Undo Keyboard: Icon: Undoes the last graphic action. Undo will restore deleted elements or delete created elements when necessary. Note that data that has been deleted or changed will not be restored.

Ctrl+Z

Define Graphics Attributes


Icon: This dialogue sets the line style, line width, brush style, color and font, for annotations (i.e. not for power system elements). The line style includes several kinds of dashed or dotted lines and one special line style: the TRUE DOTS style. This style will only put a dot at the actual coordinates. In a single line graphic, this means only at the start and the end, which does not make much sense. For result graphs, however, the TRUE DOTS style will only show the actual data points. The brush style is used to fill solid symbols like squares and circles. These settings may also be accessed by simply double-clicking an annotation.

10.5.3

Commands and Settings for Single Line Graphics

The following basic functions are available in single line graphics only.

10 - 38

DIgSILENT PowerFactory

The Graphics Editor

Copy from Templates


Icon: Opens a data browser displaying the available templates. For information about the definition and the use of templates in network models please refer to Section 10.1 (Defining Network Models with the Graphical Editor)

Draw Existing Net Elements


Icon: This button opens a database browser which contains all objects in the Current Net Data folder, which are not shown in the active single line graphic. Draw Existing Net Elements is used mainly to build single line graphics from imported data, but may also be used to create alternative graphical arrangements for existing data. See 10.4.3 for more information.

Set Individual Color


Right-Click Selection:Set Individual Color Allows the user to choose a color for individual elements. Only available when the 'Color Representation' ( 10.5.5) is set to 'Individual'.

Rotate
Right-Click Selection:Rotate Rotates symbols 90 degrees. Only unconnected symbols can be rotated. To rotate a connected element: disconnect it, rotate it and connect it again.

Disconnect Element
Right-Click Selection:Disconnect Element Disconnects the selected elements.

Reconnect Element
Right-Click Selection:Reconnect Element Icon: Disconnects the selected elements and then presents the element for immediate reconnection. The branch to be connected will be 'glued' to the cursor. Left clicking a bar or terminal will connect the element.

Connect
Right-Click Selection:Connect Element
10 - 39

DIgSILENT PowerFactory

The Graphics Editor

Connects the selected unconnected elements one by one. The branch to be connected will be 'glued' to the cursor. Left clicking a bar or terminal will connect the element.

Move Objects
Marked objects can be moved by left clicking them and holding down the mouse button. The objects can be moved when the cursor changes to an arrowed cross ( ). Hold down the mouse button and drag the marked objects to their new position. Connections from the moved part of the drawing to other objects will be adjusted.

Edit Line Points


Right-Click Selection:Edit Line Points The connection lines of graphical symbols may be edited separately. Selecting the Edit Line Points option will show the black squares ('line points') that define the shape of the connection. Each of these squares can be moved by left clicking and dragging them to a new position (see Figure 10.20). New squares can be inserted by left clicking the connection in between squares.

Fig. 10.20:

Editing line points

Line points are deleted by right-clicking them and selecting the Delete Vertex option from the case sensitive menu. This menu also presents the option to stop (end) the line point editing, which can also be done by left clicking somewhere outside the selected lines.

Hand Tool
Icon:
10 - 40

DIgSILENT PowerFactory

The Graphics Editor

Hand tool to drag the single line graphic area. Further single line graphic functionalitiy (Graphic Layers, Color Representation, The Title Block and The Legend Block) is described in the following sections.

10.5.4

Graphic Layers

The single line graphic and the Block diagram graphic windows use transparent layers of drawing sheets on which the graphical symbols are placed. Each of these layers may be set to be visible or not. The names of objects that have been drawn, for example, are on a layer called 'Object Names' and may be made visible or invisible to the user. Which layers are visible and exactly what is shown on a layer is defined in the 'Graphical Layers' dialogue. This dialogue can be opened by pressing the icon on the local toolbar, or by right-clicking on an empty spot of the graphic area > Show Layer. The layers dialogue has a "Visibility" tab to determine which layers will be visible, and a "Configuration" tab to define various attributes for the layers. See Figure 10.21. In Figure 10.21, the layers in the left pane (Base Level, Object Names, Results, etc.) are visible in the graphical window. The layers in the right pane are invisible. Layers can be made visible by multi selecting them (hold the Ctrl key down whilst selecting) and pressing the button (alternatively, double-click a layer name and it will jump to the other pane). A layer can be made invisible again by selecting it in the left pane and pressing the button or by double-clicking it. It is also possible to define user-specific layers, by pressing the New button.

Fig. 10.21:

Graphical layers dialogue (SetLevelvis)

The layers existing in PowerFactory are described in Table 10.1. Each graphic symbol in a single line diagram or block diagram is assigned to default layer
10 - 41

DIgSILENT PowerFactory

The Graphics Editor

at first. All busbar symbols, for example, are drawn on the 'Base Level' layer by default. Graphic symbols may be shifted onto other layers by right-clicking them in the single line graphic and selecting the option Shift to Layer from the context sensitive menu. This option will show a second menu with all layers. Selecting a layer will move all selected symbols to that layer. Moving symbols from one layer to another is normally only needed when only a few symbols from a certain group should be made visible (for instance the result boxes of one or two specific point-terminals), or when user defined layers are used.

Note

Certain names and results boxes are, by default, assigned to the 'Invisible Objects' layer. An example are the names and results boxes for point terminals. This is done to unclutter the graphic. Should the user wish to display names and/or results boxes for certain point terminals simply make the 'Invisible Objects' layer visible and re-assign the names and results boxes required to another layer, such as the 'Object Names' or 'Results' layers - then make the 'Invisible Objects' layer invisible once more.

The 'Configuration' tab has a drop down list showing all layers that may be configured by the user. Considering the 'Object Names' layer as shown in Figure 10.22, it may be seen that a target (or focus) may be set. The selected target will be the focus of the performed configuration command. Various actions or settings may be performed, such as e.g. changing the font using the Change Font button. The configuration tab may also be used to mark (select/ highlight) the target objects in the graphic using the Mark button. The options available to configure a layer depend on the type of Layer. Table 10.1 shows for each layer in which way its content can be changed in format.

10 - 42

DIgSILENT PowerFactory

The Graphics Editor

Fig. 10.22:

Graphical layers configuration page

As and example, suppose that a part of the single line graphics is to be changed, for instance, to allow for longer busbar names. To change the settings, the correct graphical layer is first selected. In this example, it will be the 'Object Names' layer. In this layer, only the busbar names are to be changed, and the target must therefore be set to 'All Nodes'. When the layer and the target has been selected, the width for object names may be set in the Settings area. The number of columns may be set using the Visibility/ Frame/Width button. Alternatively, the Adapt Width will adapt all of the object name placeholders to the length of the name for each object. Changing a setting for all nodes or all branches at once will overwrite the present settings.

Note

Should an object disappear when it has been re-assigned to a layer, that layer may be invisible. Layer visibility should be inspected and changed if required.

10 - 43

DIgSILENT PowerFactory

The Graphics Editor

Layer

Content

Configuration Options (none) Text/Box Format Text/Box Format (none)

Diagram Type SL Single Line B Block SL/B SL/B SL/B SL/B

Base Level Object Names Results Connection Points Device Data Invisible Objects Background

Symbols for the elements of the grid Boxes with names and additional data description, if configured Boxes with calculation results Dots at the connections between edges and buses/terminals and signal connections to blocks Additional Text explanation given in the device symbol Layer containing the symbols of elements hidden by default Graphic used as the background (wallpaper) to allow easier drawing of the diagram or to show additional information (map information) Number of lines for each connection Symbols at lines consisting of sections and/or where line loads are connected Double-Arrow at connections where the end point is not represented in the current diagram. Positions of taps for shunts and transformers Vector group for rotating machines and transformers Arrows that can be configured for active and reactive power flow representation Number of phases of a line/cable, shown as parallel lines Index of each possible block connection point Name of each unused connection of a block Name of the signal transmitted Definition each block is based on

Text/Box Format Text/Box Format Name of file with graphics (WMF,DBX,BMP)

SL/B SL/B SL/B

Numbers of connection lines Sections and Line Loads Connection Arrows Tap Positions Vector Groups Direction Arrows

None Text/Box Format

SL SL

None

SL

Text/Box Format Text/Box Format Active/Reactive Power for direct/inverse/ homopolar system None Text/Box Format Text/Box Format Text/Box Format Text/Box Format

SL SL SL

Phases Connection Numbers Connection Names Signals Block Definition

SL B B B B

Table 10.1: Diagram Layers of PowerFactory

10 - 44

DIgSILENT PowerFactory

The Graphics Editor

10.5.5

Color Representation

The Single line graphic window has an automatic color representation mode. The icon on the local toolbar will open the color representation dialogue. This dialogue is used to select a certain coloring mode. This mode may be None Individual This will redraw the graphic in black and white. Each symbol may be assigned an individual color as determined by the user. Colors the graphic according to one of the following criteria: Low/High voltage or loading Voltage level Voltage ranges Isolated Grids User defined filter Grids/ Original locations Modifications Loading of Thermal/Peak Short-Circuit Current Path definitions System Type AC/DC and Phases Relay locations Fault Clearing Times Feeder Definitions Fault clearance and power restoration External measurement locations Missing graphical connections Zones State Estimation Boundaries/Interior Region Station Connectivity Outage Check Energizing Status Recording Expansion Stage Modifications Areas Owners Routes Operators

Functional

Choose one of the options to color the graphic accordingly.

10 - 45

DIgSILENT PowerFactory

The Graphics Editor

10.5.6

The Title Block

The icon on the single line diagram toolbar will turn the title block (See Figure 10.23) on and off. The title block is placed in the lower right corner of the drawing area by default.

Fig. 10.23:

Single line title mask

The contents and size of the title mask can be changed by right-clicking the title block and selecting the Edit Data option from the context sensitive menu. The Select Title dialogue that pops up is used to scale the size of the title block by setting the size of the block in percent of the default size. The font used will be scaled accordingly. To edit the text in the title block press the edit button ( ) for the 'Title Text' field.

Set Title dialogue


All text fields have a fixed format in the title block. The data and time fields may be chosen as automatic or user defined. Most text fields are limited to a certain number of characters. When opening a new graphic the title will appear by default.

10.5.7

The Legend Block

The icon on the single line diagram toolbar will turn the legend block on and off. The legend block describes the contents of result boxes (for information about result boxes see 10.6). Because more than one type of result box is normally used in the Single line graphic, for instance, one for node results and another one for branch results, the legend box normally shows more than one column of legends. After changing the result box definitions, it may be required to manually resize the legend box in order to show all result box legends. The Legend Box definition dialogue is opened by right-clicking the legend block and selecting Edit Data from the context sensitive menu. The font and format shown may be configured. When opening a new graphic the legend will appear by default.

10.5.8

Editing and Changing Symbols of Elements

You can edit or change the symbols, which are used to represent the elements in the single line graphic. Click with the right mouse button on a symbol of an element in the single line graphic. Select Edit Graphic Object from the context sensitive menu in order to edit the symbol of the element.
10 - 46

DIgSILENT PowerFactory

The Graphics Editor

Select Change Symbol from the context sensitive menu in order to use a different symbol for the element. PowerFactory supports user-defined symbols as WindowsMetafile (*.wmf) and Bitmap (*.bmp) files. For additional information please refer to appendix E (Reference to the use of Symbols in PowerFactory).

10.6
10.6.1

Result Boxes-Text Boxes and Labels


General Concept

PowerFactory uses result boxes in the Single line graphic to display calculation results.

Result boxes are generally set up so that there are a series of different formats for each calculation function, with variables appropriate to that function. In addition, the format differs for the objects class and/or for individual objects. For example, following a loadflow, branch and edge elements will have different formats compared to nodes, and an external grid will have an individual, different, format as compared to the branch and edge elements. The result box itself is actually a small output report, based on a form definition. This form definition, and the PowerFactory output language that is used to define it, allows for the display of a wide range of calculated values, object parameters, and even for coloring or user defined text. Although the result boxes in the single line graphic are a very versatile and powerful way for displaying calculation results, it is often not possible to display a large (part of a) power system without making the result boxes too small to be read. PowerFactory solves this problem by offering balloon help on the result boxes. Positioning the mouse over a result box will pop up a yellow text balloon with the text displayed in a fixed size font. This is depicted in Figure 10.24. The result box balloon always states the name of the variable, and may thus also be used as a legend.

Fig. 10.24:

Result boxes balloon help

A result box is connected to the graphical object for which it displays the results by a 'reference point'. Figure 10.25 shows the default reference points for the resultbox of a terminal. A reference point a connection between a point on the result box (which has 9
10 - 47

DIgSILENT PowerFactory

The Graphics Editor

optional points), and one of the 'docking' points of the graphical object. The terminal has three docking points: on the left, in the middle and on the right. The reference point can be changed by: Right-clicking the resultbox with the graphics cursor (freeze mode off), and selecting Change Reference Points. The reference points are shown: docking points in green, reference points in red. Select one of the reference points by left-clicking it. Left-click the selected reference point, and drag it to a red docking point and drop it. An error message will result if you drop a reference point somewhere else than on a docking point.

Fig. 10.25:

Reference points of a result Box

Result boxes can be freely moved around the diagram. They will remain attached to the docking point, and will move along with the docking point. A result box can be positioned back to its docking point by right-clicking it and selecting Reset Settings from the menu. If the option "Reset textboxes completely" is set in the graphical settings, then the default reference and docking points will be selected again, and the result box is moved back to the default position accordingly.

10.6.2

Editing Result Boxes

PowerFactory uses separate result boxes for different groups of power system objects,
such as node objects (i.e. busbars, terminals) or edge objects (i.e. lines, loads). For each type of result box, a different result box definition is used.

A newly installed version of PowerFactory has pre-defined result box formats for all object groups. These default formats cannot be changed, however the user may define other formats and save these for use. For the edge objects, for example, the default box shows P and Q without units. A number of these predefined formats are available for display; they may be selected by right-clicking a results box to get the Format for Edge Elements (in this example) option, which then presents a number of formats that may be selected. The active format is ticked ( ) and applies for all the visualized edge elements. It is also possible to select predefined formats for an specific element class. If the edge element is for example an asynchronous machine, in the context sensitive menu it will be also possible to get the option Format for Asynchronous Machine, which shows the predefined formats for the element class Asynchronous Machine (ElmAsm). The selected format will in this case apply only to the visualized asynchronous machines.
10 - 48

DIgSILENT PowerFactory

The Graphics Editor

If the user wants to create a specific format that is different from the pre-defined ones, the Edit Format for Edge Elements (or Node Elements) option should be used. Note that the new format will be applied to the entire group of objects (edge or node objects). If a created format is expected to be used for just one specific element, then the Create Textbox option should be used. An additional results box/ textbox will be created, using

the current format for the object. This may then be edited. Information about text boxes is given in 10.6.4.

When the Edit Format option has been selected the user is presented with the form manager dialogue (Figure 10.26). A name for the new form may be entered in the Name field. Various options for the results box may be set and the drop down lists of pre-defined variables are used to configure the desired format (section Lines). Once the format has been set and chosen the format may be saved for future use by pressing the To Library button. The format is saved to Settings \ Project \ Changed Settings \ Formats \ Grf \ Result in the user folder and is available for use in any project in the user folder (when right-clicking a results box for the same calculation functionality the new format will be seen in the listing of formats).

Fig. 10.26:

The form manager

If the list of pre-defined variables do not contain the required variables, the Input Mode should be pressed. A dialogue with three possible input modes will pop up. The available options are: 1 Predefined Variables: This first option is the one presented by default and also shown in Figure 10.26. The user has maximum three lines available where the calculation results to be shown in the diagram can be selected. Out of all available calculation results a limited but useful selection is pre-defined. This facilitates the configuration work for less advanced users. User Selection:This option allows the selection of the variables to be displayed in the single line diagram out of the full set of available magnitudes. The "User
10 - 49

DIgSILENT PowerFactory

The Graphics Editor

Selection" mode changes the appearance of the form manager slightly so that a Select Variables appears in place of the pre-defined variables drop down listings. Press this button to access the variable set (IntMon) dialogue. The selection and use of variables is fully described in Chapter 19 (Defining Variable Sets). 3 Text Editor:Unlocks the text editor page for manual configuration of the variables and their format; this should only be used by advanced users. The text editor page is found on the "View" tab page (Figure 10.27).

The final option is using DIgSILENT Output Language, the fully configurable format description language of PowerFactory. As opposed to the preceding options, it offers the following advantages: More than one variable per line Different formats for variables User-defined text for individual comments To modify the text format it is necessary to change to the tab page "view". Then a dialogue page appears similar to the one shown in Figure 10.27. A detailed overview over the syntax of the DIgSILENT Output Language can be found in 20.2.3 (The DIgSILENT Output Language).

Fig. 10.27:

Editing result boxes using the text editor

10 - 50

DIgSILENT PowerFactory

The Graphics Editor

10.6.3

Formatting Result Boxes

By means of the context sensitive menu (right-clicking the desired result box) it is possible to set the appearance of the result boxes. The available options include: Rotate the result box. Hide the selected box. Change the layer (see 10.5.4). Change the font type and size of the text. Change the width. Set the text alignment. Set the default format (Reset Settings).

10.6.4

Text Boxes

As mentioned in 10.6.2, text boxes are used to display user defined variables from a specific referenced object within the single line graphic. To create a text box, right-click on the desired object (one end of the object when it is a branch element) and select Create Textbox. By default a text box with the same format of the corresponding result box will be generated. The created text box can be edited, to display the desired variables, following the same procedure described in 10.6.2. In this case after right-clicking the text box, the option Edit Format should be selected. The text box format can be set following the same procedure from 10.6.3. By default the text boxes are graphically connected to the referred object by means of a line. This ''connection line'' can be made invisible if the option 'show line from General Textboxes....' from the 'Result Boxes' tab of the Graphic Option dialogue (10.5.1, Figure 10.18) is disabled.

10.6.5

Labels

In the general case, a label showing the name of an element within the single line graphic is automatically created with the graphical objects. The label can be visualized as a text box showing only the variable corresponding to the name of the object. As the text boxes format of the labels can be set using the context sensitive menu.

10 - 51

DIgSILENT PowerFactory

The Graphics Editor

10 - 52

DIgSILENT PowerFactory

The Data Manager

Chapter 11 The Data Manager

To manage/ browse the data in PowerFactory, a Data Manager is provided. The objective of this chapter is to provide detailed information on how this Data Management tool. Before starting, users should ensure that they are acquainted with Section 4.4 (Data Arrangement) and Chapter 7 (The PowerFactory Data Model).

11.1

Using the Data Manager

The Data Manager provides the user with all the features required to manage and maintain all the data from the projects. It gives both an overview over the complete data base as well as detailed information about the parameters of single power system elements or other objects. New case studies can be defined, new elements can be added, system stages can be created, activated or deleted, parameters can be changed, copied, etc. All of these actions can be instituted and controlled from a single data base window. The data manager uses a tree representation of the whole database, in combination with a versatile data browser.To initially open a data manager window press the icon from the main toolbar. The settings of this window can be edited using the 'User Settings' dialogue (Section 6.3: Data Manager Settings). The data manager window has the following parts (see Figure 11.1): The title bar, which shows the name and path of the of the folder currently selected in the database [1]. The data manager local tool bar [2]. In the left upper area the database window, which shows a symbolic tree representation of the complete database [3]. In the left lower area the input window. It may be used by more experienced users to enter commands directly, instead of using the interactive command buttons/ dialogues. By default it is not shown. For further information see Section 11.6 (The Input Window in the Data Manager) [4]. Between the database window and the input line, it shows the history list, which can be used to perform calculations in batchmode [5]. The input window and history list are opened and closed by the command icon. On the right side is the database browser that shows the contents of the currently selected folder [6].

11 - 1

DIgSILENT PowerFactory

The Data Manager

Below the database browser and the input window is the message bar, which shows the current status and settings of the database manager (for further information see Section 11.1.5). There are some special features of the database browser which can be accessed at any time when the content of a folder is shown: Balloon text: this is not only available for the buttons in the tool bar and the active parts of the message bar or the browser window, but also for the data fields [a]. Active Title buttons of each column; click on any title button to sort the items in the column; first click- items are sorted in ascending order; second click - items are sorted in descending order [b]. Object buttons showing the object standard icon in the first column of the database browser: each object is represented by a button (here a line object is shown). One click selects the object and a double-click presents the edit dialogue for the object [c].

Fig. 11.1:

The data manager window

PowerFactory makes extensive use of the right mouse button. Each object or folder

may be 'right-clicked' to pop up a context sensitive menu. For the same object the menu presented will differ depending on whether the object is selected in the left or right hand side of the data manager (this is known as a 'context sensitive' menu). Generally, the left hand side of the data manager will show object folders only. That is, objects that contain other objects inside them. The right hand side of the data manager shows object folders as well as individual objects.

11 - 2

DIgSILENT PowerFactory

The Data Manager

Fig. 11.2:

Context sensitive menus in the data manager

Using the right mouse button to access menus is usually the most effective means of accessing features or commands. Figure 11.2 shows an Illustration of a context-sensitive right mouse button menu. The symbolic tree representation of the complete database shown in the database window may not show all parts of the database. The user settings offer options for displaying hidden folders, or for displaying parts that represent complete stations. Set these options as required (Section 6.3: Data Manager Settings).

Note

It is useful to keep in mind that object folders, such as the grid ( ) folder are merely common folders ( ), that have been designated to contain particular classes of objects.

11.1.1

Moving Around in the Database Tree

There are several ways to ''walk'' up and down the database tree: Use the mouse: all folders that have a "+" sign next to them may be expanded by double-clicking on the folder, or by single clicking the "+" sign. Use the keyboard: the arrow keys are used to walk up and down the tree and to open or close folders (left and right arrows). The Page Up and Page Down keys jump up and down the tree in big steps and the "-" and "+" keys may also be used to open or close folders. Use the toolbar in combination with the browser window. Double-click objects (see "c" in Figure 11.1) in the browser to open the corresponding object. This could result in opening a folder, in the case of a common or case folder, or editing the object dialogue for an object. Once again, the action resulting from your input depends on where the input has occurred (left or right side of the data manager).
11 - 3

DIgSILENT PowerFactory

The Data Manager

The and buttons on the data manager tool bar can be used to move up and down the database tree.

11.1.2

Adding New Items

Generally, new network components are added to the database via the graphical user interface (see Section 10.1: Defining Network Models with the Graphical Editor), such as when a line is drawn between two nodes creating, not only the graphical object on the graphics board, but also the corresponding element data in the relevant grid folder. However, users may also create new objects ''manually'' in the database, from the data manager. Certain new folders and objects may be created by right-clicking on folders in the data manager. A context sensitive menu is presented, offering a choice of objects to be created that will ''fit'' the selected folder. For example, right-clicking a grid folder will allow the creation (under the New menu) of a Graphic, a Branch, a Substation, a Site or a Folder object. The new object will be created in the folder that was selected prior to the new object button being pressed. This folder is said to have the 'focus' for the commanded action. This means that some objects may not be possible to create since the focused folder may not be suited to hold that object. For instance: A synchronous machine should not go into a line folder. A line folder should contain only line routes, line sections and cubicles. The cubicles in their turn should contain only switches or protection elements. To access the whole range of objects that may be created, the icon must be pressed (new object icon). This is found the data manager toolbar and presents the dialogue shown in Figure 11.3. To simplify the selection of the new objects, a filter is used to sort the object list. This filter determines what sort of list will appear in the drop-down list of the 'Element' field. If "Branch Net Elements'' is first selected, the selection of, for instance, a 2-winding transformer is accomplished by then scrolling down the element list. The Element field is a normal edit field. It is therefore possible to type the identity name of the new element, like "ElmTr3'' for a three-winding transformer, or "TypLne" for a line type directly into the field. The possible list of new objects is therefore context sensitive and depends on the type or class of the originally selected folder.

11 - 4

DIgSILENT PowerFactory

The Data Manager

Fig. 11.3:

The element selection dialogue

After the selection for a new object has been confirmed, the "Element Selection" dialogue will close, the new object will be inserted into the database and the edit dialogue for the new object will pop up. If this dialogue is closed by pressing the Cancel button, the whole action of inserting the new object will be cancelled: the newly created object will be deleted from the active folder. The dialogue for the new object may now be edited and the OK button pressed to save the object to the database. As any other object, folders can be created either by using the context sensitive menu or by using the icon. Common folders (IntFolder objects) may have an owner name entered, for documentation or organizational purposes. In this way it should be clear who has created the data. Descriptions may also be added. An existing folder may be edited by using the "Edit" icon ( ) on the toolbar or by using the right mouse button. Each folder may be set to be read-only, or to be a PowerFactory system folder. The folder may be a "Common" or "Library" folder. These attributes can be changed in the edit-folder dialogue. These settings have the following meaning: Common folders are used for storing non-type objects: electric elements, command objects, settings, projects, etc. Type folders are used as 'libraries' for type objects. System folders, which are read only folders The use of read-only folders is clear: they protect the data. In addition, folders containing data that is not normally accessed may be hidden. Selecting the kind of folders that the user/administrator wants to be hidden is done in the user settings dialogue see Chapter 6 (User Settings).
11 - 5

DIgSILENT PowerFactory

The Data Manager

(for complete information see refer to Chapter 7 (The PowerFactory Data Model)):

11.1.3

Deleting an Item
icon on the toolbar of the database manager.

A folder or object which is selected may be deleted by pressing the Delete key on the keyboard, or by clicking the Because most power system objects that are stored in the database are interconnected through a network topology or through type-element relationships, deleting objects often causes anomalies in the database consistency. Of course, PowerFactory knows at any moment which objects are used by which others and could prevent the user from creating an inconsistency by refusing to delete an object that is used by others. This, however, would create a very stubborn program. in fact moved to the recycle bin. All references to the deleted objects will therefore stay valid (for example, the reference between element and type), but will show that the referenced object has been ''deleted'' by: Showing the path to the recycle bin and the name of the ''recycle object'' in stead of the original location and name. Coloring: a reference to a deleted object will be colored red, i.e. a reference to a type. Type references are found in the edit dialogues of all elements which use a type like the line or the transformer object. An object that has been deleted by mistake can be restored to the original location by selecting the restore menu option on the recycle object's context sensitive menu. All references to the object will also be restored.

PowerFactory solves this problem by using a 'Recycle Bin' folder. All deleted objects are

11.1.4

Cut, Copy, Paste and Move Objects

Cut, Copy and Paste


Cutting, copying and pasting may be achieved in four different manners: 1 2 By using the data manager tool bar buttons. By using the normal 'MS Windows' shortcuts: - Ctrl-X will cut a selection, - Ctrl-C will copy it, - Ctrl-V will paste the selection to the active folder. Cutting a selection will color the item-icons gray. The cut objects will remain in their current folder until they are pasted. A cut-and-paste is exactly the same as moving the object, using the context sensitive menu. All references to objects that are being moved will be updated. Cancelling a cut-and-paste operation is performed by pressing the Ctrl-C key after the Ctrl-X key has been pressed. 3 By using the context sensitive menu. This menu offers a Cut, a Copy and a Move item. The move item will pop up a small second database tree in which the target

11 - 6

DIgSILENT PowerFactory

The Data Manager

folder can be selected. When the selected objects have been Cut or Copied, the context sensitive menu will then show a Paste, Paste Shortcut and a Paste Data item. - Paste will paste the selection to the focused folder. - Paste Shortcut will not paste the copied objects, but will create shortcuts to these objects. A shortcut object acts like a normal object. Changes made to the shortcut object will change the original object. All other shortcuts to this original object will reflect these changes immediately. - Paste Data is only be available when just one object is copied, and when the selected target object is the same kind of object as the copied one. In that case, Paste Data will paste all data from the copied object into the target object. This will make the two objects identical, except for the name and the connections. 4 By dragging selected objects to another folder. The 'Drag & Drop' option must be enabled first by double-clicking the 'Drag & Drop: off' message on the data manager's message bar. When the drag & drop option is on, it is possible to copy or move single objects by selecting them and dragging them to another folder. Dragging is done by holding down the left mouse button after an object has been selected and keeping it down while moving the cursor to the target/destination folder, either in the database tree or in the database browser window.

Note

When dragging and dropping a COPY of the object will be made (instead of moving it) if the Ctrl key is held down when releasing the mouse button at the destination folder. To enable the 'Drag & Drop' option double click the 'Drag & Drop' message at the bottom
of the Data Manager window.

11.1.5

The Data Manager Message Bar

The message bar shows the current status and settings of the database manager. Some of the messages are in fact buttons which may be clicked to change the settings. The message bar contains the following messages. "Pause: on/off'' (only in case of an opened input window) shows the status of the message queue in the input window. With pause on, the command interpreter is waiting which makes it possible to create a command queue. The message is a button: double-clicking it will toggle the setting. "N object(s) of M'' shows the number of elements shown in the browser window and the total number of elements in the current folder. "N object(s) Selected: " shows the number of currently selected objects. "Drag & Drop: on/off'' shows the current drag & drop mode. Double clicking this message will toggle the setting.

11.1.6

Additional Features

Most of the data manager functionality is available through the context sensitive menus (right mouse button).
11 - 7

DIgSILENT PowerFactory

The Data Manager

The following items can also be found in the context sensitive menus: Show Reference List (Output... > Reference List) Produces the list of objects that have links, or references (plus the location of the linked object), to the selected object. The list is printed to the output window. In this manner for example, a list of elements that all use the same type can be produced. The listed object names can be double- or right-clicked in the output window to open their edit dialogue.

Select All Mark in Graphic

Selects all objects in the database browser. Marks the highlighted object(s) in the single line graphic. This feature can be used to identify an object. Opens a detailed graphic (displaying all the connections and switches) of the terminal to which the selected component is connected. If the component, is connected to more than one terminal, as might be in the case of lines or other objects, a list of possible terminals is shown first. Opens the folder in the database browser that holds the busbar to which the currently selected element is connected. If the element is connected to more than one busbar, a list of possible busbars is shown first. Opens the folder in the database browser that holds the element that is connected to the currently selected element. In the case of more than one connected element, which is normally the case for busbars, a list of connected elements is shown first. Opens a second menu with several calculations which can be started, based on the currently selected objects. A short-circuit calculation, for example, will be performed with faults positioned at the selected objects, if possible. If more than one possible fault location exists for the currently selected object, which is normally the case for station folders, a short-circuit calculation for all possible fault locations is made.

Show > Station

Goto Busbar

Goto Connected Element

Calculate

Other useful features: Relevant objects for calculations are tagged with a sign (this will only be shown following a calculation). Editing one of these objects will reset the calculation results.

11.2

Defining Network Models with the Data Manager

In this section it is explained how the tools of Data Manager are used to define network models.

11 - 8

DIgSILENT PowerFactory

The Data Manager

11.2.1

Defining New Network Components in the Data Manager

New network components can be directly created in the Data Manager. To do this you have to click on the target grid/expansion stage (right pane) to display its contents in the browser (left pane). Then you have to click on the New Object icon and select the kind of object to create. Alternatively you can directly enter the class name of the new component.

11.2.2

Connecting Network Components in the Data Manager

To connect newly created branch elements to a node, a free cubicle must exist in the target terminal. In the 'Terminal' field (Terminal I and Terminal j for two port elements, etc.) of the edge element you have to click on the ( ) arrow to select (in the data browser that pops up) the cubicle where the connection is going to take place. To create a new cubicle in a terminal you have to open its edit dialogue (double click) and press the Cubicles button (located at the right of the dialogue). A new browser with the existing cubicles will pop up, press the New Object icon ( ) and in the 'Element' field select Cubicle (StaCubic). The edit dialogue of the new cubicle will pop up; by default no internal switches will be generated. If you want a connection between the edge element and the terminal trough a circuit breaker, you have to press the Add Breaker button. After pressing the Ok button the new cubicle will be available to connect new branch elements.

Note:

New users are recommended to create and connect elements directly from the single line graphics. The procedures described above are intended for advanced users.

11.2.3

Defining Substations in the Data Manager

The concept and the application context of substations are presented in Section Substations of Chapter 7.3.2 (Network Topology Handling). A description of the procedure used to define new substations with the data manager is given as follows. For information about working with substations in the graphical editor please refer to Section 10.1 (Defining Network Models with the Graphical Editor). To define a new substation from the Data Manager do the following: Display the content of the grid where you want to create the new substation. Right click on the right pane of the Data Manager and select New --> Substation from the context sensitive menu. The new substation edit dialogue will pop up. There you can change the name, assign running arrangements and visualize/edit the content of the substation (directly after creation it is empty). After pressing Ok the new substation and an associated diagram (with the same name of the substation) will be created. The components of the new substation can be created and connected using the associated single line diagram or using the data manager, the first option is recom11 - 9

DIgSILENT PowerFactory

The Data Manager

mended. For the second option, a data browser with the content of the substation will pop up after pressing the Contents button; there you can use the New Object icon to create the new components. Components of a substation can of course be connected with components of the corresponding grid or even with components of other networks. The connection in the Data Manager is carried out following the same procedure discussed in the previous section. For information about working with substations in the graphical editor please refer to Section 10.1 (Defining Network Models with the Graphical Editor). For information about the definition of Running Arrangements please refer to Section 15.6 (Running Arrangements).

11.2.4

Defining Branches in the Data Manager

The concept and the application context of branches are presented in Section Branches of Chapter 7.3.2 (Network Topology Handling). Next a description of the procedure used to define new branches from within the Data Manager is given. A description about how to define branches from within the diagram is given in Section 10.1 (Defining Network Models with the Graphical Editor). To define a new branch from the Data Manager do the following: Display the content of the grid where you want to create the new substation. Right click on the right pane of the Data Manager and select New --> Branch from the context sensitive menu. The new branch edit dialogue will pop up. There you can define the name of the new branch and a circuit to which the branch belongs. The fields 'Connection 1' and 'Connection 2' define the branch elements that are going to be connected with external elements. Once the user has defined the internal branch elements, he/she can access and change the connecting components (i.e the components referred in 'Connection 1' and 'Connection 2'). After pressing Ok the new branch and an associated diagram (with the same name of the branch) will be created. The components of the new branch can be created and connected using the associated single line diagram or using the data manager, the first option is recommended. For the second option, a data browser with the content of the branch will pop up after pressing the Contents button; there you can use the New Object icon to create the new components. Components of a branch can of course be connected with components of the corresponding grid or even with components of other networks (remember that the maximal number of connections for a branch is 2). The connection in the Data Manager is carried out following the same procedure discussed in Section Connecting Network Components in the Data Manager. Once the external connections of the branch have been established, the user can use the Jump button on the edit dialogue to open the edit dialogue of the grid elements connected to it. For information about working with branches in the graphical editor, please refer to Section 10.1 (Defining Network Models with the Graphical Editor).

11 - 10

DIgSILENT PowerFactory

The Data Manager

11.2.5

Defining Sites in the Data Manager

The concept and the application context of sites are presented in the Section Sites of Chapter 7.3.2 (Network Topology Handling). Next a description of the procedure used to define new sites is given. To define a new site from the Data Manager do the following: Display the content of the grid where you want to create the new site. Right click on the right pane of the Data Manager and select New --> Site from the context sensitive menu. The new Site edit dialogue will pop up. After pressing Ok the new site will be created.

Note:

Advanced users would notice that it is possible to move objects from a grid to a Substation, Branch, Site, etc. and vice versa.

11.2.6

Editing Network Components using the Data Manager

Each component can be individually edited by double clicking on it to open the corresponding dialogue. The class dialogue is composed of several tabs each corresponding to a calculation function of PowerFactory. The parameters required by a determined calculation are always available on the corresponding tab. The description of the network component's models, explaining the relations among the input parameters is given in the technical reference papers attached to the Chapters D and C (only in the online help). It is possible to simultaneously edit components of the same class using the Data Manager. To do this you have to select a component of the class that you want to edit (left click on the component icon) and click on the Detail Mode icon ( part of the Data Manager. ) at the upper

In 'detail' mode, the browser shows all data fields for the selected calculation function data set, which can be selected by clicking on a page tab shown at the bottom of the table view. If a page tab is out of reach, then the page tab scrollers will bring it within the browser window again. The list of objects may be sorted by any column by pressing the title field button. The widths of the data fields can be adjusted by pointing the mouse on the separation line between two title fields and dragging the field border by holding a mouse button down. The data fields can be edited by double-clicking them. As with any Spread Sheet, you can copy and paste individual or multiple cells with Crtl_C and Crtl_V or with right click ' Copy/ Paste. It is also possible to change a parameter field for more than one object simultaneously. The parameter fields which are going to be changed have to be multi-selected first, then you have to right-click the selection and select the option Modify Value(s) from the context sensitive menu. This will open the SetValue dialogue. This dialogue can be used to: Increase or decrease them by multiplication with a scale factor ("Relative''). Increase or decrease them by multiplication with a scale factor with respect to the sum of values selected ("Relative to Sum'').
11 - 11

DIgSILENT PowerFactory

The Data Manager

Set all the selected parameter fields to a new fixed ("absolute'') value.

Note:

It is not possible to simultaneously alter parameter fields from more than one column, i.e. to change nominal currents and nominal frequencies simultaneous, even if they would happen to take the same value or would have to be raised with the same percentage.

For further information please refer to 11.4 (Editing Data Objects in the Data Manager).

11.3

Searching for Objects in the Data Manager

There are three main methods of searching for objects in the data base: Sorting, searching by name and filtering.

11.3.1

Sorting Objects

Objects can be sorted according to various criteria, such as object class, name, rated voltage,..., etc. Sorting according to object class is done using the "Edit Relevant Objects for Calculation" icon on the toolbar ( ). The user may select a particular class of calculation-relevant object (e.g. synchronous machine, terminal, general load, but not graphics, user settings etc.) to be displayed in a browser. Further sorting can be done according to the data listed in a table- either in the data manager or in a browser obtained using the procedure described above. This is done by clicking on the column title. For example, clicking on the column title 'Name' in a data browser sorts the data alphanumerically (A-Z and 1-9). Pressing it again sorts the data ZA, and 9-1. Tabulated data can be sorted by multiple criteria. This is done by clicking on various column titles in a sequence. For example, terminals can be sorted alphanumerically first by name, then by rated voltage and finally by actual voltage by pressing on the titles corresponding to these properties in reverse-sequence (actual voltagerated voltagename). A more detailed example follows: Suppose that you have executed a load flow calculation and that, for each rated voltage level in the network, you want to find the terminal with the highest voltage. These terminals could be identified easily in a table of terminals, sorted first by rated voltage and then by calculated voltage. Proceed as follows:  Perform the load flow calculation.  Select the 'ElmTerm' ( ( ). ) from the 'Edit Relevant Object for Calculation' dialogue

 Include, in the 'Flexible Data' page tab, the terminal voltage and nominal voltage (see 11.5).  In the table ('Flexible Data' page tab), click on the title 'u, Magnitude p.u' to sort all terminals from highest to lowest calculated voltage.  Then click on the title 'Nom.L-L Volt kV' to sort by nominal voltage level.
11 - 12

DIgSILENT PowerFactory

The Data Manager

 Now you will have all terminals first sorted by voltage level and then by rated terminal voltage.

11.3.2

Searching by Name

Searching for an object by name is done either in the right-hand pane of the data manager or in a data browser. To understand the procedure below, notice that the first column contains the symbols of the objects in the table. Clicking on such a symbol selects all columns of that row, i.e. for that object. The procedure is as follows:  Select an object in the table by clicking on any object symbol in the table (if one object was already selected then select a different one).  Now start typing the object name, which is case sensitive. Notice how the selection jumps as you type, For example, typing 'T' moves the selection to the first object whose name starts with T, etc.  Continue typing until the selection matches the object that you are looking for

11.3.3

Using Filters for Search

Advanced filtering capability is provided with the 'Find' function ( ). A filter is normally defined to find a group of objects, rather than individual objects (although the latter is also possible). Advanced search criteria can be defined, e.g. transmission lines with a length in the range 1km to 2.2km, or synchronous machines with a rating greater than 500MW etc. The function is available in both the data manager and a data browser. Clicking on 'Find' in the data manager allows the user to apply a predefined filter or to define a new filter, called 'General filter'. If a new filter is defined, the database folder that will be searched can be defined. Clicking on 'Find' in a data browser allows the user to define a General Filter for objects within the browser. General Filters defined by the user are objects stored in the Changed Settings\ Filters folder. The options in the General Filter dialogue window are now explained with reference to Figure 11.4: Name: Object filter: Name of filter. This field defines either the complete or a part of the search criteria, and is optional. Examples are as follows:

- *.ElmSym: Include element objects of the class synchronous machines. - *.TypSym: Include type objects of the class synchronous machines. - Lahney.*: Include all objects with the name Lahney. - Lahney.Elm*: Include all element objects with the name Lahney. - D*.ElmLod: Include all load element objects whose names start with D. - A drop down list providing various object classes can be accessed with ( ).
11 - 13

DIgSILENT PowerFactory

The Data Manager

Look in:

This field is available if a filter id defined within the data manager. It allows the user to specify the folder in the database that will be searched.

Check boxes: - Include Subfolders will search the root folder specified as well as the subfolders in the root folder. The search can be stopped at the matching folder. - Relevant Objects for Calculation will include only those objects considered by the active study case (if no study case is active the search is meaningless and no search results will be returned). - Area Interconnecting Branches will search for branch elements that interconnect grids.

Fig. 11.4:

General Filter dialogue

The OK button will close the search dialogue, but save the filter object to the Changed Settings\Filters folder. This makes it available for further use. The CANCEL button will close the dialogue without saving the changes. This button is useful if a search criterion (filter) will only be used once.The APPLY button starts the actual search. It will scan the relevant folders and will build a list of all objects that match the search criteria. Once the search is complete a list of results is returned in the form of a new data browser window. From this browser, the returned objects can be marked, changed, deleted, copied, moved, etc... Advanced search options allow more sophisticated expressions as search criteria. These are specified in the "Advanced" tab of the General Filter dialogue (Figure 11.5). The filter criterion is defined in terms of a logical expression, making use of parameter names. Objects will be included in the data browser if, for their parameters, the logical expression is determined to be true. An example of a logical expression is 'dline>0.7'. The variable dline refers to the length of a transmission line, and the effect of such a filter criterion is to limit the data in the browser to transmission lines having a length exceeding 0.7 km. The logical expressions can be expanded to include other relations (e.g. >=), standard functions (e.g. sin()), and logical operators (e.g. .and.).

11 - 14

DIgSILENT PowerFactory

The Data Manager

Note

Parameter names can be object properties or results. The parameter names for object properties are found, for example, by letting the mouse pointer hover over an input field in an object's dialogue window. Parameter names for result variables are found from variable sets, which are described in Chapter 19 (Defining Variable Sets).

Fig. 11.5:

Filter dialogue - Advanced

"Search Literally" is used to search for user defined strings 'inside' parameter fields. For example, perhaps the comment 'damaged but serviceable' has been entered for some elements in the network. This may be searched for as shown in Figure 11.6. All parameter fields will be searched for this string.

Fig. 11.6:

Searching literally

As stated before, the objects matching the filter criteria are displayed in a data browser. They may also be highlighted in the graphic using the 'Color representation' function described in 10.5.5. The color to be used in this case can be specified under the tab 'Graphic' of the General Filter dialogue window.

11 - 15

DIgSILENT PowerFactory

The Data Manager

Note

New a filters are saved to the Project \Changed Settings \Filters folder in the project and are available for use directly, using the right mouse menu. If a search is to be performed in a particular grid simply proceed as follows: right-click the grid folder > Find > Local Filters > Filter Name (e.g. Lines longer than 700m). Remember to press the "Apply" button to perform the search. If you unchecked the "Show Filter Settings before Application" box under "User Settings">"General" then the filter will be applied as soon as it is selected from the menu. This is useful when you have already defined several filters for regular use.

11.4

Editing Data Objects in the Data Manager

The database manager (or Data Manager) offers several ways to edit power system components and other objects stored in the database, regardless they appear graphically or not. The basic method is to double-click the object icons in the database browser. This will open the same edit dialogue window obtained, when double clicking the graphical representation of an element in the graphic window.

Fig. 11.7:

Full size edit window appearing after double-clicking the object icon in the data manager

An open edit dialogue will disable the data manager window from which it was opened. The edit dialogue has to be closed first in order to open another edit dialogue. However, it is possible to activate more than one data manager (by pressing the icon on the main toolbar) and to open an edit dialogue from each of these data managers. This can be useful for comparing objects and parameters. Using the edit dialogues (Figure 11.7) has one major drawback: it separates the edited object from the rest of the database, making it impossible to copy data from one object to the other, or to look at other object parameter values while editing.

PowerFactory brings the big picture back in sight by offering full scale editing capabilities in the data managers browser window itself. The browser window in fact acts like a
11 - 16

DIgSILENT PowerFactory

The Data Manager

spreadsheet, where the user can edit and browse the data at the same time. The browser window has two modes in which objects can be edited, Object mode Detail Mode which are described in the following sections.

11.4.1

Editing in Object Mode

In the general case the icon, the name, the type and the modification date (with its autor) of the objects are shown in the 'object' mode (see Figure 11.8). Certain objects, for example network components, show additional fields like the ''Out of Service'' field.

Fig. 11.8:

The browser window in 'object' mode

The title buttons are used to sort the entries in the browser. The visible data fields can be double-clicked to edit their contents, or the F2 button can be pressed. The object will show a triangle in its icon when it is being edited. After the data field has been changed, move to the other fields of the same object using the arrow-keys or by clicking on these data fields, and alter them too. The new contents of a data field are confirmed by pressing the Return key, or by moving to another field within the same object. The triangle in the icon will change to a small star to show that the object has been altered. The object itself however has not been updated. Updating the changes is done by pressing Return again, or by moving to another object in the browser. By default, PowerFactory will ask to confirm the changes. See Section 6.3 (Data Manager Settings) to disable these conformation messages.

11.4.2

Editing in "Detail'' Mode

If the icon on the browse window of the data manager is pressed, the browser changes to 'detail' mode (see Figure 11.9). It will display only the objects from the same class as the one which was selected when the button was pressed. In the example of Figure 11.9, this is a load object (ElmLod). The used to engage detail mode. icon or a filter (11.3.3) may also be

11 - 17

DIgSILENT PowerFactory

The Data Manager

Fig. 11.9:

The browser window in 'detail' mode

In 'detail' mode, the browser shows all data fields for the selected calculation function data set, which can be selected by clicking on a page tab shown at the bottom of the table view.If a page tab is out of reach, then the page tab scrollers will bring it within the browser window again. The list of objects may be sorted by any column by pressing the title field button. The widths of the data fields can be adjusted by pointing the mouse on the separation line between two title fields and dragging the field border by holding a mouse button down. As with the browser in 'object' mode, the data fields can be edited by double-clicking them. In the example the active power settings are being edited, but from the star in the object icon it is clear that another field of the same object has been edited too, but not confirmed, because this star would otherwise be a triangle. It is possible to change a parameter field for more than one object simultaneously. This is, for instance, useful to raise a certain limit for a range of objects, in order to get a better load-flow result i.e. by alleviating line overloads. An example is shown in Figure 11.10 where the nominal current for a range of lines is changed at once.

Fig. 11.10:
11 - 18

Modify values dialogue

DIgSILENT PowerFactory

The Data Manager

Fig. 11.11:

Modify values dialogue

The parameter fields which have to be changed have to be multi-selected first. Rightclicking the selection will pop up a case sensitive menu from which the Modify Value(s) option opens the SetValue dialogue, see Figure 11.11. This dialogue can be used to: increase or decrease them by multiplication with a scale factor ("Relative''). increase or decrease them by multiplication with a scale factor with respect to the sum of values selected ("Relative to Sum''). Set all the selected parameter fields to a new fixed ("absolute'') value. It is not possible to simultaneously alter parameter fields from more than one column, i.e. to change nominal currents and nominal frequencies simultaneous, even if they would happen to take the same value or would have to be raised with the same percentage.

11.4.3

Copy and Paste while Editing

One of the great advantages of editing data fields in the data manager's browser window is the possibility to copy data from one object to another. This is done by selecting one or more objects or object fields, copying this selection to the clipboard, and pasting the data back in another place. To copy one or more objects, 1 Open the Data Manager and select the grid folder where you find the objects to be copied. Please do not open the icon for the Objects relevant for the calculation as this is a filter view collecting objects stored at various locations. 2 3 4 Select them (see Figure 11.12). Press Ctrl-C to copy or use the icon on the data manager toolbox. ,

Press Ctrl-V to paste or use the icon on the data manager toolbox. The objects will be copied with all the data. Their names will automatically be altered to unique names (see Figure 11.13).

11 - 19

DIgSILENT PowerFactory

The Data Manager

Fig. 11.12:

Copying an object in the browser

Fig. 11.13:

Result of copying the object

Copying data fields from one object to another is done just like for any spreadsheet software you may be familiar with. To copy one or more data fields, 1 2 3 4 Select them by clicking them once. Select more data fields by holding down the Ctrl key. Copy the fields to the clipboard by pressing Ctrl-C or the icon.

Select one or more target objects data fields. If more than one field was copied, make sure that the target field is the same as the first copied data field. Press Ctrl-V or the target objects. icon. The contents of the data fields will be copied to the

11.5

The Flexible Data Page Tab in the Data Manager

The data browser (this will be seen in the data manager when the 'Detail Mode' has been engaged) has page tabs for all calculation functions. These tabs are used to view or edit object parameters which are categorized according to a calculation function and have a fixed format. The 'Flexible Data' tab, normally used to display calculation results, allows the user to define a custom set of data to be displayed. The default format for the calculation results displayed in the flexible page depends on the calculation performed: Following a load-flow calculation, the default variables for terminals are line-to-line voltage, per unit voltage and voltage angle. Following a shortcircuit calculation the default variables are initial short-circuit current, initial short-circuit power, peak current etc. Figure 11.14 shows an example of the flexible data page tab.

11 - 20

DIgSILENT PowerFactory

The Data Manager

Fig. 11.14:

The Flexible Data page tab

11.5.1

Customizing the Flexible Data Page

The displayed variables are organized in 'Variables Sets' that are, in turn, organized according to the calculation functions. For example, an object class ElmTr2 (two-winding transformer) has a variable set for symmetrical load flow calculation, a variable set for short-circuit calculation etc. There may also be more than one variable set for any calculation function. For example, the object ElmTr2 may have two variable sets for symmetrical load flow calculation. The Flexible Page Selector allows the user to specify the variable set to use, or to define new variable sets. Furthermore, the Flexible Page Selector allows the user to access and edit the variable sets, i.e. to specify which variables to display in the Flexible Data page. The 'Flexible Page Selector' dialogue is shown in Figure 11.15. This dialogue is opened by pressing the ( ) icon on the data manager toolbar. The Flexible Page Selector has tabs for the different calculation functions. It opens with the tab corresponding to the most recent calculation. Pressing the button next to the field 'Variables' allows the user to select a Variable Set or to generate a new Variable Set. If a new Variable Set is generated, the edit dialogue of Figure 19.1 pops up. The edit dialogue of the selected Variable Set pops up if the button next to 'Variables' is pressed. The selection of variables within Variable Sets is presented in detail in Chapter 19 (Defining Variable Sets).

Note:

Variable Sets are objects of class IntMon, within PowerFactory they have multiple uses. This section only presents their use in conjunction with Flexible Data. For further information please refer to Chapter 19 (Defining Variable Sets).

11 - 21

DIgSILENT PowerFactory

The Data Manager

Fig. 11.15:

The Flexible Page Selector

11.6

The Input Window in the Data Manager

The input window is for the more experienced users of DIgSILENT PowerFactory. It is closed by default. Almost all commands that are available in PowerFactory through the menu bars, pop-up menus, icons, buttons, etc., may also be entered directly into the input window, using the PowerFactory commands. The contents of the input window can be saved to file, and commands can be read back into the window for execution.

PowerFactory also has special command objects which carry one single command line
and which are normally used to execute commands. In this way, complex commands can be saved in the same folder as the power system for which they were configured.

11.6.1

Input Window Commands

In principle, everything that can be done in DIgSILENT PowerFactory, can be done from the command line in the input window. This includes creating objects, setting parameters, performing load-flow or short-circuit calculations. Some commands that are available are typically meant for command line use or for batch commands. These commands are rarely used in another context and are therefore listed here as "command line commands'', although they do not principally differ from any other command. Cd Command Moves around in the database tree by opening another folder at a relative position from the currently open folder.

Example:
cd...\gridB\Load1

Cl Command

Stops the redirection of the output window to either a file or to a printer. All following messages will again be shown only in the output window. stops redirection to a file stops redirection to a printer

cl/out cl/prn
11 - 22

DIgSILENT PowerFactory

The Data Manager

Cls Command cls/out cls/inp cls/inp/done .../y Dir Command Example:

Clears the output or input window. clears output window clears input window completely clears only previously executed commands asks for confirmation Displays the contents of a folder.

dir Study Case

Ed Command Example:
ed ldf

Pops up the dialogue of a default command, i.e. "ldf'', "shc'', etc.

Exit Command Man Command Example:

Exits the program immediately without further confirmation. Queries or sets a variable.

man/set obj=Load_1.elmlod variable=plini value=0.2

Op CommandC Example:

Redirects output to either a file or a printer.

op/out f=train3.out

Pause Command Interrupts the execution of the command pipe until a next pause command is executed. Pr Command Prints either the contents of the output window or the currently active graphics window. Opens and reads a file.

Rd Command

Stop Command Stops the running calculation. Sys Command Wr Command Executes a dos command. Writes to a file.

11.7

Save and Restore Parts of the Database


). This will bring a 'File Save' dialogue where a filename must be
11 - 23

A selected part of the database can be written to a "DZ'' Import/Export file with the button

Export Data... (

DIgSILENT PowerFactory

The Data Manager

specified. Alternatively, the folder or object that is to be exported can be right-clicked in the database tree, after which the option Export... is selected. The exported part of the database may be a complete project, a library, or a specific object in the browser window. Exporting a folder (i.e a project, grid, library, etc.) will export the complete content of that folder, inclusive subfolders, models, settings, single line graphics, etc. It is even possible to export a complete user account. However, only the administrator is able to import an user-account. Exporting the user-account on a regular basis is a practical way to backup your data. It is even possible to export data from another user account, or even to export another user-account completely. However, only the shared, visible, data will be exported. The exported data file can be imported into the database again in any desired folder by pressing the Import Data... ( ) button. This will bring a 'File Open' dialogue where the "DZ'' data-file can be selected. The "DZ''-file will be analyzed and error messages will be displayed when the file is not a genuine PowerFactory data file, or if it is corrupted. If the file format has been found to be correct, a dialogue will appear which shows the data and version of the file. The default target folder is shown also, which is the original folder of the saved data. If this is not desired, another target folder can be selected by pressing the Drop Down button. This button will bring a small version of the database tree. A new target folder can be selected from this tree.

11.7.1

Notes

By exporting a folder from the database, only the information in that folder and all its subfolders will be stored. If the exported objects use information (e.g. power system types like line or transformer types) that is saved somewhere else, then that information will not be stored. Make sure that the used power system types and all other referenced information is exported too. When importing a file that contains objects which use data outside the import-file, a search for that data is started. For instance, assume a project is exported. One of the line-models uses a type from a library outside the project. When exporting, the path and name of this type is written in the export-file, but the type itself is not exported, as is does not reside in the exported project. At importing, the stored path and name of the 'external' type is used to find the type again and to restore the link. However, if the 'external' type is not found, then it will be created, using the stored path and name. Of course, the created object has default data, as the original data was not exported. Additionally, an error message is written to the output window. Suppose that you are working with a large library, which is stored in a special useraccount to make it read-only. The library is made accessible by sharing it to all users. When export the projects, the objects from the external library are not exported. However, a colleague which has access to the same library may still import your projects without problems. The external objects used in your projects will be found in the same
11 - 24

DIgSILENT PowerFactory

The Data Manager

location, and the links to these objects will be correctly restored.

11.8

Spreadsheet Format Data Import/Export

The PowerFactory data browser in the data manager's window looks and acts like a spreadsheet program as far as creating and editing power system objects is concerned. To enable and simplify the use of power system element data which is stored in spreadsheet programs such as the Microsoft Excel or the Lotus 123 programs, the data browser offers 'Spreadsheet Format' import and export facilities.

11.8.1

Export to Spreadsheet Programs (e. g. MS EXCEL)

All data visible in the data browser may be exported as it is. The export format is such that most common spreadsheet programs can read in the data directly (space separated ASCII). Exporting data is performed as follows. Select a range of data in the data browser. Such a range may contain more than one column and more than one row. Right-click the selected range. Now you have different options: - If you want to copy the content of the marked cells only, simply select Copy from the context-sensitive menu. - If you want to copy the content of the marked cells together with a description header, select the Spread Sheet Format option. This opens a second menu which offers the choice between writing the Spreadsheet export to a file (Write to File), or to put it on the Windows Clipboard (Copy (with column headers)). See Figure 11.16. The exported data can now be imported into a Spreadsheet program. When the Clipboard was used, using the Paste option of the spreadsheet program or pressing Ctrl-V will Paste the data into the spreadsheet. The imported data may now be edited, or additional calculations may be made. The PowerFactory data is imported as numbers and descriptions. The example in Figure 11.17 calculates a mean value from a range of line loading percentages.

Fig. 11.16:

Exporting a range of data

11 - 25

DIgSILENT PowerFactory

The Data Manager

Fig. 11.17:

Imported data in a spreadsheet program

11.8.2

Import from Spreadsheet Programs (e. g. MS EXCEL)

There are two methods available for importing data from a spreadsheet program. The first method uses a direct import of 'anonymous' numerical data, i. e. of the values stored in the cells of the table. This method is used to change parameter of existing objects by importing columns of parameter values. The second method can be used to create new objects (or replace whole objects) by importing all the data from a spreadsheet. Any range of parameter values can be copied from a spreadsheet program and imported into the database manager. The import is performed by overwriting existing parameter values by 'anonymous' values. The term 'anonymous' expresses the fact that the imported data has no parameter description. The size of the imported value range and the required data are tested. Importing invalid values (i.e. a power factor of 1.56) will result in an error message.

Spreadsheet Import of Values


The import of values (anonymous variables), i. e. cells of a table, is explained by the following example. In Figure 11.18, a range of active and reactive power values is copied in a spreadsheet program. In Figure 11.19, this range is pasted to the corresponding fields of 6 load objects by right-clicking the upper left most field which is to be overwritten. The result of this action is shown in Figure 11.20. In contrast to the import of whole objects, the anonymous import of data does not need a parameter description. This would complicate the import of complete objects, as the user would have to enter all parameters in the correct order.

11 - 26

DIgSILENT PowerFactory

The Data Manager

Fig. 11.18:

Copying a range of spreadsheet data

Fig. 11.19:

Pasting spreadsheet data from clipboard

Fig. 11.20:

Database browser with imported data

Spreadsheet Import of Objects and Parameters


With this kind of import, it is possible to import whole objects (in contrast to the import of pure values, which is described above). The object import uses a header line with the parameter names (which is necessary in addition to the cells with the pure values). This header must have the following structure: The first header must be the class name of the listed objects. The following headers must state a correct parameter name. This is shown in Figure 11.21.

11 - 27

DIgSILENT PowerFactory

The Data Manager

Fig. 11.21:

Excel required format

Figure 11.22 shows an example of valid spreadsheet data of some line types and some 2-winding transformer types.

Fig. 11.22:

Example of valid spreadsheet data

The import of the spreadsheet data into PowerFactory is performed as follows. Select the header line and one or more objects lines. Copy the selection. See Figure 11.23 for example. Right-click the folder browser in the database manager to which the objects are to be imported. Select 'Spread Sheet Format > Import Objects from Clipboard '. See Figure 11.24 for example.

Fig. 11.23:

Selecting object data in spreadsheet

11 - 28

DIgSILENT PowerFactory

The Data Manager

Fig. 11.24:

Importing objects from clipboard

The result of the object import depend on whether or not objects of the imported class and with the imported names already exist or not in the database folder. In the example of Figure 11.25, none of the imported objects existed in the database an all were created new therefore. The example shows the database in detail mode.

Fig. 11.25:

Result of spreadsheet object import

Note

New objects are created in the PowerFactory database folder only when no object of the imported class and with the imported name is found in that folder. If such an object is found then its data will be overwritten by the imported data

Because new objects are only created when they do not exist already, and only the imported parameters are overwritten when the object did exists already, the import is always a save action. Remarks Object Names Object names may not contain any of the characters *?=",\~|

11 - 29

DIgSILENT PowerFactory

The Data Manager

Default Data

When an imported object is created newly, the imported data is used to overwrite the corresponding default data. All parameters that are not imported will keep their default value. The spreadsheet values are imported without units. No conversion from MW to kW, for example, will be possible. All spreadsheet values therefore have to be in the same units as used by PowerFactory.

Units

11 - 30

DIgSILENT PowerFactory

Grouping Objects

Chapter 12 Grouping Objects

In Section 7.3.3, the concept and the application context of the objects that can be defined in PowerFactory to group network components were introduced. In this section the definition, management and functionality of these objects is discussed.

12.1

Areas

To define a new area: Multi select the components belonging to the new area (in the Data Manager or in a single line diagram). Right click on the selection and select Define --> Area from the context sensitive menu. After the area has been defined, terminals can be added to it by selecting Add to...--> Area in their context sensitive menu. In the edit dialogue of the new area you must select a color to represent the area in the single line diagrams. Using the Edit Elements button you can have access to all the element belonging to that area in a data browser, then you can edit them. The Mark in Graphic button may be used to locate the components of an Area in a single line diagram.

Note:

Areas that are created/deleted when a recording expansion stage is active; become available/not available only if the corresponding variation is active and the expansion stage activation time is earlier than the current study time.

For information about the color representation in the single line graphic please refer to 10.5.5 (Color Representation).

12.2

Virtual Power Plants

As explained in Section "Virtual Power Plants" from Chapter 7 (The PowerFactory Data Model), Virtual Power Plants are used to group generators of the defined network model in such a way that the total dispatched active power is set to a target value. The dispatch of each generator (variable pgini available on the 'Load Flow' tab of the generators dialogue) is scaled according to the Virtual Power Plant rules (must run, merit of order, etc., as described below), in order to achieve the total target value. Virtual Power Plant objects (ElmBmu) are stored inside the 'Virtual Power Plants' folder
12 - 1

DIgSILENT PowerFactory

Grouping Objects

within the Network Data directory.

12.2.1

Defining and Editing a New Virtual Power Plant

A new Virtual Power Plant is created by: Multi selecting in a single line diagram or in a data browser an initial set of generators to be included in the Virtual Power Plant; Then pressing the right mouse button and selecting Define --> Virtual Power Plant from the context sensitive menu.

Fig. 12.1:

Defining a Virtual Power Plant

Alternatively you can create a new empty Virtual Power Plant by using the Data Manager: Open a data manager. Find the Virtual Power Plant folder ( ) and click on it. ).

Press the icon for defining new objects ( select "Others".

Then select "Virtual Power Plant (ElmBmu)" in the list box. Assign a suitable name to the Virtual Power Plant. Press OK. The rules which determine the dispatch of the selected generators are set in the Virtual Power Plant dialogue. The total active power to be dispatched is set in the field 'Active Power'. The dispatch of the belonging generators (variable pgini from the Load Flow tab
12 - 2

DIgSILENT PowerFactory

Grouping Objects

of the generator) is set by pressing the Apply button. If the 'Maximal active power sum' of the included generators (sum of the maximal active power operational limit of the generators) is smaller than the active power to be dispatched, an error message pops up. Otherwise the dispatch is set according the user defined 'Distribution Mode': According to merit order Distribution of the dispatched active power is done according to the priorities given to each generator in the Merit Order column of the 'Machines' table (this value can also be set in the Optimization tab of the generators dialogue). Lower values have higher priority. Generators with the option 'Must Run' checked are dispatched even if they have low priority (high value). It is assumed that the merit of order of all generators in the Virtual Power Plant is different. If not an error message appears after the 'Apply' button is pressed. According to script The rules for the dispatch are set in user defined DPL scripts, which are stored inside Virtual Power Plant object. To create new scripts or to edit the existing ones you must open a data browser with the 'Scripts' button.

Note:

The Virtual Power Plant active power is part of the operation scenario subsets and therefore is stored in the active operation scenario (if available). The active power is stored in the active expansion stage (if available) if no active operation scenario is active. Virtual Power Plants that are created/deleted when a recording expansion stage is active; become available/non available only if the corresponding variation is active and the expansion stage activation time is earlier than the current study time.

12.2.2

Applying a Virtual Power Plant

Check that the active power set for the Virtual Power Plant is less than or equal to the maximum power. Press the Apply button.

12.2.3

Inserting a Generator into a Virtual Power Plant and Defining its Virtual Power Plant Properties

Generators are added to an existing Virtual Power Plant by adding a reference in the 'Optimization' tab of their edit dialogue. Notice that a generator can belong to at most one Virtual Power Plant. Define the Merit Order and must run properties as required. You also can add a generator to a Virtual Power Plant by clicking with the right mouse button on the element in the network graphic and choose Add to -> Virtual Power Plant from the context sensitive menu.

12 - 3

DIgSILENT PowerFactory

Grouping Objects

Fig. 12.2:

Virtual Power Plant

12.3

Boundaries

As explained in the Section Boundaries of Chapter 7.3.3 (Network Data), Boundaries are objects used to define internal regions that later may be reduced by means of the Network Reduction function of PowerFactory. Boundaries themselves are defined by a user selected set of cubicles, the terminals connected to them and a selected orientation. The cubicles in the boundary element define a cut through the network, that together with the orientations are used to define the corresponding "Interior Region". Topologically, the interior region is found searching through the network starting at each selected cubicles towards the given direction. The topological search continues until either an open switch or a cubicle that is part of the boundary list is found. Any open switch that is found by this search is considered to be part of the interior region. To define a new Boundary:
12 - 4

DIgSILENT PowerFactory

Grouping Objects

Multi select a set of cubicles and terminals in the single line diagram, which will define the boundary. For doing this: freeze (!) the network diagram and click on the corresponding ends of lines, transformers etc., and on one busbar to define the orientation of the boundary. Then click with the right mouse button on the selection. Choose in the context sensitive menu Define --> Boundary. The dialogue of the new Boundary will pop up. By pressing OK the new Boundary object is created in the Boundaries folder of the Network Model. To add cubicles to an existing Boundary: In the Boundary dialogue, right click on the table (on the number of a row) that lists the included cubicles. Select Insert rows, Append rows or Append n rows from the context sensitive menu. Double click on the Boundary Points cell of the new line. Select the target cubicle using the data browser that pops up. After selecting the desired cubicle, the terminal and the branch element connected to it are added to the 'Terminal' and 'Components' cells on the table. By default the 'Orientation' (direction used to determine the interior region) is set to the branch; you can change it in order to direct the definition of the internal region to the connected terminal. Cubicles can be retired from a Boundary by selecting 'Delete rows' from the context sensitive menu of the table in the element dialogue. The selected color at the bottom of the dialogue is used to represent the boundary in the single line diagrams ( following criteria: ). Each element in the graphic is colored according to the

If it uniquely belongs to one interior region of a boundary to be drawn, its color will be assigned to that specific boundary color. If it belongs to exactly two of the interior regions of the boundaries to be drawn, its will be represented with dashed lines in the specific boundary colors. If it belongs to exactly more than two of the interior regions of the boundaries to be drawn, its will be represented with dashed lines in black and the color selected for multiple intersections. The Edit Interior Elements button can be used to list in a data browser all the components included in the internal region. The Mark Interior Region button marks all the components of the interior region in the selected network diagram. Topological changes in the network that affect the defined interior regions are automatically detected by the program.

Note

Boundaries that are created or deleted when a recording expansion stage is active; become available/not available only if the corresponding variation is active and the expansion stage activation time is earlier than the current study time.

12 - 5

DIgSILENT PowerFactory

Grouping Objects

12.4

Circuits

To create a new Circuit: In the Data Manager open the Circuits folder from the Network Model. Click on the New Object icon. The edit dialogue of the new Circuit pops up. Give a name to the new object and press Ok. Branches are added to a circuit using the pointer from the 'Circuit' field of the branch dialogue. The button Branches in the Circuit dialogue opens a data browser listing the branches that refer to that circuit.

Note:

Circuits that are created or deleted when a recording expansion stage is active; become available/not available only if the corresponding variation is active and the expansion stage activation time is earlier than the current study time.

12.5

Feeders

The concept and application context of feeders (ElmFeeder) was presented in Section (Feeders) from Chapter 5. In this section the aspects related with their definition and functionality are discussed. A new feeder is created by right-clicking on a cubicle (that is, when the cursor is held just above the breaker in the single line diagram) and selecting Define -> Feeder.... Once the option Feeder has been selected, the Feeder dialog pops up. There you can define the desired options for the new object. After pressing Ok, the new Feeder is stored in the Feeders folder of the Network Model. Any existing Feeder can be edited using its dialogue (double click the target Feeder on a data browser). The Feeder dialogue presents the following fields: Name Cubicle Is a reference to the cubicle where the Feeder was created. It is automatically set by the program once the Feeder is created. Reference to the Zone (if any) to which the feeder belongs. A Feeder is assigned to the zone of the local busbar/terminal. Sets the color be used when the Feeder Definitions coloring mode ( ) is engaged in the single line diagram.

Zone

Color

Terminate feeder when A feeder will, by default, terminate when a higher voltage level is encountered, however, this may not always be desirous. This may be prevented by un-checking this option. The feeder will now continue 'past' a higher voltage level and may be terminated at a user defined cubicle if desired. To manually terminate a feeder right-click a branch
12 - 6

DIgSILENT PowerFactory

Grouping Objects

element above the breaker (to select the desired cubicle where the feeder is going to end) and select Edit Cubicle. The dialogue of the cubicle dialogue will be presented, and the 'Terminate feeder at this point' option may be checked. Orientation The user may select the direction towards the feeder is defined. 'Branch' means that the feeder starts at the cubicle and continues in the direction of the connected branch element. 'Busbar' means that the Feeder is defined in the direction of the connected Terminal. In any system some loads values may be accurately known whilst others are estimated. It is likely that measurement points exist for feeders in the system as well, and thus the power that is drawn through this feeder is also known. The load scaling tool assists the user in adjusting these estimated load values by scaling them to match a known feeder power or current that has been measured in the real system. More information about the use of the Load Scaling Function is given below. The Mark in Graphic button may be used to select all the elements of a Feeder in the desired single line diagram. The Edit button is used to list all the elements belonging to a Feeder in a data browser. To use the Load Scaling tool first define which loads may be scaled by enabling the 'Adjusted by Load Scaling' option on the Load-Flow tab of the load dialogue. All of the loads in a feeder may also be quickly viewed by editing the feeder from the feeders folder. Load scaling is now performed by the load-flow calculation function when: At least one feeder is defined with load scaling according to a current or power. The option 'Feeder Load Scaling' is enabled in the load-flow command dialog (basic options). At least one load exists in the feeder area for which - A change in operating point affects the load-flow at the feeder position - The option 'Adjusted by Load Scaling' has been enabled. The load-flow calculation will then adjust the scaling of all adjustable loads in the feeder areas in such a way that the load-flow at the feeder equals the current or power setpoint. The feeder setpoint is influenced by the zone scaling. This means that the current or power flow as calculated by the load-flow could differ from the setpoint in the feeder dialog when the busbar where the feeder is defined is part of a zone. For instance, a feeder has a setpoint of 1.22 MVA. The busbar is in a zone and the zonescale is set to 0.50. The flow at the feeder position will thus be 0.61 MVA.

Load Scaling

Elements

12 - 7

DIgSILENT PowerFactory

Grouping Objects

Note:

The Load Scaling options are part of the operation scenario subsets; therefore they are stored in the active operation scenario (if available). The Load Scaling options are stored in the active expansion stage (if available) if no active operation scenario is active. feeders that are created or deleted when a recording expansion stage is active; become available/not available only if the corresponding Variation is active and the expansion stage activation time is earlier than the current study time.

12.6

Network Operators

To create a new operator: In the Data Manager open the Operators folder from the Network Model. Click on the 'New Object' icon. The edit dialogue of the new operator pops up: - Give a name to the new object. - Select a color to represent the operator se in the corresponding coloring mode of the single line diagram- Press Ok. Network elements (class name Elm*) such as terminals, switches, lines, generators, transformers, relays or composite models (ElmComp), Substations (ElmSubstat) and Branches (ElmBranch) can be assigned to an operator by means of the reference 'Operator' from the Description tab of their dialogue.

Note:

Operators that are created or deleted when a recording expansion stage is active; become available/not available only if the corresponding variation is active and the expansion stage activation time is earlier than the current study time

12.7

Network Owners

Owners are created on the Owners folder of the Network Model, following the same procedure described for operators. Network elements (class name Elm*) such as terminals, switches, lines, generators, transformers, relays or composite models (ElmComp), Substations (ElmSubstat) and Branches (ElmBranch) can be assigned to an operator by means of the reference 'Operator' from the Description tab of their dialogue.

Note:

Operators that are created or deleted when a recording expansion stage is active; become available/not available only if the corresponding variation is active and the expansion stage activation time is earlier than the current study time

12 - 8

DIgSILENT PowerFactory

Grouping Objects

12.8

Paths

To create a new Path: In a single line diagram select a chain of two or more terminals and their interconnecting objects. Right click on the selection. Select the option Path --> New from the context sensitive menu. The dialogue of the new path pops up, give a name and select the desired color for the corresponding color representation mode in the single line diagram. The references to the objects defining the Path (First/Last Busbar First/Last Branch) are automatically created by the program, according to the selection. After pressing Ok the new path is stored in the Paths folder of the Network Model. By using the Elements button of the Path dialogue you can have access to all the element belonging to the path in a data browser, there you can edit them. The Select button may be used to locate the components of the path in a single line diagram. With the Toggle button you can invert the order of the objects limiting the path (First/Last Busbar First/ Last Branch). This order is relevant when evaluating directional protective devises. New objects can be added to a path by marking them in a single line diagram (including one end of the target path and a busbar as the new end) right clicking and selecting Path --> Add to from the context sensitive menu. Objects can be removed from a Path (regarding that the end object of a Path must be always a busbar) by marking them in the single line diagram, right clicking and selecting Path --> Remove Partly from the context sensitive menu. The Remove option of the Path context sensitive menu will remove the firstly found path definition of which at least one of the selected objects is a member As explained in Chapter 5, the functionality of this objects is related to the protection functions of PowerFactory, for further information on the use of Paths please refer to Chapter 32 (Protection).

Note:

Paths that are created or deleted when a recording expansion stage is active; become available/not available only if the corresponding variation is active and the expansion stage activation time is earlier than the current study time

12.9

Zones

Elements in a system may be allocated to a zone and the graphic may be colored to show these zones. All of the loads may be quickly scaled in a zone and the elements of a zone may be listed in a browser format for gang editing. Zones are created by multi-selecting elements, right-clicking and choosing Define --> Zone... from the context sensitive menu. The option Add to --> Zone... can be selected when a zone(s) have already been defined.

12 - 9

DIgSILENT PowerFactory

Grouping Objects

12 - 10

DIgSILENT PowerFactory

Study Cases

Chapter 13 Study Cases

Study Cases (IntCase, ) define the studies to be performed in the modeled system. They store all the definitions created by the user to perform calculations, allowing the easy reproduction of results even after the deactivation of the project. By means of the objects stored inside them objects the program recognizes: The parts of the network model (grids and expansion stages) to be consider for calculation. The calculations (and their settings) to be performed over the selected parts of the network. The study time. The active variations. The active operation scenario. The calculation results to be stored for reporting. The graphics to be displayed during the study. A study case with a reference to at least one grid or expansion stage has to be activated in order to enable calculations. A project that contains more than one grid, which has several expansion stages for design alternatives, or which uses different operation scenarios to model the various conditions under which the system should operate, requires multiple study cases. All the study cases of a project are stored inside the 'Study Cases' folder ( ) in the project directory.

Note:

Only one study case can be active. When activating a study case, all the grids, variations and operation scenarios that it refers become active.

Without study cases, it would be necessary to manually activate the correct grid and/or expansion stage over and over again in order to analyze the resulting power system configuration. Similarly, it would be necessary to define over and over again the same calculation command setup used to analyze the behavior of the selected network. Besides storing the objects that define a network study, study case objects set the output units for the performed calculations and allow the definition of certain calculation options for the solving algorithms. The following subsections describe the main objects stored inside the study cases, as mentioned before they are used to define the network studies. For information about defining and working with study cases please refer to Section 13.1 (Creating and Using Study Cases).

13 - 1

DIgSILENT PowerFactory

Study Cases

13.1

Creating and Using Study Cases

The Study Cases were introduced in Section 7.2.4 (Study Cases), following are the instructions on how to create, edit and activate them. When a new project is created, a new empty study case is automatically generated and activated. The new study case is assigned the default settings of PowerFactory. The user can later edit them using the study case dialogue (Figure 13.2). The user may define several study cases to facilitate the analysis of projects containing more than one grid, several expansion stages, different operation scenarios or simply different calculation options. To create a new study case: Open the Data Manager and go to the Study Cases folder. Right-click the folder and select New --> Study Case from the context sensitive menu. Enter the name of the new case in the dialogue that pos up (Figure 13.2) and edit (if required) the default settings. Only one study case can be active at any time. To (de)activate a study case: Open the Data Manager. The active study case and the folder(s) where it is stored are highlighted. Right-click on the active study case and choose Deactivate from the context sensitive menu. To activate a dormant study case place the cursor on its name, right-click and choose Activate. Study cases may also be activated by simply choosing the required study case from the drop down 'Current Study Case' window, found on the right side of the upper tool bar (Figure 13.1).

Fig. 13.1:

Activating a study case from the main toolbar

A study case can have more than one grid. Only the objects in the active grids will be regarded in the calculations. To add an existing grid to the active study case: Open the data manager and go to the Network Data folder. Right-click the grid you want to add to your calculation and select Add to Study Case from the context sensitive menu. The grid will be activated and graphics will be opened (after a selection by the user). To remove an active grid, select Remove from Study Case. Variations are considered by a study case when they are activated. The expansion stages are applied according to the study case time, which is set by the time trigger stored inside the study case folder. More than one variation can be active for a study case. However there will always be only one recording stage. For further information, please refer to Chapter 17 (Network Variations and Expansion Stages). To add (activate) a variation to the active study case: Right-click on it and select Activate from the context sensitive menu. The variation will be activated and stages will be highlighted depending on the study time. An operation scenario can be (de)activated via context menu or using the option File --> Activate Operation Scenario/ Deactivate Operation Scenario from the main menu. On

activation, a completeness check is done (check if operational data is available for all components). This is reported in the PowerFactory output window. If an operation

13 - 2

DIgSILENT PowerFactory

Study Cases

scenario is active, all operational data attributes in property sheets or in data manager are highlighted in a blue color. This indicates that changes of these values will not modify the base component (or variation) but are recorded by the active operation scenario. On deactivation, previous operational data are restored. If the operation scenario was modified, a user confirmation is requested whether to save the changes or to discard them. For further information about working with operation scenarios, please refer Chapter 16 (Operation Scenarios).

Note:

Only one study case can be activated at a time. Although network components and diagrams can be edited without an active study case, calculations can not be performed unless a study case is activated. Variations and operation scenarios used by a study case are automatically activated with the corresponding study case.

13.2

Summary Grid

The primary task of a Study Case is to activate and deactivate a calculation target, which is a combination of grids and optionally expansion stages from the Network Model. The Summary Grid object ( ) holds references to the grids which are considered in the calculation (that is the active grids). Grids may be added to, or removed from, the study case by right-clicking them in the database tree and selecting Add to Study Case or Remove from Study Case from their edit dialogue. Automatically a reference to the activated/deactivated grid is generated/deleted in the Summary Grid object. A grid cannot be activated separately; a study case linked to the grid must be active. The context sensitive menu will show an Activate option when a grid or system stage folder is right-clicked if no study case folder is active. This will present a prompt dialogue which request that either an existing study case be activated, or a new study case be created first. The grid or system stage is then activated in conjunction with whichever choice is made.

13.3

Study Time

PowerFactory Version 14 extends the idea of a model into the dimension of time. The Study Case has got a Study Time. The Study Time defines the point in time you wish to analyse.
The Study Time must be inside the Validity Period of the Project, which specifies the time span the Project is valid for (see Section : The Validity Period of the Project). PowerFactory will use the Study Time in conjunction with time-dependent network expansions (Variations, Expansion Stages, see Chapter 17: Network Variations and Expansion Stages) to determine which network data is applicable to that point in time. You are able to change the Study Time in order to analyse a different point in time. The Expansion Stages will be activated/deactivated with the Study Time. The status bar at the bottom of the PowerFactory program window shows the currently set Study Time. The most easy way to change the Study Time is: Double click on the Study Time shown in the status bar of PowerFactory.
13 - 3

DIgSILENT PowerFactory

Study Cases

Enter the date and time or press the button -> Date and -> Time in order to set the Study Time to the current time of your computer. Press OK to accept the changes and close the window. There are several alternative ways to edit the Study Time. Alternative 1: Edit the Study Time like a Trigger: Press the button "Date/Time of Calculation Case" in the main toolbar of PowerFactory. Enter the date and time or press the button -> Date and -> Time in order to set the Study Time to the current time of your computer. Press OK to accept the changes and close the window. Alternative 2: Edit the Study Case from within the Study Case dialogue: Activate the project and browse for the Study Case in the Data Manager. Right click on the Study Case and select Edit from the context sensitive menu. On the Basic Data tab page press the button with the three dots beneath the entry for the Study Time Set the Study Time according to your needs. Press OK to accept the changes and close the window.

13.4

The Study Case Edit Dialogue

To edit the settings of a study case, you may select Edit -->Study Case in the main menu, or right-click the study case in the Data Manager and select Edit from the context sensitive menu. A dialogue as shown in Figure 13.2 will appear.

13 - 4

DIgSILENT PowerFactory

Study Cases

Fig. 13.2:

Study Case edit dialogue

In the 'Basic Data' page, the user can define the name and an owner to the study case. The output units of the calculated variables are defined in the 'Output Variables' field. The grids that are linked to a study case may be viewed by pressing the Grids/System

Stages button. The study time can be edited by pressing the (

) button; this will open the edit dialogue of the study case time trigger (see Section 13.3: Study Time). Please
13 - 5

DIgSILENT PowerFactory

Study Cases

regard that the study time can also change as a result of setting the recording expansion stage explicitly (see Chapter 17: Network Variations and Expansion Stages). The 'Calculation Options' tab is used to set the solving algorithm for the case calculations. The change of the default options is only recommended under the supervision of the DIgSILENT support experts. The Description page, like all object's description pages is used to add user comments

Note:

To edit the study time you can alternatively, press on the "Date/ Time of Calculation Case" button ( ). This will open the study case time trigger window. Also, at the lower right corner of the screen the time of the simulation case is displayed. By double-clicking on this field you are taken to the same window.

13.5

Variation Configuration

Similarly to the Summary Grid object, the Variation Configuration object (IntAcvariation ) holds references to the active variations.

13.6

Operation Scenarios

A reference to the active operation scenario (if any) is always stored in the study cases. Similar to variation configurations and summary grids, when a study case is activated, the operation scenario (if any) whose reference is hold, will be automatically activated. The reference to the active operation scenario is automatically updated by the program.

13.7

Commands

In PowerFactory a calculation (i.e load flow ( ), short circuit ( ), initial conditions of a time domain simulation ( ), etc.) is performed via 'Calculation Commands', which are the objects that store the calculation settings defined by the user. Each study case stores its own calculation commands, holding the most recent settings. This ensures consistency between results and calculation commands and enables the user to easily reproduce the same results at a later stage. When a calculation is performed in a study case for the first time, a calculation command of the corresponding class is automatically created inside the active study case. Different calculation commands of the same class or (i.e different load flow calculation commands: objects of the class ComLdf different short circuit calculation commands: objects of the class ComShc ) can be stored in the same study case. These approach allows the user to repeat any calculation, with all the settings (such as fault location, type, fault impedance, etc.) as last performed in the study case. Of course the calculations are performed only over the active grids (expansion stages). Figure 13.3 shows a study case called Study 1 witch contains two load flow calculation
13 - 6

DIgSILENT PowerFactory

Study Cases

commands (

, Ldf 1 and Ldf2), one command for an OPF calculation (

), one

command for the calculation of initial conditions , and one transient simulation ( ). The edit dialogue of each one of the calculation commands existing in PowerFactory is described in the chapter corresponding to that calculation function.

Fig. 13.3:

Calculation Commands in a Study Case

Actions such as generating a report of the actual calculation results or the state of the defined network components are carried out via command objects (in this case ComSh and ComDocu objects respectively). For information about reporting commands please refer to Chapter 20 (Reporting Results in PowerFactory).

Note:

Command objects basically consist of the data set that configures the calculation, and the Execution function to perform the computations. Like any other object calculation commands can be copied, pasted, renamed and edited.

13.8

Events

The time domain simulations as well as certain steady state calculations make use of objects called Events, in order to specify the situations that lead to changes in the system during the simulation/calculation time. PowerFactory offers several kinds of events: Control switch events (EvtSwitch) Set parameter events (EvtParam) Short-circuit events (EvtShc) Intercircuit fault events (EvtShcll) Events of synchronous machines (EvtSym) Events of loads (EvtLod) Outage of element (EvtOutage) Each simulation event requires the definition of the target network components (i.e. short circuited terminals, etc.) and an event time (when does the event occur). Within study cases, the simulation events are stored inside an Event object (IntEvt ). The calcu13 - 7

DIgSILENT PowerFactory

Study Cases

lation commands that require simulation events, point to the Event object containing the set of events defined for that calculation. The use and the definition of events are presented through the chapters explaining the calculation function that require them. Further information about each specific simulation event is given in the proceeding subsections.

13.8.1

Switching Events

Switching events (EvtSwitch) are used to open/close switches (StaSwitch, ElmCoup) in the studied network. Any switch may be selected, thus enabling the switching of lines, generators, motors, loads, etc. Here the user is free to select the switches/breakers of all phases or only of one or two phases.

13.8.2

Set Parameter Events

With this event (EvtParam) an input parameter of any element or DSL model can be set or changed during the simulation. A time of occurrence, an active network component and the target parameter (input signals of the dynamic models) must be specified.

13.8.3

Short-Circuit Events

This event (EvtShc) causes a short-circuit on the selected busbar, terminal or specified point of a transmission line. The fault type (three phase, two phase or single phase faults) can be specified as well as the fault resistance and reactance and the phases which are affected. There is no possibility to define the duration of the fault. To clear the fault, another shortcircuit event can be defined, which will clear the fault in the same place.

13.8.4

Intercircuit Fault Events

This event (EvtShcll) is similar to the short-circuit event described before. Two different elements and their phase can be chosen between which the fault occurs. Equal to the EvtShc four different elements can be chosen: a busbar (StaBar) a terminal (ElmTerm) a overhead-line or cable (ElmLne) a line routes (ElmLnerout)

13.8.5

Events of Synchronous Machines

For synchronous machines there is a special event (EvtSym) to easily change the mechanical torque of the machine. A point in time in the simulation and an active synchronous machine ElmSym has to specified. Then one can define the additional mechanical torque supplied to the generator. The torque can be positive or negative and is entered in per unit values.
13 - 8

DIgSILENT PowerFactory

Study Cases

13.8.6

Events of Loads

The value of the active/reactive? power of a load (ElmLod, ElmLodlv or ElmLodlvp) can be altered using the load event (EvtLod). There are three different ways to carry out the desired changes: Incremental Change: Adds additional power (positive or negative) to the current value in % of the nominal power of the load. Absolute Change: Changes the current value of the power to the given value in % of the nominal power of the load. Nominal Change: Changes current and nominal value of the power to the specified value in % of the nominal power of the load.

13.8.7

Outage of Element

This event (EvtOutage) can only be used in steady state calculations, when an element shall be put out of service at a certain point in time. Then the option "take element out of service" is to be used. It is not possible to bring back the outaged elements into service in the transient simulation. This option is active only in steady-state calculation functions, e.g. short-circuit calculation or reliability assessment. In time-domain simulation the following error message will occur in the output window:
DIgSI/err (t=000:000 ms) - Outage Event in Simulation not available. Use Switch-Event instead!

13.8.8

Save Results

This event (EvtTrigger) is only used in the PowerFactory Monitor part of the program. It can't be used during time-domain simulations

13.9

Results Objects

The Results object (ElmRes ) is used to store tables with the results obtained after the execution of a command in PowerFactory. The typical use of a Results object is in writing specific variables during a transient simulation, or during a data acquisition measurement. The obtained results can later be used to generate plots, or in DPL scripts. An example of the result object dialogue is depicted in Figure 13.4.

13 - 9

DIgSILENT PowerFactory

Study Cases

Fig. 13.4:

The Results Object Dialogue

The result object shows the following fields: Name Database ID Default for Info The name of the result object Its database ID and the date, when it was changed the last time Its default use Information about the currently stored data, ie.e the time interval, step sizes, number of variables, etc. Trigger times (in case of a Triggered default use)

Trigger-Times

The information about the stored data shows: The time interval. The average time step. The number of points in time. The number of variables. The size of the database result-file. The Update button will recalculate these parameters and update the shown information if necessary. The Clear Data will clear all result data (only available if calculation results are stored).

Note:

Clearing the data will delete the result-file and will reset the database ID. This will destroy all calculated or measured data in the result file. It will not be possible to restore the data.

13 - 10

DIgSILENT PowerFactory

Study Cases

When the Protocol Output button is pressed, all events that happened during the simulation, recorded by the result object, will be written again into the output window. So one can check what events took place during the last simulation. The content of a result object (the variables whose results are stored) is determined by sets of selected variables called Monitor Variable Sets (IntMon ). Each Monitor Variable Set stores the results of the selected variables for one network component. These monitor objects can be edited by pressing the Contents button. This will show the list of monitor sets currently in use by the result object.

Note:

Selecting a set of result variables, trough the use of monitor objects is necessary because otherwise all available variables would have to be stored, which is practically impossible.

For information about exporting results, please refer to 20.2.1 (Result Objects).

13.10 Variable Sets


The result object combines one or more monitor variable sets (IntMon ), allowing a very flexible and highly transparent result definition. In fact, by using monitor variable sets, just about every parameter used in the PowerFactory program comes available as calculation result, together with a description and a unit. The variables selected with the IntMon dialogue in the result object become available to the subplot objects in the virtual instrument panels. In these plots, one or more result objects can be selected and from those result objects a power system element and one of its variables can be chosen, if that element and that variable was selected in one of the IntMon objects. The subplot will then show the calculated curve of that variable. Variable sets always have a reference to a network component, whose selected variables are going to be recorded (Figure 5.29 red circle, in this case a transformer called T1). To facilitate the selection of the variables, monitor variable sets are organized according to the calculation functions of PowerFactory and by the type of data. For example, if the results of a harmonics calculation are to be recorded, the user should go to the 'Harmonics' page (Figure 5.29, green circle). If the voltage or the power of the referred element is to be stored, the selected 'Variable Set' should be 'Currents, Voltages and Powers' (Figure 5.29 blue circle).

13 - 11

DIgSILENT PowerFactory

Study Cases

Fig. 13.5:

Monitor Variable Set Dialogue

For further information about the definition of Monitor Variable Sets please refer to Chapter 19 (Defining Variable Sets).

13.11 Triggers
As introduced in Section 7.7 (Parameter Characteristics and Parametric Studies), parameter characteristics are used to define parameters as ranges of values instead of fixed amounts. The parameter characteristics are set over user defined scales. The actual value of the parameter is at the end determined by a trigger object (SetTrigger object, ), which sets an actual value on the corresponding scale. For example if the value of certain parameter depends on the temperature, a characteristic over a temperature scale is set. The actual value of the temperature is defined by the trigger. The actual value of the temperature determines the actual value of the parameter, according to the defined characteristic. Once a parameter characteristic and its corresponding scale are set, a trigger pointing to the scale is automatically created in the active study case. The user can access the trigger object and change its actual value every time that he/she requires.

PowerFactory offers different types of characteristics and scales; each scale (by default

scales are stored in the Scales folder of the Equipment Library) points to a trigger from the active study case. Information about the use and definition of characteristics, scales and triggers is given in Section 7.7 (Parameter Characteristics and Parametric Studies).

13.12 Graphic Board


The Study Case folder contains a folder called the Graphics Board folder (SetDesktop, ) where references to the graphics to be displayed are contained. This folder, much like the Summary Grid folder, is automatically created and maintained and should
13 - 12

DIgSILENT PowerFactory

Study Cases

generally not be edited by the user. The references in the graphics board folder are created when the user adds a grid to a study case. PowerFactory will ask the user which graphics of the grid should be displayed. At any time later the user may display other graphics in the grid by rightclicking the grid and selecting Show Graphic. Graphics may be removed by right-clicking the tab at the bottom of the page and selecting Remove Page(s). The study case and graphics board folder will also contain references to any other graphics that have been created when the study case is active.

13 - 13

DIgSILENT PowerFactory

Study Cases

13 - 14

DIgSILENT PowerFactory

The Equipment Type Library

Chapter 14 The Equipment Type Library

In Section 7.4 (The Equipment Type Library), the description of the Equipment Types Library and the definition of types for network components was given. Here, in this chapter it is explained how to work with the objects of the Equipment Library, in order to define and manage the types to be used in a project. Once a new project is created, an Equipment Types Library is automatically set by the program. This default equipment library contains the following folders: Generators Lines Loads Transformers Scales The first four folders are objects of the class IntPrjfolder (Project folder) that allow the filtering of the types to be stored inside them. By default only synchronous generator types (TypSyn) are allowed in the Generators folder, only line types (TypLne) in the Lines folder, only general load types (TypLod) in the Loads folder and only two winding transformer types (TypTr2) in the Transformers folder. New type objects are created in these folders using the new object icon ( ) and selecting the appropriate type class; if a class that is not allowed by the filter is selected, an error message pops up. Alternatively types from other projects or the global library can be copied and pasted in these folders; again if the type class does not match the folder filter, an error message is generated. The filters in the default folders are set to facilitate organization of the Equipment Library; of course types for components other than synchronous generators, lines, loads and two winding transformers can be stored. To define types different than the already mentioned the user can: 1 2 3 Create new folders for other type classes. Edit the existing folders to allow the definition of other types. Create new types in the main directory (Equipment Library).

To create a new project folder in the Equipment Types Library: Right click on the Equipment Types Library folder in the left pane of the Data Manager. Select New --> Project Folder from the context sensitive menu. In the project folder edit dialogue that pops up: - Write the name of the new folder. - Select the Generic folder type.
14 - 1

DIgSILENT PowerFactory

The Equipment Type Library

- On the Filter Class field write the name of the type class (classes) to be allowed in the folder. If more than one class is to be allowed, write the class names (case sensitive) separated by a coma. - Select 'Library' in the icon field. To edit the filter of an existing folder: Right click on the target folder. Select Edit from the context sensitive menu. In the 'Filter Class' field write the name of the desired classes (case sensitive) separated by a coma. The '*' character means that all classes are allowed. To create new types directly in the in Equipment Types Library folder: Open the Equipment Types Library folder. Click on the New Object icon ( dialogue. ) and select the desired type class from the

Notice that any type class can be copied in the Equipment Types Library folder. The Scale folder, which is also created by default in the Equipment Types Library is used to store the scales used by the parameter characteristics. Information about Scales and the Data Model is given in Section 7.7 (Parameter Characteristics and Parametric Studies). Information about the definition of Scales is given in Chapter 18 (Parameter Characteristics).

Note:

By default new block definitions (used by dynamic models) created from block diagrams are also stored in the Equipment Types Library. Chapter 25 (Stability and EMT Simulations) provides all the information related with dynamic modeling and block definitions.

14 - 2

DIgSILENT PowerFactory

The Operational Library

Chapter 15 The Operational Library

Network components use references to type objects in order to set equipment-related parameters and to avoid data redundancy. For example, two generators defined in a network model (lets call them G1 and G2) may refer to the same generator type (lets call it G 190M-18kV) to set their manufacturer-related data, i.e. nominal voltage, nominal power, impedances, etc. G1 and G2 will have the same equipment data but may be operated at different points, or may be grounded differently. That is, they may have the same type data, but different operational and element data. As mentioned, certain parameters of network components do not depend on the equipment itself but on the operational point. These parameters are grouped under the operational data set of the element. In the previous example of the synchronous generators, the active power dispatch or the reactive power limits are part of this operational data. In order to analyze a network under different operating points, operational data may change frequently during a study. Considering that different network components may have identical operational parameters (for example 2 generators with the same MVAr limits, or various circuit breakers with the same ratings for short circuit currents), references to objects storing operational data facilitate the definition of different network operational points. Similar to types, the use of objects containing operational data avoids redundancy. The Operational Library is the Data Model project folder, where objects containing operational data are stored. As explained in Chapter 7.5, PowerFactory allows the definition of several objects to store operational data. Figure 7.10 shows how the operational library looks for its higher hierarchical level. This section describes these objects and their hierarchical organization within the Operational Library, and explains how these objects are defined and applied to network components.

15.1

Circuit Breaker Ratings

To create a new circuit breaker rating in the operational library: In the data manager open the CB Ratings folder. Click on the New Object icon ( ).

In the Element Selection dialogue select Circuit Breaker Rating (IntCbrating) and press Ok. The new circuit breaker rating dialogue will then be displayed. Set the corresponding parameters and press Ok.
15 - 1

DIgSILENT PowerFactory

The Operational Library

To assign a circuit breaker rating to a circuit breaker (ElmCoup object) from the network model: Go to the Complete Short-Circuit tab of the element's dialogue. In the Ratings field click on the Ratings folder. button to select the desired rating from the CB

The parameters defined in the circuit breaker ratings can be made to be time-dependant by means of variations and expansion stages stored inside the CB Ratings folder. This feature is better explained by the following example: Suppose that a circuit breaker (named CB) in a substation operates with different ratings, depending on the time of the year. From 1st January to 1st June it will operate according to the ratings defined in a set of parameters called CBR1. From 1st June to 31st December it will operate with the ratings defined in a set of parameters called CBR2. This operational procedure can be modelled by defining (in the CB Ratings folder) a circuit breaker rating (let's call it CBR), and a variation (let's call it CB_Sem_Ratings) containing two expansion stages. The first expansion stage should activate on the 1st January and the second on the 1st June. The first task should be the definition of the time-dependant circuit breaker rating (CBR): To set the parameters of CBR for the first period: Set a study time before the 1st June to activate the first expansion stage (the Variation CB_Sem_Ratings must be active); Edit the parameters of CBR (previously defined) according to the values defined in CBR1. The new parameters will be stored in the active expansion stage. To set the parameters of CBR for the second period: Set a study time after the 1st June, to activate the second expansion stage; Edit CBR according to the values of CBR2. The new parameters will be stored in the active expansion stage. Once the ratings for the two expansion stages have been set, and the circuit breaker rating CBR has been assigned to the circuit breaker CB; the study time can be changed from one period to the other to obtain different ratings for CB (note that the variation must be active). For information regarding short-circuit calculations, please refer to Chapter 23. For further information regarding circuit-breaker ratings, please see Section 7.5.1. For further information about variations and expansion stages, please refer to 7.3.4.

Note:

The variations act 'locally'. The variations from the CB Rating folder will only affect the circuit breaker ratings stored inside it. The variations of the Network Model will only affect the network components from the grids.

15.2

Demand Transfers

To create a new load demand transfer: In the data manager, open the Demand Transfer folder.

15 - 2

DIgSILENT PowerFactory

The Operational Library

Click on the New Object icon (

).

In the Element Selection dialogue select Planned Outage (IntOutage) and press Ok. Set the validity time, the source and target loads/feeders and the expected amount of power.

Note:

If there is a demand transfer, which transfers load between two loads (ElmLod) belonging to different feeders (ElmFeeder), then the same MW and Mvar value is transferred from one feeder to the other.

A demand transfer is only possible if an active operation scenario (to record the changes) is available. The Apply all button will automatically apply all transfers that are stored in the current folder and which fit into the current study time. Before execution, the user is asked if the current network state should be saved in a new operation scenario. The same demand transfers can be applied as many times as desired during the validity period. If a power transfer has been executed (with an amount <> 0) and the source's power is less than 0, a warning is printed to the output window indicating that the power limit was exceeded. The applied transfers can be reverted by using the Reset all button. As can be inferred from the information above, when the current operation scenario is deactivated, all load transfers executed (while the operation scenario was active) will be reverted. For information about operation scenarios please refer to Chapter 16. Further information about demand transfer is given in Section 7.5.2.

15.3

Fault Cases and Fault Groups

To create new Fault Cases or new Fault Groups folders, open the Faults project folder from the Operational Library and use the New Object icon (select Fault Cases (IntFltcases) or Fault Groups (IntFltgroups) respectively). To create new fault case (object of class IntEvt): Multi-select the target components on a single line diagram; Right-click and select Define --> Fault Cases from the context-sensitive menu; A submenu with the following entries pops up: - Single Fault Case: This creates a single simultaneous fault case including all selected elements. A dialog box containing the created fault case is opened to allow the user to specify a name for the fault case. If the user presses Cancel, the fault case will not be created in the database. Ok closes the dialog and saves the new fault case. - Multi fault Cases, n-1: This creates an n-1 fault case for each selected component. Therefore the number of fault cases created is equal to the number of components selected. This menu entry is only active if more than one component is selected. The fault case is automatically created in the database after selection.
15 - 3

DIgSILENT PowerFactory

The Operational Library

- Multi fault Cases, n-2: This creates an n-2 fault case for each unique pair among the selected components. Therefore the number of fault cases is ( b ( b 1 ) 2 ) where b is equal to the number of selected components. This menu entry is only active if more than one component is selected. If only one component was clicked, then no fault case will be created. The fault case is automatically created in the database after selection. Select the desired outage level. Select the target Fault Cases folder from the data browser that pops up and press Ok. The fault cases created will consist of short-circuit events applied to the selected components. All breakers (except for circuit breakers, which are used to model a circuit breaker failure) will be ignored. If only breakers are included in the selection, an error message will be issued. If a simple switch (not a circuit breaker) is included in the selection, a warning message will be issued that this switch will be ignored. If a circuit breaker is contained in the selection, then an Info message will be issued, that the CB will be used for modelling a CB failure and will not be handled as a fault location.

Note:

In the case that a branch is selected, the short-circuit event is generated for a (non-switch device with more than one connection) component of the branch. The component used in the event is: "Connection 1" if suitable, otherwise "Connection 2" if suitable, otherwise a suitable random component of the branch (line, transformer.).

New Fault Groups (IntFltgroups) are created in the data manager by opening the target

Fault Groups folder and using the New Object icon ( ). The edit dialogue of the new Fault Group pops up. In this dialogue a name can be specified, and cases (IntEvt objects) can be added using the Add Cases button. The Cases button opens a data browser
displaying the fault cases which are referred by the group. For information regarding the functionality of fault cases and fault groups in contingency analysis tools please refer to Chapter 28. For further information about the concepts and applications of fault cases and groups please refer to 7.5.3.

15.4

Capability Curves (MVAr Limit Curves) for Generators

For further information about the concepts and applications of Capability Curves (MVAr Limit Curves) please refer to Section 7.5.4.

15.4.1

Creating a New Capability Curve Object


) from the Operational Library.

To create a new generator capability curve (object of class IntQlim): Open the folder Mvar Limit Curves (
15 - 4

DIgSILENT PowerFactory

The Operational Library

Click on the New Object icon ( ) and select Capability Curve (IntQlim). The new capability curve dialogue pops up. Define the generation limits as described in Section 15.4.3. Press OK. Alternatively, press the button on the Load Flow tab of the synchronous machine's element dialogue. Then select User defined Capability Curve and enter the curve as a series of points in the table. Right-click on the rows to append, delete or insert new rows.

15.4.2

Applying a Capability Curve from the Operational Library

To apply an existing generator capability curve to a generator: Locate the Reactive Power Limit section on the Load Flow tab of the synchronous machine's or static generator's dialogue. Press next to Capability Curve.

Choose Select to look for a suitable curve in the Mvar Limit Curves folder in the Operational Library folder. Select a capability curve. Press OK.

15.4.3

Defining an MVAr Limits Curve

In the capability curve dialogue, right-click on the empty rows and choose Append rows or Append n rows, in order to add the required number of rows to the table. Construct the curve as a series of points. Insert data as required to define the shape of the curve.

15.4.4

Editing a Capability Curve

The values of a capability curve can be changed at any time by double-clicking on it to open the corresponding dialogue. Similar to circuit breaker ratings, capability curves can become time-dependant by means of variations and expansion stages stored inside the Mvar Limit Curves folder (refer to Section 15.1 for an explanation on how to define timedependant operational objects). Capability curves are assigned using the reference contained on the Load Flow tab of a synchronous generators dialogue. They are included in operation scenario subsets; meaning that if a capability curve is selected/reset from a generator when an operation scenario is active, the change will be stored in the operation scenario. Once the operation scenario is deactivated, the assignment/reset of the curve is reverted. For information on working with operation scenarios, please refer to Chapter 16.

15 - 5

DIgSILENT PowerFactory

The Operational Library

15.4.5

Defining a Variation of an MVAr Limits Curve

Find the MVAr Limits Curves folder in the left pane of a data manager window. Right-click on it and select New -> Variation. Provide a suitable name and select OK. Now right-click on the new variation and select New -> Expansion Stage. Edit the expansion stage and press OK. For general information about variations and expansion stages please refer to Chapter 17.

15.4.6

Activating a Variation of an MVAr Limits Curve

Open a data manager. Locate the Variation object in the Mvar Limits Curves folder inthe Operational Library. Right-click on this object and select Activate.

15.5

Element Outages and Generator Deratings

To create a new outage of the type Element Outage or Generator Derating: In the data manager, open the Outages folder. Click on the New Object icon ( ).

In the Element Selection dialogue select Planned Outage (IntOutage) and press Ok. The IntOutage dialogue will pop up. In the Outage Type section, the options Outage of an Element and Generator Derating will be enabled. Set the validity time, select the desired type, and define the outage accordingly (further information is given below). The definition of an Outage of an Element requires references to the network components to be taken out of service. These references can be created by pressing the Contents button of the outage object, and in the data browser that pops up, creating a reference to the target element with the New Object icon: After clicking on the New Object icon, the dialogue of the reference object (IntRef ) pops up. Give a name to the new reference. Press the ( ) button in the Reference field to select the target element in the browser that pops up. After pressing Ok in the data browser, the selected element is added to the reference. Press Ok. The definition of a Generator Derating requires a reference to the target generator (note that only one generator per IntOutage object is allowed), using the button from the Derated Generator section of the dialogue. The derated power in MW (which will be subtracted to the maximal active power of the generator) is entered in the MW reductions field. The actions defined in the outages can be automatically applied using the Apply button. In order to carry out these actions an active operation scenario, to record the changes, is required.
15 - 6

DIgSILENT PowerFactory

The Operational Library

For the Outage of Element type, the program automatically isolates the contained components. The switches connecting the target elements with the other network components are open and the terminals connected to the elements are earthed (the Earthed option in the terminal (ElmTerm) dialogue is checked). Notice that the target element can only be earthed if it is directly connected (without switches in the cubicle) to terminals, which are then connected through switches to the network terminals. For the Generator Derating the maximal active power that can be dispatched (defined on the Load Flow tab of the generator element dialogue, in the section Active Power Operational Limits) is recalculated as the difference between the maximal active power (section Active Power: Ratings) and the MW reductions. Note that the Apply button is only available if the study time lies within the outage period. Applied outages and generator deratings can be reset using the Reset button. Note that the programmed actions can also be manually carried out. The Check All button in the outage object is used to verify if the actions (outage or derating) defined for the target elements have been performed. Only the outages within a valid period are considered. Outages market as Out of Service are not regarded (even if the study time lies within the outage period). In the case of Outage of Element, the program looks for the current state of the referred elements. If, according to the current study time (and the outage period), a referred component should be out of service, but it is still connected to the network (energized) or not earthed, a warning message is printed to the output window. In the case of a Generator Derating, if the maximal operational active power is not the difference between the maximal rated active power and the MW reductions (values defined on the Load Flow tab of the generator element dialogue), a warning message is generated. In the outages respective Check functions, the energizing state is always determined by a connectivity analysis. Any component that is connected to a reference external net or a reference generator is considered to be energized. All others are considered to be deenergized (if circuit breakers are open). A deenergized component is earthed if a topological connection to a grounding switch or an earthed terminal exists (terminal with the Earthed option checked).

Note:

If the outaged element is a branch element (ElmBranch), all contained elements are checked. If any of these elements is not correctly outaged, the whole branch is reported as not correctly outaged.

The fulfillment of programmed outages can also be checked via the use of the color representation function available within the single line graphic. To do this, set the Colouring option to Outage Check from the color representation dialogue ( are colored, according to user preferences: Components that are energized, but should be outaged. Components that are deenergized and not earthed, but should be outaged. Components that are deenergized and earthed, but should NOT be outaged. Components that are deenergized, not earthed and should be outaged.
15 - 7

). The following states

DIgSILENT PowerFactory

The Operational Library

Generators that are not derated, but should be outaged. Generators that are derated, but should NOT be outaged.

15.6

Running Arrangements

The basic concept and application of the Running Arrangement (RA, objects of class IntRunarrange) were introduced in 7.5.6. In this section, information concerning the definition, management and functionality of these objects is given.

15.6.1

Creating a Running Arrangement

To store the current status of the switches in a substation, a Running Arrangement object must be created. To create and save a new Running Arrangement (RA): Click on an empty place in the substation graphic, and from the context-sensitive menu choose Edit Substation. Open the substation dialogue. Press the Save as button (shown in Figure 15.1). This action stores the switch settings of the substation as a new RA. This button is only available if there is currently no Running Arrangement selection active. The new RA dialogue pops up, where a name and a period can be specified. Press Ok. The new RA is automatically stored in the Running Arrangements folder in the Operational Library. An Overwrite button is available in the substation dialogue (if no RA is selected), to store current switch statuses to an existing RA.

15 - 8

DIgSILENT PowerFactory

The Operational Library

Fig. 15.1:

Running Arrangement in a Substation Dialogue

15.6.2

Selecting a Running Arrangement

A Running Arrangement (RA) can be selected in the Basic Data tab of a substation dialogue (ElmSubstat, see Figure 15.2): Open the substation dialogue. Press the Select button ( ) in the Running Arrangement section. A list of all RAs for the current substation is displayed. Select the desired RA. This selection is immediately reflected in the graphic (preview). While an RA is selected, the switch statuses of a substation are determined by this RA and cannot be changed by the user (i.e. they are read-only). If there is no setting for a switch in an RA (i.e. the RA is incomplete), such a switch will remain unchanged but its status is also set to read-only. Furthermore, there is a button Select by Study Time (also available via the contextsensitive menu when right-clicking on the data manager), which selects a valid RA automatically according to the study time. If there are multiple RAs valid for the current study time, or if there is no valid one, a warning is printed to PowerFactory's output window (nothing is selected in this case).

15 - 9

DIgSILENT PowerFactory

The Operational Library

15.6.3

Applying and Resetting a Running Arrangement

An active Running Arrangement (RA) can be applied to the corresponding substation by pressing the Apply and Reset button from within the substation dialogue. This action copies the statuses stored in the RA directly in the substation switches. It is only available only if an RA is selected. The RA will be deselected afterwards. An RA can be directly set as the substations selected RA, using the Assign button (from within the RA dialogue).

Fig. 15.2:

Apply & Reset a Running Arrangement

The following functional aspects must be regarded when working with running arrangements: An RA can be selected for each substation. If an operation scenario is active, the selection of an RA in a substation is recorded in the operation scenario (i.e. the RA selection is part of the operational data included in the operation scenario subset). If a variation is active (and there is no active operation scenario), the selection of the RA is stored in the recording expansion stage. While an RA is selected, the switch statuses of the corresponding substation are determined by the RA and can not be modified. Any attempt to change such a switch status will be rejected and a warning message will be printed to the output window. The switch statuses preceding the activation of an RA remain unchanged and are restored when deselecting the RA. The switch statuses stored in the RA could be incomplete due to the activation of a variation or a modification made to the network model. For example, if an RA was defined and then deactivated, and then later new switches were added to a
15 - 10

DIgSILENT PowerFactory

The Operational Library

substation. In this case if the RA is re-activated, a warning would be printed to the output window and the current switch statuses, which depend on the base network, active variations and active operation scenario, remain unchanged. Missing switch statuses will be added only when performing the Save as or Overwrite functions (available in the substation dialogue). Switch statuses stored in the RA, and which are currently not required (depending on expansion stages) are ignored and remain unchanged. In this case a summary warning is printed during the RA activation. It is not possible to add a new switch to a substation while a running arrangement is selected. Additionally, it is not possible to delete an existing switch from this substation. In both cases the action is blocked and an error message is issued. For information regarding substations please refer to Section "Substations" of Chapter 7.3.2. For information regarding operation scenarios and their application please refer to Section 16.

15.6.4

Assigning a Running Arrangement

The Assign button contained in the running arrangement (RA) dialogue makes it possible to set this RA as the one currently selected for the corresponding substation. This action is also available in the context-sensitive menu in the data manager (when right-clicking on an RA inside the data manager). It should be noted that assignment is executed immediately and cannot be undone by pressing the cancel button of the dialogue.

Fig. 15.3:

Running Arrangement Dialogue

15.7

Thermal Ratings
and select Thermal

To create a new Thermal Rating (IntThrating) object, open the folder Thermal Ratings from the Operational Library, click on the New Object icon Ratings. The new object dialogue pops up.

term ratings is checked), go to the Configuration tab and:

To configure the table for the short-term ratings (only visible if the option Consider short
15 - 11

DIgSILENT PowerFactory

The Operational Library

Introduce the increasing values for the pre-fault loading axis (Prefault %). By default, values between 0% and 80%, with increments of 5%, up to 84% are set. Introduce the fault duration in minutes. Default values are: 360min, 20min, 10min, 5min, 3 min). The pre-fault continuous rating (used as the base to calculate the loading before the fault) and the post-fault continuous rating (assumed as the branch element pos-fault rating if the fault duration is larger than the largest duration time defined in the table) are defined on the Ratings tab. The values of a thermal rating object can be edited at any time by double-clicking on it to open the corresponding IntThrating dialogue. Similar to circuit breaker ratings and capability curves, thermal rating objects can be made to be time-dependant by means of variations and expansion stages stored inside the Thermal Ratings folder (please refer to the Circuit Breaker Ratings section for an explanation on how to define time-dependant operational objects). The branch elements that can use thermal ratings are: Transmission lines (ElmLne); 2 and 3 winding transformers (ElmTr2 and ElmTr3); Series reactors (ElmSind); Series capacitors (ElmScap). The reference to the thermal ratings is defined on the Basic Data tab of the dialogue of the target branch elements. When a contingency analysis (ComSimoutage) is configured, the user can define a postcontingency time. According to the pre-fault loading found by the load flow used to calculate the base case, and the post-contingency time (if specified), the ratings to be used in the contingency load flow are determined (based on the referred Thermal Rating object). The loading of the branch elements after the contingency load flow are calculated with respect to the new ratings. For further information about thermal ratings, please refer to Section 7.5.7. For information about contingency analysis please refer to Chapter 28.

15 - 12

DIgSILENT PowerFactory

Operation Scenarios

Chapter 16 Operation Scenarios

As introduced in Section 7.2 (PowerFactory Project Structure), the operational data of network components defines the operational point of a system. Storing recurrent operation points of a network and being able to activate or deactivate them when required accelerates the analyses of the network under different operating conditions, i.e. different dispatch programs, low or high load periods, etc. PowerFactory can store complete operational points in objects called Operation Scenarios (IntScenario, ). Operation scenarios are formed by data subsets, which group the operational data of the active network components according to their type. Examples of operation scenario subsets include: demand data; storing the active and reactive power of all loads or running arrangement (RA) selections; and storing references to the RA selected in the network substations. Operation scenarios are stored inside the Operation Scenarios folder ( ) in the project directory. The user can define as many operation scenarios as required; each operation scenario should represent a different operational point. Figure 16.1 shows a project containing two operation scenarios (Operation Scenario 1 and Operation Scenario 2, in the left pane of the data manager window); the content of Operation Scenario 2 (i.e. its subsets) is shown in the right pane of the data manager.

Fig. 16.1:

Operation Scenarios and Operation Scenarios Subsets

A new operation scenario is defined by saving the current operational data of the active network components. Once they have been created, operation scenarios can be activated in order to load the corresponding operational data. If an operation scenario is active and certain operational data is changed, these changes are stored in the corresponding operation scenario subsets (if the user decides to store the changes). If the current operation scenario is deactivated, the active network components reassume the operational data that they had before activating the operation scenario (this is the 'default'
16 - 1

DIgSILENT PowerFactory

Operation Scenarios

operational data). Clearly, changes made to the 'default' operational data do not affect operation scenarios. When working with active operation scenarios and active expansion stages, modifications on the operational data are stored in the operation scenario subsets. The expansion stage keeps the default operational data. If no operation scenarios are active and new components are added by the current expansion stage, the operational data of the new components will be added to the corresponding operation scenario subsets, when activated. The following section explain how these objects are defined, managed and applied in network models.

Note:

When an operation scenario is active, the operational data is distinguished in the network component dialogs because it is written using a blue font colour.

16.1

Operation Scenario Subsets

As mentioned in the previous section, the operational data stored in an operation scenario is organized into subsets according to the type of the data (i.e. virtual power plant data, load data, generation pattern data, etc.). Table 16.1 and onwards summarize the operation scenario subsets and the data that they contain for the corresponding network components. Note that the names of the internal variables that represent the listed data are written in italics. It is important to note that the operation scenario subsets are automatically created after the definition of a new operation scenario, according to the operational data that is stored; i.e. if no running arrangements are selected for the network substations, no running arrangement selection subset is created. Similarly when saving an active operation scenario, the operational data is automatically organized in the corresponding subsets.

Table 16.1:Subset: Virtual Power Plant Data Network Component Stored operational data
Virtual Power Plant (ElmVirtual Power Plant) Total Power (Ptot)

Table 16.2:Subset: Demand Data Network Component Stored operational data


Load (ElmLod) Active Power in MW (plini) Reactive Power in Mvar (qlini) Scaling Factor (scale0)

16 - 2

DIgSILENT PowerFactory

Operation Scenarios

Table 16.2:Subset: Demand Data Network Component Stored operational data


LV-Load (ElmLodlv) Apparent Power (slini) Active Power (plini) Current (ilini) Power Factor (coslini) Reactive/capacitive (pf_recap) Scaling factor (scale0) Night Storage Heater (pnight) Active Power (pini)

DC Machine (ElmDcm) (if motor)

Table 16.3:Subset: Generation Pattern Network Component Stored operational data


Synchronous Generator (ElmSym) Active power in MW (pgini) Reactive power in Mvar (qgini) Voltage setpoint in p.u. (usetp) Angle in deg (phiini) Primary Frequency Bias (Kpf ) Mvar capability limit (Qmin/Qmax or reference to curve) (q_min, q_max, pQlimType) MW-limit (operational limit only) (Pmax_uc, Pmin_uc, pmaxucratf ) Control mode (iv_mode) Reference-Machine-Flag (ip_ctrl) Operator Comment (sOpComment) Bus Type (bustp) Active Power (pgini) Reactive Power (qgini) Remote Control (i_rem) Controlled Branch (p_cub) Doubly-Fed Induction Machine (ElmAsmsc): Active Power (pgini) Reactive Power (qgini) Controlled Flow (p_pctrl) Slip (slip_set) Active Power (pini)

Asynchronous Generator (ElmAsm)

DC Machine (ElmDcm) (if generator)

16 - 3

DIgSILENT PowerFactory

Operation Scenarios

Table 16.3:Subset: Generation Pattern Network Component Stored operational data


External Network (ElmXnet) Bus Type (bustp) Active Power (pgini) Reactive Power (qgini) Voltage (usetp) Angle (phisetp) Reference busbar (p_uctrl) Primary Frequency Bias (Kpf ) Secondary Frequency Bias (K) Operator Comment (sOpComment)

Table 16.4:Subset: Local Switch Statuses Network Component Stored operational data
Circuir Breakers, Switches (ElmCoup and StaSwitch) Fuse (RelFuse), ElmGndSwt Bus Bar/Terminal (ElmTerm) Switch state (on_off ) Switch state (on_off ) Earthing flag

Table 16.5:Subset: RA Selection Network Component Stored operational data


Sub-station (ElmSubstat) Reference to running arrangement

16 - 4

DIgSILENT PowerFactory

Operation Scenarios

Table 16.6:Subset: Tap Settings Network Component Stored operational data


2-Winding Transformer (ElmTr2) Actual tap position (nntap) Automatic tap changing (ntrcn) Controlled node (t2ldc) Control mode (imldc) Remote control (i_rem) Controlled node (p_rem) Phase (ilcph) Controlled branch (p_cub) Voltage setpoint (usetp) Lower voltage bound (usp_low) Upper voltage bound (usp_up) Controller time constant (Tctrl) Active Power setpoint (psetp) Lower active power bound (psp_low) Upper active power bound (psp_up) Controller Sensitivity (Kpctrl) Reactive power setpoint (qsetp) Lower reactive power bound (qsp_low) Upper reactive power bound (qsp_up) Constroller sensitivity dv/dQ (Kqctrl) Line drop compensation (ildc) CT Rating (ldcct) VT Rating (ldcpt) Rset (ldcrs) Xset (ldcxs) External LDC (pldc) Operator Comment (sOpComment)

16 - 5

DIgSILENT PowerFactory

Operation Scenarios

Table 16.6:Subset: Tap Settings Network Component Stored operational data


3-Winding Transformer (ElmTr3) Actual Tap Position (n3tap_h) Actual Tap Position (n3tap_m) Actual Tap Position (n3tap_l) Tap control for side (ictrlside) Automatic tap changing (ntrcn) Controlled node (t3ldc) Control Mode (imldc) Remote Control (i_rem) Controlled node (p_rem) Voltage setpoint (usetp) Lower voltage bound (usp_low) Upper voltage bound (usp_up) Controller time constant (Tctrl) Controlled branch (p_cub) Active power setpoint (psetp) Lower active power bound (psp_low) Upper active power bound (psp_up) Controller time constant (Tctrl) Controller sensitivity dv/dP (Kpctrl) Reactive power setpoint (qsetp) Lower reactive power bound (qsp_low) Upper reactive power bound (qsp_up) Controller sensitivity dv/dQ (Kqctrl) Line drop compensation (ildc) External LDC (pldc) Operator Comment (sOpComment)

Table 16.7:Subset: Reactive Power Compensation Network Component Stored operational data
Shunt (ElmShnt) Actual number of steps (ncapa) Flag "Switchable" (iswitch) Control mode (imldc) Upper voltage limit (usetp_mx) Lower voltage limit (usetp_mn) Orientation (iQorient) Upper reactive power limit (qsetp_mx) Lower reactive power limit (qsetp_mn) Upper power factor setpoint limit (pfsetp_mx) Inductive/capacitive (pf_recap_mx) Lower power factor setpoint limit (pfsetp_mn) Inductive/capacitive (pf_recap_mn) Flag Remote Control (i_rem) Controlled Branch (Cubicle) (p_cub) Operator Comment (sOpComment)

16 - 6

DIgSILENT PowerFactory

Operation Scenarios

Table 16.7:Subset: Reactive Power Compensation Network Component Stored operational data
SVS (ElmSvs) Load Flow Control (i_ctr)l Remote Control (i_rem) Controlled Node (p_rem) Voltage Setpoint (usetp) Enable droop (i_droop) Qdroop Controlled phase (ivcop) Controlled Branch (p_cub) Q Setpoint (Qsetp) Act. Value of TCR (tcrqact) Act number of capacitors (nncap) Operator Comment (sOpComment) Control Mode (imldc) Phase (ilcph) Controlled Node (rembar) Upper voltage limit (usetp_mx) Lower voltage limit (usetp_mn) Controller Time constant (Tctrl) Controller Sensitivity (Kctrl) Operator Comment (sOpComment)

Shunt Controller (ElmShntctrl)

Table 16.8:Subset: Voltage Profile Network Component Stored operational data


Bus Bar/Terminal (ElmTerm) Station Controller (ElmStactrl): Target voltage (vtarget) Min voltage (dvmin) Max voltage (dvmax) Load Flow Control (i_ctrl) Controlled Bar (rembar) Voltage Setpoint (usetp) Controlled Phases (i_phase) Control Mode (imode) Operator Comment (sOpComment)

16 - 7

DIgSILENT PowerFactory

Operation Scenarios

Table 16.9:Subset: Feeder Scaling Factor Network Component Stored operational data
Feeder (ElmFeeder) Magnitude (i_scale) Active Power (Pset) Apparent Power (Sset) Current (Iset) Scaling factor (scale0) Reactive power scaling (i_scalepf ) Reactive Power Setpoint (Qset) Power Factor (cosphiset) Ind/cap (pf_recapset)

Table 16.10:Subset: Zone Scaling Factor Network Component Stored operational data
Zone (ElmZone) Load Scaling Factor (curscale)

16.2

Storage of Operational Data

As explained above, operation scenarios are used to store sets of operational data according to the defined operation scenario subsets. Depending on the availability of an active operation scenario, operational data is stored in an operation scenario, or in the recording expansion stage, or directly in the network model: If no operation scenario is active, modifications made to operational data lead to changes to the "default" operational data values. Depending on whether a variation is active or not, the data modifications are recorded by the 'recording' expansion stage. If an operation scenario is active and the modified object is in an active grid folder or active expansion stage, the modifications made to operational parameters are recorded by the operation scenario. The modifications apply to the corresponding operation scenario subset. A changed operation scenario is marked by a "*" next to the operation scenario name in the status bar. In the data manager the modified operation scenario and operation scenario subset are also marked ( ). The modified operation scenario is not immediately stored in the database. The changes are made in RAM, with no database transactions, and are stored after the operation scenario is saved.

16.3

Creating a New Operation Scenario

In order to create a new (empty) operation scenario: In the data manager, right-click on the Operation Scenarios folder in the active project.
16 - 8

DIgSILENT PowerFactory

Operation Scenarios

Select New --> Operation Scenario from the context-sensitive menu as shown in Figure 16.2. The dialogue of the new operation scenario pops up, where the name can be entered. Press Ok. Alternatively, an operation scenario can be created by saving the operational data of the current active network components. This is done by going to the PowerFactory main menu File --> Save Operation Scenario as... (see Figure 16.3). In this case the new operation scenario is automatically activated.

Fig. 16.2:

Creating a New Operation Scenario Object using the Data Manager

Fig. 16.3:

Using the Main Menu to Save as a New Operation Scenario

16 - 9

DIgSILENT PowerFactory

Operation Scenarios

16.4

Activating Operation Scenarios

An operation scenario is activated by right-clicking on it (in the data manager) and selecting Activate from the context-sensitive menu. Alternatively, the option Activate Operation Scenario from the main menu can be used. If another operation scenario is active, the active operation scenario is first deactivated; the user is asked if she/he wants to save the changes (if any) and the new operation scenario is activated. When an operation scenario is activated, a reference is created in the current study case. Upon activation, a completeness check is done, to check the following: If operational data is available for all components. If all defined operational data from the new operation scenario subsets can be applied to the network model. The results of the check are reported as messages in the output window. When an operation scenario is incomplete at activation, the 'default' operational data is set for the 'incomplete' elements, modifying the operation scenario. If an operation scenario is active, all operational data attributes in property sheets or in data manager are highlighted in a blue color. This indicates that changes of these values will not modify the base component (or variation) but are recorded by the active operation scenario.

Note:

The active operation scenario is displayed in the status bar

Fig. 16.4:

Blue Highlighted Operational Data in an Element Dialogue

16 - 10

DIgSILENT PowerFactory

Operation Scenarios

Fig. 16.5:

Blue Highlighted Operational Data in a Browser Window

16.5

Saving Operation Scenarios

A new operation scenario may be created by selecting from the main menu File -> Save Operation Scenario as . If any operational data (of a network component) is changed while an operation scenario is active, that scenario is considered to be modified. The modifications are not saved; this unsaved status is indicated by an asterisk (*) next to the icon for the operation scenario. Further, an incomplete operation scenario is also considered modified (because data will be completed on saving).

Fig. 16.6:

An Asterisk Indicates Unsaved Changes in Operation Scenarios

A modified operation scenario can be saved to database by: The menu entry Save Operation Scenario in PowerFactory's main menu (see Figure 16.3). The button Save in the dialogue window of the operation scenario (see Figure 16.10). The button Save Operation Scenario ( ) in the main icon bar (see Figure 16.7).

The context-sensitive menu (right mouse button) entry Action -> Save of the Operation Scenario (see Figure 16.8). The button Save as from the operation scenario dialogue (only available for active operation scenarios) can be used to save the current operational data as a new operation scenario. The new operation scenario is automatically activated upon being created.

16 - 11

DIgSILENT PowerFactory

Operation Scenarios

Fig. 16.7:

The Save Operation Scenario Button in the Main Icon Bar

Fig. 16.8:

Saving an Operation Scenario Using the Context-Sensitive Menu

Additionally, an auto-save for operation scenario data is available which will always save a modified operation scenario automatically. This option can be enabled in the Power-

Factory User Settings ( icon on the main toolbar; Data Manager tab). This is done by setting the Save Interval is set to '0 minutes', meaning that each modification will immediately be saved to database.

16 - 12

DIgSILENT PowerFactory

Operation Scenarios

Fig. 16.9:

The Auto-Save Option for Operation Scenarios in the User Settings Dialogue

16.6

Deactivating Operation Scenarios

An operation scenario can be deactivated via the main menu File -> Deactivate Operation Scenario or via the context-sensitive menu of the active operation scenario. On deactivation, previous operational data (i.e. the 'default' operational data) is restored. If the operation scenario was modified, a user confirmation is requested as to whether to save the changes or to discard them.

16.7

Performing Actions on Operation Scenarios

In the operation scenario dialogue, the following buttons are available, as shown in Figure 16.10:
16 - 13

DIgSILENT PowerFactory

Operation Scenarios

Save Save as Reporting

Saves modified scenario to database (only active if scenario was modified). Saves current operational data of network components as a new scenario. The new scenario will be activated automatically afterwards. Checks if operational data stored in the scenario is complete (available for all currently active components) and whether it refers to valid components. Inconsistencies are reported to the PowerFactory output window. Copies all operational data stored in the scenario to the network components without activating the scenario. If another scenario or a variation is active, it will record these values. Otherwise, the base model is changed. Compares two scenarios and prints a comparison report to the output window. (Only inactive scenarios can be compared).

Apply

Compare

Reporting RA Non-default running arrangement selections will be reported (only enabled if scenario is active). Most of these actions are also available in the context-sensitive menu when right-clicking on an operation scenario.

Fig. 16.10:

Operation Scenario Dialogue

16.8

Applying Operational Data from Operation Scenarios

The operational data from a non-active operation scenario can be applied to the operation scenario subsets of the active operation scenario or directly to the components of the
16 - 14

DIgSILENT PowerFactory

Operation Scenarios

Network Data folder:


If no active operation scenario is available, the source operational data is copied directly to the components of the active networks, altering the 'default' operational data. If an operation scenario is activated, the data is copied to the corresponding subsets. It is possible to apply all operational data from the ''source'' operation scenario, or just the selected subsets. This can be done via either the context-sensitive menu, or by clicking on the Apply button in the operation scenario dialogue (only to apply the complete operation scenario).

16.9

Reporting Information about Operation Scenarios

In operation scenario dialogue, the following reporting options are available: Reporting: Checks if operational data stored in the operation scenario is complete (available for all currently active components) and whether it refers to valid components. Inconsistencies are reported to the PowerFactory output window. Compare: Compares two operation scenarios and prints a comparison report to the output window. (Only inactive operation scenarios can be compared). Reporting RA: Non-default running arrangement selections will be reported (only enabled if operation scenario is active). To generate any of these reports, the corresponding button must be pressed in the operation scenario dialogue (as shown in Figure 16.10). In the case of a comparison, the user must select the operation scenario to compare, from a data browser that pops up immediately after the Compare button is pressed. Once the Ok button in the data browser is pressed, the report is generated in the output window.

Note:

Most of these actions are also available in context-sensitive menu when right-clicking on an operation scenario (Action -> ).

16.10 Copying a Subset of an Operation Scenario to Another Operation Scenario


The operational data is recorded in several subsets inside an operation scenario. The data of each subset can be transferred from one operation scenario to another. As an example, suppose that the "Running Arrangement Selections" from "Operation Scenario Low Load" must be applied to "Operation Scenario High Load". First, activate the target operation scenario (in this case, "Operation Scenario High Load"). Then, display the subsets of the source operation scenario (in this case, "Operation Scenario Low Load") in the right-hand pane of a data manager window. Right-click on the subset to be applied (in this case, "RA Selections"), and choose Apply (see Figure 16.11).

16 - 15

DIgSILENT PowerFactory

Operation Scenarios

Fig. 16.11:

Applying Subsets from One Operation Scenario to Another

16.11 Comparing Two Operation Scenarios


If one of the operation scenarios to be compared is currently activate, deactivate it. Rightclick on one of the operation scenarios and select "compare" from the context-sensitive menu. A window opens, from which we can select the other operation scenario to which we want to compare (see Figure 16.12). PowerFactory prints the differences between both operation scenarios in the output window.

Fig. 16.12:

Selecting Operation Scenarios for Comparison

16 - 16

DIgSILENT PowerFactory

Network Variations and Expansion Stages

Chapter 17 Network Variations and Expansion Stages

It is often necessary to make topological changes to a network model for a study. Use of Variations in PowerFactory ensures that these changes are recorded separately, and that the original network remains intact. A variation object is created in the Variations folder within the Network Model folder, as shown in Figure 17.1. The concept and the applications of variations and expansion stages were presented in Section 7.3.4 (Variations and Expansion Stages). This section explains how these objects are defined, managed and applied within network models.

Fig. 17.1:

Variations Folder with Expansion Stages

17.1

Basic Functionality

As introduced in Section 7.3.4 (Variations and Expansion Stages), expansion stages store changes made to the Network Data and its subfolders. Four kinds of changes are recorded: System parameter changes Operational data changes Adding a new object Deleting an object The changes (except operational data if an operation scenario is activated) are recorded and stored in the corresponding latest active expansion stage (the 'recording' expansion stage). If an operation scenario is active, the operational data changes are stored inside the corresponding operation scenario subsets. Objects cannot be renamed while a variation is active, except for objects added in the active 'recording' expansion stage.
17 - 1

DIgSILENT PowerFactory

Network Variations and Expansion Stages

Note:

When stored inside Operational Library folders, variations (Variations) only affect the objects at the same hierarchical level or below.

17.2

Creating New Variations and Expansion Stages

To create a new variation, right-click on the Variations folder ( ) in the data manager and select New -> Variation from the context-sensitive menu. Alternatively, select the

new variation dialogue will then open.

Variations folder and click on the New Object button ( ) on the data managers icon bar. Make sure that the Element field is set to Variation (IntScheme), and press Ok. The

In the variation dialogue, the name of the object can be edited, and a color set to represent (in the single line diagrams) the modifications introduced by this variation. The activation time of the variation is automatically set according to the expansion stages stored inside (the 'starting' time is the activation time of the earliest expansion stage; the 'complete' time is the activation time of the latest expansion stage). If no expansion stages are defined, the activation time is set by default to 01.01.1970. The Contents button can be used to list the expansion stages stored inside the variation, in a data browser. A variation can be copied within the current active project or in other projects; it can only be deleted when it is inactive. To create a new expansion stage, right-click on the target variation and select New --> Expansion Stage. Alternatively, select the target variation and click on the New Object button ( ) in the data managers icon bar. Set the 'Element' field to Expansion Stage

the name of the new expansion stage can be defined, and the activation time set. The option Exclude from activation can be enabled in order to put the expansion stage ''out of service''. If the parent variation is active, the user is asked (after pressing Ok in the new expansion stage dialogue) if the new expansion stage should be set as the recording expansion stage. An affirmative answer automatically adapts the study time to the activation time of the expansion stage. As many expansion stages as are required for the study can be created. The expansion stages are by default sorted according to their activation time, in ascending order. Once an expansion stage has been created, its activation time and the Exclude from activation option can only be edited if the parent variation is not active. If the Contents button of the expansion stage dialogue is pressed, a data browser listing the changes introduced on the network model pops up. The Split button can be used to assign changes from the recording expansion stage to a target (for more information, please refer to Section 17.14 (Splitting Expansion Stages)). The Apply button (only available if the parent variation is inactive) is used to apply the changes of an expansion stage. Changes are applied to the Network Model or to the recording expansion stage (for further information, please refer to 17.15 (Applying Expansion Stages Changes)). Expansion stages can be copied and added/pasted into other variations. The copying and pasting of expansion stages to the same variation is not allowed. An expansion stage can only be deleted if it is inactive.

(IntStage). Press Ok. The dialogue of the new expansion stage is opened. In this dialogue

17 - 2

DIgSILENT PowerFactory

Network Variations and Expansion Stages

Note:

The user is free to create as many variations and expansion stages as required for the study. The expansion stages are by default sorted according to their activation time in ascending order. It should be noted that a variation cannot be renamed or deleted when activated.

17.3

Activating Variations and Expansion Stages

A study case can have as many active variations as required. To activate a variation: rightclick on it and select Activate from the context-sensitive menu. The variation and its expansion stages will be activated based on their activation times and the current study case time. The expansion stages will be highlighted depending on the study time, indicating their activation status. Figure 17.2 is an example which shows how expansion stages are colored according to the specified times. The study time of "Study Case A" is set to a time between the activation time of "Expansion stage 2" and "Expansion stage 3". Consequently, "Expansion stage 1" is colored dark red, indicating that the changes introduced into the network in that stage are effective. "Expansion stage 2" is colored light red indicating that the changes introduced in this stage are effective, and additionally, that any other changes made to the network will be recorded in this expansion stage. In other words, it is the 'Recording' Expansion Stage. "Expansion stage 3" is not colored meaning that for this study case it is unused.

Note:

More than one variation can be active for a study case. However, there will always be only one recording stage.

17 - 3

DIgSILENT PowerFactory

Network Variations and Expansion Stages

Fig. 17.2:

Example Showing the Coloring of Expansion Stages According to the Activation Time

Deactivate from the context sensitive menu (after right-clicking the selection). The corresponding expansion stages are automatically deactivated and the changes that were made to the network model are reverted.

Single or multiple variations can be deactivated by selecting them and choosing

Note:

The 'Variation Configuration' object of the Study Cases, stores references to active variations. When a variation is activated/deactivated, the corresponding reference is created/deleted in the Variation Configuration of the active Study Case. When a Study Case is activated, the variations referred to in the Variation Configuration are automatically activated.

17.4

Conflicts During Activation of Variations

Active expansion stages with the same activation time must be independent. This means that the same object can not be changed (modified, deleted or added) in active expansion stages with the same activation time. If PowerFactory detects dependent expansion stages during the activation of a variation, an error message is displayed in the output window and the activation process is cancelled. Other conflicts that may arise during the activation of a variation: The same object is added by more than one expansion stage. In this case the latest addition is applied and a warning message is displayed in the output window.

17 - 4

DIgSILENT PowerFactory

Network Variations and Expansion Stages

An already deleted object is deleted. In this case the deletion is ignored and a warning message is displayed in the output window. An object is changed or deleted in a expansion stage but it does not exist. In this case the change is ignored and a warning message is displayed in the output window. A deleted object is changed in a expansion stage. In this case the change is applied to the deleted target object and a warning message is displayed in the output window.

17.5

Deleting an Expansion Stage

To delete an expansion stage, first deactivate the variation. Right-click the expansion stage and select Delete. Note that the elements are deleted to the PowerFactory Recycle Bin. They are not completely deleted until the Recycle Bin is emptied. In the case that the expansion stage was used to create data using a DPL script, then re-running this script might require the deleting of the corresponding expansion stage elements in the Recycle Bin.

17.6

Displaying the Activation Times of Expansion Stages

To check the activation time of an expansion stage, go to the corresponding variation in the data manager. If the variation is selected in the left window of the data manager, a list of expansion stages is displayed in the right panel and the corresponding activation time for each stage is listed there.

17.7

Editing the Activation Times of Expansion Stages

To edit the activation time of an expansion stage, go to the corresponding variation in the data manager. First the complete variation must be deactivated. If the variation is selected in the left window of the data manager, the list of expansion stages can be seen in the right panel. Double-click a desired stage for editing to open the corresponding dialog. The button can be used to alter the activation time for the stage. It is also possible to exclude the stage from activation.

17.8

The Recording Expansion Stage

The recording expansion stage is the stage in which the latest changes by the user are saved. Only one recording expansion stage is allowed per study case. When a variation is activated, the activation times of the expansion stages are compared to the time of the study case, and the stage with the most recent activation time (but earlier than or equal to the study time) is automatically selected as the recording stage. If the activation times of various expansion stages are the same and they correspond to the time of the recording expansion stage, the user must select only one of the stages for recording. The changes included in the remaining expansion stages become effective and are colored in dark red.
17 - 5

DIgSILENT PowerFactory

Network Variations and Expansion Stages

The user has the possibility to explicitly set the recording stage by right-clicking on the target expansion stage and selecting Set 'recording' expansion stage. In this case the study time will be changed to the activation time of the corresponding stage. If variations are active and the study time is changed, the recording expansion stage is automatically set according to the conditions described above. The recording expansion stage is displayed in the 'Status Bar' (bottom of the screen, below the output window), to inform the user.

17.9

Setting a Expansion Stage as the Recording Stage

The recording expansion stage is the stage in which the latest changes made by the user are saved. When a variation is activated for a study case, the activation times of the expansion stages are compared with the time of the study case, and the stage with the most recent activation time (but which is earlier than or equal to the study time) is automatically selected as the recording stage. The user can set the recording stage explicitly by right-clicking on the expansion stage and selecting Set 'recording' Expansion stage, in which case the study time will be changed to the activation time of the corresponding stage.

17.10 Displaying the Recording Expansion Stage in the Status Bar


The status bar is at the very bottom of the screen below the output window. To display the recording expansion stage in the status bar, right-click on the status bars right-most field, and choose Display Options -> 'Recording' Expansion stage.

17.11 Checking/Editing the Study Time (Date/Time of the Calculation Case)


Double-click the study case or open the Edit dialog by right-clicking. Use the button to change the activation time for the study case. Alternatively, press on the "Date/Time of Calculation Case" button, . This will open the same window where the time can be set. Lastly, at the lower right corner of the screen, the time of the simulation case is displayed. By double-clicking on this field you are taken to the same window. The study time can change the recording expansion stage explicitly.

17.12 The Variation Scheduler


The default activation of expansion stages is carried out according to their study time, as described at the beginning of Chapter 17. The Variation Scheduler can be used as an alternative method to manage this activation order. The variation scheduler (objects of class IntSscheduler) stores references to the existing stages in a variation and manages different activation times and out of service (Exclude from activation) options. The variation scheduler is an object inside the variation that, when activated, is able to modify the activation time of expansion stages so that the order in which they take effect in the
17 - 6

DIgSILENT PowerFactory

Network Variations and Expansion Stages

model is changed. The activation times of the stages return to their original values when the variation scheduler is deactivated. The user can define a variation scheduler which includes all the stages in the variation, setting different activation times and not considering certain stages. If the scheduler is activated, the activation order of the stages will be determined by the study time and the activation times set in the scheduler, regarding the out of service options from the Scheduler. In this case the settings from the expansion stages objects (IntStage) are ignored. The user can define as many variation schedulers as required in a variation, but only one can be activated at a time. In order to create a variation scheduler, open a data manager to display in the left-hand pane the variation in which the scheduler must be inserted. Right-click on the variation and select New -> Variation Scheduler. Alternatively, click on the New Object button ( ) and select Variation Scheduler (IntScheduler). The dialogue of the new Scheduler will pop up. The stages from the variation will be automatically referred to by the new scheduler. Press the Contents button to open a data browser listing the included stages with their activation times and their out of service options. The activation time and the 'out of service' option of the stages within a scheduler can only be changed in non-active schedulers, by pressing the Contents button and writing the desired values in the data browser. These changes of course do not affect expansion stage objects and only are effective when the scheduler is active. Variation schedulers are activated or deactivated via the context-sensitive menu on the data manager.

Note:

The references to the existing expansion stage are automatically updated in a scheduler.

Figure 17.3 shows the state in which the activation times of the stages can be edited inside the scheduler. The variation must be active and the scheduler inactive. Display the contents (references to expansion stages) of the scheduler in the right-hand pane of the data manager. The activation time of a stage can be edited by double-clicking on the reference to it in the right-hand window.

Fig. 17.3:

The Variation Scheduler inside a Variation

17 - 7

DIgSILENT PowerFactory

Network Variations and Expansion Stages

17.13 Comparing Variations and Expansion Stages


Variations and expansion stages can be compared, as can any other kind of object in PowerFactory, by means of the Merge Tool. To carry out the comparison, a 'base object' and an 'object to compare' must be selected using the context-sensitive menu. Once the objects to be compared are selected, the comparison is performed by the Merge Tool. The comparison results are presented in a data browser window (the Merge Tool window, as illustrated in Figure 17.4). This browser window contains a special toolbar to facilitate the visualization, sorting, and possible merging of the compared objects.

Fig. 17.4:

Merge Tool Window

In the data browser window containing the comparison results, a list of the objects stored inside the 'base object' and the 'object to compare' is presented. A comparison result symbol, indicating the differences found on each object from the list, is displayed in the column labelled 'Mod 1' (Figure 17.4). The symbols are defined as follows: The object exists in the 'base object' but not in the 'object to compare'; The object exists in the 'object to compare' but not in the 'base object'; The object exists in both sets but the parameters values differ; The object exists in both sets and has identical parameter values.

It is important to note that only objects from non-active projects can be compared. To compare two variations or expansion stages, proceed as follows: Right-click on a variation or expansion stage from a non-active project and select Select as Base to Compare in the context-sensitive menu. Right-click on the variation or expansion stage to compare and select Compare to 'Name of the base object' in the context-sensitive menu. The Merge Tool dialogue command (ComMerge) pops up. By default, all of the contained elements are compared; the 'Compare' field can be configured however, to

17 - 8

DIgSILENT PowerFactory

Network Variations and Expansion Stages

compare only the objects or selected subfolders (for further information please refer to The Merge Tool Manual). Once the 'Compare' option is set, press the Execute button to perform the comparison. The Merge Tool window with the corresponding results, as explained above, opens.

Note:

In the case of expansion stages (or variations with the 'Compare' option set to 'All Contained Elements') objects representing changes in the Network Data are compared.

For further information on the Merge Tool and its applications please refer to The Merge Tool Manual.

17.14 Splitting Expansion Stages


The changes stored in the recording expansion stage can be split within the same variation, using a special Merge Tool function. In this case all the changes introduced in the recording stage are listed in the Merge Tool window (not as changes but as the modified objects with a icon if the object was added; if the object was deleted; and if a parameter was changed). The user selects which changes she/he wants to move to the 'target stage' and performs the split.

Note:

The list generated in the Merge Tool window also displays the parents of the modified objects (when the Show all Elements icon ( ) is clicked). Usually they are shown by the that the objects themselves have not changed. icon, indicating

To split an expansion stage, proceed as follows: Open the dialogue of the expansion stage to be split (the recording expansion stage) and press the Split button. Alternatively, use the right-mouse context-sensitive menu. A data browser listing the remaining stages from the parent variation pops up. Double-click on the target expansion stage. The Merge Tool window, listing all changes from the compared expansion stages, pops up. Select the changes to be moved to the 'target stage' by double-clicking on the Assignment cell of each row and selecting Move or Ignore. Alternatively use the icons on the Merge Tool toolbar (see The Merge Tool Manual) to facilitate the selection. Press the Split button. All the changes marked as Move will be moved to the target expansion stage; the changes market as Ignore will remain in their original stage. After pressing Split the variation will be deactivated.

Note:

It is possible to merge two expansion stages by moving all the changes from one stage to a target stage.
17 - 9

DIgSILENT PowerFactory

Network Variations and Expansion Stages

17.15 Applying Expansion Stages Changes


The changes stored in a non-active expansion stage (modifications, deletions or additions) can be applied to the Network Data folder or to the recording expansion stage. To apply the changes, press the Apply button in the stage dialogue or right-click on it (in the data manager) and select Apply from the context-sensitive menu. If a recording expansion stage is activated, the changes are applied to it. If there is no active variation available, the changes are directly applied to the Network Data folder. Before the changes are applied, the user is asked for confirmation.

17.16 Consolidation of Variations


The changes recorded in all the active variations (expansion stages) can be permanently applied to the Network Data folder by means of the Consolidation function. After the consolidation process is carried out, the active (consolidated) expansion stages are deleted, and empty active variations are deleted also. To consolidate the active variations: Right-click on the active study case and select Consolidate Network Variation (option only enabled if active variations are available) from the context-sensitive menu. A confirmation message listing the variations that are going to be consolidated pops up. Press Yes to implement the changes. Once the consolidation process has ended, an ASCII report listing the consolidated variations and expansion stages is printed to the output window.

Note:

For Operational Library objects, active variations have to be consolidated in separate actions via the context-sensitive menu.

17.17 Coloring Variations and their Changes from within the Single Line Graphic
The single-line graphic coloring function ( ) offers three modes which may be used to identify changes from variations and expansion stages: 1 2 3 Coloring according to Grids/Original Locations: The object is shown in the color of the grid or the variation in which the object is added. Coloring according to Modifications: The object is shown in the color of the variation in which the object is last added or modified. Coloring according to Recording expansion stage: Three colors are supported: - Default color: for all objects not modified or added in the active recording expansion stage; - Modified color: for objects modified in the active recording expansion stage; - Add color: for objects added in the active recording expansion stage.

17 - 10

DIgSILENT PowerFactory

Parameter Characteristics

Chapter 18 Parameter Characteristics

The basic concept and the application of parameter characteristics and scales were explined in Section 7.7 (Parameter Characteristics and Parametric Studies). Now, in this chapter the information about the definition and the use of the different scales and characteristics is given.

18.1

Defining Scalar Characteristics

Scalar characteristics are used when a parameter should vary according to a mathematical relationship, with reference to a scale value. In Figure 18.1 the relationship "2x + 3" has been defined, and a scale (only the *.TriVal scale object may be used here) has been chosen, where "x" refers to the scale variables. Thus, if the 'Global Temperature' scale has been set to 15 deg by the trigger then the parameter that this characteristic is applied to will thus be multiplied by 2*15+3=33.

Fig. 18.1:

The scalar characteristic dialogue

To define a scalar characteristic for a parameter: In the edit dialogue of the target network component right click on the desired parameter. Select New Characteristic ' Scalar Value (Figure 18.2) The edit dialogue of Figure Fig. 18.1 pops up, select the corresponding scale (scales to be used in the new characteristics must be previously defined), define the characteristic and press Ok.

18 - 1

DIgSILENT PowerFactory

Parameter Characteristics

Fig. 18.2:

Creating a characteristic for a parameter

As seen in Figure 18.2 characteristics can be edited and reset. To define a new scale for a scalar characteristic: Open the Scales folder from the Equipment Library. Click on the 'New Object' button and select Scalar and Trigger (TriVal). Set the desired units of the scale, the associated trigger is automatically created in the current study case.

Note:

You can also use the "New Object'' icon (in the data browser) to create a new scale when selecting a scale for a characteristic.

18.2

Defining Discrete Time Characteristics

The discrete time characteristic uses an internally defined series of time scales that are convenient to use in order to define the characteristic. The user simply selects a scale and enters the corresponding values. The "Usage" field at the bottom of the characteristic dialogue specifies how the values entered in the "Values" column will be applied to the parameter that the characteristic is associated to: Relative in % will multiply the parameter by the percentage value Relative will multiply the parameter by the value Absolute will replace the current parameter value by the absolute value provided A graph showing the values plotted against the scale can be seen on the "Diagram" tab.

18 - 2

DIgSILENT PowerFactory

Parameter Characteristics

To define a new discrete time characteristic for a parameter: In the edit dialogue of the target network component right click on the desired parameter. Select New Characteristic ' Discrete Time Characteristic (Figure 18.2) The edit dialogue of the Discrete Time Characteristic pops up. Select the corresponding scale (predefined by the program), define the 'Usage' (see paragraph above), enter the characteristic values and press Ok.

18.3

Defining Discrete Parameter Characteristics

A discrete parameter characteristic is used to set the value of a parameter according to discrete cases set by the trigger of a discrete scale. Again the 'Usage' field at the bottom of the characteristic dialogue specifies how the values entered in the 'Values' column will be applied: Relative in % will multiply the parameter by the percentage value Relative will multiply the parameter by the value Absolute will replace the current parameter value by the absolute value provided The approximation field and accompanying polynomial degree field will be disabled because interpolation cannot be performed for discrete scales. The current percent value is shown, according to the case that is currently active. The diagram page for the discrete characteristic shows a bar graph for the available cases. See Figure 18.3 for an example. The bar for the case that is currently active (set by the trigger) is colored black

18 - 3

DIgSILENT PowerFactory

Parameter Characteristics

Fig. 18.3:

Discrete parameter characteristic diagram

To define a new discrete parameter characteristic: In the edit dialogue of the target network component right click on the desired parameter. Select New Characteristic --> One Dimension Vector The edit dialogue of the one dimension vector characteristic (generic class for one dimensional characteristics) pops up. After selecting the corresponding discrete scale (scales to be used in the new characteristics must be previously defined), the cases defined by the scale are automatically show in the list, define the 'Usage' and enter the characteristic values. Press Ok. A discrete scale is a list of cases. These cases are each defined by a short text description. The scale dialogue offers a text window in which each line defines a new case. See Figure Fig. 18.4 As soon as at least one case has been defined, the trigger field will be enabled.

18 - 4

DIgSILENT PowerFactory

Parameter Characteristics

Fig. 18.4:

Example of a Discrete Scale

To create a new discrete scale: Open the Scales folder from the Equipment Library. Click on the 'New Object' button and select Discrete Scale and Trigger (TriDisc). Write the name of the scale cases (one case per line). As soon as at least one is defined, the trigger field is enabled.

Note:

You can also use the "New Object'' icon (in the data browser) to create a new scale when selecting a scale for a characteristic.

18.4

Defining Continuous Parameter Characteristics

A continuous parameter characteristic is used to set the value of a parameter ('Y' values) according to the 'X' values set in the continuous scale. The Usage" field at the bottom of the characteristic dialogue specifies how the values entered in the "Values" column will be applied: Relative in% will multiply the parameter by the percentage value Relative will multiply the parameter by the value Absolute will replace the current parameter value by the absolute value provided The scale 'X-Y' points will define a curve which is used to approximate 'Y' values for trigger values in between, or even outside, the 'X' values. Various approximation functions are available: Constant: holds the Y-value in between X-values Linear: uses a linear interpolation. Polynomial: uses a polynomial function with user defined degree. Spline: uses spline function Hermite: uses a Hermite interpolation
18 - 5

DIgSILENT PowerFactory

Parameter Characteristics

The approximation curve will be shown in the diagram page. Examples of these approximation curves are shown in Figure 18.5.

Fig. 18.5:

Approximated characteristics

The interpolated Y-value may vary considerably between approximation functions. This is shown in Figure 18.5 where the linear and constant approximations are drawn on top of each other. The black crosses, which have been encircled in the figure for clarity, show the trigger setting and the resulting different Y-values. To define a new continuous parameter characteristic: In the edit dialogue of the target network component right click on the desired parameter. Select New Characteristic --> One Dimension Vector The edit dialogue of the one dimension vector characteristic (generic class for one dimensional characteristics) pops up. After selecting the corresponding continuous scale (scales to be used in the new characteristics must be previously defined), the 'X' values defined by the scale are automatically show in the list together with their unit. Define the 'Usage', enter the characteristic 'Y' values and define the 'Approximation' function. Press Ok. To create a new continuous scale: Open the Scales folder from the Equipment Library. Click on the New Object button and select Continuous Scale and Trigger (TriCont). Enter the unit of the 'X' values. Append the required number of rows (right click on the first row of the Scale table and select Append n rows) and enter the 'X' values. Press Ok.
18 - 6

DIgSILENT PowerFactory

Parameter Characteristics

Note:

You can also use the "New Object'' icon (in the data browser) to create a new scale when selecting a scale for a characteristic.

An example of a continuous scale is shown in Figure 18.6 where six temperature values are defined.

Fig. 18.6:

Example of a continuous scale

18.5

Defining Frequency Parameter Characteristics

A frequency characteristic may be viewed as a continuous characteristic whose scale is defined by frequency values in Hz. The definition procedure is similar to that of the continuous characteristics, here you have to select a Frequency Scale (TriFreq), which is defined in the same way as a continuous scale (except for the units, which are automatically set to Hz).

18.6

Defining Time Parameter Characteristics

Time parameter characteristics are basically continuous characteristics using time scales. A time scale is a special kind of continuous scale that uses the global time trigger of the active study case (a limited version of this scale is automatically created when a "Discrete Time Characteristic is created reference). The unit of the time trigger is always a unit of time but may range from seconds to years. This means that changing the unit from minutes to hours, for instance, will stretch the scale 60-fold. The units 's', 'm', and 'h' are
18 - 7

DIgSILENT PowerFactory

Parameter Characteristics

respectively, the second, minute and hour of normal daytime.

Figure 18.7 shows an example where four equidistant moments in a year have been created.

Fig. 18.7:

Example of a time scale

For information about the global time trigger please refer to Data Model Time Trigger.

18.7

Defining Two-dimensional Parameter Characteristics

When using a characteristic such as this one the user must also define two scales that will be used to plot the values against. The dialogue for the characteristic is shown in Figure 18.8.

18 - 8

DIgSILENT PowerFactory

Parameter Characteristics

Fig. 18.8:

Matrix characteristic dialogue

The nature of the characteristic depends on the kinds of scale that are selected. The first scale, that for columns, must be a discrete scale. The scale for rows may be a discrete or continuous scale. These scales may have already have been created or will need to be created (tip: use the New Object' icon when selecting a scale to create a new scale and read more about scales in the sections following). The 'Usage' field at the bottom of the characteristic dialogue specifies how the values entered in the "Values" column will be applied to the parameter that the characteristic is associated to. Relative in % will multiply the parameter by the percentage value Relative will multiply the parameter by the value Absolute will replace the current parameter value by the absolute value provided Interpolations between the values are determined by the setting in the 'Approximation' field (similar to the continuous characteristics). A graph showing the values plotted against the scale can be seen on the "Diagram" tab. A column calculator can be used to calculate the column values, as a function of other columns. This is done by pressing the Calculate... button. In the example of Figure 18.9, the first column is calculated as the average of the other columns. The result is shown in Figure 18.10.
18 - 9

DIgSILENT PowerFactory

Parameter Characteristics

Fig. 18.9:

Calculating column values

Fig. 18.10:

Result of a column calculation

Once the values have been entered and the triggers have been set, the 'Current Value' field will show what the value that will be used to multiply the parameter is.

18.8

Importing Parameter Characteristics from Files

When a series of data is available in an external file, such as an Excel file, or tab or space separated file this data may be utilized as a characteristic if the "Parameter Characteristic from File" (ChaVecfile object) is used. The external file must have the scale column for the data series in column 1. Once the input data dialogue has been generated (see Figure 18.11) a scale and trigger must be set [1] and the link to the existing data file is created [2]. The column field [3] is used for specialized purposes and should generally be left at the default figure of '1'.
18 - 10

DIgSILENT PowerFactory

Parameter Characteristics

The factor fields, [4] and [5], may be used to adjust or convert the input data. The data contained in column 2 of the external file will be adjusted by y=ax+b where "x" is the data in the external file and "y" is what will be loaded into the characteristic. The "Usage" field at the bottom of the characteristic dialogue [6] specifies how the values entered in the "Values" column will be applied to the parameter that the characteristic is associated to. Relative in % will multiply the parameter by the percentage value Relative will multiply the parameter by the value Absolute will replace the current parameter value by the absolute value provided. Interpolations between the values are determined by the setting in the 'Approximation' field [7]. A graph showing the values plotted against the scale can be seen on the 'Diagram' tab [8]. Once the file link has been set press the Update button [9] to upload the data from the external file to the characteristic.

Fig. 18.11:

The Parameter Characteristic from File dialogue

18.9

Handling Scales and Characteristics

If only a few characteristics for some parameters are to be defined, the characteristic may be directly defined using the menu options that are presented when right-clicking a parameter field. Characteristics that are defined in this manner are stored in that object. This characteristic is normally hidden in the database browser.
18 - 11

DIgSILENT PowerFactory

Parameter Characteristics

If the same characteristic is to be applied to several parameters then it is better to define the characteristic explicitly beforehand. Parameters may then be ''referred'' to the characteristic. This is what is meant by the New Characteristic -> Reference... option when rightclicking a parameter. All ''direct'' characteristics, and all references to characteristics are normally hidden in the database browser to prevent accidental direct manipulation. A special display mode is available in the database browser to check and edit the characteristics for whole classes of objects. This 'Scales' mode must be enabled in the User Settings, on the 'Functions' tab. An example of a browser showing the 'Scales' tab is shown in Figure 18.12 (remember that the browser must be in 'detail' mode to see these tabs).

Fig. 18.12:

Browser in 'scales' mode

The browser in 'Scales' mode shows all characteristics defined for the displayed objects, together with the original value and the current value as determined by the characteristic. In the example, a one-dimensional characteristic for the active power (parameter 'plini'), using the scale called 'Loading' has been used for the load 'Load C(1)'. The trigger has set the scale to a value of 200% and thus the "Current Value" is 100 MW which is 200% of the input value of 50 MW. The current values will be used in all calculations. The browser 'Scales' mode is not only used to quickly inspect all defined characteristics, but may also be helpful in defining new characteristics, or in selecting references. Figure 18.13 shows the context sensitive menu that appears when a characteristic field is rightclicked.

18 - 12

DIgSILENT PowerFactory

Parameter Characteristics

Fig. 18.13:

Managing characteristics

The option Select Characteristic..., shown in the figures 18.13 and 18.14, is used to define references to a characteristic and may also be used to create a range of characteristics. This is shown in Figure 18.14 where a reference is defined for three loads at once.

Fig. 18.14:

Selecting a range of characteristics

The 'Scales' tab of the browser will only show the 'Characteristic' column when at least one of the objects has a characteristic defined for a parameter. It is thus necessary to define a characteristic for one object prior to using the browser, when the user would like to assign characteristics, for the same parameter, for a range of other objects. To define a ''High-Low'' loading characteristic for all loads, for instance, can thus be done by performing the following steps. Create a discrete scale in the grid folder. Create a vector characteristic using this scale in the grid folder. Edit one of the loads, right-click the active power field and assign the vector characteristic to the relevant parameter. Open a browser with all loads, activate the 'detail' mode and select the 'Scales' tab.
18 - 13

DIgSILENT PowerFactory

Parameter Characteristics

Select the characteristic column (right-click -> Select Column) and then right-click the selected column. Use the Select Characteristic... option and select the vector characteristic.

18 - 14

DIgSILENT PowerFactory

Defining Variable Sets

Chapter 19 Defining Variable Sets

Variable Sets (IntMon objects) are used to select and monitor variables associated with objects of the data model in order to store results. The selection of a variable set, determines the variables to be recorded during a simulation run, the variables to be displayed by a "Flexible Page Selector" or a result/text box (results box and Flexible page selector with link). Before a calculation is performed or after initial conditions of a time domain simulation have been calculated, the user can define variable set monitors from the single line graphic by: Right clicking on the target network component. Selecting Define -->Variable Set (SIM) from the context sensitive menu. This will pop up a data browser listing all the results objects defined in the active study case. The user must select a target result object by double clicking on it. If no results object have been defined, PowerFactory will generate a default one, called 'AllCalculations'. Variable Set Monitors can also be created directly in the target results object using the Contents button (of the Results object). This will pop up a browser with all the variable sets that have already been defined. To define a new variable set, the browser can be pressed. icon in the

19.1

The Variable Set Monitor Dialogue

An example of the variable set object is shown in Figure 19.1. Here the variable set for the load called 'Load C', which is found in a grid called 'North' of the active project is shown (red circle). In this case a RMS simulation (green circle) is to be performed and the total active and the reactive power flowing to the load are going to be monitored (blue circle).

19 - 1

DIgSILENT PowerFactory

Defining Variable Sets

Fig. 19.1:

Example of a variable set dialogue

In the variable set monitor dialogue the following fields can be seen: Object Is the selected object (normally a network component), whose variables are going to be monitored. If no object has been selected the "Class Name" field becomes active. This is normally used for more advanced studies and need not be explained further here.

Class Name

Display Values during simulation in output window (...) By checking this box and selecting the option 'Display results variables in output window' in the simulation command, the values calculated for the selected variables during a simulation will be displayed in the out put window. Filter for As mentioned previously, there is a large number of variables that may be observed in PowerFactory. To be able to find and select these they are sorted into sets. A series of filters allows the user to sort through the sets. Further information about the selection of variable is given in the subsection Searching the Variables to Monitor. The first sorting of the variables is by calculation function (load-flow, short-circuit, etc.). In the example of Figure 19.1, the RMS tab has been automatically selected, as a prior RMS calculation was performed.

Page Tab

Available Variables All of the variables that are available for display are listed here (as sorted by the filter). Selected Variables The selected variables are shown here. Variables are placed here by highlighting (selecting) them on the "Available Variables" side and then pressing the ( ) button. Individual variables can also simply be double-clicked to transfer them from one column to the other.
19 - 2

DIgSILENT PowerFactory

Defining Variable Sets

Display as

If this box is checked then all of the selected variables are shown in the 'Selected Variables' area. If it is not checked then the filter will also apply to the "Selected Variables" area and only those selected variables in the filtered set will be shown.

The following buttons are available on the right of the dialogue: Balanced/Unbalanced: Depending on the type of calculation to be monitored (balanced or unbalanced), the user can toggle between balanced and unbalanced variable sets. goes to the manual input page for variables- for advanced use.

Print Values: Prints the current values for all the selected variables to the output window. Variable List: Prints a list of all available variables to the output window. Variable List (Page): Prints a list of available variables for the current tab (e.g. Basic Data) to the output window.

19.2

Searching the Variables to Monitor

The first sorting of the variables is by calculation function (load-flow, short-circuit, etc.). Within these sets variables are sorted into sub-sets. The user can select the desired subset by means of the drop down menu on the Variable Set field. Following a description of the available subsets: Currents, Voltages and Powers Almost self explanatory- these are the outputs as calculated by a calculation function. The variable is preceded by "m:" (representing 'monitored' or 'measured') as in "m:P:bus1" for the active power drawn by the load. The user may select one set for branches and one set for the nodes, which then is used for each node the edge is connected to. Bus Results Variables for the bus/s that the element is connected to (usually preceded by "n:" for 'node'). A branch element (having only one connection to a bus) will obviously only have results for "Bus1." An edge element (two connections, as in a line for example) will have "Bus1" or "Bus2". This means that the results of objects connected to the object whose variable list is compiled can be accessed. An example of this variable is the open end voltage at a line end. See the subsection Selecting the Bus to be Monitored for further information. Variables that can be used as interface between user defined and/or PowerFactory models (inputs and outputs). They are preceded by "s:". These should be used when creating a controller or in a DPL script. These variables are accessible whilst an iteration is being calculated, whereas the other variables sets are calculated following an iteration.

Signals

Calculation Parameter Variables that are derived from the primary calculations (i.e. currents, voltages, power), from input data (i.e. the absolute impedance of a
19 - 3

DIgSILENT PowerFactory

Defining Variable Sets

line, derived from impedance/ km * line length), or that have been transformed from input data to a format useful for calculation (actual to per unit), or that are required for such transformation (e.g. nominal power). The parameters that actually are available depend on the object type. Calculation parameters are preceded by a "c:". Element Parameter Variables that belong directly to the object selected (preceded by "e:"). Type Parameter Type variables that are linked to the element object under consideration; for example, the current rating of a line type that a line element is using. Reference Parameter These are variables from objects that are linked or connected to the object under consideration (preceded by "r:"). For example, a line element may be part of a line coupling and the reference parameter will allow us to display the name of the coupling element. The use of reference parameters is explained following examples. For general use it is sufficient to simply select the variables required and transfer them to the selected variables column. To find a particular variable requires some knowledge of where the variables are stored in the object under consideration.

19.3

Examples of Variable Selection

In this subsection an examples for the use of the above described sets are given. The procedures described below always apply, regardless of which is the final use of the variable set monitor, i.e. Flexible Data Page, Results Box, Plots, etc. Suppose that a two winding transformer called TX1 is to be monitored. The following variables are going to be selected: Type name, Tap setting, Nominal and calculated voltages at the HV node. The name of the transformer type is entered in the type data so we select the type parameters (as the Variable Set) in the filter- the name is also entered on the basic data tab so we should select the Basic Data Tab, and the type name parameter is "loc_name" (Figure 19.2). Notice that the focus object for the variable set object is a transformer.

19 - 4

DIgSILENT PowerFactory

Defining Variable Sets

Fig. 19.2:

Finding the type name

The tap setting will be found in the element data and the parameter is located on the load-flow tab (this information is gained as the user becomes more familiar with PowerFactory and recalls where the data was entered; such recollection directs the user to the correct variable sub-set). The variables seen in the selected Variables column should now be: t:loc_name e:nntap To be able to see the variables for the HV bus we use the reference parameters. The reference parameters work like a 'refer to' command. In Figure 19.3 this is illustrated schematically. We have started by creating a variable set for the object 'TX1' which is an element object. Using the reference parameter we will refer to the object that the LV side of the transformer is connected to, which is the cubicle 'Cub_1'. Since the nominal and calculated voltages of the node are located in the node object itself we will next need to refer to this node object 'LV'.

19 - 5

DIgSILENT PowerFactory

Defining Variable Sets

Fig. 19.3:

'Referring to' with reference parameters

Step by step, the process will be as follows: We first need to refer to or 'jump to' the cubicle. If we picture the input dialogue for the transformer element we recall that the connections for the HV and LV sides are listed on the basic data tab, so this is where we will logically find the 'link' to the connected object (the cubicle). In Figure 19.4 we can see that this selection has been made (page tab Basic Data). We also notice that the object that is presently the focus is the transformer element as the object. To affect the jump to the cubicle we choose the reference parameter set, and then select the object that we want to jump to, the cubicle connected to the HV side in the Available Variables list.

19 - 6

DIgSILENT PowerFactory

Defining Variable Sets

Fig. 19.4:

Selecting the parameter to be displayed

Double-clicking on this jumps us to another variable set object whose focus object is the cubicle that the LV side of the transformer is connected to. It is not immediately obvious that the jump has occurred as the new variable set object appears directly on top of the original one. If grabbing the one that appears before you and drag it to one side it will become more obvious (you can also see this by noting that the name in the "Object" field has changed), and will look as shown in Figure 19.5. The second jump must now be affected - to the node that the cubicle is connected to. In a logical fashion this 'connectivity' is also found on the basic data tab. Figure 19.6 shows the result of these jumps in PowerFactory. Lastly, the parameter required must be selected.

19 - 7

DIgSILENT PowerFactory

Defining Variable Sets

Fig. 19.5:

Jumping to the cubicle using the reference parameter

The parameter we wish to display is the nominal voltage of the connected node. This will be found on the Basic data tab and we must choose the element parameter set to find the parameter, as shown in Figure 19.6. The parameter is called: uknom kV Nominal Voltage: Line-line At this point we could also add the calculated voltage for the node. This will be found under "Currents, Voltages and Powers" on the load-flow tab. After having clicked Ok until you are back at the original variable set object you will see that these referenced variables have been added as: r:buslv:r:cBusBar:e:uknom r:buslv:r:cBusBar:m:U Which can be read as --> 'jump to the LV bus'- -> 'jump to the connected node' --> 'display the selected variables.' Once the user is more familiar with this nomenclature this jump may be typed in directly to the variable set object.

Note:

In this particular example we have used a 'long' method to show to the node variables for illustration purposes. Typically, however, a user wishes to display calculated variables such as the voltage at the end of a line where the breaker at that end is open. In this case PowerFactory has a special 'shortcut' set - the "Bus Results".

19 - 8

DIgSILENT PowerFactory

Defining Variable Sets

Fig. 19.6:

Jumping to the node and selecting the parameter

These bus results can only be seen in the calculation function tabs and they are drawn from an internal node that is not displayed on the single line graphic. An illustration of this node and its relationship to the cubicle is shown in Figure 19.7.

Fig. 19.7:

Internal node

19 - 9

DIgSILENT PowerFactory

Defining Variable Sets

19.4

Selecting the Bus to be Monitored

When selecting variables from the 'Currents, Voltages and Powers' set, the user will notice that there is a filter called 'Bus Name'. This is used to determine which side of an edge element is to be considered. To maintain standard nomenclature the objects at the ends of a line element are named 'Terminal i' or 'Terminal j' and 'HVside' or 'LVside' in the case of a transformer. The ends of an edge element are named 'bus1' or 'bus2' and 'bushv' or 'buslv' respectively (a three winding transformer will also have 'busmv'). These ends are matched to the 'i' and 'j' sides so that i -> bus1 or bushv and j -> bus2 or buslv. Thus, when choosing variables from the flexible page manager the user should specify which side of the edge element the variables are to be taken from. Note that 'bus1, bus2, bushv, buslv' are not references to the connected node, they are in fact the ends of the edge element. When a variable is selected for display from the single line graphic the user will notice a further classification, that of '_LOCALBUS.' This classification merely indicates the end of the edge element and describes internally which side of the edge element the result box should access its variables from. That is the 'bus' local to that end.

19 - 10

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Chapter 20 Reporting Results in PowerFactory

This chapter presents the tools and options included in PowerFactory to view the results of the preformed calculations. Key concepts in this topic are Virtual Instruments (VIs), Results Objects and Variable Sets.

20.1

Virtual Instruments

A virtual instrument is basically a tool for displaying calculated results. The most common use of a VI is to look at the results of a time-domain simulation like an EMT or RMS simulation, by defining one or more plotted curves showing the variables changing with time. But there are various applications of the virtual instruments, for example to graphically display voltage profiles, FFT plots or the results of a harmonic analysis. This could be in the form of a bar graph, a plotted curves, single displayed variables, tables of values, etc. To visualize results from a calculation, two different parts are important: The Virtual Instrument Panel The Panel is basically a page in the active graphics board, where different plots or graphs are stored and displayed. Also the basic information about the included virtual instruments is stored here. The Virtual Instruments The virtual instruments are shown on the VI panel. They display the results of one or more variables or parameters in various ways. Every VI on a panel can be set up individually to the need of the variable(s) which is to be displayed. So all signals, parameters, variables or other magnitudes can be chosen to show in a virtual instrument. These are normally floating point numbers, but there is also the possibility to show discrete variables as well as binary numbers, like e.g. a binary variable, a "out of service" flag or the switching operation of a circuit-breaker. To show these magnitudes there are various designs of virtual instruments available. These can be divided into several groups, which are described in the sections of this chapter: Plots are the 'basic' diagrams to show all sorts of time-domain variables or magnitudes depending on other variables. The plots can be used in the following ways: Subplot (VisPlot) Subplot with two y-axis (VisPlot2) X-Y plot (VisXyplot) FFT plots (VisFft)

20 - 1

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Bar Diagrams are similar to the plots. The results are then not shown as a line, but as single bars for every data point. Vector Diagrams easily show different variables - like voltage, current or power - in a vector diagram using polar or cartesian coordinates. Meter Panels can display variables or parameters using different panels like: digital display horizontal scale of a meter vertical scale of a meter measurement VI interactive button/switch Curve Inputs are used to conveniently convert graphical information (graphs or curves) into a set of data by scanning and sampling the data points. Bitmaps can be inserted as a remark or to provide further information. Additionally to these options there are further types of diagrams for a specific usage are e.g. the time-overcurrent plot or the time distance diagram used for protection studies. These plots are not described in this chapter but directly in the part of the manual dealing with the individual calculation method. The usage of the plots and the available tools like labels, constants, etc. for the virtual instruments can be used in either one of the diagrams described above or below. In the following list these virtual instruments are described shortly: VIs for Protection Studies Time-Overcurrent Plot When studying overcurrent relays their characteristic is often displayed depending on the magnitude of the current and the specified tripping time. Here also the characteristic curves of power system elements which are to be protected can be inserted into the diagram. See also Section 32.6 (Time-Overcurrent Plot). R-X Plot This plot is used specially for showing the characteristics of distance relays. The tripping characteristic of one or more relays can be visualized in a R-X diagram. Also the impedance of adjacent elements can be shown graphically inside the diagram.See also Section 32.8 (Relay Plot). Time-Distance Diagram For studying the selectivity of distance protection the time-distance protection is often used. So PowerFactory provides a convenient method to automatically show all distance relays in a specified protection path in one specified diagram. See also Section 32.7 (The Time-Distance Diagram). Feeder Definitions Voltage Profile shows voltage profile of a complete subsystem belonging to a defined feeder in the

20 - 2

DIgSILENT PowerFactory

Reporting Results in PowerFactory

power system depending on the distance or the node number. See also Chapter 12 (Grouping Objects). Schematic Path With this plot a meshed or a radial network can easily be shown in a brief schematic way without result boxes but with optical information like colors for overloading, etc. Harmonics Waveform Plot Using this plot a waveform is generated from the magnitude and the phase angle of the harmonic frequencies. With this diagram a variable like the voltage or current, which is defined in a harmonic source e.g. a power electronic device or a load, can easily be shown as a time dependent variable. So the real shape of the voltage can be seen and analysed.A more detailed description see 20.1.6 (The Waveform Plot). Modal Analysis Eigenvalue Plot The Eigenvalue Plot (Viseigen) displays the eigenvalues calculated in the modal analysis (Chapter 26). Double-clicking any of the displayed eigenvalues, pops-up an informative dialogue, where the oscillation parameters and the coordinates in complex and polar representation are given. For a full description of the eigenvalue plot is see 26.3.2 (Modal Analysis Plots). Mode Bar Plot The Mode Bar Plot (VisModbar) displays the participation factors of the system generators in a selected mode. Full description of the Mode bar Plot is given in 26.3.2 (Modal Analysis Plots). Mode Phasor Plot The Mode Phasor Plot (VisModephasor) displays the same information of the Mode Bar Plot but in a phasor diagram. For further information see 26.3.2 (Modal Analysis Plots).

20.1.1

Virtual Instrument Panels

Virtual instruments are created and edited on a Virtual Instruments Panel (SetViPage) which is one of the possible types of pages on a Graphics Board. Other page types are single line graphics and block diagram or frame graphics. A new virtual instrument panel can be created by selecting the File > New option on the main menu and subsequently selecting a "Virtual Instrument Page" in the ComNew. This will create a new page in the "Graphics Board" of the currently active study case. selecting the "Insert New Graphic" icon on the graphics board's toolbar and selecting "Virtual Instrument Panel". This will also create a new VI panel in the current graphics board. All virtual instrument panels are stored in graphics boards. A graphic board holds default settings for plots and other diagrams. The icon is clicked or the Edit Actual Virtual Instrument Panel option is selected from the context sensitive menu to edit the dialogue.
20 - 3

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Note

If a a new virtual instrument panel is created, while there is no Graphics Board opened already, a new Graphics Board in will be added to the current study case.

The dialogue is build of several pages. These are x-Axis Advanced Results holds the default x-Axis for plots without local axis stored in pages without local axis. holds the advanced settings like the arrangements of the plots or their specific style. stores a reference to the default results object used by the plots.

Once a VI panel has been created, the "Append new VI(s)" icon ( ) can be clicked or the option Create VI >... from the context menu of the SetVipage can be selected to add new virtual instruments to the VI panel. Virtual instrument panels usually set the size and position of new virtual instruments like plots automatically. But it is possible to turn on user defined moving and resizing of the plots. In this modes the plots can be moved or resized by the user. Also the and icons are used to tile the Virtual Instruments horizontal or to arrange the VIs automatically. A ViPage uses a predefined style which set line-styles, line-width, fonts and other graphical settings. Own styles can be created and selected. A different style can be selected on each VI panel of a Graphics Boards. These different options are described in the following sections.

Editing the Virtual Instrument Panel dialogue


There are several ways to access the graphics board dialogue from PowerFactory When the panel is empty one can access the dialogue by simply double-clicking the empty VI panel or an empty area on the panel. Right-click the background of the VI panel besides the shown plots and choose Edit actual Virtual Instrument Panel from the context menu. The simplest way to edit the dialogue is to click the icon.

The icon is clicked or the "Edit Actual Virtual Instrument Panel'' option is selected from the context sensitive menu to edit the dialogue. The dialogue is split into three different pages named: x-Axis holds the settings for x-Axis of plots and Waveform Plots. Advanced holds graphical settings like Style and Background. Results contains the reference to the default results object for plots.

20 - 4

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Automatic Scale Buttons


The buttons or are clicked to scale the x-axis respectively the y-axis of all plots on the virtual instrument panel automatically. Plots on other panels in the same graphics board are unchanged if their axes are local. The buttons are inactive, if there are no plots shown at all or if the x or y axes can not be scaled automatically. That applies e.g. for bar-diagrams showing the distortion after a harmonics load-flow calculation, where the x-axis is given by the harmonic frequencies. Different types of plots, like the subplot and the waveform plot, can be scaled simultaneously. With the button "Zoom X-Axis" a certain range of the x-axis or of several x-axes can be zoomed easily. Click on the icon to activate the function, then click on a plot, hold the right mouse button and 'drag' the mouse to the right or to the left to mark the desired range on the x-axis. If the mouse button is released, PowerFactory will then show the marked x ranged zoomed.

Automatic Arrangement of VIs


Virtual instrument panels usually set the size and position of new virtual instruments like plots automatically. Then the VIs can not be resized or moved. So the position of these VIs is set automatically and their size remains unchanged. There are two different modes for automatically arranging the VIs. The user can choose to arrange the VIs using either "Arrange Subplots on Top of Each Other'' with the icon "Arrange Subplots automatically'' with the icon . or

The modes can easily be changed by pressing the one or the other button. In addition the position of VIs can easily be exchanged. Thereto mark the VI by clicking it. Then 'drag' the VI onto another plot. Thus the position of the VIs will be exchanged.

Note

This option of exchanging the plots by dragging is only possible, when one of the arrangement buttons are active. If you deactivate both buttons by unselecting them in the toolbar, the plots can freely be moved by dragging them on the panel. See also "Moving and Resizing".

Another way to rearrange the VIs is to open the dialogue of the VI panel by pressing the icon and then use the Arrangement options on the "Advanced" page. Here the option User defined can be activated. So the VIs will no longer be arranged automatically but can be resized and moved inside the panel. So the user is free to arrange the VIs 'ad libitum'. This mode is also activated by disabling the selected icon or .

20 - 5

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Moving and Resizing


Moving and resizing of VIs in the standard virtual instrument panels is turned off. Both can be activated by deactivating the 'auto-arrangement' modes by disabling then currently active icon or . Also the option User defined can be activated on the "Advanced" page of the "edit" dialogue of the VI panel. A VI is clicked to mark it. The VI is 'dragged' inside the panel by clicking it with the mouse button pressed. Then the VI can be move across the panel. The mouse is released to set the new position. A VI is clicked on the border to resize it. A VI is clicked on the border to resize it.

Note

Please note that some VIs can not be resized at all because their size is set automatically. This applies e.g. for the bitmap VI with the option "Adapt Size of VI to Size of Bitmap" enabled.

Page Format
The page format is modified using the in the toolbar of the graphics board. VI panels use the page format set in the graphics board. In addition a local page format can be created for each VI panel. The option "Create local Page Format'' is selected in the context sensitive menu to create a local page format. The VI panel now uses a local page format independent of the page format set in the graphics board. "Set default Page Format'' is selected in the context sensitive menu to reset the local page format. The VI panel now uses the default format of the graphics board again.

Editing Variables of Plots


The icon is clicked to open the "Edit Plots on Page'' dialogue for defining curves of several plots. If the variables of only one subplot are to be changed, it is suggested to edit the dialogue of the plot itself by double-clicking it. This procedure is more convenient. This dialogue gives a very good overview over the diagrams on the VI panel and the variables, axis and curve styles. Figure 20.1 shows an example of the dialogue.

20 - 6

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.1:

Editing all plots on the page

Each line of the table named Curves defines a variable shown on the panel. The variables definition applies to the plot shown in the first column. When the dialogue is opened the plots are sorted from left to right and from top to bottom and are numbered accordingly. All data and settings of each variable is displayed in the table, and the columns are used exactly like the columns in the table of a plot. To move a variable from one plot to another, simply change the Plot Nr. of the variable to move. In this table not only subplots (VisPlot) are shown but also plots with two y-axis (VisPlot2) can be modified. Here additionally in the column y the y-axis can be defined to which the variable is related. In Figure 20.1 this can be seen in the to last rows of the table. Here both variables are shown in one plot number 4 with two different axis. If the number in this row is grey, only one y-axis is available in this plot. Like in most tables new rows can be add. Default File for Page is a reference to the results element of the virtual instrument panel. The Filter... button opens the filter dialogue. The selected filter will be applied to all plots on the current virtual instrument panel.

dialogue box of the virtual instrument panel.

Default File for Page is a reference to the default results element of the virtual instrument panel. This is exactly the same setting like the one displayed on the Results page of the

Title Block
All virtual instrument panels in a Graphics Board show the same title by default. The only difference of the title blocks on the VI-Panels are the panel name and the page number which are unique for each panel. To create a local title for a VI-Panel simply right-click on the title and select Create local Title from the context sensitive menu. Like in the single line graphics the icon in the toolbar is clicked to show or hide the title block. The title can ba defined or changed by double-clicking on them or use the icon to modify the title text. For details about the settings of the title object refer to Section 10.5.6.

20 - 7

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Results
Some VIs like the most frequently used class "subplot" show curves stored in one ore more result objects (ElmRes). The curves are selected in a table where the result element, the element and a variable have to be selected. The result column of VIs needs not to be set for most calculations. The VI itself will look for the results element to display automatically. The default results element is either: 1 2 3

Results reference on page Results of the VI Panel accessed by pressing the


icon. If 1. is empty the Results reference on the Results page of the Graphics Board will be used by pressing the icon. If both (1. and 2.) are not empty, the results element used for the last calculation will be applied. If there is no calculation the appropriate results element in the study case will be used (if any).

Background
The default background of virtual instrument panels is empty. The background settings for the panel can be found in the frame Background on the "Advanced'' page of the virtual instrument panel dialogue. The Filename defines the background file, which can be either a Windows Metafile (*.wmf), a Bitmap (*.bmp) or a AutoCad DXF file. If the selected file does not exist, or if the filename is not set the background remains empty. VIs can be transparent or opaque. Graphics are transparent must be activated to make all graphics transparent. If an opaque graphic fills the complete panel area the background will be invisible.

The Context Sensitive Menu


The options in the context sensitive menu of the VI panel may vary depending on the cursor and the settings of the panel. The options are listed below: Edit Actual Virtual Instrument Panel opens the virtual instrument panel dialogue. Create local Page Format creates a page format for the current panel. Paste Text inserts text from the from the clipboard into the panel. A VI can be selected from the list shown in the Create VI >... option to create a new VI on the panel. Style > Select Style is clicked to select a style for the panel. Style > Create new Style is selected to create a new style for the panel. Style > Edit Style of clicked Element is selected to modify the style of the selected element only. Select All is selected to mark all VIs. Export Results... exports the shown result into e.g. the output window, a ASCII file, a Comtrade file or the clipboard.

20 - 8

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Creating Virtual Instruments


New VIs can easily be created with the "Append New VI(s)" icon . A small dialogue will pop up, where the class of VI can be selected from the available Object and the number of VIs to be added to the current VI panel. Another way to create VIs is to select the option Create VI >... from the context menu of the SetVipage. Then a class of virtual instrument can be selected to be added to the current VI panel.

The Default Styles


Each virtual instrument panel uses a style where line-widths, fonts, brushes and other graphical settings are defined. There are six predefined styles available in DIgSILENT PowerFactory, which are: Default - Standard English Text and Symbols Gr Default - Greek Symbols Tr Default - Turkish Symbols Paper Gr Paper Tr Paper The "Default" styles uses smaller line-widths and smaller fonts than the "Paper" styles. It was designed to get nice printouts. The paper style was designed for reports and papers where meta-files are included in text-programs. In addition to the layout the styles hold predefined VIs. There are several ways to select a predefined or user-defined style for the current virtual instrument panel. The easiest way to change the style is using the toolbar. The list-box in the toolbar is clicked and an available style is selected. A style is selected from the Style > Select Style >... in the context sensitive menu of the VI panel. A style is selected in the VI-Style list-box on the "Advanced'' page of the SetVipage dialogue. The user-defined styles are described in detail in Section 20.1.10 later in this chapter.

20.1.2

Plots

Plots are the most used diagrams to show all sorts of parameters, states, signals or variables depending on the time or on another variable. To show these time-domain variables or to visualize a magnitude depending on other variables, there are the following plots available: SubPlot (VisPlot) SubPlot (2y) with two y-axes (VisPlot2) X-Y plot (VisXyplot) FFT plots (VisFft)
20 - 9

DIgSILENT PowerFactory

Reporting Results in PowerFactory

The Subplot
SubPlots are the 'basic' diagrams and are typically used to display one or more plotted curves from the results of a EMT or RMS simulation. But also bar diagrams used e.g. to visualize the results of a harmonics calculation are a special type of SubPlots. A new subplot is created on the current VI panel by pressing the icon and selecting a Subplot (VisPlot) from the pull down list. More than one subplot may be created at once by setting the Number of VI(s). The new empty subplots appear with standard settings, as is shown in Figure 20.2.

Fig. 20.2:

Creating a new SubPlot (VisPlot)

To edit the subplot either right-click it, and select the Edit option from the context sensitive menu double-click it.

Editing Subplots
The edit dialogue of a subplot, as shown in Figure 20.3 has pages for the y-axis and xaxis of the individual subplot as well as an additional Advanced page for auxiliary settings.

The y-axis page is normally used to set the curves in the subplot, while the x-axis normally, and by default, shows time.

20 - 10

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.3:

The SubPlot edit dialogue

The subplot edit dialogue has the following features: Scale The y-axis may be defined for more than one subplot at the same time, or, and by default, may be defined as a "local Axis'' format. When the option Use local Axis is disabled, a reference to the used 'global' axis type is shown and can be edited by pressing the Automatic .

The color, line style, and line width of all new curves in the subplot will be set automatically when the corresponding option is enabled. The Set now button will apply automatic line formats all existing curves again.

Shown Results This is a reference to the currently active result file (ElmRes). This object will be used, if no result file is specified in the Curves definition table. Curves The definition table for the curves is used to specify the result file (optional), object and parameter for each of the curves as well as their representation.

These available options are described in more detail below.

Setting the X-Axis


The x-axes often have to be synchronized for all subplots or for all subplots on one VI
20 - 11

DIgSILENT PowerFactory

Reporting Results in PowerFactory

panel, for instance to show the same time-scale in all plots. In order to synchronize the x-axes without losing the freedom to manually set each subplot, a hierarchy of x-axes is used in the Graphics Board: The Graphics Board contains the basic x-axis definition. This definition is used by default by each new subplot. A VI panel, however, may define a local x-axis definition, which will then be the default for each new subplot created on that panel. The subplot thus uses the Graphics Board or the panel SetViPage definition by default, but may also use a local x-axis definition.

Note

If you change the settings of the x-axis, which uses the definition stored in the graphics board, all x-axis are changed using the same definition in the whole project. These are also affected, if the x-axis is automatically scaled or zoomed.

The following list describes how to edit the definition of the different x-axes: For editing the graphics board definition, select the option Graphics Board and go to the x-Axis page of the edit dialogue of the plot. Using the button the dialogue for changing the x-axis definition for the complete graphics board can be accessed. Another way is to click the the x-Axis page. icon for the graphics board dialogue and then go to

Similar to the graphics board definition, the x-axis definition of the VI panel is changed by selecting the option Page. This will open the dialogue of the of the VI panel (SetVipage). Another way is to go to the panel dialogue by clicking the icon or selecting Edit actual Virtual Instrument Panel from the context menu and then go to the x-Axis page. The local x-axis definition is simply accessed by selecting the option Local. Then the options for specifying the x-axis is shown in this dialogue. The options available for the x-axis are similar to the one for the y-axis. They are described in the following section. The only difference is in selecting the variable of the axis. For the x-axis there is a list to choose the x-Axis Variable shown in Figure 20.4. The Default value is depending on the type of simulation and the result object created during the previous simulation. Then for time-domain simulations different representations of the time scale are available. For the FFT plot e.g. the x-axis can be scale using the frequency respectively the harmonic order.

20 - 12

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.4:

The variable list available for the x-Axis

The option User defined enables the user to choose any variable for the x-axis, which is selected to be stored in the result object. As shown in Figure 20.4 an element and a variable can be selected for the x-axis. In this way a x-y plot can be created. There is also an own plot type for a more convenient way to create x-y plot: the VisXyplot is described in more detail in section .

Setting the Y-Axis


The y-axes are normally not synchronized like the x-axis, because they all show different parameter values and thus need parameter-specific settings. By default, the Graphics Board's default plot type is used, but more plot types may be created and used, i.e. plot types for voltages, power, factors, slip factors, etc. By using the same plot type, different plots can be compared more easily, without the risk of mis-interpreting a difference in curve amplitude. Although the x- and y-scale definitions thus use somewhat other synchronizing variations, the way a particular axis is set is quite similar. Both the y-axis and the x-axis page in the subplot edit dialogue have the option to Use local Axis or simply Local. If this option is disabled, a reference is shown which points to the used axis definition as described in the last section. If the option is enabled, the axis is defined locally and the edit dialogue changes in order to do so. See Figure 20.4.
20 - 13

DIgSILENT PowerFactory

Reporting Results in PowerFactory

The local definitions of an axis has three parts: the axis limits (minimum and maximum) the kind of axis (linear, logarithmic) the auto scale options the settings to adapt the scale to a setpoint. The axis limits can be given manually, or can be auto scaled by pressing the Scale button. With this button the limits are defined automatically from the curve shape once. The options to Auto Scale the plot are Off On Online Turns any auto scaling function off and will display the results in the range between the given limits. This option will automatically scale the plot at the end of a simulation. This option will automatically scale the plot during the simulation.

The x-axis additionally features a Chart option. If ticked a range and a start value can be set. This will set the x-axis to the specified range. During the simulation only a x-range, set in the options, is shown and will 'wander' along with the calculation time. The Adapt Scale settings are used to force a tick mark on the axis at a particular value. This is the Offset value. Other tick marks will be drawn at 'nice' distances from this offset. The default value for both x- and y-axis is an active adapt scale with Trigger equal to zero. So the main ticks of the axes start at zero. To see the deviations from the offset, the Show Deviations from Offset option will draw a second axis on the right, which has its zero baseline at the offset value. The Show Deviations from Offset option is available for the y-axis only. An example of two subplots is given in Figure 20.5 where a voltage sag is shown with both an instantaneous and a RMS value curve. The top curve has the Adapt option disabled, and both axes autoscaled.

Fig. 20.5:

Two subplots with different axis definitions

The bottom subplot has a smaller x-axis, to show only the interesting part, and has the
20 - 14

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Adapt option set on both axes.


The y-axis has its offset set to the nominal voltage level (11kV) and also shows the deviations from that level in the right vertical axis. From this deviation, it is directly clear that the RMS voltage initially drops more than 5kV. The x-axis has its offset set to the event time, which in this case is 100ms when a short-circuit was simulated. From the x-axis, it is now directly clear that this short-circuit was cleared after 200ms, at t=300ms.

Specifying Curves for Plots


The curves in a subplot must be taken from a result object (ElmRes), which is created by a power system calculation function like the RMS or EMT simulation. How to create such a result object is explained in 20.2.1. The selection of the variables to be plotted in the current plot is done in the y-axis page of the edit dialogue. This is easily accessed by double-clicking the background of the plot. The dialogue is shown in Figure 20.6 and Figure 20.7 in detail.

Fig. 20.6:

Defining a new curve

Each line in the shown matrix has the definition of a curve. The first column states the result object from which the data to plot the curve will be read. If it is empty, the standard result file will be used defined in the reference Shown Results in the same dialogue. The second column states the power system element (here: the generator "G1d''), which is selected from the available elements in the result object. The third column states the actual variable for the curve ("xspeed''), selected from the variables in the result object, belonging to the selected element. The next columns specify the style of the individual curve. With the last two columns the user can norm the values of the variable to a nominal value given. A new result object, element or parameter is selected by double-clicking the field or by right-clicking it and selecting Select Element/Type or Edit from the context sensitive menu. A list of possible result objects resp. elements or parameters will pop up from which a new entry can be selected. The color, line style and line width settings are edited in the same way: double-clicking or right-clicking and selecting Edit. New curve definition lines can be created by right-clicking on the column number (on the
20 - 15

DIgSILENT PowerFactory

Reporting Results in PowerFactory

far left) (see cursor arrow in Figure 20.6) and selecting Insert Rows or Append (n) Rows. Marked curve definitions can similarly be deleted from the list by selecting Delete Rows.

Note

If you want to see changes between to consecutive simulations, you can run the first simulation. These results will be stored inside the result object Results.ElmRes, which can be found in the active study case. Copy this object, paste it and rename it to e.g. "old Results". Then you can add the same variable to a plot twice and select the "old Results" result object for one of them (as shown in Figure 20.6). This will show the old and the new results in one plot.

If more than one curve is to be specified for the same result file and element, this may be done in one action by selecting more than one variable from the variable list. This will automatically create new entries in the curve definition table for all additionally selected variables. The entered Result File and Element are copied automatically. This very convenient procedure is shown in Figure 20.7 and Figure 20.8.

Fig. 20.7:

Defining subplots with minimum effort, step 1

Fig. 20.8:

Defining subplots with minimum effort, step 2

Similarly several elements can be selected. Then PowerFactory will automatically insert the according number of rows. The variables are then set automatically to the one selected in the first row.

20 - 16

DIgSILENT PowerFactory

Reporting Results in PowerFactory

The Subplot with two Y-Axes


A plot with two y-axes can be seen in Figure 20.9. To create this plot the icon has to be pressed and a Subplot (2y) (VisPlot2) to be selected from the pull down list. This will add a subplot with two y-axes to the current VI panel. The second axis can then be defined and curves for this axis can be specified similar to the 'basic' subplot VisPlot. In the edit dialogue of this plot, as shown in Figure 20.9, there will now appear a page for y1-Axis and for y2-Axis.

Fig. 20.9:

The definition of the second y-axis

On the page for the second y-axis, this additional axis can be deactivated by unticking the option Use second y-Axis.

The X-Y Plot


A further type of plot is the x-y plot. This plot will show one variable depending on a second variable in one diagram. The two variables can be completely independent from each other and do not have to belong to one element. To create a x-y plot press the icon and then select a X-Y Plot (VisXYPlot) from the pull down list. This will add a new x-a plot to the current VI panel. Figure 20.10 shows the edit dialogue of the plot.

20 - 17

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.10:

Defining variables for a X-Y plot

On the variables page the variables for the x- and y-axis are specified. Both variables have to be stored in one result file of a simulation. To select variables of two different elements the option Show x-Element in Table has to be activated. The options and the tools for the curves are similar to the ones described in section (The Subplot). On the second page Scales of the dialogue the scales of the two axis can be set automatically or global definitions can be used for them. The plot is drawn for a certain time range. On page Time Range this range can be set to the whole simulation time. Another way is to select only a specified range to show these results.

The FFT Plot


The FFT plot (VisFft) is similar to the normal subplot (VisPlot) from the handling point of view. This plot will not show variables depending on the simulations time but on the frequency. A time range of signal can be selected and then be transformed from the time domain into the frequency domain using the Fast-Fourier Transformation (FFT). This then will shown the harmonic contents of this signal depending on the nominal frequency of the system. Like other plots it can be created by using the "Append VI(s)" icon . An much easier way is to click on a plotted curve and then selecting Create FFT Plot from the context sensitive menu. Then the mouse pointer can be 'dragged' from the selected point on the curve to the left or right. When holding the mouse still, a quick-help box shows the range, beginning and end of the curve to be transformed. By clicking the diagram again, a range for the FFT is set and the FFT is calculated and shown in a newly created plot. When entering the "edit" dialogue by double-clicking the plot, the x- and y-axis can be defined on the different pages similar to the VisPlot. Additional options are:

20 - 18

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Calculate

This additional option on the page y-Axis modifies the fast-fourier transformation and the time range of the signal the FFT is applied to. The button Synchronize will synchronize the time range with the given frequency.Furthermore the different parts of the variable and the number of samples for the FFT can be selected. The unit of the x-axis can be set to Frequency or Harmonic Order. For the Harmonic Order the nominal frequency can be set different to the network frequency. On the Advanced page the display of the FFT results can be toggled between the Spectral Line and a solid Curve.

Unit

Display

20.1.3

The Vector Diagram

Using a vector diagram complex values such as voltages, currents and apparent power can be visualized as vectors in one or more diagrams. A complex variable can be defined and then shown in two different representations: Polar coordinates, i.e. magnitude and phase of the current Cartesian coordinates, i.e. active-and reactive power There are predefined vector diagrams for calculation results. The predefined vector diagrams can easily be created using the context menu of a branch: right-click a branch in the single line graphic or in the data manager. select the option Show > Vector Diagram >... from the menu select one of the predefined variable, i.e. Voltage/Currents The example in Figure 20.11 shows the voltage and current on one terminal of a line.

20 - 19

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.11:

Vector diagram of voltage and current on a line

Note

A vector diagram can only be shown when branch elements like lines, load, transformers, etc. are selected. Then the vectors of the voltage, current or power across the elements or at the nodes connected to the elements are shown in diagrams. The vector can be shown after a load-flow calculation or before and after a transient RMS simulation.

Another way of creating a vector diagram VecVis to the current VI panel is - equal to adding a subplot - by pressing the icon and selecting a Vector Diagram (VecVis) from the pull down list. In the edit dialogue the variables can then be shown as described in Section (The Subplot). The objects and variables of the vector diagram can be changed manually by editing the dialogue, which is opened by double-clicking the vector diagram. The more convenient method is to right-click the diagram and selecting Default Vectors >... to select a predefined vector from the list. Label of Vectors changes the label of the displayed elements shown in the diagram. Jump to Element to select one of the elements that is connected to the currently displayed element. Set Origin set the origin of the diagram to the position selected with a mouse-click. Center Origin set the origin of the diagram in the middle of the plot.

20 - 20

DIgSILENT PowerFactory

Reporting Results in PowerFactory

The X And Y Axes


In most plots, the x and y scale are given by the minimum and maximum value of each scale. A vector diagram can't be defined using minimum and maximum for each scale because the x- and the y-ratio must be equal. The ratio for each unit is therefore set as the parameter units per axis tick. In addition the location of the origin can be defined. If all shown variables have the same unit, the axis are labelled with values and unit. If there is more than one unit, the labels show ticks. A legend showing the ratio of the units is add at the right bottom of the plot. The balloon help of the scale labels always the absolute values for each unit.

Editing the Unit/Tick


To modify the scale of an axis the table Scales in the edit dialogue can be changed. The column "Unit'' shows the unit, the column "Scale'' shows the ratio in unit per tick. A higher ratio then shortens the vector. If the "Auto Scale'' option in the dialogue is turned on, the scales are adapted whenever a new calculation is ready. Turn off "Auto Scale'' to keep the scale limits.

Setting the Origin


The origin position of the vector plot can be changed either graphically or with the dialogue: Right-click the vector plot and select Set Origin. This will move the origin to the rightclicked position. Modify the "x-Min.'' and "y-Min.'' values in the plot dialogue to the starting value of the x-and y scale.

Changing Coordinates
The plot displays the vectors in cartesian or in polar representation. The grid of a polar plot is shown as circles and can be altered as described in Section (The Subplot). The representation setting is also used for the mouse position display in the status bar. The option Polar in the context menu toggles between representation in polar and cartesian coordinates. On the Advanced page in the edit dialogue this representation can also ba changed.

Label of Vectors
In the edit dialogue as well as from the context menu of the plot the label of the vector can be displayed in the different coordinate representation, so the real and imaginary value or the magnitude and phase angle can be shown.

Changing the Object


There are two different ways to change the objects for which the vector plot is made by: Right-clicking one of the vector plots and select Jump To. This shows a list of all connected elements from which one can be selected. Here the side of a branch
20 - 21

DIgSILENT PowerFactory

Reporting Results in PowerFactory

element is automatically checked. The Jump To option is not available if there is more than one element shown in the same plot or if there are no calculation results available. The "Element'' column in the variables table in the plot dialogue, as depicted in Figure 20.12, is double-clicked to select a new object.

Fig. 20.12:

Variable list of a vector diagram

Changing the Variables


There are two different ways to change the displayed variables: Right-click the vector plot and select the Default Variables option. This will show a list of predefined variables. This option is not available if there is more than one element shown in the same plot or if there are no calculation results available. The "Var. x-Axis'' column in the variables table in the plot dialogue, as depicted in Figure 20.12 is double-clicked to select a new variable from a list. The variables shown in the list are either the magnitude or the real-part of the vector. The angle or the imaginary part are set automatically. The selection list is empty when no calculation result are available.

20.1.4

The Voltage Profile Plot

This plot VisPath shows the voltage profile of a radial network based on the load-flow results. It is directly connected to a defined feeder in the network, so it can only be created for the part of the system a feeder is assigned to. The voltage profile plot needs a successful load-flow calculation. It can not be created if there is no load-flow calculated. The most easy way of creating a voltage path plot is to define such a plot in the single line graphic. To create a voltage profile: First a feeder for the radial network has to be define, for which a voltage profile is to be created, by right-clicking on a switch and then select Define > Feeder.... A new feeder object is created. A branch of an already defined feeder is right-clicked. The context sensitive menu will show the option Show > Voltage Profile. PowerFactory will then create a new object VisPath showing the voltage profile for the defined feeder. In the 'calculation relevant objects' or in the data manager select the feeder object which is just created or which is to be shown the voltage profile of. Right-click on it and select Show > Voltage Profile from the context sensitive menu.

Note
20 - 22

The option Show > Voltage Profile is only available when a load-

DIgSILENT PowerFactory

Reporting Results in PowerFactory

flow calculation is performed or the results of the last calculation are valid.
The voltage profile plot shows the voltage of terminals or busbars along a feeder. The variable(s) shown by the plot can be changed. If there is no valid load-flow calculation the plot remains empty. A voltage profile is shown in Figure 20.13.

Fig. 20.13:

Example of a voltage profile plot

The curve shown can be clicked and marked at the busbar positions (points). Like most plots available in DIgSILENT PowerFactory the voltage profile plot can be labelled. See the context sensitive menu or the description of the result graphs for details. The plot in the example shows the voltage m:u with the unit "p.u.''. The position of the busbars (x axis) is shown as the distance from the beginning of the feeder. The unit is "km''. The variables shown for the busbars can be changed by the user through the edit dialogue of the plot. The x-Variable of the voltage profile can be changed by editing the dialogue of the plot. On the Scales page of the Edit dialogue a list box defines the x-axis variable. There are two predefined x axis. Distance Bus Index Other shows the distance of the busbar away from the feeder in "km''. numbers the busbars so the distance on the plot between the busses is constant. prompts for random variable input. Each variable available at all busbars in the feeder can be input there.

The y-Variable(s) can be user-defined. The predefined variable for the plot is the voltage m:u with the unit "p.u.''. Any other variable available at all busbars in the feeder can be set. To change the shown variable, edit the voltage profile dialogue and change the variable name in the table. Resize the table to append variables. The Branch Coloring settings define a different coloring of the plot. For example the over20 - 23

DIgSILENT PowerFactory

Reporting Results in PowerFactory

loading of a branch element can be defined and shown in the plot. In Figure 20.13 to line elements are loaded over 80%, so they are displayed in red. Also either the maximum or the minimum values of parallel branches can be shown. On the Advanced page the Coloring of the busnames shown in the plot can be defined additionally. Off Black does not display any bus names. simply shows all names in black font style.

Colored acc. to Feeder Colors the bus names according to the color of the different feeders. The context sensitive menu shows now additional functions regarding the voltage profile plot, when right-clicking on the plot or on the profile: Edit Feeder Edit Data opens the "edit" dialogue of the feeder related to the plot. opens the "edit" dialogue of the selected line, transformer or other element.

Edit and Browse shows the selected element in the data manager. Mark in Graphic marks selected element in the single line graphic(s).

20.1.5

Schematic Visualization

Schematic Diagram
Besides the voltage profile the object VisPath can also be used to show the schematic diagram of a radial network. The usage and the different options available for this plot are similar to the voltage profile plot in Section 20.1.4. The diagram shows a schematics of a radial network. It is also directly connected to a defined feeder in the network, so it can only be created for the part of the system a feeder is assigned to. It can only be shown or created, if a load-flow is calculated for the system To create a schematic diagram, a feeder has to be defined for the radial network by right-clicking on a switch in the single line graphic or in the data manager and then select Define > Feeder.... The context sensitive menu of a branch with a defined feeder will now show the option Show > Schematic Visualization > Plot. PowerFactory will create a new VisPath and the schematic diagram showing the profile for radial network. In the 'calculation relevant objects' or in the data manager select the feeder object and select Show > Schematic Visualization > Plot from the context sensitive menu. In the plot the terminals and busbars are displayed as well as the electrical elements belonging to the feeder depending on the real distance of the network or on the bus index, where the distance between every node is constant.

20 - 24

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Schematic Single Line Diagram


There are further functions to show the schematics of radial networks. These functions are applied especially when no single line graphics of a network exists and one wants to let PowerFactory draw the schematic of a radial network automatically in a very convenient way. These functions can be activated from the context sensitive menu of the branch element with a defined feeder similar to the voltage plot or the schematic plot described above. Using the option Show > Schematic Visualization >... two slightly different operations can be used: Distance diagram for the radial network defined by the feeder. The distances between the terminals/busbars in "km'' are set automatically according to the distances specified in the lines.

PowerFactory will draw automatically from the database a single line

Bus Index

Similar to the schematic diagram the distances between the terminals/ busbars will be neglected and a standard value will be used for all terminals.

Note

Remember to run a load-flow prior to activating these functions. Otherwise you will not have access to the options.

20.1.6

The Waveform Plot

The waveform plot VisHrm is used to display the waveform of a voltage or current after a harmonics load-flow calculation. These harmonics are typically emitted by an harmonic voltage or current source described in 24.4. The waveform is calculated according to the following formula: n

u(t) =
where i n t f(i)

u ( i ) cos ( 2 f ( i ) t + ( i ) )
i=1

Index of frequency Number of frequencies Time Frequency at index i

u(i) Magnitude at frequency i phi(i)Angle at frequency i For the If a successful harmonic load-flow calculation with the option All Frequencies is performed, the waveform plot will show the results of any distorted or pure sinusoidal variable, e.g. voltages or currents, from any element in the network. It can also be created if there is no load-flow calculated. To create a waveform plot on the current VI panel, press the icon and select a Waveform Plot (VisHrm) from the pull down list. More than one subplot may be created at
20 - 25

DIgSILENT PowerFactory

Reporting Results in PowerFactory

once by setting the Number of VI(s). The new empty subplots appear with standard settings. Usage, settings and tools of this plot are similar to the subplot. A detailed description can be found in (The Subplot). Although the definition of the variables is slightly different. Besides the result object and the element, there can be defined the magnitude of the variable, which is to be shown in the plot, and additionally the angle related to the magnitude can be inserted when this information is needed. The appropriate angle is automatically matched to the selected magnitude, if such angle is available in the results and if the variable is a voltage or a current. When no appropriate angle is found, one may be selected manually. Nevertheless it is not obligable to insert an angle to shown the waveform plot. Figure 20.14 shows an example for defining a variable in the VisHrm.

Fig. 20.14:

Defining variables in a waveform plot (VisHrm)

The Waveform Plot Settings


Most other settings/options of the waveform plot act exactly like the settings of the Subplot (VisPlot). See Section (The Subplot) for more information. Additionally to the standard settings of the plots there are specified settings of the waveform plot. Step size and range for time t are specified at the waveform plot settings object stored in the "Changed Settings'' of the active project. To change the waveform plot settings either press the Calculation button in the dialogue of the plot or select Calculation in the context menu on the plot. The Settings Waveform Plot object SetWave holds the Step Size and the Range for the calculation of waveforms in the Waveform Plots (see Figure 20.15).

Fig. 20.15:

The waveform plot settings dialogue

20 - 26

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Step Size
The waveforms seen in the plot are calculated by the waveform plot itself. To avoid errors the Step Size must be smaller than half the period of the highest frequency calculated by the harmonics load-flow. To guarantee that this criteria is always fulfilled, independent of the harmonics calculation, the Step Size is entered in Number of Samples in Highest Frequency. The Highest Frequency and the resulting Step Size are shown just for information.

Range
To be independent of the basic frequency the time range of the waveform is entered in Number of cycles of Basic Frequency. Basic Frequency and the resulting Range are shown just for information.

20.1.7

The Curve-Input Command

The curve input command is used for measuring printed curves. The original curves must be available in windows metafile (*.wmf) or in bitmap (*.bmp) format. The graphics file is displayed as background in a curve input plot. This plot then allows for defining plot points by successive mouse clicks. The curve input plot (VisDefcrv) allows for measuring and editing single curves of group of curves at once. The measured curve points are stored in a Matrix object. The positions of the axis in the curve input plot can be set by the user. Special functions for groups of curves allow for x-value synchronization and many other facilities to make their input easier and faster.

Creating a Curve-Input Plot


The special 'Curve Input' virtual instrument plot VisDefcrv is needed for measuring curves. Such a plot, like al other virtual instruments, is displayed on a Virtual Instrument Panel. A new virtual instrument panel is created with the new command in the file menu or the new icon of the graphics window.

A new Curve Input plot is created by right-clicking the empty panel, or by pressing on the panel button bar and subsequently selecting the Curve-Input (VisDefcrv). The curve input option dialogue as shown in Figure 20.16 is opened by double-clicking the curve input plot.

The Input Options


The input options are used to select the graphics file which is to be measured. Only windows metafile (*.wmf) or bitmap (*.bmp) formats are allowed. The x-scale and y-scale settings are used to set the range and type of the axes of the curves as they are in the graphics file.

20 - 27

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.16:

Editing the curve input plot

Two different types of curves can be input: Single Each matrix input defines a single curve. The first column in the matrix holds the xvalues, the second one the y values. Other columns are ignored. Set of Curves Only the first matrix is used for input. The first column in the matrix holds the xvalues, the other columns hold the y-values of each curve in the group of curves. The measured curve is drawn between the measured points by interpolation. This is important when the measured curve is later used with a specific interpolation. Setting the correct interpolation mode when measuring the curve causes a better fit while avoiding excess curve point definitions. Available modes of interpolation: Linear Cub. Spline Polygon Hermite

The Context Sensitive Menu


The case sensitive menu is opened by right-clicking the curve input plot. The menu is used to select the curve for which points are to be measured or edited, to select the measure20 - 28

DIgSILENT PowerFactory

Reporting Results in PowerFactory

ment mode, to synchronize x-values by interpolation, etc. Grid Curves Interpolation Interpolate All Interpolate N Delete Curve N Add Curve Set Axis Opens the grid layout dialogue Used to switch from 'single' to 'set of curves' mode. Selects the interpolation mode interpolates undefined y values for all curves for all defined x-values interpolates undefined y values of curve N for all defined x-values Removes curve N from the matrix appends a new curve

With this option the origin of the axes and the length of the axes can be adjusted according to the figure imported. Origin sets the origin of the graph to be inserted. x-Axis sets the x-axis independent on the y-axis. x-Axis (y=Origin) sets the x-axis dependent on the y-axis origin. y-Axis sets the y-axis independent on the x-axis. y-Axis (x=Origin) sets the y-axis dependent on the x-axis origin. Origin sets the origin of the graph to be inserted.

Input specifies the input mode: Off switches off the measurement mode x/y-Pairs each left mouse click adds a point to the curve. Drag & Drop turns on the 'edit' mode: all points can be dragged and dropped to change their y-position or left clicked and deleted with the 'Del' key. Active Curve sets the curve to modify How to Scan curve(s) using the curve-input plot: Create a virtual instrument panel with a curve input plot Open the curve-input dialogue with a double-click and set the following options - Select the background file - Select "Single'' or "Set of Curves'' in the "Curves Listbox'' - Select the interpolation mode - Select on or more Matrix objects in the table named "Curves''. At least two columns must be already present in the matrix object. Close the dialogue. Define the axis position to adapt the curve input to the background plot: - Select the graphic cursor - Right-click the plot and select Set Axis - Origin. Left click the origin of the plot

20 - 29

DIgSILENT PowerFactory

Reporting Results in PowerFactory

- Right-click the plot and select Select Set Axis - x-Axis. Left click the end of the xaxis of the background plot. - Right-click the plot and select Select Set Axis - y-Axis. Left click the end of the yaxis of the background plot. Open the curve-input dialogue and adapt the scale of the curve input plot to the scale of background plot Right-click the plot and select the Active Curve option and activate the first curve. The option is not available when - There is no Matrix object selected in the 'Curves' table of the dialogue - One of the matrix object(s) has less than two columns Right-click the plot and select the Input option. Select the input mode. With the first curve, select the with x/y-Pairs option. Left click the curve to set x/y values. Right-click the plot and select the Input - Off option to finish the definition of the curve

20.1.8

Embedded Graphic Windows

Some dialogues contain embedded graphic windows to visualize input settings. An example is shown in Figure 20.17 for the parameter characteristic dialogue. Many other dialogues have also such embedded graphs. An embedded graph shares much of its functionality and features with the 'normal' graphs in the Virtual Instruments, like the subplot in section .

Fig. 20.17:

Example of an embedded graphs

20 - 30

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Similar to the plots on a VI page the mouse position in the embedded graphic is shown in the status bar. The context sensitive menu of the embedded graphs offers commands for printing and zooming. Print Picture This option opens the print dialogue. The default print format for embedded graphs is A4. The printer orientation is set to the orientation of the embedded graph. The print dialogue offers to preview the printed area. Zoom In This option changes the cursor to a magnifying glass. Drawing a rectangle with the cursor will enlarge that area. Zoom Back This option restores the previous zoom area. Zoom All This option zooms out to the complete window. Change Viewpoint This option changes the arrow to the move arrow . Press the left mouse button, hold it down and move the mouse outside the window. This will move the zoomed area in that direction. Press the right mouse button or Esc to change the cursor back again. Additionally there may be a Limits available in the dialogue. Pressing this button will open a small dialogue where the minimum and maximum of the x-axis can be changed, or the Scale button will reset the settings and scale the axis automatically.

20.1.9

Tools for Virtual Instruments

Different kinds of plots are used to display calculation results or device data. There are a lot of tools, which will help the user interpreting and analyzing these data or results of calculations. Most of them are accessible directly through the "status bar" of PowerFactory or through the context sensitive menu. This is activated by right-clicking on the curve or an the plot background depending on the function one wants to choose.

Edit Dialogues
The "Edit" dialogue of the plots can be accessed through double-clicking on the background of each plot or by selecting Edit in the context sensitive menu. A faster way to access special information of the plot is to double-click directly on the element which is to be change. This can be the: Legend the legend text and representation can be edited directly. X-Axis to edit the x-axis limits, scales and variable representation and auto scaling options of the current graphics board or panel. Y-Axis to edit the y-axis limits, scales and variable representation and auto scaling options as well as the variable to be shown. A double-click on other positions will open the plot dialogue.
20 - 31

DIgSILENT PowerFactory

Reporting Results in PowerFactory

The Status Bar


In the status bar of PowerFactory on the bottom of the program window useful information of the data shown in the curves can be obtained. First the value of the mouse position in the diagram is displayed in the status bar, similar to the information shown with an open single line diagram. When a curves is clicked and marked with a cross, the cross value is also displayed in the status bar and remains unchanged until the cross is set to a different position. If there is no cross on the active page the status bar value is reset and no longer displayed. Some plots have different scales on one axis, therefore these plots can not display a value in the status bar. The option Curve-Tracking can be found in the status bar, normally in a grey font style. When double-clicking this option the "Curve-Tracking" mode will be activated. Then a cross will appear if the mouse arrow will be near a curve. If the mouse is hold still for one second, the x- and y-value will be shown in a balloon window.

Labelling Plots
There are different styles of labels available for labelling curves and graphics. Setting labels is possible in most of the different plots, although some of the labels are not available in all kinds of plots. The labels are created the same way. The label option is available from the context sensitive menu whenever a curve or graphic was clicked and marked with a cross. The option Label > Insert... Label can be selected for the different labels. In addition there are two icons can be used to create labels. and in the toolbar, which

After selecting the appropriate label from the sub-option of label, a rubber band from the cross to the mouse is shown. A click with the left mouse button sets the label, the right mouse button cancels. The following different labels are available. The Text and Value Label The text-label displays an user defined text above and below a line connected to the curve with a rubber band. Edit the label to change the text shown. The value-label displays the x/y coordinates of the cross. The label is a text-label filled with the coordinates. Edit the label to change the text. The Format Label The form-label uses a form to print the displayed text. The form is local for each label or common to all plots of the same type in the active project.

The Text and Value Label


The text and the value label (VisValue) is used to label curves or graphics displayed in plots. The text of the label is written above and below a horizontal line. The line is connected to the curve/graphic with a 'rubber band'. After creating the labels, they can freely be dragged across the plot while staying connected to the data point on the curve. The text can also be changed by double-clicking the label or the rubber band. The edit dialogue of these two labels is depicted in Figure 20.18.

20 - 32

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.18: Value

X/Y value dialogue Value displays the connected curve position of the label. For labels created as value this position is displayed as label text. "x-Axis'' displays the x axis value, "y-Axis'' the y axis value. "Time'' is visible only for plots showing a trajectory. Text written above the horizontal line.

Text on Top

Text on BottomText written below the horizontal line. Delete Label when a new Simulation is started Some plots show the simulation results. Labels in plots showing simulation results are deleted when the simulation is started again. To keep labels in such plots, e.g. to compare curves with the last run, turn off this option. The default of this option is "on''.

The Format Label


Like the "text/value label'', the format label (VisLabel) is set in plots to label curves or graphics. This label displays text printed using a form. The form is different for each type of diagram. It is either defined local at the label or defined for all diagrams of the same type in the activated project. Its dialogue is shown in Figure 20.19.

20 - 33

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.19:

The form-label dialogue

The different information and parameters for this label are described below: Value Data Object Value displays the connected curve position of the label. "x-Axis'' displays the x axis value, "y-Axis'' the y axis value. "Data Object'' is a reference to the shown object. If "Data Objectless not set the label itself is taken as shown object.

Shown Object The object output by the form, see "Data Object'' described above. Edit Used Format Shows the used "Form Manager''. The used format is either the local format or the one defined for all plots of the same type in the active project. Create Local Format Creates a new "Form Manager'' valid for the current label only. The forms can be edit without influencing other labels in the same plot or in the active project. The "Create Local Format'' button is replaced by the "Set Default Format'' when a local format was defined. Set Default Format Removes the local format. The format used is the one used for all plots of the same type in the active project. The "Set Default Format'' button is replaced by the "Create Local Format'' when the local format was reset. Delete Label when a new Simulation is started Some plots show simulation results. Labels in plots showing simulation results are deleted when the simulation is started again. To keep labels in such plots, e.g. to compare curves with the last run, turn off this option. From the context sensitive menu of the format labels more options can be selected Border Form A simple border of the selected label can be turned on or off. The format options can be directly accessed by Edit used Format and Create Local Format for the marked format label.

20 - 34

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Reconnect with... Reconnects the format label to another curve or data point.

The Constant Value


The constant label (VisXvalue) is used to display y-values for a constant x-quantity or xvalues for a constant y. In some plots like the overcurrent plot, constant labels are created and deleted automatically e.g. to visualize the short-circuit current for relays. The look of constant labels may vary because of different settings like the label location, the intersection values and other options. The dialogue of the constant label is depicted in Figure 20.20.

Fig. 20.20:

The constant label dialogue

To insert a constant label into a diagram or plot, the option Set constant > x-Value or Set constant > y-Value places a constant x- or a constant y-value into the current plot. Thus the dialogue for constant the VisXvalue object will pop up (shown in Figure 20.20) and a horizontal respectively vertical line will then be displayed at the value specified in the dialogue. Also the constant value and (if exist) the value of intersections with the curves will be shown. There are different options and styles for the constant label: Name Style Line Only defines the name of the constant line and will be displayed in the plot. changes the representation of the constant label: displays only the solid line and the related label.

Line with Intersections shows a solid line including label and indicates the values when intersections with the curves of the plot. Short Line Only (Left/Right) indicates the constant value at the bottom/top respectively at the right/ left side of the plot.

20 - 35

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Short Line/Intersection (Left/Right) indicates the constant value at the bottom/top respectively at the right/ left side of the plot and the intersections with curves. Intersection Only shows only the intersection points with the curves. Label None defines the position of the constant value label: displays no label at all.

Outside of Diagram creates the label between the border of the VI and the diagram area. Labels of constant x values are created above the diagram area, labels of constant y values are created right of the diagram area. Above Line (right) shows a label above the line if y is constant, the label will be on the right hand side. Below Line (left) shows the label below the line on the left hand side. Left of Line (top) shows a label on the left side of the line if x is constant, the label will be on the top end. Right of Line (bottom) shows the label right of the line on the bottom end. Value defines the constant value, either X or Y. The dialogue shows if either a X or Y is set. Also the actual position of the cross will be shown as a xrespectively y-value. It is not possible to change a constant X into a constant Y label other than by removing the old and creating the new one. specifies the color of the line and the labels/intersections.

Color

Linestyle and Width specifies the line style and line width for the line shown. Invisible if "Show Values'' is set to "Intersections Only''. For constant x-values in time-overcurrent diagrams there exist additional options: x-Value is Show Values Displays the type of current displayed. Visible only for constant x values in time overcurrent diagrams. The constant value can be displayed as a line, as intersections with the curves/graphics or both. "Line Only'' shows a vertical or horizontal line without labels for the intersections with the curves. "Line with Intersection'' creates crosses at the intersection of the line with the curves. For constant x values the y value is displayed at the crossing ant the other way round. The values and their unit are colored like the curve crossed.

Intersections Constant x values created automatically in the overcurrent plot are displaying the short-circuit current. To get the tripping times "Intersections'' can be set to SHC Currents. "All'' would display the intersection of the relay curve ignoring the type of current. Visible only for automatic constant x values showing currents in the time overcurrent diagrams.
20 - 36

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Set User Defined The button "Set user defined'' is visible for constant values created by the short-circuit in overcurrent plots. Labels showing this button display the short-circuit current. The labels are deleted whenever a new shortcircuit was calculated. If one wants to modify and keep the label even if a new short-circuit was calculated the label must be changed to user defined.

The Straight Line


There are various ways of inserting lines into a plot. With the option Straight Line >... there can be used a Set Secant Through Point to add a line directly through the selected data point. defines a graphic line through the selected data point with a defined gradient and gives back the function of the line. defines a line independent from the curves shown with a defined gradient and y-offset. The function of the inserted line can also be seen, when holding the mouse arrow over the line for 1 second. The options of the line dialogue or similar to the options for the constant value in section .

User Defined

Curve Filter
Curves shown in the plots and diagram can be filtered using the "Curve Filter". The option Filter... from the context sensitive menu displays the filters available to be applied to the data read from the result object. Another way to access this function is from the "edit" dialogue of the plot. Here the Filter... button can be pressed. The Figure 20.21 shows the dialogue of the function.

Fig. 20.21:

Defining a curve filter

The "Curve Filter'' specifies the type of filter applied to the data read from the result object. This object is a filter applied to curves in plots. There are different filter types available. The following filter settings are available. (N=number of points in the original curve, K=number of points in the filtered curve) Disabled Average No filtering will be performed. K=N. The filtered curve is the running average of the last n points. The first n-1 points are omitted. K=N-n+1.
20 - 37

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Balanced Average The filtered curve is the running average of the last (n-1)/2 points, the current point and the next (n-1)/2 points. This filter thus looks ahead of time. The first and last (n-1)/2 values are omitted, n must be an odd number. K=N-n+1. Purge Points by averaging The filtered curve contains the averages of each block of n values. K=N/n. This filter may be used to speed up the display of large curves. Purge Points The filtered curve only contains every n-th value. All other values are omitted. K=N/n. This filter may be used to speed up the display of large curves.

Note

A curve filter can only be applied at the end of the simulation or measurement, points added during a simulation or measurement are not filtered. The option Filter... is not available in all plots.

Border
The option Border in the context sensitive menu will insert or change the border of the selected plot or diagram. The options available are Off Simple 3D 3D with label The border with 3-dimensional effect and label will insert an additional label on the bottom of the selected plot. This label can now be defined by double-clicking on it. Furthermore the text style can be altered by choosing the option Select Font for Border.

Export of Curve Graphic


The whole diagram or plot can also be exported for further usage in reports. Thereto first mark the plot which is to be exported to a graphic file. Then select the option File > Export...>... from the main menu. There is the selection between the export into a Windows MetaFile (*.wmf) or into a Bitmap File (*.bmp).

Export of Curve Data


The export of curve data is available for a single VI or for the variables of the entire VI panel. Hence there are different ways to access the "ASCII Results Export" command ComRes of curve data, described in the following paragraph. The export directly from the result file gives the opportunity to directly export several variables at once and is described in more detail in Section (Exporting Results). Exporting curves of a single VI: Press the Export... button in the right side of the dialogue box of a virtual instrument.
20 - 38

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Right-click on the VI and select Export... from the context sensitive menu. Exporting curves of the entire VI panel: Press the Export Results... button on the "Results" page of the VI panel. Right-click on an empty area of the VI panel and select Export Results... from the context sensitive menu.

Note

If in one plot or on one VI panel variables are shown from several result objects, a dialogue will appear before the export command, where you have to select one result file from the list.

This function will export the data from the displayed curve with the given time range as ASCII text to the following programs/files: Output Window Windows Clipboard Measurement File (ElmFile) ComTrade Textfile In this dialogue the individual step size can be set, the columns of the result file and the header for the export as can be seen from Figure 20.22.

20 - 39

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.22:

Command dialogue of the ASCII result export

Various VI Tools
Grid This option in the context sensitive menu displays a dialogue to turn on/off the available grid lines. For both x- and y-axis a main grid and a help grid can be displayed in the plots. Furthermore - depending on the type of plot - the representation of the different ticks on the axes can also be specified.

Autoscale X, Autoscale Y Changes the autoscale settings of the plot. Off turns off the auto-scale mode. On performs an auto-scale at the end of the simulation or calculation. Online is available in simulation plots only and tests the plot limits after each new simulation point.These settings can also be defined in the "edit" dialogue of the x- and y-axes. x-Scale(s), y-Scale(s) There are two options in the x-scale or y-scale entry. Edit displays a dialogue to modify the scale settings like minimum, maximum and other settings. Scale Automatic calculates the minimum and maximum of the curve and adapts the scale limits.These settings can also be defined in the "edit" dialogue of the x- and y-axes or by double-clicking on the corresponding axis.
20 - 40

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Show dx/dy

Right-click on data point on a curve and select Show dx/dy from the menu. The two lines will appear, which are connected to the tip of the mouse pointer. A balloon window will show the x- and y-difference between the selected data point and the point where the tip of the mouse pointer is in the diagram. Additionally the gradient is displayed.

20.1.10

User-Defined Styles

Each VI panel, each virtual instrument and every single plot uses a style where linewidths, fonts, brushes and other graphical settings are defined. These objects normally use predefined styles. In PowerFactory there are six predefined styles available: Default - Standard English Text and Symbols Gr Default - Greek Symbols Tr Default - Turkish Symbols Paper Gr Paper Tr Paper These styles can be modified for all VIs or only for single plots. For this user-defined styles can easily be created and specified. The base for an user defined style is always the previous default style. There are several ways to select a predefined or user-defined style or change between the available styles. The easiest way is using the list-box in the toolbar by clicking and selecting one of the available styles. A style can be selected from the Style > Select Style >... in the context sensitive menu of the VI. A style is selected in the VI-Style list-box on the "Advanced'' page of the VI dialogue. The user-defined styles are stored in the changed settings element of the active project. Therefore each project has its own \ Changed Settings\ Styles\ UserStyle\... path and user defined styles. Only the changed elements are stored in the project, the unchanged ones are the ones predefined in the default style. The "changed settings" elements can be seen in the database in Figure 20.23.

Fig. 20.23:

The changed settings in the database


20 - 41

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Defining Styles for the VI Panel


The Style > Create new Style option in the context sensitive menu of the VI panel SetVipage or every plot on the panel is selected to create a new style for the actual virtual instrument panel. Insert a name for the style to be created in the input dialogue. Then the new style is added to the predefined styles and is automatically selected for the current VI panel. The created style is not set automatically in other VI panels of the project. If a user-defined style is selected for the current VI panel, the Style > Edit Style option of the context sensitive menu of the panel may be selected to open the dialogue of the new panel style. Figure 20.24 shows the dialogue for editing the layout of the panel.

Fig. 20.24:

Editing the panel style

With the settings shown in Figure 20.24, mainly the layout of the title block of the VI panel is edited. Here the user can define the different font styles for the various entries of the block by clicking on the buttons the height and the width of the columns of the title block (see Section 10.5.6) the line width of the title block and of the page frame

Defining Styles for the Virtual Instruments


There is the possibility to define the x- and y-axis of the plots inside on one page. These settings then are valid every plot on panels using this style To change the styles, right-click on a virtual instrument on the panel and select the option Style > Edit Style in the context menu. Then a dialogue will pop up containing the settings for all x-axis of VIs using this style all y-axis the selected object VIsplot Double-click on the object which is to be changed. As shown in figures 20.25, the dialogue
20 - 42

DIgSILENT PowerFactory

Reporting Results in PowerFactory

of the selected axis will be opened and can then be modified.

Fig. 20.25:

Editing the styles of X-axis

In the dialogue the following settings of the axes can be specified for the selected style: Axis Text Here the style and width of the axis itself can be changed. Also the number of small ticks shown between the divisions can be chosen. The number of characters and the digits behind the decimal point as well as the font type and size can be specified. The representation can be altered between the normal style and a style with an arrow at the end of the axis with a certain width and length of its tip.

Distance between Axis and Text Arrow

Defining Styles for Single Plots


In addition to the axes the presentation of the plot itself can be chosen by the user. These settings can be accessed through the dialogue shown in 20.26 and then double-clicking on the settings of the VisPlot object. Another and simpler way to change the settings of the style is to directly select the option Style > Edit Style of clicked Element from the context sensitive menu. These are the same dialogues shown in Figure 20.26 and can directly be accessed by right-clicking on the x-axis in the plot to access the settings of the x-axis y-axis in the plot to access the settings of the y-axis
20 - 43

DIgSILENT PowerFactory

Reporting Results in PowerFactory

on the plot itself to access the settings plot style, i.e. the grid, legend, etc.

Fig. 20.26:

Editing the settings of the plot

Figure 20.26 shows all different settings available for the plots on a VI panel. Thus one can Grid Legend Margins Options to alter the width, line style and color of the main grid and the help grid. Edit the distances from the legend to axis and between the different legends. Set spaces between the diagram and the surroundings.

Saving Predefined Styles for Plots


If the settings of the x- and y-axis, of the plot itself as well as the size of a particular plot shall be saved and then reused for further plots, there is the option Style > Save as predefined VI form the context menu of every plot or VI. This option saves the setting of the plot and stores a new VI in the list of all VIs. Hence if adding a plot the newly created VI can now be selected from the list by pressing the icon and selecting the e.g. NewName (VisPlot) from the pull down list or by using the option Create VI >... from the context menu of the SetVipage to add new virtual instruments to the VI panel. The new empty subplots appear with new defined settings

20 - 44

DIgSILENT PowerFactory

Reporting Results in PowerFactory

20.2

Results, Graphs and Documentation

This section presents the set of objects, commands and tools, dedicated to the handling and presentation of results in PowerFactory.

20.2.1

Result Objects

The result object (ElmRes, ) is used by the PowerFactory program to store tables of results. The typical use of a result object is in writing specific variables during a transient simulation, or during a data acquisition measurement. Result objects are also used in DPL scripts, in reliability calculations, for harmonic analysis, etc. An example of the result object dialogue is depicted in Figure 20.27.

Fig. 20.27:

The result object

The result object shows the following fields: Name Database ID Default for Info the name of the result object its database ID and the date, when it was changed the last time its default use information about the currently stored data, ie.e the time interval, step sizes, number of variables, etc.

Trigger-Times trigger times (in case of a Triggered default use) The information about the stored data shows the time interval the average time step the number of points in time the number of variables
20 - 45

DIgSILENT PowerFactory

Reporting Results in PowerFactory

the size of the database result-file The Update button will recalculate these parameters and update the shown information if necessary. The Clear Data will clear all result data.

Note

Clearing the data will delete the result-file and will reset the database ID. This will destroy all calculated or measured data in the result file. It will not be possible to restore the data.

The default type settings are used for two purposes: 1 2 Creating a new result object and setting the default type to Harmonics, for instance, will cause the harmonics command dialogue to use this result object by default. Setting the Default type to Triggered will cause the calculation module to copy and temporarily store signals in that copied result object, every time a Trigger Event becomes active. The Triggered default type enables the trigger time fields.

When the Protocol Output is pressed, all events that happened during the simulation, recorded by the result object, will be written again into the output window. So one can check what events took place during the last simulation. The contents of a result object are determined by one or more monitor variable set (IntMon) objects. These monitor objects can be edited by pressing the Contents button. This will show the list of monitor sets currently in use by the result object. Selecting a set of result variables, trough the use of monitor objects is necessary because otherwise all available variables would have to be stored, which is practically impossible.

Exporting Results
The stored results for the monitored result variables can be exported by pressing the Export button in the result object. This will activate the "ASCII Results Export'' command ComRes and will pop up the ASCII-results export dialogue, which allows for exporting to the output window, to the windows clipboard, to a file or to other export formats. This command is the same command for exporting curve data form a VI plot. This is described further in Section (Export of Curve Data). In this dialogue the individual step size can also be set, the columns of the result file and the header for the export as can be seen from Figure 20.28.

20 - 46

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.28:

Command dialogue of the ASCII result export

This function will export the data from the displayed curve with the given time range as ASCII text to the following programs/files: Output Window Windows Clipboard Measurement File (ElmFile) ComTrade Textfile The export command allows for exporting an interval of results only and to export every n-th result. So the user may define an additional step size n for the export. Additionally a User defined interval for the time/x-scale can be set as the minimum and maximum value of the first recorded variable (in time domain simulations this is of course the time). By default, all the results for all monitored variables are exported. But also a selection of variables can be made by entering column numbers under the section Columns (Variables). The header of the exported result table can include either the variable name or its long or short description.

20 - 47

DIgSILENT PowerFactory

Reporting Results in PowerFactory

20.2.2

The Form Editor

The form editor within DIgSILENT PowerFactory is used to define text reports, from very small result boxes, to more complex and comprehensive reports. For a detailed technical description of the report generating language, see 20.2.3 (The DIgSILENT Output Language). The form editor (IntForm) will be used in most cases to change the contents of the result boxes in the single line graphic. PowerFactory offers three ways in which to change a result box definition: selecting three variables out of three predefined lists selecting one or more variables out of all available variables writing a new user defined format, using the PowerFactory output format. Because of all these, the result boxes are used as example to introduce the nature and use of the form editors. As explained in Section 10.6, the result boxes may be right-clicked to select a particular format. When this format is selected, the "Form Select'' edit dialogue pops up which shows a reference to a form for each calculation function (load-flow, short-circuit, etc.). Editing the reference will show the Form Editor of the current result box definition. See Figure 20.29.

Fig. 20.29:

The Form editor

This form editor has a page to change the format by selecting variables, and a page to manually define a format. What is displayed on which page depends on the input mode of the Form Editor, which can be change using the button Input Mode.

20 - 48

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.30:

The Form editor - Selection Moder

As shown in Figure 20.30 the three modes are: Predefined Variables This mode lets the user select three variables from three predefined lists of variables. This is visible in Figure 20.29 as the three listboxes at the bottom ('Line 1,2,3'). User Selection This mode lets the user select any amount of parameters out of all available parameters for the selected object or class of objects. This includes model parameters as well as calculated values. This is the most flexible, but also the most difficult mode. In this mode, any text and any available variable, in any color, can be entered in the Form. The highly flexible DIgSILENT output language allows for highly complex automatic reports. This mode also offers a fast append of predefined lines. The From List button is used to select a variable from the list shown in "Predefined Variables'' mode. A standard line with that variable is appended to the form. The User defined button acts like the input mode "User Selection'' with one important difference. Where the "User Selection'' mode is used to redefine the complete form text, the User defined button appends a line for each selected variables to the existing form text.

Text editor

Note

To use the "Predefined Variables'' is the easiest way to select variables, if they are accessible from the pull-down list. If not only the standard variables should be shown, but also additional ones shall be defined, the best way is to use the option "User Selection''.

In Figure 20.29, the editor is in the default 'Predefined Variables' mode. The three listboxes show the names of the variables, their units and their description. The three listboxes used for the 'Predefined Variables' mode are replaced by a Select Variables button in the 'User Selection' mode. Pressing this button will pop up a 'Monitor Variable Set' dialogue (IntMon) which is used to define a set of variables. The IntMon dialogue is explained in the next section. The example in Figure 20.29 shows that the active and reactive power at the element Xnet have been selected as well as the loading percentage. This selection will produce three lines of DIgSILENT output language code. This code can be viewed by selecting the View page. The text editor in this page will be disabled, because a format is selected in stead of typing in the codes ourselves. However, it still shows the format of our selection as:
20 - 49

DIgSILENT PowerFactory

Reporting Results in PowerFactory

#.## $N,@:m:P:_LOCALBUS #.## $N,@:m:Q:_LOCALBUS #.## $N,@:c:loading

This example shows the basic syntax of the DIgSILENT output language: The '#' sign is a placeholder for generated text. In the example, each line has a placeholder for a number with two digits after the decimal point ('#.##'). The first '#'-sign stands for any whole number, not necessary smaller than 10. The '$N' marks the end of a line. A line normally contains one or more placeholders, separated by non-'#' signs, but may also contain normal text or macro commands. After the '$N', the list of variable names that are used to fill in the placeholders have to be added. Variable names must be separated with commas. Special formatting characters, like the '@:'-sign, are used to select what is printed (i.e. the name of the variable or its value) and how. The mentioned example will produce an result box like
12.34 4.84 103.56

The form editor offers options for the unit or name of the selected variable. If the Unitshow option is enabled, a second placeholder for the unit is added:
#.## # $N,@:m:P:_LOCALBUS,@:[m:P:_LOCALBUS #.## # $N,@:m:Q:_LOCALBUS,@:[m:Q:_LOCALBUS #.## # $N,@:c:loading,@:[c:loading

The '['-sign encodes for the unit of the variables, in stead of the value. The same goes for the variable name, which is added as
# #.## $N,@:~m:P:_LOCALBUS,@:m:P:_LOCALBUS # #.## $N,@:~m:Q:_LOCALBUS,@:m:Q:_LOCALBUS # #.## $N,@:~c:loading,@:c:loading

Where the `~'-sign encodes for the variable name.With both options on, the produced format line
# #.## # $N,@:~m:P:_LOCALBUS,@:m:P:_LOCALBUS,@:[m:P:_LOCALBUS

Will lead to the following text in the result box:


P 12.34 MW

Other often used format characters are '%', which encodes for the full variable description, and '&', which decodes for the short description, if available.

20.2.3

The DIgSILENT Output Language

When more than just the variable name, value and unit has to be displayed, if the use colors is preferred, or other special formats, the DIgSILENT Output Language can be used. By selecting the Text Editor input mode, all entries on first page of the Form Editor disappear, except for the form name, and the editor on the second page is activated (see Figure 20.31).

20 - 50

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.31:

The Form text editor

Almost all textual output that is produced in PowerFactory, is defined by a report form. The use of report forms range from the simple and small result forms that specify the contents of the single line result boxes to large and complex forms that are used to print out complete system reports. In all cases, the text in the editor field of a IntForm object specifies the report that is to be generated. For result boxes, that text is normally created automatically in the IntForm dialogue by selecting "Predefined Variables'', or any other set of variables, and some extra's such as the number of decimals and if an unit or name should be shown. These options will automatically create a report form. That automatic form is normally used as it is, but it may be altered manually. This is shown in Figure 20.31, where report format is changed such that the variable name of the loading factor is deleted and replaced by the fixed text 'ld', because the variable name "loading'' is felt too long compared with the names of the other two variables ("P'' and "Q''). The shown format will produce result boxes like
P 12.34 MW Q 4.84 Mvar ld 103.56 %

Defining single line result boxes only asks for a basic understanding of the DIgSILENT output language. For more complex reports, many different variables from all kinds of objects have to be printed as listings or tables. Such a report would require macro handling, container loops, selection of parameters, headers, footers, titles, colors, etc. The DIgSILENT output language offers all this, and more. The basic syntax, which is primary used for defining result boxes is given in the following overview.

Format string, Variable names and text Lines


A standard line consists of three parts (see Figure 20.32): 1 2 3 A format string, containing placeholders, macros and/or user defined text. An 'end of line' character like '$N', '$E' or '$F' Variable names, separated by commas, which are used to fill in the placeholders.

20 - 51

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.32:

Basic parts of the report format

The format string is normally much longer.

Placeholders
A placeholder for strings like variable names or whole numbers is a single '#'-sign. For real numbers, the placeholder consists of a single '#' for the integer part a point or comma one or more '#'-signs for the fractional part The number of '#'-signs after the decimal point/comma defines the number of decimals. The '#'-sign itself can be included in user-defined text by typing '\#'.

Variables, Units and Names


The variable name can be used to display the name of the variable, its value or its unit. The possible formats are ('xxx' = name of variable): xxx %xxx &xxx [xxx xxx returns the value returns the long variable name, as used in the edit dialogues returns the short variable name, as used in the database browser returns the unit the object dependent name of the variable (default name)

"%width.precision,xxx'' uses special formatting. The special formatting %width.precision is explained by the following examples: "%.60,TITLE:sub1z'' outputs TITLE:sub1z 60 column width, left aligned. "@:"%1.0,s:nt'' inserts s:nt as an integer at the placeholder's position ""%1.3,s:nt'' writes s:nt with 3 digits precision at the placeholder's position The centering code | may be used in front of the formatting code for centering at the placeholder, for example "|%.60,TITLE:sub1z''. The insertion code @ is used to switch to insert mode, for example, |#|$N,@:loc_name will output |aElmSym|. The cformat string may be used to alternatively reserve place for a value or text. A cformat of %10.3' will reserve 10 characters for a number with 3 decimals. The first number
20 - 52

DIgSILENT PowerFactory

Reporting Results in PowerFactory

can be omitted for text: %.6' will reserve 6 characters for the text field. The cformat syntax allows for centering text by adding the |'-sign to the `%'-sign: |%.10' will reserve 10 characters and will center the text. Free, language dependent text can be defined by use of the format {E|a text;G|ein Text}. This will produce 'a text' when the user has selected the English language (see the user settings dialogue), and 'ein Text' when the language has been chosen to be German. Special commands for access of Elements OBJECT(cls) Gets Element of class cls. Used to access a variable name or unit without actually accessing such an object. Used in header lines. argument cls (obligatory): The name of the class example:
[OBJECT(StaBar):m:Skss

writes the unit of the busbar variable Skss EDGE Gets an arbitrary object with at least one connection, i.e. a Load, a Line, etc. Used to access a variable name or unit without actually accessing such an object. example:
%EDGE:m:U1:bus1

writes description of the variable U1 CUBIC(idx) Returns the cubicle (StaCubic) at bus index idx of branch argument: idx: index of branch, the currently set bus index is used when idx<0 example:
CUBIC(0):e:loc_name

returns name of cubicle at busindex 0 TITLE Gets the title that is set in the output command (ComSh or ComDocu) example:
TITLE:e:annex

writes annex of title VARIANT Gets the active variant in which the current object is stored example:
VARIANT:e:loc_name

writes the name of the variant NET Gets the grid in which the current object is stored example:
NET:e:loc_name 20 - 53

DIgSILENT PowerFactory

Reporting Results in PowerFactory

writes the name of the grid CMD Returns the last calculation command, i.e. a Short-Circuit (ComShc), Load-flow (ComLdf),... example:
CMD:pabs

writes the short-circuit position on the line after calculation of a short-circuit. CASE Returns the currently active calculation case example:
CASE:e:loc_name

writes the name of the active calculation case DEF Returns the default object. The default object depends on the currently processed output. example:
DEF:e:loc_name

writes the name of the default object STALNE Returns the station if the current object is a busbar. Returns a line if the current object is a terminal between line routes. Otherwise, nothing is returned, and the entry will be ignored. example:
STALNE:e:locname

writes the name of the line or station. RES Returns the currently active results object (ElmRes) used by simulation, harmonics or other calculation modules example:
RES:e:desc

writes the first line of the description of the results object

Color
A line can be set to another color by adding a '_LCOL(c)' command directly after the '$N,' marker. This will color the whole line according to the color number c.

a b c d e

black black red green blue

i j k l m

gray light gray bordeaux dark red dark green

20 - 54

DIgSILENT PowerFactory

Reporting Results in PowerFactory

f g h

brown cyan magenta

n o p

light green marine dark blue

Table 20.1: Color Codes iA single item can be colored by using the '_COLOR(Variable name; color code)'.

Advanced Syntax Elements


The advanced syntax is mainly used for writing forms for larger and more complex reports. An example is a short-circuit result form, which lists all the short-circuit parameters for all busbars and for each busbar for all connected elements.

Line Types and Page Breaks


The character '$' ends a format line. A line without this ending will be interpreted as a normal '$N' line type. The following line type are available: '$N' '$H' '$F' '$T' '$C' '$R' Normal line Header on the top of each page Footer on the bottom of each page Title line, only appears on top of the first page Comment line (not used for output) Marker that make that the line will only be used when the specified results are valid

The line type '$H', '$F' and '$T' will be treated as normal ('$N') line types when used inside a loop command. Line type codes may be made language dependent by adding a 'E', for English lines or a 'G' for German lines, i.e. '$HG' specifies a German header line. A report format must at least contain one normal ($N) line. The following commands are used for page and line controls. They can only be used directly behind the line type codes '$N', '$F' or '$H'. _PAGEBREAK _AVAILBREAK _NOBREAK _LCOL(c) _OBJ(ClsNam) _BUS(inum) _FIRST Forces a page break after the current line Enables page breaking after the current line (default) Disables page breaking directly after the current line Changes the color of the current line, c is the color code. The current line will only be used for objects from the class "ClsNam''. The current line will only be used for objects which connect to exactly inum nodes The current line will only be used when the loop index is 0 (first passage)
20 - 55

DIgSILENT PowerFactory

Reporting Results in PowerFactory

_NFIRST

The current line will only be used when the loop index is not 0 (all but the first passages)

_IF(boolean expression) The current line will only be written when the expression is true. Example: _IF(m:u:bus1>0.95) _IFNOT(boolean expression) The current line will only be written when the expression is false. Example: \IF(m:u:bus1<0.95) Example: | #.## # #.## # #.## |$R,_NOBREAK, ..

Predefined Text Macros


The following macros will produce specific names or other texts. _DATE(c) _TIME _VERSION _BUILD _VERBUILD _ORDER _CLASS _LINE _ALLLINE _PAGE _LOCALBUS _CALC(c) _SHORT _FSHORT _CLS _ANNEX _NGB present date: c='e' give the English format, c='g' the German one. present time version number of the DIgSILENT PowerFactory software. build number of the DIgSILENT PowerFactory software. combines _VERSION and _BUILD order title, if a title has been defined previously class name of the object current line number in page current line number in report current page number name of the local busbar name of last performed calculation. c=1 returns a long description. short object name short name of parent object class name without the 'Elm', 'Sta', 'Typ', etc. part. the annex number neighborhood depth

_TEXT(E | text;G | Text) language dependent text (E=English, G=German)

Object Iterations, Loops, Filters and Includes


To create a report that creates a table with the voltages for all busbars, command are needed to filter the busbar objects and to create a loop that outputs a line of text for each busbar. A loop or filter command consists of the following parts: the keyword "$LOOP'' or "$CLOOP'' the filter or loop name
20 - 56

DIgSILENT PowerFactory

Reporting Results in PowerFactory

the format text the keyword "$END'' Example:


$LOOP,_LROUTES() | # |,$N,loc_name $END

This example uses the filter "_LROUTES()'', which filters line route objects (ElmLneroute). The format text has one line, which prints the object name.

20.2.4

The Output of Device Data

The ComDocu command ("Output of Device Data'') is used to produce an output of device data. The output can be used in reports or may help to check the entered data. Reports of calculated results can be made with the ComSh command. See Chapter 20.2.5 (Output of Results) for more information. There are two types of reports. These are either the "Short Listing'' or the detailed report. The "Short Listing'' is not defined for all elements.

The Short Listing


The "Short Listing'' reports only the most important device data, using one line for each single object. This allows a small but clear documentation. Like the "Output of Results'' the "Short Listing'' report uses a form to generate the output. This form can be modified by the user. When the report form is changed, it is stored in the "Changed Settings'' object of the active project. This does not influence the reports of other projects. The output of objects without a defined short listing will produce warnings like:
DIgSI/wrng - Short Listing report for StoMaint is not defined.

The Detailed Report


The detailed report outputs all device data of the elements selected for output. In addition, type data can be included ("Print Type Data in Element''). Device Data is split into the different calculation functions like "Load-Flow'' or "Short-Circuit''. The "Basic Data'' is needed in all the different calculations. "Selected Functions'' shows a list of the functions whose data will be output. If one wants to report the device data for all functions move all functions from left to right. If "Selected Functions'' is empty no device data will be output.

20 - 57

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Device Data

Fig. 20.33:

Device data page

Use Selection The set of reported elements depends on the "Use Selection'' setting. If "Use Selection'' is checked one element or a "Set'' object must be chosen for output. If "Use Selection'' is not checked the "Filter/Annex'' page specifies the set of elements for the report. This page is described further down. Another way to select object for the report is to select the objects in the "Data Manager'' or the "Single Line'' graphics and select "Documentation'' in the "Output'' entry of the context menu. The "Output of Device Data'' command will pop up. Annex Each class uses it's own annex. There is either the default annex or the individual annex. To use the default annex check "Use default Annex''. Changes of the annex are stored in the "Changed Settings'' of the active project. The local annex is stored in the "Output of Device Data'' command. To modify the local annex press the "Change Annex'' button. See Section (The Annex for Documentation) for details. Title Most reports display a title on top of each page. The reference "Title'' defines the contents of the header.

20 - 58

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Filter/Annex

Fig. 20.34:

Filter/Annex page

If one wants to report elements without defining a set of objects "Use Selection'' on the "Device Data'' page must not be checked. The objects in the list "Selected Objects'' will be filtered out of the active projects/grids and reported. "Available Objects'' shows a list of elements which can be add to the "Selected Objects'' list. The list in "Available Objects'' depends on the "Elements'' radio button. Elements in the left list are moved to the right by double-clicking them. The text in the "Annex'' input field will be set as default annex for the selected class.

The Annex for Documentation


The "Annex for Documentation'' stores the annex for the documentation of results. The annex number and the page number for the first page are unique for each class.

20 - 59

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.35: Objects Annex First Page

The annex dialogue This column shows the different classes with their title. This column stores the annex number shown in the Annex field of the report. This column defines the start page for the class in the report. The first page number depends on the class of the first element output in your report. The page number of its class is the page number of the first page.

20.2.5

Output of Results

The command ComSh ("Output of Results'') is used to produce an output of calculation results. The output can be used in reports or may help in interpreting the results, as shown in Figure 20.36. To generate a report with input data use the ComDocu command, see Section 20.2.4 (The Output of Device Data). Several different reports, depending on the actual calculation, can be created. The radio button on the upper left displays the different reports possible for the active calculation (Figure 20.36 shows a load-flow). Some reports may be inactive, depending on the object(s) chosen for output. In Figure 20.36, a station was selected for output. "Used Format'' displays the format(s) used for the report. Some reports are a set of different outputs. For these reports more than one form is shown. If the form is modified it will be stored automatically in the "Changed Settings'' folder of the active project. The changed form does not influence the reports of other projects. If "Use Selection'' is active a set of objects (selection) or a single object must be chosen. The report is generated only for these elements. All relevant objects are used if "Use Selection'' is not selected. The relevant objects depend on the chosen report. Most reports display a title on top of each page. The reference "Title'' defines the contents of the header. For some reports additional settings are required. These settings depend on the chosen report, the selected objects for output and the calculation processed before. The calculation (left top) and the used format(s) (right top) are always shown.

20 - 60

DIgSILENT PowerFactory

Reporting Results in PowerFactory

Fig. 20.36:

Output of results

20 - 61

DIgSILENT PowerFactory

Reporting Results in PowerFactory

20 - 62

DIgSILENT PowerFactory

Data Management

Chapter 21 Data Management

The basic elements of project management within the PowerFactory environment were introduced in Chapter 4 (PowerFactory Overview). They allow the user to generate network designs and administrate all input information and settings related to PowerFactory calculations and analyses. The project object is much more than a simple folder which stores all objects which comprise a power system model; it allows the user to perform advanced management tasks such as: versioning, deriving, comparing, merging and sharing. These advanced features simplify the work in multi-user environments while minimizing the amount of data.

21.1

Project Versions

A Version is a snapshot of a project taken at a certain point in time. By means of versions, the historic development of a project can be controlled (and even reverted, if required). A version is used to save a specific state of the project. From the PowerFactory database point of view, a version is a read-only copy of the original project (at the moment of version creation), which is stored inside a version object (IntVersion, ). Version objects are stored inside the original project in a folder called Versions. The concept of versions is illustrated in Figure 21.1 (Project Versions). At time t0, the project SIN is created, and after a time t1, certain changes have been implemented and the owner decides to make a copy of the project in its current state by means of the version 'V1'. After a time, t2, the project has changed with respect to 'V1', and a new version 'V2' is created. The version control continues with time, generating versions with a periodicity of t.

Fig. 21.1:

Project Versions

21 - 1

DIgSILENT PowerFactory

Data Management

21.1.1

Creating a New Version

To create a new version of the active project: Right click on the active project. Select New --> Version from the context sensitive menu. Alternatively use the option File --> New Version from the main menu. The dialogue of the new version pops up. At this point of defining a new version, the object dialogue offers the following options: Point in Time Time of the version definition, to control the historic development of the project.

Notify users of derived projects At activation of a project, that has derived from the active project, the user is informed that this new version is available. Afterwards updates of the derived project can be carried out (for further information please refer to 21.2 (Derived Projects)). Complete project approval for versioning required If this option is enabled, the program checks if all the objects in the active project have been approved ('Description' tab of each object's dialogue). If not approved objects are found, an error message is printed and the version is not created. Set the desired options and press Ok.

Fig. 21.2:

Creating a New Project Version

The new version is automatically stored in the Versions folder (which is automatically created if it doesnt yet exist).

21 - 2

DIgSILENT PowerFactory

Data Management

21.1.2

Rollback Function

The state of a project at a certain version can be recovered by means a function called 'Rollback'. If a 'Rollback' is performed, the project returns to the state it had at the creation of a selected version (let's called it 'v'). With Rollback, all changes implemented after 'v' (at vs point in time) are deleted. It should be noted that all subsequent versions (i.e. versions newer than 'v') are also removed. To perform a 'Rollback': Deactivate the target project. Right click on the 'v' version and select Rollback to this version from the context sensitive menu. "Press Ok on the confirmation message. Note that a 'Rollback' is not allowed (not enabled in the context sensitive menu) if a version to be deleted is the base of a derived project. A Rollback cannot be undone!

Note:

A Version can only be deleted if it does not have derived projects.

21.1.3

Checking Dependencies of a Version

To check dependencies of a Version: Activate the project. Go to the Version folder inside your project. Right-click on the version that you want to edit/delete. Select the option Action -> Output derived projects A list of derived projects will be shown in PowerFactorys output window.

21.1.4

Deleting a Version

To delete a Version: Activate the project. Go to the Version folder inside your project. Right-click on the version that you want to edit/delete. Select the option Action -> Delete Versions or Open the edit dialog of the version. Use the button Delete Version to delete the version.

21 - 3

DIgSILENT PowerFactory

Data Management

21.2

Derived Projects

At certain stages of a system study, several users may wish to work on the same project. To avoid the large amount of data duplication required to create a project copy for each user, DIgSILENT has developed a 'virtual copy' approach called Derived Projects. From a users point of view a derived project behaves like a normal copy of a project version; however, only the differences between the original project version ('Base Project') and the virtual copy ('Derived Project') are stored. Because the derived project is based on a version, changes made to the base project do not affect it. Like ''normal'' projects, derived projects can be controlled in time by means of versions, however it should be noted that these 'derived' versions cannot be used to create further derived projects.

Note

A Derived Project is a local virtual copy of a Version of a (base) project (master project): - It behaves like a "real copy" from the user's point of view. - Internally only the data differences between the "Base Project" and the "Derived Project" are stored in the database. - This approach avoids the data overhead.

In a multi-user database, the data administrator may publish a "base" project in a public area of the database. Each user can subsequently create her/his own Derived Project and work on it like working on the original base project. Changes made by the user are stored in the Derived Project, so that the base project remains the same for all users. The purpose of a Derived Project is that all users work with an identical power system model. The Derived Project always remains connected to the base project. The concept of derived projects is illustrated in Figure 21.3; here version Version3 of the base project (MasterProject) was used to create DerivedProject. After DerivedProject was created, two versions of it were created.

Fig. 21.3:

Principle of Derived Projects

A new derived project is created using the Data Manager as follows:

21 - 4

DIgSILENT PowerFactory

Data Management

Right-click the desired project folder in the right pane of the Data Manager where the Derived Project is to be created. Select New --> Derived Project from the context-sensitive menu. Select the source version of the base project from the data browser that pops up. This will likely be the last available version of a project in a public area, created by the data administrator. Press OK.

Note:

The base or master project has to have at least one version before other projects can be derived from it. You cannot derive a project from a derived project. You can check whether a project is derived or not by opening the Edit dialogue of the project itself. To create a Virtual Project from a Base Project stored in another user's account, you require at least read access (see Sharing Projects).

Once the derived project is created, it can be used like a normal project. At a later stage, it may be desired to update the derived project using new versions of the base, or to update the base with your derived project. All of these features are possible, by means of the Merge Tool, explained in Chapter 21.3 (Comparing and Merging Projects).

Fig. 21.4:

Derived Projects in a multi-user database

In the Data Manager a virtual project looks like a normal project. The 'Derived Project' tab of its dialogue has a reference to the base project and the version used. Users are notified of changes in base project, if there is a new version of the base project (newer than the 'used' version) which has the option Notify users of derived projects
21 - 5

DIgSILENT PowerFactory

Data Management

enabled, and the option Disable notification at activation disabled. The possibility of updating the derived project is presented to the user upon activation of the derived project. The newest version that can be used to update a derived project is referred to (if available) in the Most recent version field of the dialogue. The users can compare this new version with their own derived project and decide which changes should be included in the derived project. For comparing and accepting or refusing individual changes, the Merge Tool is used. For information about the Merge Tool please refer to Chapter 21.3 (Comparing and Merging Projects).

Fig. 21.5:

New version of the base project in a multi-user database

Fig. 21.6:

Merging the new version of the base project into the Derived Projects

21 - 6

DIgSILENT PowerFactory

Data Management

21.3

Comparing and Merging Projects

Projects can be compared and later merged by means of the Merge Tool. The Merge Tool compares objects and parameters from a ''modified'' project (internally called Mod1) with respect to a ''base'' project (internally called Base) and generates a report of the differences. For this two-way comparison, the changes found in Mod1 can be implemented in the Base, provided that the user selects Mod1 as the source (Base is by default the target). Furthermore, a comparison of three projects (one of them can be a copy of Mod1) can be carried out in order to implement all changes in the third project (Mod2) and create a merged version of Base and Mod1. The ''comparing-merging'' process starts with the selection of the Base and the Mod 1 projects by means of the context sensitive menu: Right-click an inactive project and choose Select as Base to Compare. Right-click a second (also inactive) project and select Compare to "[Name of Base Project]". Once the projects have been selected, the dialogue of the Merge Tool command pops up (Figure 21.7). The Base and the modified project are referred to by the Base Element and the Modified Element 1 references. If a third project is to be included in the comparison, the box next to Modified Element 2 must be ticked. Search for the desired Modified

Element 2 project using the

icon.

In the Compare field of the command dialogue you can set the desired level of comparison from a drop-down list. The possible settings are: Only Chosen Object Only the selected project objects (IntPrj) are compared, ignoring all objects contained within the project. Chosen and contained Objects The selected project objects (IntPrj) are compared, as are all objects contained within the project objects. This is normally the most appropriate option for tracking changes and merging projects. If the purpose of the comparison is merely the tracking of changes, the option Merge should be disabled. If the purpose is to compare and further implement changes made in one project into the other (i.e. to merge), this option should be enabled. If Merge is enabled and only two projects are compared, the changes are implemented in the Base project (the base is automatically assumed to be the 'target' for the merging process). In the case of a 3-way comparison, a 'target' project between the 'Modified Element 1' and the 'Modified Element 2' must be selected.

21 - 7

DIgSILENT PowerFactory

Data Management

Fig. 21.7:

Merge Tool Command

Once the Merge Tool commands options are set, the button Execute is used to start the comparison. The comparison results are presented in a data browser window (the Merge Tool window, Figure 21.8), which has a special toolbar to facilitate the visualization, sorting and further merging of the compared objects.

Fig. 21.8:

Merge Tool Window

In the Merge Tool window, a list of the compared objects (according to the selected comparison level) is presented. A comparison result symbol, indicating the differences found on each object from the list, is displayed in the columns Mod 1 (and Mod 2 in the case of a 3-way comparison) as shown in Figure 21.8. These symbols are defined as follows:
21 - 8

DIgSILENT PowerFactory

Data Management

If the object exists in the 'base object' but not in the 'object to compare'. If the object exists in the 'object to compare' but not in the 'base object' If the object exists in both sets but the value of the parameters differs. If the object exists in both sets and has the same value for the parameters.

If the projects are to be merged (i.e. the Merge option was enabled in the command dialogue), then the column labelled 'Assignment' is enabled in the results browser. In this column the source of the changes which are to be implemented in the target project is defined. All listed objects must have an 'Assignment'. If a certain change is not to be implemented in the target; then the ''target'' project itself must be selected as the source. In a comparison of two projects, the only available sources are the Base (which is also the target) and Mod1. In a 3-way comparison (i.e. where a Mod2 was selected), the possible sources are 'Base', 'Mod1' and 'Mod2'. The assignment can be made manually by double-clicking on the corresponding cell and selecting the desired source, however this task may be tedious in large projects. The toolbar icons can be used to automate this process. Once the assignment of all the objects has been performed, the projects can be merged by pressing the Merge button. The changes are then automatically implemented in the target project. As previously mentioned, the objects displayed in the Merge Tool window can be sorted and organized via the toolbar. In the attached Merge Tool Manual the functionality of each toolbar icon and the context-sensitive menus available from the toolbar are explained.

Note:

The Merge Tool can be used to compare any kind of object in PowerFactory. The functionality and procedure to follow is similar to that explained in this section for project comparison and merging.

21.4

Project Baselining

Baselining is a process which is based on the compare-and-merge functionality, used to update derived projects according to newer versions of their base, or to update base projects from derived ones. If the option Disable notification at activation is disabled in the Derived Project tab of the project dialogue, and newer versions of the base project have been created (with the option Notify users of derived projects enabled), at activation of the derived project, the user is notified of the newer version. The options offered in the notification dialogue are: Merge new version with my modifications and The program automatically generates a temporary copy of the derived project and executes a 3-way comparison with the new version (as the Base), the derived project (as Mod1) and the temporary copy (as Mod2 and target). In the case of a conflict, one of the following actions will be taken:

favor none: The Merge Tool browser is displayed, and the user can
then resolve the conflict(s) by defining how the changes should be assigned.

21 - 9

DIgSILENT PowerFactory

Data Management

favor mine: Conflicts are resolved automatically by favoring the users


modifications, thereby discarding modifications in the Base.

favor version: Conflicts are resolved automatically by favoring the


Bases modifications, thereby discarding the users modifications. Get new version and discard my modifications The derived project is automatically replaced by the new version. All user modifications will be lost. Merge manually Use the Merge Tool to merge the modifications manually. The results of the comparison are displayed in a Merge Tool browser, where the user defines how the changes should be assigned. After these assignments have been defined, the new version and the derived project are merged to the temporary copy, when the user clicks on the 'Merge' button. The derived project is then automatically replaced by the temporary copy (now containing information from the new version), which is deleted. Notify me again in... The user enters the desired time for re-notification, and the derived project is activated according to how it was left in the previous session. The notification is deactivated for the indicated number of days. If the Cancel button is used, the project is activated as it was left the previous session. The notification will appear following the next activation. Derived projects can be merged directly from their base (without considering new versions) using the option Merge from base which is available in the project contextsensitive menu. The merging principle is similar to that described above, with the Merge Tool configured accordingly. This feature is only possible with deactivated projects. Changes implemented in derived projects can also be merged to the base project. In this case, the option Merge to base project must be selected from the context-sensitive menu available by right-clicking on the derived project. As in the previous cases, the Merge Tool is started accordingly.

Note:

The button 'Info' from the Merge Tool browser can be used to display the name and path of the current Base project, Mod1, Mod2 and target.

21.5

Sharing Projects

In PowerFactory, any project may be shared with other users according to the rules defined by its owner. Projects are shared to groups of users and not directly to individuals; therefore users must be part of a group (created and managed by the database Administrator) in order to access shared projects. Depending on the access level that the owner assigns to a group, other users can: Have read-only access to the shared project, which allows the copying of objects and the creation of derived projects; Have read-write access; Full access.
21 - 10

DIgSILENT PowerFactory

Data Management

To share a project: Open the project dialogue and go to the Sharing tab; Right-click on the right side of the Sharing information table to insert (or append) a row; Double-click the Groups cell of the new line and select the group with whom the project is shared, using the data browser; Double-click on the Sharing access level to select the desired access level. A shared project is marked with the symbol in the Data Manager. For information regarding users groups and the database administrator, please refer to Section 5.3 (User Accounts and User Groups).

21 - 11

DIgSILENT PowerFactory

Data Management

21 - 12

DIgSILENT PowerFactory

Power System Analysis Functions

DIgSILENT PowerFactory

Load Flow Analysis

Chapter 22 Load Flow Analysis

Load flow calculations are used to analyze power systems under steady-state and nonfaulted (short-circuit-free) conditions. The load flow calculates the active and reactive power flows for all branches, and the voltage magnitude and phase for all nodes. The main areas for the application of load flow calculations are: Calculation of branch loadings, system losses and voltage profiles for system planning and operation (normal and abnormal conditions). Contingency analysis, network security assessment (abnormal conditions). Optimization tasks, i.e. minimizing system losses, minimizing generation costs, open tie optimization in distributed networks, etc. (normal or abnormal conditions). Verification of system conditions during reliability calculations. Automatic determination of optimal system resupplying strategies. Optimization of load-shedding (abnormal conditions). Calculation of steady-state initial conditions for stability simulations or short-circuit calculations using the complete superposition method (usually normal conditions). A distinction should be made regarding the simulation of ''normal'' and ''abnormal'' system conditions. This distinction affects the modelling of the system. Under normal operating conditions the generator dispatches as well as the loads are known, and it is therefore sufficient for the load flow calculation to represent these generator dispatches and to provide the active and reactive power of all loads. The results of the load flow calculation should represent a system condition in which none of the branch or generator limits are exceeded. The representation of abnormal conditions requires a higher degree of accuracy from the models. Here it can no longer be assumed that the entire system is operating within limits. The models must be able to correctly simulate conditions which deviate from the normal operating point. Hence the reactive power limits of generators or the voltage dependency of loads must be modelled. Additionally, in many applications, the active power balance cannot be established with a single slack bus (or machine). Instead, a more realistic representation of the active and reactive power control mechanisms have to be considered to determine the correct sharing of the active and reactive power generation. Besides the considerations regarding abnormal conditions presented above, the assumption of balanced systems may be inappropriate for certain distribution networks. State of the art computational tools for power systems analysis must be able to represent unbalanced networks for load flow calculations. The calculation methods and the options provided by PowerFactorys load flow analysis function allow the accurate representation of any combination of meshed 1-, 2-, and 322 - 1

DIgSILENT PowerFactory

Load Flow Analysis

phase AC and/or DC systems. The load flow tool accurately represents unbalanced loads, generation, grids with variable neutral potentials, HVDC systems, DC loads, adjustable speed drives, SVSs, and FACTS devices, etc., for all AC and DC voltage levels. With a more realistic representation of the active and reactive power balance mechanisms, the traditional requirement of a slack generator is left optional to the user. For very fast and reliable analysis of complex transmission networks, where only the flow of active power through the branches is considered, PowerFactory offers an additional load flow method, namely DC load flow, which determines the active power flows and the voltage angles within the network. The following sections introduce the calculation methods and the options provided with PowerFactorys load flow tool. This information is a guide to the configuration of the

PowerFactory load flow analysis command (

).

22.1

Technical Background

This section presents the general aspects of the implementation of PowerFactorys load flow calculation tool. An understanding of the concepts introduced here should be sufficient background to manage the options presented in the load flow analysis command dialogue. Further technical details about the models implemented in PowerFactory for load flow calculations are provided in the Technical References of the corresponding network components.

22.1.1

Network Representation and Calculation Methods

A load flow calculation determines the voltage magnitude (V) and the voltage angle () of the nodes, and the active (P) and reactive (Q) power flow on branches. Usually, the network nodes are represented by specifying two of these four quantities. Depending on the quantities specified, nodes can be classified as: PV nodes: constant active power and voltage magnitude are specified. This type of node is used to represent generators whose active power and voltage magnitude are controlled, and synchronous condensers. In order to consider equipment limits under abnormal conditions (as mentioned in the previous section), reactive power limits for the corresponding network components are also used as input information. PQ nodes: active and reactive power are specified. This type of node is used to represent loads and generators with fixed dispatch. Loads can also be set to change (from their original Po and Qo values at nominal voltage) as a function of the voltage of the node to which the load itself is connected. Slack bus: voltage magnitude and angle are fixed. In traditional load flow calculations the slack node (associated with a synchronous generator or an external network) carries out the balancing of power in the system. Device nodes: special nodes used to represent devices such as HVDC converters, SVSs, etc., with specific control conditions (for example the control of active power flow at a certain MW threshold in a HVDC converter, or the control of the voltage of a busbar by an SVS).

22 - 2

DIgSILENT PowerFactory

Load Flow Analysis

Note:

In traditional load flow calculations, asynchronous machines are represented by PQ nodes, assuming that the machine operates at a certain power factor, independent of the busbar voltage. Besides this traditional representation, PowerFactory offers a more accurate "slip iteration" (AS) representation based on the model equivalent circuit diagrams. For further information please refer to the corresponding Technical Reference.

In contrast to other power system calculation programs, PowerFactory does not directly define the node characteristic of each busbar. Instead, more realistic control conditions for the network elements connected to these nodes are defined (see the Load Flow tab of each elements dialogue). For example, synchronous machines are modelled by defining one of the following control characteristics: Controlled power factor (cos()), constant active and reactive power (PQ); Constant voltage, constant active power (PV) on the connected bus; Secondary (frequency) controller ('slack', SL). It is also important to note that in PowerFactory the active and reactive power balance of the analyzed networks is not only possible through a slack generator (or external network). The load flow calculation tool allows the definition of more realistic mechanisms to control both active and reactive power. For further information please refer to Section 22.1.2.

AC Load Flow
In PowerFactory the nodal equations used to represent the analyzed networks are implemented using two different formulations: Newton-Raphson (Current Equations) Newton-Raphson (Power Equations, classical) In both formulations, the resulting non-linear equation systems must be solved by an iterative method. PowerFactory uses the Newton-Raphson method as its non-linear equation solver. The selection of the method used to formulate the nodal equations is user-defined, and should be selected based on the type of network to be calculated. For large transmission systems, especially when heavily loaded, the standard NewtonRaphson algorithm using the Power Equations formulation usually converges best. Distribution systems, especially unbalanced distribution systems, usually converge better using the "Current Equations" formulation. In addition to the Newton-Raphson iterations, which solve the network nodal equations, PowerFactory applies an outer loop when the control characteristic of automatic transformer tap changers and/or switchable shunts is considered. Once the Newton-Raphson iterations converge to a solution within the defined tolerance (without considering the setpoint values of load flow quantities defined in the control characteristic of the tap changers/switchable shunts (see Figure 22.1)), the outer loop is applied in order to reach these target values. The actions taken by the outer iterative loop are: Increasing/decreasing discrete taps; Increasing/decreasing switchable shunts; and
22 - 3

DIgSILENT PowerFactory

Load Flow Analysis

Limiting/releasing synchronous machines to/from max/min reactive power limits. Once the above-listed actions are taken, a new Newton-Raphson load flow iteration takes place in order to determine the new network operating point.

Fig. 22.1:

Setting of the Control Mode for an Automatic Tap Changer

In the classical load flow calculation approach, the unbalances between phases are neglected. For the analysis of transmission networks this assumption is generally admissible. In distribution networks this assumption may be inappropriate depending on the characteristics of the network. PowerFactory allows for the calculation of both balanced (AC Load Flow, balanced positive sequence) and unbalanced (AC Load Flow Unbalanced, 3-phase (ABC)) load flows according to the descriptions above.

DC Load Flow
In addition to the ''AC'' load flow calculations presented in this section, PowerFactory offers a so-called ''DC'' load flow calculation method (applied to AC systems), for fast analyses of complex transmission networks where only the flow of active power through branches is considered. In this case the non-linear system resulting from the nodal equations is simplified due to the dominant relation that exists between voltage angle and active power flow in high voltage networks. A set of linear equations is thereby obtained, where the voltage angles of the buses are directly related to the active power flow through the reactances of the individual components. The DC load flow does not require an iterative process and the calculation speed is therefore considerably increased. Only active power flow without losses is considered.

22 - 4

DIgSILENT PowerFactory

Load Flow Analysis

22.1.2

Active and Reactive Power Control

Besides the traditional approach of using a slack generator to establish the power balance within the system, PowerFactorys load flow calculation tool provides other active power balancing mechanisms which more closely represent the reality of transmission networks (see selection in the Active Power Control tab of the load flow command). These mechanisms are implemented in the steady-state according to the control processes that follow the loss of large power stations: According to Secondary Control: If an unbalance occurs between the scheduled active power values of each generation unit and the loads plus losses, primary control will adapt (increase/decrease) the active power production of each unit, leading to an over- or under-frequency situation. The secondary frequency control will then bring the frequency back to its nominal value, re-establishing cost-efficient generation delivered by each unit. Secondary control is represented in PowerFactorys load flow calculations by network components called 'Power Frequency Controllers' (ElmSecctrl). If the Active Power Control option According to Secondary Control is selected, the generators considered by the Power Frequency Controllers establish the active power balance according to their assigned participation factors (for further information, please refer to the corresponding Technical Reference). According to Primary Control: Shortly following a disturbance, the governors of the units participating in primary control will increase/decrease their turbine power and drive the frequency close to its nominal value. The change in the generator power is proportional to the frequency deviation and is divided among participating units according to the gain (Kpf ) of their primary controllers. If the Active Power Control option According to Primary Control is selected in PowerFactorys load flow command, the power balance is established by all generators having a primary controller gain (parameter Prim. Frequency Bias from the Load Flow tab of the synchronous generator), according to the corresponding frequency droop. According to Inertias: Immediately following a disturbance, the missing/excess power is delivered from the kinetic energy stored in the rotating mass of the turbines. This leads to a deceleration/acceleration and thus to a decrease/increase in the system frequency. The contribution of each individual generator towards the total additional power required is proportional to its inertia. If the Active Power Control option According to Inertias is selected in PowerFactorys load flow command, the power balance is established by all generators. Individual contributions to the balance are proportional to the inertia/acceleration time constant of each generator (defined on the RMS-Simulation tab of the synchronous generator types dialogue). The reactive power reserves of synchronous generators in transmission networks are used to control the voltages at specific nodes in the system and/or to control the reactive power exchange with neighboring network zones. In PowerFactorys load flow calculation, the voltage regulator of the generators has a voltage setpoint which can be set manually (defining a PV characteristic as introduced in Section 22.1.1), or from an Automatic Station Controller (ElmStactrl). This Automatic Station Controller is analogous to the 'Power Frequency Controller', and combines several sources of reactive power to control the voltage at a given bus. In this case the relative contribution of each reactive power source (i.e. generators, SVSs) is defined in the Station Controller dialogue. For further details about the use and definition of Automatic Station Controllers please refer to the corresponding Technical Reference.

22 - 5

DIgSILENT PowerFactory

Load Flow Analysis

22.1.3

Load Flow Analysis of Low Voltage Systems

In a low voltage system every load may consist of a fixed component with a deterministic amount of power demand plus a variable component comprising many different, small loads, such as lights, refrigerators, televisions, etc., whose power varies stochastically between zero and a maximum value. Under such conditions, PowerFactory uses a probabilistic load flow calculation, which is able to calculate both maximum and average currents as well as the average losses and maximum voltage drops. The probabilistic load flow calculation used by PowerFactory can be applied to any system topology, including meshed low-voltage systems.

PowerFactorys probabilistic load flow calculation uses low voltage loads comprised of

several customers with fixed and variable (stochastic) demand components. The maximum value of the variable component (which is dependent upon the number of customers, n) is described by the following formula: S max ( n ) = n g ( n ) S max

Where Smax is the maximum variable load per connection (customer) and the function g(n) describes the maximum coincidence of loads, dependent upon the number of connections, n. If a Gaussian distribution is assumed, the coincidence function is: 1 g g ( n ) = g + -------------n The average value of the variable component is: S av = g S max

Note:

Low voltage loads can be represented in PowerFactory by Low Voltage Load (ElmLodlv) elements which can be directly connected to terminals or by Partial Low Voltage Loads (ElmLodlvp) which are defined along transmission lines/cables (see the Definition of Line Loads section on the Load Flow tab of transmission line/cable elements - ElmLne).

22.2

Executing Load Flow Calculations


icon on the main toolbar;

A load flow calculation may be initiated by: Pressing the

Selecting the Calculation > Load Flow ... option from the main menu. An example of the load flow command dialogue is shown in Figure 22.2.

22 - 6

DIgSILENT PowerFactory

Load Flow Analysis

Fig. 22.2:

Load Flow Command (ComLdf ) Dialogue

The following pages explain the load flow command options. Following this, some hints are given regarding what to do if your load flow cannot be solved.

22.3

Load Flow Calculation Options

This section describes PowerFactorys load flow calculation command (ComLdf ). Further technical background regarding the options presented here is given in Section 22.1.

22.3.1

Basic Options

Calculation Method
AC Load Flow, balanced, positive sequence Performs load flow calculations for a single-phase, positive sequence network representation, valid for balanced symmetrical networks. A balanced representation of unbalanced objects is used (for further details please refer to Section 22.1.1). AC Load Flow, unbalanced, 3 Phase (ABC) Performs load flow calculations for a multi-phase network representation. It can be used for analyzing unbalances of 3-phase systems, e.g. introduced by unbalanced loads or non-transposed lines, or for analyzing all kinds of unbalanced system technologies, such as
22 - 7

DIgSILENT PowerFactory

Load Flow Analysis

single-phase- or two-phase systems (with or without neutral return). For further details please refer to Section 22.1.1. DC Load Flow (linear) Performs a DC load flow based on a set of linear equations, where the voltage angles of the buses are strongly related to the active power flow through the reactances of the individual components (for further details please refer to Section 22.1.1).

Reactive Power Control


This option is available only for AC load flow calculations. Automatic Tap Adjust of Transformers Adjusts the taps of all transformers which have the option Automatic Tap Changing enabled on the Load Flow tab of their element dialogues. The tap adjustment is carried out according to the control settings defined in the transformer element's dialogue (for further information please refer to the corresponding Technical Reference). Automatic Shunt Adjustment Adjusts the steps of all switchable shunts that have the option Switchable enabled on the Load Flow tab of the shunts element dialogue (for further information please refer to corresponding Technical Reference). Consider Reactive Power Limits Considers the reactive power limits defined by generators and SVSs. If the load flow cannot be solved without exceeding the specified limits, a convergence error is generated. If this option is not enabled, PowerFactory will print a warning message if any of the specified limits are exceeded. Consider Reactive Power Limits Scaling Factor This option is only available if Consider Reactive Power Limits is enabled. If selected, the reactive power limits of generators are scaled by the relaxation factors: Scaling factor (min) and Scaling factor (max) which are set on the Load Flow tab of the generator element's dialogue. Note that the reactive power limits of generators are also defined on the Load Flow tab of the generator element's dialogue by one of the following: maximum/minimum values, 7.5.4, or according to the generators assigned type.

Load Options
Consider Voltage Dependency of Loads The voltage dependency of loads with defined voltage dependency factors (Load Flow tab of the general- and complex load types) will be considered. Feeder Load Scaling Scales loads with the option Adjusted by Feeder Load Scaling enabled on the Load Flow tab of their element dialogue by the Scaling Factor specified in the Load Scaling section of the feeder element (for information about feeder elements please refer to Section 7.3.3
22 - 8

DIgSILENT PowerFactory

Load Flow Analysis

(Network Data)). In this case, the Scaling Factor specified on the Load Flow tab of load element dialogue is disregarded. Consider Coincidence of Low-Voltage Loads Calculates a 'low voltage load flow' as described in Sections 22.1.3 and 22.3.6, where load coincidence factors are considered (for C.10 and C.11 objects), so as to produce maximum branch currents and maximum voltage drops. Since coincidence factors are used, the result of low voltage analysis will not obey Kirchhoff's current law. After the load flow has been successfully executed, maximum currents (Imax), maximum voltage drops (dumax) and minimum voltages (umin, Umin) are displayed in every branch element and at every busbar. The usual currents and voltages represent here average values of voltages and currents. Losses are calculated based on average values, and maximum circuit loading is calculated using maximum currents. Scaling Factor for Night Storage Heaters This is the factor by which the night storage heater power (as found in Low Voltage Load elements) is multiplied for all low voltage loads.

22.3.2

Active Power Control

Active Power Control


As explained in Section 22.1.2, PowerFactorys load flow calculation offers several options for maintaining power balance within the system under analysis. These options are: as Dispatched: If this option is selected and no busbar is assigned to the Reference Busbar (Reference Bus and Balancing section of the Active Power Control tab), the total power balance is established by one reference generator/external grid ("slack"-generator). The slack generator can be directly defined by the user on the Load Flow tab of the target element. The program automatically sets a slack if one has not been already defined by the user.

according to Secondary Control: Power balance is established by all generators which are considered by a "Secondary Controller" as explained in Section 22.1.2. Active power contribution is according to the secondary controller participation factors. according to Primary Control: Power balance is established by all generators having a Kpf-setting defined (on the Load Flow tab of a synchronous machine element dialogue), as explained in Section 22.1.2. Active power contribution is according to the droop of every generator. according to Inertias: Power balance is established by all generators, and the contribution of each is according to the inertia (acceleration time constant) as explained in Section 22.3.2.
22 - 9

DIgSILENT PowerFactory

Load Flow Analysis

Consider Active Power Limits: Active power limits for generators (as defined on the elements Load Flow tab) participating in active power balance, will be applied. If this option is disabled, the active power output limits may be violated, in which case a warning is issued. This option is not available when the Active Power Control option is set to either as Dispatched or according

to Inertias.

Reference Bus and Balancing


If as Dispatched is selected in the Active Power Control section of the tab, further options regarding the location of the reference busbar and the power balancing method are available: Reference Busbar: A different busbar to the one connecting the slack machine (or network) can be selected as a reference for the voltage angle. In this case the user must specify the value of the voltage angle at this selected reference bus, which will be remotely controlled by the assigned slack machine (or network). Angle: User-defined voltage angle for the selected reference busbar. The value will be remotely controlled by the slack machine (external network). Only available if a Reference Busbar has been selected. If a Reference Busbar is specified, the load (ElmLod), generator or static generator (ElmGenstat) connected to the reference busbar will be selected for balancing active power. Otherwise the "Reference Machine" will be used.

P-balancing:

22.3.3

Advanced Options

Load Flow Method


As explained in Section 22.1.1, the nodal equations used to represent the analyzed networks are implemented using two different formulations: Newton-Raphson (Current Equations) Newton-Raphson (Power Equations, classical) In both formulations, the resulting non-linear equation systems must be solved using an iterative method. PowerFactory uses the Newton-Raphson method as its non-linear equation solver. The selection of the method used to formulate the nodal equations is user-defined, and should be selected based on the type of network to be calculated. For large transmission systems, especially when heavily loaded, the classical NewtonRaphson algorithm using the Power Equations formulation usually converges best. Distribution systems, especially unbalanced distribution systems, usually converge better using the Current Equations formulation.

22 - 10

DIgSILENT PowerFactory

Load Flow Analysis

Load Flow Initialisation


No Topology Rebuild Will speed up large sets of consecutive load flow calculations. Enabling this option means that the topology of the system will not be rebuilt when calculating the next load flow. If no topological changes will be made to the system between these consecutive load flow calculations, then this option may be enabled. No Initialisation (no flat-start) Initializes a load flow from a previously convergent solution (no flatstart). Consideration of transformer winding ratio Sets the manner in which voltage initialisation takes place at nodes. Reducing the relaxation factor results in an increased number of iterations, but yields greater numerical robustness.

Tap Adjustment
Method The direct method will include the tap controller models in the load flow calculation (i.e. in the internal loop involving the Newton-Raphson iterations). The new tap positions will then be calculated directly as a variable and are therefore known following a single load flow calculation. The stepped method will calculate a load flow with fixed tap positions, after which the required tap changes are calculated from the observed voltage deviations and the tap controller time constants. The load flow calculation is then repeated with the new tap positions, until no further changes are required. These tap adjustments take place in the outer loop of the calculation.

Min. Controller Relaxation Factor The tap controller time constants are used in the automatic tap changer calculations to determine the relative speed of the various tap controllers during the load flow iterations. The relaxation factor can be used to slow down the overall controller speeds (in case of convergence problems, set a factor of less than 1.0), or to speed them up (for a faster load flow, set a factor of greater than 1.0).

Station Controller
Available on the second page ( ) of the Advanced Options tab. The options presented in this field determine the reactive power flow from generators participating in station controllers (ElmStactrl). Please refer to the corresponding Technical Reference for information on station controllers and their control modes.

22 - 11

DIgSILENT PowerFactory

Load Flow Analysis

Modeling Method of Towers


with in/output signals The equations of the lines are modelled in the tower. It should be noted that selecting this option will result in slower performance. ignore couplings Inter-circuit couplings are ignored. equations in lines The constant impedance and admittance matrices are calculated by the tower and used to develop the equations of the lines. The equations involving coupling are modeled in the lines; consequently, using this option results in faster performance than using option with in/output signals.

Use this load flow for initialization of OPF


The results of this load flow calculation are used to initialize the OPF calculation.

22.3.4

Iteration Control

The options on this tab relate to the non-linear equation solver and are therefore only available for PowerFactorys AC load flow calculation methods.

Max. Number of Iterations for


The load flow calculation comprises an inner loop involving the Newton-Raphson method (see Section 22.1.1), and an outer loop to determine changes to tap settings and to consider generator reactive power limits. Default values for the maximum number of iterations for these two loops are 25 iterations for the inner loop, and 20 iterations for the outer loop. Newton-Raphson Iteration - itrlx The inner loop of the load flow involves the Newton-Raphson iterations. This parameter defines the maximum number of iterations (typically 25). Outer Loop - ictrlx The outer loop of the load flow calculation will determine changes to the tap changer (depending on the tap adjustment method selected), and considers reactive power limits of generators, etc. These are adjusted in the outer loop and then a new iteration of the inner loop is started again (see Section 22.1.1). The maximum number of outer loop iterations (typically 20) is set by this parameter. Number of Steps - nsteps Problematic load flows with slow convergence may be improved by starting a load flow calculation for a low load level, and then increasing the load level in a number of steps. This is achieved by setting the Number of Stairs to a value greater than one. For example, nsteps =3 begins a load flow at a load/generation level of 1/3 and the increases the power to 100% over two further steps.
22 - 12

DIgSILENT PowerFactory

Load Flow Analysis

Max. Acceptable Load Flow Error for


A higher precision or a faster calculation can be obtained by changing the maximum allowable error (i.e. tolerance). The values of the calculated absolute error for nodes, or the calculated relative errors in the model equations, e.g. voltage error of voltage controlled generators, are specified here. Nodes - errlf Maximum Iteration Error of Nodal Equations (typical value: 1 kVA). Model Equations - erreq Maximum Error of Model Equations (typical value: 0.1%).

Convergence Options
Relaxation Factor A Newton-Raphson relaxation factor smaller than 1.0 will slow down the convergence speed of the load flow calculation, but may result in an increased likelihood of convergence for systems which are otherwise difficult to solve. Automatic Model Adaptation for Convergency The PowerFactory load flow calculation will always first try to find a solution using non-linear mathematical power system models. If a solution cannot be found, and this option is enabled, an adaptive algorithm will change these models slightly to make them more linear, until a solution is found. Any model adaptations are reported in the output window.

22.3.5

Outputs

Show Verification Report Produces a table in the output window with a list of overloaded power system elements and voltage violations, according to the values specified in the Check Devices section of the Outputs tab. Show Convergence Progress Report Will print detailed reports throughout the load flow calculation, which may be used to solve convergence problems. Show 'Outer Loop' messages Will print reports concerning the outer loop iterations, which may be used to solve convergence problems. Calculate Power at Risk Calculates the SPAR (System Power At Risk) parameter, which is shown in the 'Total System Summary Report'. The SPAR equals the minimum amount of power that will be shed in order to make the highest branch loading equal to the Max. Loading of Edge Element (Check Devices section). The SPAR calculation uses a linear optimization technique to calculate the least power that may be shed in order to alleviate all overloading. This minimum power that will be shed is called the "Power At Risk". Output Displays the report format definition that will be used. The arrow

22 - 13

DIgSILENT PowerFactory

Load Flow Analysis

button ( ) can be pressed to edit or inspect the report settings. This option is only available if Show Verification Report is selected.

Check Devices
Max. Loading of Edge Element Reference value of the maximum loading used by the 'Verification Report' and by the 'SPAR' function (only available if Show Verification Report and/or Calculate Power at Risk are selected). Lower Limit of Allowed Voltage Reference value for the minimum allowed voltage used by the 'Verification Report' (only available if Show Verification Report is selected). Higher Limit of Allowed Voltage Reference value for the maximum allowed voltage used by the 'Verification Report' (only available if Show Verification Report is selected).

22.3.6

Low Voltage Analysis

As explained in Sections 22.1.3 and 22.3.1, low voltage loads (ElmLodlv and ElmLodvp) are modelled in PowerFactory with fixed and variable (stochastic) components. The parameters which define these fixed and variable components are set in both the load flow command dialogue (i.e. globally), and in the load types dialogues (i.e. locally) according to the settings defined below.

Definition of Fixed Load per Customer


The fixed load is the non-stochastic component of the load, which is not subject to coincidence factors. The active and reactive power defined in this field, multiplied by the number of customers (defined in the load element itself), are added to the fixed load component defined for each low voltage load (ElmLodlv and ElmLodvp). For further information about LV loads please refer to the corresponding technical references: C.10 and C.11.

Definition of Variable Load per Customer


The variable component of low voltage loads can be globally defined using the parameters in this section or by specifically defining LV load types for the target loads. The Max. Power per Customer is the independent maximum kVA per customer. This value, multiplied by the Coincidence Factor (ginf) (see Section 22.1.3), gives the "Average Power" per customer, which is used in load flow calculations. The 'total' maximum variable power per load is calculated using the Max. Power per Customer, the Coincidence Factor (ginf ), and the number of customers (defined in the load element itself) as described in Section 22.1.3. For further information about LV loads please refer to the corresponding technical references: C.10 and C.11.
22 - 14

DIgSILENT PowerFactory

Load Flow Analysis

Note

The factors defined in the section 'Definition of Variable Load per Customer' are used as global data for the load flow calculation. If specific LV load types are defined, the locally-defined data in the type is used by the corresponding loads. For all other LV loads with no type assigned, the global data from the load flow command is used.

Voltage Drop Analysis


For the consideration of the stochastic nature of loads, PowerFactory offers two calculation methods: Stochastic Evaluation Maximum Current Estimation The Stochastic Evaluation method is the more theoretical approach, and can also be applied to meshed network topologies. The Maximum Current Estimation method applies stochastic rules only for the estimation of maximum branch flows. Based on the maximum current flow in each branch element, maximum voltage drops are calculated and added along the feeder. Obviously, this method has its limitations in case of meshed LV networks.

22.3.7

Advanced Simulation Options

This page, as shown in Figure 22.3, is not only important for load flow but also for other calculation functions such as transient simulation. Utilizing the options on this page can result in improved performance; i.e. the speed of a transient simulation may improved when protection devices are neglected in the calculation.

Fig. 22.3:

Advanced Simulation Options in the ComLdf command dialogue

22 - 15

DIgSILENT PowerFactory

Load Flow Analysis

Consider Protection Devices Calculates the tripping times for all modeled relays and fuses. This will also show the load currents in the overcurrent plots and/or the measured impedance in the R-X diagrams. Disabling this option will speed up the calculations. Ignore Composite Elements Disables all controller models. The panes Models Considered and Models Ignored are used to disable specific groups of controller models. Model names can be moved between these panes by either double-clicking on them or by selecting them and using the arrow buttons. Enabling this option may result in faster convergence, or an increased likelihood of convergence for systems which are otherwise difficult to solve.

22.4

Troubleshooting Load Flow Calculations

In general, if a solution can be found (in other words, the network is mathematically solvable), PowerFactory will find a solution. In some cases the user may have made an error which will not allow a solution to be found; i.e. a large load causing a voltage drop so large that a voltage collapse results. In a real-world power system the same problem would be found. When creating a network for the first time it is best to enter the data for only a small part or 'path' of the network and solve the network by calculating a load flow. PowerFactory has a data verification process in which certain checks are performed, such as whether a line is connected between nodes of the same voltage; and the correct voltage orientation of transformers, etc. Error messages regarding these issues are printed to the output window, listing the element and its associated error. These messages are interactive and the user may: Right-click > Mark in Graphic to show the element on the single line graphic; or double-click on the description of the element (i.e. 'South Grid\MV-K6.ElmLne' in the example below) to view the element dialogue. In the following example the messages in the output window state that the line element called 'MV-K6', which is found in the 'South Grid' folder, is missing type data.
DIgSI/wrng DIgSI/err DIgSI/err DIgSI/err DIgSI/err DIgSI/info Protection Devices are not considered. 'South Grid\MV-K6.ElmLne': missing type ! last command leads to error(s), see output window ! Error in load-flow data! Load-flow calculation not executed

Once these errors have been corrected and the load flow still cannot be solved, use the Show Verification Report and Show Convergence Progress Report options found in the Outputs tab of the load flow dialogue (for further information on these options, see Section 22.3.5). These will print messages to the output window and provide clues as to where any problems may lie. The graphic can also be colored to show low and high voltages and overloading. This will also provide a good indication of possible problems. Look at the undervoltage nodes and overloaded elements and investigate why they are overloaded; look at load setpoints, line lengths and line type data (the impedances may be too high, for example).
22 - 16

DIgSILENT PowerFactory

Load Flow Analysis

Note

There are 3 different types of messages that are printed to the output window: warning, error and information messages. Only error messages must be corrected for a load flow to solve. Take note of the warning messages and evaluate them in terms of your system, however these do not need to be corrected for the load flow to solve. "Unsupplied Areas" mean that a node or branch element has no supply (i.e. a breaker is open).

If there is still no convergence then set the option Out of Service for most of the elements (see each elements Basic Data tab). Following this, bring these elements back into service, one at a time, from the source element 'downwards', performing a load flow calculation each time. When experiencing large unbalances, such as when there are a number of single or dual phase elements, or when using power electronics elements, select the Newton-Raphson (Current Iteration) option on the Advanced tab of the load flow dialogue.

22.5

Load Flow Sensitivities

This command performs a voltage sensitivity analysis based on the linearization of the system around the operational point resulting from a load flow calculation (as explained in Section 22.5.3). The ComVstab command is accessible by the following means: selecting the 'Additional Tools' icon ( ) for the toolbar (in PowerFactorys main ); or

PowerFactorys Load Flow Sensitivities (ComVstab) command is shown in Figure 22.4.

icon bar) and then clicking on the ComVstab icon (

right-clicking on a busbar/terminal or transformer and selecting Calculate --> Load Flow Sensitivities... . In this case the command will be automatically set to calculate the sensitivity to power injections/tap changes on the selected busbar/transformer. The selected terminal/transformer will be automatically set in the Busbar (or Transformer) reference.

22 - 17

DIgSILENT PowerFactory

Load Flow Analysis

Fig. 22.4:

Load Flow Sensitivities Command (ComVstab) Dialogue

22.5.1

Load Flow Sensitivities Options

The options available for the Load Flow Sensitivities command (Figure 22.4) are:

Initialization
Load Flow: Displays which load flow command will be used to initialize the sensitivity analysis. If no load flow calculation has been executed before opening the Load Flow Sensitivities (ComVstab) command, or if the calculation has been reset, the Load Flow displays the most recently executed load flow command in the active study case.

Sensitivities
Diagonal Elements Only: The effect of the injections of P and Q at each busbar are evaluated for the busbar itself (effect on voltage magnitude ( v i ) ( P i ) , ( v i ) ( Q i ) , and on voltage angle ( i ) ( P i ) , ( i ) ( P i ) for each busbar) and the corresponding adjacent branches. In this mode, the calculated sensitivities ( P n ) ( P i ) , ( Q n ) ( P i ) , ( P n ) ( Q i ) , and ( Q n ) ( Q i ) in the branches (index n) always refer to derivations
22 - 18

DIgSILENT PowerFactory

Load Flow Analysis

P i and Q i of the adjacent buses (index i). This means that the sensitivities are calculated for all busbars and for all branches, according to variations in power (P and Q) at the directly connected busbars. Sensitivity to a Single Busbar: The effect of the injections of P and Q at the selected busbar are calculated for the whole network (i.e. for all buses and branches). The target busbar can be selected using the Busbar button ( ) located at the bottom of the dialogue. Alternatively, the target bus can be selected in the single line graphic by right-clicking on it and selecting Calculate --> Load Flow Sensitivities from the context-sensitive menu. The sensitivities of all busbars and branches are calculated according to variations in power (P and Q) at the selected busbar. Sensitivity to a Single Transformer Tap Position: This option evaluates the effect of changing the tap position of a selected transformer in the network. The sensitivities dP/dtap [MW/tap step], dQ/dtap [Mvar/tap step] for branches, and dphi/dtap [deg/tap step], dv/dtap [p.u./tap step] for buses are calculated. The target transformer can be selected using the Transformer button ( ) located at the bottom of the dialogue. Alternatively, the target transformer can be selected in the single line graphic by right-clicking on it and selecting Calculate -> Load Flow Sensitivities from the context-sensitive menu. Modal Analysis: This option performs an eigenvalue calculation on the sensitivity matrix as explained in Section 22.5.3. The number of eigenvalues to be calculated is defined in the Number of Eigenvalues field at the bottom of the dialogue. The eigenvalues are always calculated in order of their largest magnitude, so selecting n eigenvalues will display the n eigenvalues in descending order according to magnitude (note that the larger the number of desired eigenvalues, the longer the calculation will take). In the Display Results for Mode field, the user can specify the number of a specific eigenvalue, for which the stability behavior (i.e. the eigenvectors and participation factors) is to be analyzed. The algorithm then additionally calculates the ( P ) ( Q ) , ( Q ) ( Q ) (branch sensitivities) and the ( v ) ( Q ) , ( ) ( Q ) (bus sensitivities) which correspond to the mode specified (see Section 22.5.3 for further technical background).

22.5.2

Load Flow Sensitivities Execution and Results

When the ComVstab command has been configured and the Execute button has been pressed, the program calculates several sensitivity factors such as ( v i ) ( P i ) , ( v i ) ( Q i ) , ( i ) ( P i ) , ( i ) ( Q i ) etc., according to the selected options, for buses and branch elements.
22 - 19

DIgSILENT PowerFactory

Load Flow Analysis

Upon completion of the sensitivity factor calculation, the following message appears in the output window:
DIgSI/info - Load Flow Sensitivities calculated!

The calculated results can be displayed via the 'Flexible Data Page' (see Section 11.5) by selecting the sensitivities from the load flow variables (Variable Set: 'Current, Voltages and Powers'). The names of the variables correspond to the calculated derivations, i. e. the result of the expression ( v i ) ( P i ) is stored in the variable named dvdP; and likewise the result of the expression ( i ) ( Q i ) is stored in the variable dphidQ. When the Modal Analysis option is selected, the calculated eigenvalues are displayed (in descending order according to magnitude) in the output window. The eigenvectors and participation factors can be displayed using the 'Flexible Data Page'.

22.5.3

Technical Background

stability calculation as described below.

PowerFactorys Load Flow Sensitivities function (ComVstab) performs a static voltage

Linearizing the load flow equations around the actual operating point leads to the following equation system: J P J Pv = P J Q J Pv v Q

(22.1)

The equation system in (22.1) shows that changes in the voltage magnitude and angle due to small changes in the active and reactive power can be directly calculated from the load flow Jacobian matrix. For example if P is set to 0, the sensitivities of the type dv/ dQ are calculated from (22.1) according to: (22.2) where: (22.3)
1 J Qv = J Q J P J Pv + J Qv

1 Q = S Q v = J Qv vQ

As can be seen from (22.2), the variation of voltage magnitude at each busbar can be described by a linear combination of small reactive power variations according to: (22.4) v i = S i1 Q 1 + + S in Q n

In this case the diagonal elements Si1 of S represent the voltage variation at bus i due to a variation of reactive power at the same point. The non-diagonal elements Sij describe the voltage variation at busbar i due to the variation in reactive power at a different point on the network. Positive dv/dQ sensitivity indicates stable operation. High sensitivity means that even small changes in reactive power cause large changes in the voltage magnitude; therefore the more stable the system, the lower the sensitivity (high voltage sensitivities are indic22 - 20

DIgSILENT PowerFactory

Load Flow Analysis

ative of weak areas of the network).

Note:

Recall that in HV networks branches are predominantly reactive. Voltage magnitudes depend primarily on reactive power flows and voltage angles depend on active power bus injections.

The sensitivity analysis can be extended in order to determine the active and reactive power variations on branches (in the PowerFactory network model all components carrying a flow, i.e. lines, transformers, generators are regarded as branches) due to variations in active and reactive power busbar injections. In this case the sensitivities are calculated using the branch-node Jacobian matrix. By applying a modal transformation to (22.2) the dV/dQ sensitivity can be expressed as an uncoupled system of the form: (22.5) where: (22.6) and Q = TQ v = Tv = S Q = T 1 S vQ T Q v vQ

In (22.5), S vQ is a diagonal matrix whose elements correspond to the eigenvalues of the sensitivity matrix, SvQ, from (22.2). Therefore, the voltage variation at each mode depends only on the reactive power variation at the same mode: (22.7) i = i Q v i

The eigenvalues i, which are real, provide the necessary information about the voltage stability of the system. If i is positive, the modal voltage increase and the modal reactive power variations are in the same direction and the system is therefore stable. The magnitude of the eigenvalue indicates how far/close one voltage mode is to instability. In (22.5), T= [1...n] corresponds to the matrix of right eigenvectors of SvQ, while T-1 corresponds to the left eigenvectors matrix: 1 (22.8) T
1 T

n
T

The participation factor of bus k to mode i is defined by the product of the kth component of the left and right eigenvector of mode i: (22.9) p ik = ik ik

The sum of the participation factors of all nodes corresponds to the scalar product of the left and right eigenvector, and is therefore equal to one. In this sense, the participation factor gives an indication of the extent of the influence the variation of active power on a
22 - 21

DIgSILENT PowerFactory

Load Flow Analysis

node has on a voltage mode.

22 - 22

DIgSILENT PowerFactory

Short-Circuit Analysis

Chapter 23 Short-Circuit Analysis

The short-circuit calculation in PowerFactory is able to simulate single faults as well as multiple faults of almost unlimited complexity. As short-circuit calculations can be used for a variety of purposes, PowerFactory supports different representations and calculation methods for the analysis of short-circuit currents. One application of short-circuit calculations is to check the ratings of network equipment during the planning stage. In this case, the planner is interested in knowing the expected maximum currents (for the correct sizing of components) and the minimum currents (to design the protection scheme). Short-circuit calculations performed at the planning stage commonly use calculation methods that require less detailed network modelling (i.e. methods which do not require load information) and which will apply extreme-case estimations. Examples of these methods include the IEC/VDE method and the ANSI method. A different field of application is the precise evaluation of the fault current in a specific situation, i.e. to find out whether the malfunction of a protection device was a relay failure or was the consequence of improper settings (i.e. operational error). These are the typical applications of exact methods such as the superposition method (also known as the complete method), which is based on a specific network operating point. This chapter presents the handling of the short-circuit calculation methods as implemented in PowerFactory. Further background on this topic can be found in Section 23.1.

23.1

Technical Background

Apart from load-flow analysis, short-circuit analysis is the most frequently used calculation function when dealing with electrical networks. It is used in system planning as well as system operations (see Figure 23.1). Calculation quantities which have been newly-introduced in PowerFactory version 14 are shown in Figure 23.1, and a graphical representation of the short-circuit current time function is given in Figure 23.2.

23 - 1

DIgSILENT PowerFactory

Short-Circuit Analysis

Fig. 23.1:

Areas of Application of Short-Circuit Calculations

Fig. 23.2:

Short-Circuit Current Time Function

Example applications of short-circuit analysis in system planning include: Ensuring that the defined short-circuit capacity of equipment is not exceeded with system expansion and system strengthening. Co-ordination of protective equipment (fuses, over-current and distance relays). Dimensioning of earth grounding systems. Verification of sufficient fault level capacities at load points (e.g. uneven loads such as arc furnaces, thyristor-driven variable speed drives or dispersed generation). Verification of admissible thermal limits of cables and transmission lines. Example applications of short-circuit analysis in system operations include: Ensuring that short-circuit limits are not exceeded with system reconfiguration.

23 - 2

DIgSILENT PowerFactory

Short-Circuit Analysis

Determining protective relay settings as well as fuse sizing. Calculation of fault location for protective relays, which store fault disturbance recordings. Analysis of system faults, e.g. misoperation of protection equipment. Analysis of possible mutual interference of parallel lines during system faults. The fundamental difference between the assumptions used by the calculation methods is that for system planning studies the system operating conditions are not yet known, and therefore estimations are necessary. To this end, the method which uses an equivalent voltage source at the fault location has become generally accepted in Western Europe according to IEC 909 (VDE 0102). A revised version of this was published as IEC 60909 in July 2001. This method works independently of the load flow (operating point) of a system. It is based on the nominal and/or calculated dimensions of the operating point of a system and uses correction factors for voltages and impedances, to give conservative results. For the calculation of minimum and maximum short-circuit currents, different correction factors are applied. For short-circuit calculations in a system operation environment, the exact network operating conditions are well-known. If the accuracy of the calculation according to IEC 60909 is not sufficient - or to verify the results of this method - the superposition method can be used. The superposition method calculates the expected short-circuit currents in the network based on the existing network operating condition. If the system models are correct, the results from this method are always more exact than the results of the IEC 60909 method. The system analyst is, however, responsible that s/he has chosen the most unfavorable conditions with respect to the sizing of plant. In some cases, this might result in extensive studies required.

23.1.1

The Complete Method

The complete method (sometimes also known as the superposition method) is, in terms of system modeling, an accurate calculation method. The fault currents of the short-circuit are determined by overlaying a healthy load-flow condition before short-circuit inception with a condition where all voltage supplies are set to zero and the negative operating voltage is connected at the fault location. The procedure is shown in Figure 23.3. The initial point is the operating condition of the system before short-circuit inception (see Figure 23.3a). This condition represents the excitation conditions of the generators, the tap positions of regulated transformers and the breaker/switching status reflecting the operational variation. From these pre-fault conditions the pre-fault voltage of the faulted busbar can be calculated. For the pure fault condition the system condition is calculated for the situation where, the negative pre-fault busbar voltage for the faulted bus is connected at the fault location and all other sources/generators are set to zero (see Figure 23.3b). Since network impedances are assumed to be linear, the system condition after fault inception can be determined by overlaying (complex adding) both the pre-fault and pure fault conditions (see Figure 23.3c).

23 - 3

DIgSILENT PowerFactory

Short-Circuit Analysis

Fig. 23.3:

Illustration of the Complete Method

The Complete Method for calculating short-circuits has been improved in PowerFactory Version 14 as described below. Additionally, the quantities described below are shown in Figure 23.1. A more precise Peak Current, ip, is calculated based on the accurate subtransient short-circuit current (which is calculated using the complete method) and the R/X ratio (which is based on the IEC 60909 standard); The Breaking Current, Ib, (RMS value) is calculated based on the subtransient shortcircuit current and the transient short-circuit current (both of which are calculated by the complete method); The Peak Breaking Current, ib, is calculated from the RMS breaking current, Ib, and the decaying d.c. component; The Thermal Current, Ith, is calculated based on the IEC standard, using the m and n factors (see Figure 23.1). The n-factor calculation uses the transient current instead of the steady-state current;
23 - 4

DIgSILENT PowerFactory

Short-Circuit Analysis

Additionally, loads can have a contribution to the short-circuit current, which can be defined in the load element (Fault Contribution section of Complete Short-Circuit tab).

23.1.2

The IEC 60909/VDE 0102 Method

The IEC/VDE method uses an equivalent voltage source at the faulted bus and is a simplification of the superposition method. It is illustrated in Figure 23.4. The goal of this method is to accomplish a close-to-reality short-circuit calculation without the need for the preceding load-flow calculation and the associated definition of actual operating conditions. Figure 23.4 illustrates how the equivalent voltage source method can be derived from the superposition method. The main simplifications in comparison to the superposition method are as follows: Nominal conditions are assumed for the whole network, i.e. Ui = Un,i. Load currents are neglected, i.e. IOp = 0. A simplified simulation network is used, i.e. loads are not considered in the positive and negative sequence network. To ensure that the results are conservatively estimated, a correction factor, c, is applied to the voltage at the faulted busbar. This factor differs for the calculation of the maximum and the minimum short-circuit currents of a network. The short-circuit calculation based on these simplifications may be insufficient for some practical applications. Therefore, additional impedance correction factors are applied to the physical impedances of the network elements. This method is described in detail in the following section.

23 - 5

DIgSILENT PowerFactory

Short-Circuit Analysis

Fig. 23.4:

Illustration of the IEC/VDE Method

The IEC Impedance Correction Factors


The IEC method uses only the rated parameters of network elements. This is advantageous in that only little information is necessary to perform a short-circuit calculation. However, considering that, for example, the short-circuit contribution of a synchronous generator depends heavily on the excitation voltage and on the unit transformer tap changer position, the worst-case value of this impedance is considered by applying a correction factor (< 1). This idea is illustrated in Figure 23.5. The correction factor c should be determined so that Ik = Ik,IEC. The IEC standard defines an equation for the correction factor for each element type.

23 - 6

DIgSILENT PowerFactory

Short-Circuit Analysis

Fig. 23.5:

Principle of Impedance Correction (IEC/VDE Method)

As the IEC standard includes a worst-case estimation for minimum and maximum shortcircuit currents, some PowerFactory elements require additional data. These elements are: Lines In their type, the maximum admissible conductor temperature (for minimum short-circuit currents) must be stated. Line capacitances are not considered in the positive/negative sequence systems, but must be used in the zero-sequence system. Require a flag indicating whether they are unit or network transformers. Network transformers may be assigned additional information about operational limits which are used for a more precise calculation of the impedance correction factor. Unit transformers are treated differently depending on whether they have an on-load or a noload tap changer.

Transformers

Synchronous Machines Subtransient impedances are used. Additionally, information regarding the voltage range must be given. Asynchronous Machines The ratio of starting current to rated current is used to determine the short-circuit impedance. Please refer to the IEC 60909 standard to find detailed information regarding specific equipment models and correction factors for each element.

23.2

Executing Short-Circuit Calculations

There are different methods of initiating the short-circuit calculation command (ComShc) in PowerFactory, which may result in a different configuration of the command. These methods are described in Sections 23.2.1 and 23.2.2.

23.2.1

Toolbar/Main Menu Execution

Factory as follows:

The short-circuit command may be executed from the toolbar or main menu in Power-

23 - 7

DIgSILENT PowerFactory

Short-Circuit Analysis

By pressing the

icon on the main toolbar; or

By selecting the Calculation -> Short-Circuit ... option from the main menu. In both of these cases, the short-circuit command will be configured in an identical manner. If no short-circuit command already exists in the active study case, the command will by default execute a short-circuit calculation on all busbars/terminals in the network. If a short-circuit calculation does already exist in the active study case, the above mentioned means of executing the calculation will cause the calculation to execute using its most recent configuration.

23.2.2

Context-Sensitive Menu Execution

The short-circuit command may be executed from the context-sensitive menu in PowerFactory by selecting an element(s) in the single-line diagram, right-clicking and selecting one of the following options: Calculate... Short-Circuit: performs a short-circuit calculation for each element selected by the user. It should be noted that the short-circuit calculation for each element is carried out completely independently of the short-circuit calculation for each other element. For this calculation, only the following combinations of elements may be selected: - Single or multiple terminals/busbars; or - A single line; or - A single branch. If several terminals/busbars are selected for analysis, the results of each individual shortcircuit calculation will be displayed together on the single-line graphic. Calculate... Multiple Faults: performs a short-circuit calculation according to the complete method, for the simultaneous short-circuit of all elements selected by the user. Any combination of busbars, terminals, lines and branches can be selected for this calculation. Additionally, switch/circuit breaker open/close operations can also be included in the calculation. When this calculation is selected, the option Multiple Faults in the (ComShc) dialogue will be automatically ticked.

23.2.3

Faults on Busbars/Terminals

The short-circuit command should first be called using one of the methods described in Sections 23.2.1 and 23.2.2. The simplest way to calculate several busbar/terminal shortcircuits individually and to then combine the results into one diagram is to select the option All Busbars (or alternatively, Busbars and Junction/Internal Nodes) in the Fault Location section of the Short-Circuit Calculation (ComShc) dialogue, as displayed in Figure 23.6. Note that to access this option, Multiple Faults in the dialogue must be unticked.

Fig. 23.6:
23 - 8

Short-Circuit Calculation Command (ComShc) Dialogue: Faults at All Busbars

DIgSILENT PowerFactory

Short-Circuit Analysis

If the user would instead like to select from the single-line diagram a single busbar/terminal, or multi-select several busbars/terminals for calculation, the dialogue will be configured as follows: When only a single busbar/terminal is selected, and Calculate > Short-Circuit is chosen from the context-sensitive menu, the Fault Location reference (bottom of dialogue) is set to the selected element. When two or more busbars/terminals are selected and Calculate > Short-Circuit is chosen from the context-sensitive menu, the Fault Location reference (bottom of dialogue) is set to a so-called "Selection Set'' (SetSelect) object, which contains a list of references to the selected busbars/terminals. In either case, various options for the calculation can be modified. Please refer to Section 23.3 for a detailed description of the options available. It should be noted that selecting or deselecting the option Multiple Faults may change the selection of fault locations and may therefore lead to a calculation for locations other than the busbars/terminals selected in the single line graphic. After pressing the Execute button, the calculation is executed and, if successful, the results are displayed in the single line graphic. In addition, a result report is available and may be printed out. Once a selection of fault locations is made and the short-circuit calculation is performed, it is simple to execute further calculations based on the same selection of elements. This can be done by the following alternative means of executing the short-circuit calculation command: By pressing the icon on the main toolbar; or

By selecting the Calculation -> Short-Circuit ... option from the main menu. The short-circuit setup dialogue then shows the previously selected busbars/terminals in the Fault Location section under User Selection.

23.2.4

Faults on Lines and Branches

It is not only possible to calculate short-circuits on busbars and terminals, but also on lines and branches. It should be noted, however, that only a single line or a single branch can be selected at a time, for each short-circuit calculation. It is not possible to select multiple lines and/or branches for calculation. To calculate a short-circuit on one of these types of elements, proceed as follows: In the single-line diagram, select a single line or a single branch where the fault should be modeled. Right-click on the element and select Calculation -> Short-Circuit ... . The short-circuit command (ComShc) dialogue opens and the user can then define the location of the fault relative to the elements length (see Figure 23.7), including which terminal the fault distance should be calculated from. It should be noted that the Short-Circuit at Branch/Line section of this tab is only available when a line or branch has been selected for calculation. Clicking the button located in the Short-Circuit at Branch/Line section of the tab will enable the user to select whether the fault location is defined as a percentage or as an absolute value.

23 - 9

DIgSILENT PowerFactory

Short-Circuit Analysis

Fig. 23.7:

Configuration of Line/Branch Faults in ComShc Dialogue

When a fault on a line/branch is calculated, a box containing the calculation results is displayed next to the selected element.

23.2.5

Multiple Faults Calculation

Multiple faults involve the simultaneous occurrence of more than one fault condition in a network. To calculate simultaneous multiple faults, proceed as follows: Select two or more elements (i.e. busbars/terminals, lines, ...) and right-click. Select the option Calculate -> Multiple Faults. The Short-Circuits dialogue pops up, displaying the short-circuit event list. A 3-phase fault is assumed at all locations in the event list. Click OK. The Short-Circuit command dialogue then pops up. In this dialogue, the Multiple Faults option is ticked in combination with the complete shortcircuit method. Next, the event list has to be adapted to reflect the intended fault conditions. This is described in detail below. Finally, press Execute to start the calculation. The short-circuit event list is a special case of the general event list, which contains the event definitions for dynamic simulations. To edit the list of events (short-circuits at selected locations), please proceed as follows: Open the short-circuit events object using one of the following methods: - In the Fault Location section of the short-circuit (ComShc) dialogue, press the button - Press the next to Short-Circuits. To access the events stored within this object, icon on the main toolbar; or press Contents (see Figure 23.8); or

- In a Data Manager window open the IntEvshc object from the current study case, also denoted by the icon.

23 - 10

DIgSILENT PowerFactory

Short-Circuit Analysis

Fig. 23.8:

Accessing the Short-Circuit Events List

A window opens up which shows the list of events (i.e. short-circuits at the selected locations). When double-clicking on one entry in this list (i.e. its entire row), a window with a description of the event is opened. The short-circuit event settings can now be modified. The list of fault locations consists of a "Short-Circuit Event List'' (IntEvtshc) object, which holds one or more short-circuit events (EvtShc). Each of these events has a reference to a fault location (a busbar/terminal, line, etc) and displays a short description of the fault type. An example is shown in Figure 23.9.

Fig. 23.9:

A Short-Circuit Event (EvtShc)

Note

To re-use the event list (IntEvtshc) later, this object can be copied to a user-defined folder in the Data Manager. This will prevent it from being modified during future calculations. When repeating the calculation with the same configuration, the reference in Calculate -> Multiple Faults can be set to this object.

23 - 11

DIgSILENT PowerFactory

Short-Circuit Analysis

23.3

Short-Circuit Calculation Options

The following sections describe the options available in PowerFactorys short-circuit calculation command. Some of these options are dependent upon the selected calculation method, therefore separate sections dedicated to each method are presented.

23.3.1

Basic Options (All Methods)

The options presented in this section are common to all implemented calculation methods and are used to define the general settings of the short-circuit calculation. The specific options for each method are presented below in separate sections.

Fig. 23.10:

IEC Calculation - Basic Options

An example of the short-circuit command dialogue is shown in Figure 23.10 (IEC calculation in this case). The sections of the dialogue which are common to all calculation methods are:

Method
PowerFactory provides the following calculation methods for short-circuit calculation:
according to VDE (the German VDE 0102/0103 standard); according to IEC (the International IEC 60909 standard); according to ANSI (the American ANSI/IEEE C37 standard);

23 - 12

DIgSILENT PowerFactory

Short-Circuit Analysis

complete (superposition method which considers the pre-fault load-flow results (see Section 23.1.1)). The specific options for each of these methods are available on the Advanced Options tab of the short-circuit command (ComShc) dialogue.

Fault Type
The following fault types are available: 3-Phase Short-Circuit 2-Phase Short-Circuit Single Phase to Ground 2-Phase to Ground 1-Phase to Neutral 1-Phase Neutral to Ground 2-Phase to Neutral 2-Phase Neutral to Ground 3-Phase to Neutral 3-Phase Neutral to Ground 3-Phase Short-Circuit (unbal.) The fault types with a neutral conductor should only be used for lines which are modeled using neutral conductors.

Fault Impedance
The fault impedance corresponds to the reactance and the resistance of the fault itself (i.e. the impedance of the arc or of the shortening path). This can be defined by means of an enhanced model, where line to line (Xf(L-L), Rf(L-L)) and line to earth (Xf(L-E), Rf(LE)) impedances are regarded (note: requires option Enhanced Fault Impedance to be enabled). If the option Enhanced Fault Impedance is not enabled, fault impedances are defined by their equivalent values, Xf and Rf. Figures 23.11 to 23.13 illustrate the differences between the enhanced and the simplified representation of fault impedances for the following fault types: (i) 3-phase short-circuits; (ii) 2-phase faults to ground; and (iii) 2-phase faults.

23 - 13

DIgSILENT PowerFactory

Short-Circuit Analysis

Fig. 23.11:

Fault Impedance Definition: 3-Phase Short-Circuit

Fig. 23.12:

Fault Impedance Definition: 2-Phase to Ground Fault

Fig. 23.13:

Fault Impedance Definition: 2-Phase Fault

23 - 14

DIgSILENT PowerFactory

Short-Circuit Analysis

Output
A textual report is automatically written to PowerFactorys output window when the On option in the Output section of the dialogue is enabled. The command which generates this report is displayed in blue text next to the Command button . The user can click on this button to select which type of report will be printed out. Immediately below the Command button, blue text informs the user of the currently-selected report type.

Fault Location
The fault location selection options are: At User Selection: In this case a reference to a single terminal/busbar/line/branch or to a selection of busbars/terminals (SetSelect), as explained in Sections 23.2.3 and 23.2.4 must be given. At Busbars and Junctions/Internal Nodes: For every terminal (ElmTerm) in the network, a short-circuit calculation is carried out, independently (i.e. one after the other). At All Busbars: For every terminal (ElmTerm) in the network whose Usage is set to Busbar (see Section 7.3.2), a short-circuit calculation is carried out, independently (i.e. one after the other).

If the option Multiple Faults has been ticked when the Complete Method is being used, a reference to a set of fault objects (IntEvtshc), as explained in Section 23.2.5, must be set. This is done in the Fault Location section of the dialogue; using the Short Circuits reference.

Note:

Multiple faults will only be calculated for the 'Complete Method', when the option 'Multiple Faults' is enabled. When this option is enabled, a short-circuit calculation is carried out for each individual fault location, simultaneously. When this option is disabled, cases where more than one fault location have been selected (i.e. several busbars/terminals), a sequence of short-circuit calculations is performed (i.e. each short-circuit calculation is carried out independently of each other short-circuit calculation).

23.3.2

Verification

When enabled, the Verification option will write a loading report to the output window. This report shows the various maximum and calculated currents for rated devices. Rated devices include, for instance: Lines which have a rated short-time current in their line type which is greater than zero; and Breakers or coupling switches which have a type with a valid rated current.

23 - 15

DIgSILENT PowerFactory

Short-Circuit Analysis

23.3.3

Basic Options (IEC 60909/VDE 0102 Method)

The Basic Options tab of the Short-Circuit Calculation dialogue is shown in the previous section in Figure 23.10.

Published
This option offers a sub-selection for the selected Method, where the version of the standard to be used can be selected according to the year in which it was issued. The most recent standard is 2001, however 1990 is still available for the verification of documented results.

Calculate
The drop-down list offers the choice between the minimal or maximal short-circuit current.

Max. Voltage tolerance for LV systems


In accordance with the IEC/VDE standard, this voltage tolerance is used to define the respective voltage correction factor, c. The voltage tolerance is not used when a user-defined correction factor is defined.

Short-Circuit Duration
The value for the Breaker Time is used to calculate the breaking current of a circuit breaker. The value for the Fault Clearing Time (Ith) is required for the equivalent thermal current.

Note:

The fields 'Method', 'Fault Type', 'Fault Impedance', 'Output' and 'Fault Location' are described in Section 23.3.1.

23 - 16

DIgSILENT PowerFactory

Short-Circuit Analysis

23.3.4

Advanced Options (IEC 60909/VDE 0102 Method)

Fig. 23.14:

IEC calculation - Advanced Options

Generally, the Advanced Options tab (shown in Figure 23.14) is used for settings to tune the various short-circuit calculation methods. Familiarization with the IEC/VDE standard before modifying these options is strongly recommended.

Grid Identification
The calculation of the factor kappa is different in the cases of meshed or radial feeding of the short-circuit. Normally PowerFactory will automatically find the appropriate setting. The option Always meshed will force a meshed grid approach.

c-Voltage Factor
The standard defines the c-voltage factor to be used for the different voltage levels. In special cases the user may want to define the correction factor. In this case, activate the box User-Defined, then a specific c-factor can be entered.

Asynchronous Motors
Whether the calculation considers the influence of asynchronous motors on short-circuit currents depends on this setting, which may be Always Considered, Automatic Neglection,
23 - 17

DIgSILENT PowerFactory

Short-Circuit Analysis

or Confirmation of Neglection.

Conductor Temperature
When activating the User-Defined option, the initial (pre-fault) conductor temperature can be set manually. This will influence the calculated maximum temperature of the conductors, as caused by the short-circuit currents.

Decaying Aperiodic Component


Allows for the calculation of the DC current component, for which the decay time must be given. According to the IEC/IEC standard, methods B, C and C' can be selected. The following nomenclature is used: Tb fn Ik" Breaker Time (see Short-Circuit command) Nominal frequency Initial short-circuit current Uses the complex calculated equivalent impedance of the network with a security factor of 1.15:

Method B:

i DC =
Method C:

R T b --X 2 I k e

Uses the R/X ratio calculated with the equivalent frequency method. The equivalent frequency is dependent on the breaking time (see Table 23.1). This method is recommended for maximum accuracy.

fn * Tb fc / fn

<1 0.27

< 2.5 0.15

<5 0.092

< 12.5 0.055

Table 23.1: Breaking Times Rf T b ----Xf 2 I k e

i DC =

Rc fc Rf ----- = ------ ----------X c f nom Xf


The ratio Rc/Xc is the equivalent impedance calculated at the frequency given by:

fc f c = ----------- f nom f nom

23 - 18

DIgSILENT PowerFactory

Short-Circuit Analysis

Method C':

Uses the R/X ratio as for the peak short-circuit current, thus selecting the ratio fc/fn = 0.4. This option speeds up the calculation, as no additional equivalent impedance needs to be calculated.

Peak Short-Circuit Current (Meshed network)


In accordance with the IEC/VDE standard, the following methods for calculating kappa can be selected: Method B': Method C(1): Uses the ratio R/X at the short-circuit location. Uses the ratio R/X calculated at a virtual frequency of 40% of nominal frequency (20 Hz for fn = 50 Hz, or 24 Hz for fn=60 Hz), based on the short-circuit impedance in the positive sequence system. Like C(1), but uses the correct short-circuit impedance based on the positive-, negative- and zero-sequence system.

Method (012):

Calculate Ik
The steady-state short-circuit currents can be calculated using different means to consider asynchronous machines: Without Motors Will disconnect all asynchronous motors before calculating the current Ik. DIgSILENT Method Considers all asynchronous motors according to their breaker current. The breaker opens after the maximum possible time. Ignore Motor Contributions Considers asynchronous motor impedances during the calculation, but will reduce the calculated results for motor contributions.

Consider Protection Devices


This option will calculate measured currents for all protection devices and will evaluate tripping times. To increase the speed of the calculation, this option can be disabled when protection devices do not need to be analyzed.

Calculate max. Branch Currents = Busbar Currents


This option is used to check the rating of the circuit breakers against the system breaker currents. Normally the breaker currents are calculated as max{Ibus-Ibranch, Ibranch}. If this option is activated, the busbar short-circuit current is used as the breaker current, which is actually an over-estimation of the currents.

23 - 19

DIgSILENT PowerFactory

Short-Circuit Analysis

Automatic Power Station Unit detection


The IEC/VDE standard forces a different impedance correction factor to be applied to separate generators and transformers than that applied to a unit/block (power station) consisting of a generator including its step-up transformer. PowerFactory tries to detect power stations. When this option is disabled, block transformers must be marked accordingly by setting the Unit Transformer option available in the VDE/IEC Short-Circuit tab of the transformer element dialogue.

23.3.5

Basic Options (ANSI C37 Method)

Fig. 23.15:

ANSI calculation - Basic Options

Prefault Voltage
Value of the pre-fault voltage (required by the ANSI standard).

Consider Transformer Taps


The ANSI standard optionally allows the current tap positions of the transformers to be considered. This can be selected here.
23 - 20

DIgSILENT PowerFactory

Short-Circuit Analysis

NACD Mode
The NACD factor is the ratio of remote current contribution to the total fault current: NACD = Iremote/Ifault. This NACD factor is used to calculate the breaker currents, including the DC component of the current. The remote current contribution required to evaluate the NACD factor is the sum of all remote generator contributions (induction generators, synchronous machines, and external grids). The calculation of the NACD factor can be very time consuming, as the contribution of each generator is calculated individually. Therefore, different approximation methods can be selected, which represent the most common interpretations of the ANSI standard: Interpolated The NACD factor is calculated, and the correction factor for the asymmetrical fault current is interpolated between the "dc decay only" and "AC/DC decay" curves with the following equation: MF = AC/DC factor + (DC factor - AC/DC factor)*NACD If (NACD = 1) then only the DC factor is used; if (NACD = 0) then only the AC/DC factor is used. The the NACD factor is calculated. If the resulting factor is greater than or equal to 0.5, then the "dc decay only'' curve is used, which means that the remote generation is higher than the local generation. All contributions are set to remote; the NACD factor is not calculated, but assumed equal to 1 and only the "dc decay only'' curve is used. All contributions are set to local; the NACD factor is not calculated, but assumed equal to 0 and only the "AC/DC decay" curve is used.

Predominant

All Remote All Local

Current/Voltages for
The calculation mode for the currents and voltages to be evaluated: LV/Momentary Evaluates the subtransient short-circuit currents.

LV/Interrupting Evaluates the breaker currents. 30 Cycle Evaluates the 30-cycle (steady-state) current.

Note:

The fields 'Method', 'Fault Type', 'Fault Impedance', 'Output' and 'Fault Location' are described in Section 23.3.1.

23 - 21

DIgSILENT PowerFactory

Short-Circuit Analysis

23.3.6

Advanced Options (ANSI C37 Method)

Fig. 23.16:

ANSI Calculation - Advanced Options

Calculate
This option is used to select the various currents (according to the ANSI standard) which are to be calculated. The options are as follows: Momentary Current Interrupting Current 30 Cycle Current Low-Voltage Current

Bypass Series Capacitance


Series capacitances may be optionally bypassed for the ANSI short-circuit calculation. Alternatively, they may be not bypassed, always bypassed/neglected or this option may be set depending on the type of short-circuit being calculated. The options are as follows: No Bypassing All Currents LV & Interrupting & 30 Cycle Current 30 Cycle Currents
23 - 22

DIgSILENT PowerFactory

Short-Circuit Analysis

X/R Calculation
The user may select between a complex number R/X ratio calculation, or a calculation which considers R and X separately.

Consider Protection Devices


This option will calculate measured currents for the selected protection devices and will evaluate tripping times. To increase the speed of the calculation, this option can be disabled when protection devices do not need to be analyzed.

Calculate max. Branch Currents = Busbar Currents


This option is used to check the rating of the circuit breakers against the system breaker currents. Normally the breaker currents are calculated as max{Ibus-Ibranch, Ibranch}. If this option is activated, the busbar short-circuit current is used as the breaker current, which is actually an over-estimation of the currents.

23.3.7

Basic Options (Complete Method)

Fig. 23.17:

Complete Method - Basic Options


23 - 23

DIgSILENT PowerFactory

Short-Circuit Analysis

As opposed to the calculation methods according to IEC/VDE and ANSI, which represent short-circuit currents by approximations, the complete method evaluates currents without using approximations. This accurate evaluation of the currents takes into account the system conditions immediately prior to the onset of the fault.

Load Flow
The pre-fault system condition used by the complete method can be determined either by the evaluation of a load flow, or by means of a simplified method, which initializes the internal voltages of all components that contribute to the short-circuit current with their nominal values, multiplied by a scalar factor, c. The load flow command used to initialize the short-circuit calculation (when Load Flow Initialization on the Advanced Options tab is selected, see Section 23.3.8) is displayed next to the button labelled Load Flow ( ). The load flow command can be accessed and modified by pressing this button . The load flow command displayed here is initially taken from the currently active study case.

Short-Circuit Duration
The value for the Break Time (Global) is used to calculate the breaking current of circuit breakers. Depending on the user selection, the value used for the break time within the calculation is: global min. of local The Break Time (Global) defined in the short-circuit command. The shortest Break Time of all circuit breakers (defined in the Complete Short-Circuit tab of ElmCoup objects) connected to the busbars being studied. For each connected circuit-breaker, its own Break Time (defined in the Complete Short-Circuit tab of ElmCoup objects) is used for the calculation of the breaking current, however for busbar results, the fastest of these Break Times is used.

local

Note:

The fields 'Method', 'Fault Type', 'Fault Impedance', 'Output' and 'Fault Location' are described in Section 23.3.1.

23 - 24

DIgSILENT PowerFactory

Short-Circuit Analysis

23.3.8

Advanced Options (Complete Method)

Fig. 23.18:

Complete Method - Advanced Options

Initialisation
The user may select to initialize the complete method by one of the following options: the load flow calculation referred to in the Load Flow field of the Basic Options tab; or the nominal voltages with a user-defined correction factor (c-Factor). It should be noted that this option is only available in the dialogue when Load Flow Initialisation is unticked.

Peak, DC Currents, R/X ratio (ip,ib,idc)


This option allows the definition of the method used to determine the factor kappa () and the R/X_b ratio, required for the calculation of the peak and the DC component of the short-circuit current. The methods available correspond to those given in the IEC/VDE standard. B Uses the ratio R/X at the short-circuit location. In this case both ratios (R/X_p for the calculation of , and R/X_b) are equal.
23 - 25

DIgSILENT PowerFactory

Short-Circuit Analysis

C(1)

For , the ratio R/X_p calculated at a virtual frequency of 40% (based on the short-circuit impedance in the positive sequence system) is used. The R/X_b ratio is calculated according to the equivalent frequency method, considering the breaking time and the positive sequence impedance (as for Method C from the IEC standard, however it should be noted that the IEC correction factors are not considered). Like C(1) described directly above, but uses the correct short-circuit impedance based on the positive-, negative- and zero-sequence system.

C(012)

Consider Protection Devices


This option will calculate measured currents for all protection devices and will evaluate tripping times. This option can be disabled to increase the calculation speed when protection devices do not need to be analyzed.

Calculate max. Branch Currents = Busbar Currents


This option is used to check the rating of the circuit breakers against the system breaker currents. Normally the breaker currents are calculated as max{Ibus-Ibranch, Ibranch}. If this option is activated, the busbar short-circuit current is used as the breaker current, which is an over-estimation of the currents.

Overhead Line Modelling: Phase Matrices


For the unbalanced short-circuit calculation, PowerFactory always uses the phase component matrix. The following options define which phase matrix is used: Untransposed: the short-circuit calculation uses the untransposed phase matrix. Symmetrically Transposed: the short-circuit calculation uses the symmetrically transposed phase matrix for untransposed lines.

23 - 26

DIgSILENT PowerFactory

Harmonics Analysis

Chapter 24 Harmonics Analysis

One of several aspects of power quality is the harmonic content of voltages and currents. Harmonics can be analyzed in either the frequency domain, or in the time-domain with post-processing using Fourier Analysis. The PowerFactory harmonics functions allow the analysis of harmonics in the frequency domain. Two different functions are provided by PowerFactory: Harmonic Load Flow Frequency Sweep or current distortion, and harmonic losses caused by harmonic sources (usually non-linear loads such as current converters). Harmonic sources can be defined by a harmonic current or a harmonic voltage spectrum. In the harmonic load flow calculation, PowerFactory carries out a steady-state network analysis at each frequency at which harmonic sources are defined. A special application of the harmonic load flow is the analysis of ripple-control signals. For this application, a harmonic load flow can be calculated at one specific frequency only. In contrast to the harmonic load flow, PowerFactorys frequency sweep performs a continuous frequency domain analysis. A typical application of the frequency sweep function is the calculation of network impedances. The result of this calculation facilitates the identification of series and parallel resonances in the network. These resonance points can identify the frequencies at which harmonic currents cause low or high harmonic voltages. Network impedances are of particular importance for applications such as filter design.

PowerFactorys harmonic load flow calculates actual harmonic indices related to voltage

PowerFactory provides a toolbar for accessing the different harmonic analysis commands. This toolbar can be displayed (if not already active) by selecting the Harmonics
icon ( ) on the main toolbar. The harmonics toolbar provides two icons to open preconfigured command dialogues for the two different calculations: : Calculate Harmonic Load Flow : Calculate Impedance Frequency Characteristics (Frequency Sweep)

The command dialogues can be also accessed through the main menu by selecting: Calculation > Harmonics > Voltage/Current Distribution...; or Calculation > Harmonics > Impedance Frequency Characteristic... . Additionally, following the calculation of a harmonic load flow, a third icon on this toolbar is activated. The icon is used to open the Filter Analysis (ComSh) command dialogue. The Filter Analysis command analyzes results from the most recent harmonic load
24 - 1

DIgSILENT PowerFactory

Harmonics Analysis

flow calculation and outputs results to PowerFactorys output window. All functions and their usage are described in this chapter.

24.1

Harmonic Load Flow


icon to open the dialogue for the Com-

To calculate a harmonic load flow, click on the Hldf command as shown in Figure 24.1.

Fig. 24.1:

Harmonic Load Flow Command (ComHldf )

For a detailed description of the harmonic calculations, refer to the section titled Harmonics Analysis in the Technical References, where the analysis and the harmonic indices are described. The following sections describe the options available in the harmonic load flow command.

24.1.1
Calculate

Basic Options

Network Representation

Network Representation
Balanced In the case of a symmetrical network and balanced harmonic sources, characteristic harmonics either appear in the negative sequence component (5th, 11th, 19th, etc.), or in the positive sequence

24 - 2

DIgSILENT PowerFactory

Harmonics Analysis

component. Hence, at all frequencies a single-phase equivalent (positive or negative sequence) can be used for the analysis. Unbalanced, 3 Phase (ABC) For analyzing non-characteristic harmonics (3rd-order, even-order, inter-harmonics), or harmonics in non-symmetrical networks, the Unbalanced option for modelling the network in the phase-domain should be selected.

Calculate
Single Frequency Selecting this option will perform a single harmonic load flow calculation at the given Output Frequency (parameter name: fshow) or at the given harmonic order. A common application for this mode is the analysis of ripple control systems. The results of the analysis are shown in the single line diagram, in the same way as for a normal load flow at the fundamental frequency. All Frequencies Selecting this option will perform harmonic load flow calculations for all frequencies for which harmonic sources are defined. These frequencies are gathered automatically prior to the calculation. The results are stored in a result file, which can be used to create harmonic bar graphs (see also Section 20.1.2 (Plots)).

Nominal Frequency, Output Frequency, Harmonic Order


Nominal Frequency

PowerFactory can only calculate harmonics of AC-systems with identical fundamental frequencies. The relevant nominal frequency must be entered here (usually 50Hz or 60Hz).

Output Frequency This is the frequency for which results are displayed. In the case of a Single Frequency calculation, this is the frequency for which a harmonic load flow is calculated. When option All Frequencies is selected, only the display of results in the single line diagram is influenced by this input parameter, not the calculation itself. In this case, the results displayed in the single line diagram are for the defined Output Frequency. Harmonic Order This is used to check or to alter the Output Frequency. It is the same as the Output Frequency but input as the Harmonic Order (f/fn). The harmonic order multiplied by the Nominal Frequency always equals the Output Frequency. Both floating-point and integer values are valid.

Result Variables and Load Flow


Result Variables This option is used to select the target result object for storing the results of the harmonic frequency sweep. See Section 24.5 (Definition
24 - 3

DIgSILENT PowerFactory

Harmonics Analysis

of Result Variables) for more information regarding specifying and defining result variables. Load Flow This displays the load flow command used by the calculation. Click on the arrow button ( settings. ) to inspect and/or adjust the load flow command

24.1.2

Advanced Options

Based on Fundamental Frequency Values (IEEE) All values are based on fundamental frequency values, as defined by IEEE standards. Based on Total RMS-Values (DIN) All values are based on "true RMS''-values, as defined by DIN standards.

24.2

Frequency Sweep

To calculate frequency dependent impedances, the impedance characteristic can be computed for a given frequency range using ComFsweep. This function is available by clicking on the icon. The harmonic frequency sweep command is shown in Figure 24.2.

Fig. 24.2:

Harmonic Frequency Sweep Command (ComFsweep)

Harmonic analysis by frequency sweep is normally used for analyzing self- and mutual24 - 4

DIgSILENT PowerFactory

Harmonics Analysis

network impedances. However, it should be noted that not only self- and mutual-impedances can be analyzed and shown. The voltage source models available in PowerFactory allow the definition of any spectral density function. Hence, impulse or step responses of any variable can be calculated in the frequency domain. One common application is the analysis of series resonance problems. The following sections describe the options available for the harmonic frequency sweep calculation.

24.2.1

Basic Options

Network Representation
Balanced, positive sequence This option uses a single-phase, positive sequence network representation, valid for balanced symmetrical networks. A balanced representation of unbalanced objects is used. Unbalanced, 3 Phase (ABC) This option uses a full multiple-phase, unbalanced network representation.

Impedance Calculation
The frequency sweep will be performed for the frequency range defined by the Start Frequency and the Stop Frequency, using the given Step Size. An option is available which allows an adaptive step size. Enabling this option will normally speed up the calculation, and enhance the level of detail in the results by automatically using a smaller step size when required. The settings for step size adaptation can be changed on the Advanced Options tab.

Nominal Frequency, Output Frequency, Frequency Sweep


Nominal Frequency This is the fundamental frequency of the system, and the base frequency for the harmonic orders (usually 50Hz or 60Hz) Output Frequency This is the frequency for which the results in the single line diagram are shown. This value has no effect on the actual calculation. Harmonic Order This is used to check or to alter the output frequency. It is the harmonic order equivalent of the Output Frequency. The Harmonic Order multiplied by the Nominal Frequency always equals the Output Frequency. Both floating-point and integer values are valid.

24 - 5

DIgSILENT PowerFactory

Harmonics Analysis

Result Variables and Load Flow


Result Variables Used to select the result object which will store the results of the harmonic frequency sweep. See Section 24.5 (Definition of Result Variables) for more information about specifying result variables. Load Flow This displays the load flow command used by the calculation. Click on the arrow button ( settings. ) to inspect and/or adjust the load flow command

The results of PowerFactorys frequency sweep analysis are the characteristics of the impedances over the frequency range.

24.2.2

Advanced Options

Selecting the option Automatic Step Size Adaptation on the Basic Data tab of the ComFsweep command is one way to increase the speed of the calculation. This option enables the use of the step size adaptation algorithm for the frequency sweep. With this algorithm, the frequency step between two calculations of all variables is not held constant, but is adapted according to the shape of the sweep. When no resonances in the impedance occur, the time step can be increased without compromising accuracy. If the impedance starts to change considerably with the next step, the step size will be reduced again. The frequency step is set such that the prediction error will conform to the two prediction error input parameters, as described below: errmax errinc ninc

Maximum Prediction Error (typical value: 0.01) Minimum Prediction Error (typical value: 0.005) Step Size Increase Delay (typically 10 frequency steps)

Calculate R, X at output frequency for all nodes Normally, PowerFactory calculates the equivalent impedance only at selected nodes. When this option is selected, following the harmonic calculation, the equivalent impedance is calculated for all nodes.

24.3

Filter Analysis

The Filter Analysis command is a special form of the Output of Results command (ComSh). It is used to analyze the results from the previous harmonic load flow and to output results to the PowerFactory output window. It outputs a summary of the harmonics for the terminals/busbars and branch elements at a specified frequency, which is specified in the Output Frequency field of the ComHldf command. It also reports the parameters and different variables for the installed filters. The filter analysis report generator can be activated using the icon or by using the

Output Calculation Analysis icon

from the main menu (see also Section 20.2.5: Output of Results). This will open the same dialogue as that used for the reporting of harmonic results, as displayed in Figure 24.3.

24 - 6

DIgSILENT PowerFactory

Harmonics Analysis

In the dialogue, the Output Frequency specified in the harmonic load flow command is displayed in red text (see top of dialogue in Figure 24.3). There are four different reports to choose from: Busbars and Branches This displays the results of the harmonic load flow for all node and branch elements in the network. The distortion for various electrical variables is printed and summarized. Busbars/Terminals For the electrical nodes, the rated voltage, the voltage at the calculation frequency, as well as RMS values and distortion at the nodes are displayed. Filter Layout The filter layout of all active filters in the network is calculated for the given frequency. The rated values and impedances of the filter as well as the type and vector group are printed to the output window. Additionally, the currents through the different components and the losses are shown. The filter results show the main layout of all filters in the network for the calculation frequency. For a set of frequencies, the voltages and currents through the filter are tabulated.

Filter Results

Fig. 24.3:

Filter Analysis Report Command (ComSh) Dialogue

The default format used for the report in the output window is defined in the Used Format section of the dialogue and can be set or changed by clicking on the Filter Layout button ( ).

24 - 7

DIgSILENT PowerFactory

Harmonics Analysis

24.4

Modelling Harmonic Sources

Every switched device produces harmonics and must therefore be modelled as a harmonic source. In PowerFactory, harmonic sources can be both current or voltage sources. The following models can generate harmonics: General loads, if they are modelled as a current source (which can be defined in the load type); Thyristor rectifiers; PWM-converters, which are generally modelled as a harmonic voltage source; Voltage sources, which may also be used for ripple control applications; Current sources, with a user-defined spectrum of harmonic injections. The spectrum of harmonic infeeds must be defined using the Harmonic Sources type object (TypHmcCur). The spectrum may be entered according to one of two options: balanced or unbalanced (shown in Figures 24.4 and 24.5, respectively). This object is a PowerFactory 'type' object, which means that it may be used by many elements who have the same basic type. Multiple current source loads may, for example, use the same TypHmcCur object. Note that PowerFactory has no corresponding element for this type.

Fig. 24.4:

Balanced Harmonic Source Type (TypHmccur)

24 - 8

DIgSILENT PowerFactory

Harmonics Analysis

Fig. 24.5:

Unbalanced Harmonic Source Type (TypHmccur)

The spectrum object is independent of the whether the harmonic source is either a voltage source or a current source. The decision as to whether harmonic sources are fed into the system as harmonic voltages or as harmonic currents is made exclusively by the element to which the spectrum type is associated.

24.4.1

Harmonic Distortion Results

The harmonic distortion of a current or of a voltage can be quantified in terms of the Harmonic Distortion (HD), as described by (24.1). To describe the overall distortion, the Total Harmonic Distortion index THD (see (24.2)) has been introduced. An alternative, less common index is the Total Arithmetic Distortion TAD (see (24.3)). All distortion indices are described by their equations (below) for the current, but may be similarly described for voltage distortion.

Eqn 24.1:

I ( fi ) HD I ( f i ) = -------------I ( f1 )
2 2 1 - I RMS I ( f 1 ) (Total Harmonic Distortion) THD I = ------I ref

Eqn 24.2:

Eqn 24.3: where I(fi)

1 - [ I A I ( f 1 ) ] (Total Arithmetic Distortion) TAD I = ------I ref


Component of the current at frequency fi
24 - 9

DIgSILENT PowerFactory

Harmonics Analysis

Iref Eqn 24.4:

Reference value for the current

I RMS =

i=1

I ( f i ) (Total RMS value)

Eqn 24.5:

I A =

i=1 The reference value Iref depends on the standard used. The two possible options are the calculation according to DIN (24.6) and according to IEEE (24.7), as presented below: Eqn 24.6: I ref, DIN = I RMS (DIN Standard) Eqn 24.7:

I ( f i ) (Arithmetic Sum value)

I ref, IEEE = I ( f 1 ) (IEEE Standard).

Another value which may be of importance is the Total Power (see (24.8)), which describes the power absorbed over all frequency components: n Eqn 24.8:

P tot =

i=1

P ( fi )

(Total Power)

24 - 10

DIgSILENT PowerFactory

Harmonics Analysis

24.4.2

Magnitudes and Phase values

The quantities of the spectrum type are rated to current/voltage at the fundamental frequency in the balanced case. Hence, in the case of a harmonic current source, the actual harmonic current at frequency fh is calculated by:

Ih = kh e
where

I1 e

kh = h =

Ih I1

if balanced

I ah I a1 if unbalanced phase a I bh I b1 if unbalanced phase b I ch I c1 if unbalanced phase c

h 1

if balanced

ah a1 if unbalanced phase a bh b1 if unbalanced phase b ch c1 if unbalanced phase c

The values at the fundamental frequency, I1 and 1, are taken from a preceding load flow calculation. A normal load flow calculation is therefore required prior to a harmonic load flow calculation. In case of balanced systems in which only characteristic harmonics of orders 5, 7, 11, 13, 17, etc. occur, the option Balanced should be selected in the Balanced/Unbalanced Sources section (as shown in Figure Balanced Harmonic Source Type (TypHmccur)). In this context, Balanced refers to characteristic harmonics. In the balanced case, the harmonic frequencies are determined by the program (note that in the unbalanced case, the harmonic frequencies can be freely-defined). For harmonic sources which produce non-characteristic, unbalanced or inter-harmonics, the option Unbalanced should be set in the Balanced/Unbalanced Sources section. In the Unbalanced' case, the harmonic frequency, magnitude and phase angle of each phase can be chosen individually for each harmonic frequency. This mode therefore caters for every possible kind of harmonic source. The problem commonly arises as to how one can represent the harmonic content in a system which differs to the native modal system (positive, negative or zero sequence system). The following example illustrates how to represent the 3rd harmonic in a positive or negative sequence system (as opposed to the native zero sequence system). In the symmetrical case, the phase shift between the three phases is:
24 - 11

DIgSILENT PowerFactory

Harmonics Analysis

A: 0 B: -120 C: +120 (-240) For harmonics of order n: A: 0 B: -n*120 C: +n*120 Taking the 3rd harmonic as an example: A: 0 B: -360(= 0) C: +360 (=0) Consequently, the 3rd harmonic in the ideally balanced case only in the zero sequence component, as their native modal system. For representing 3rd harmonics (and multiples thereof) in the positive sequence system, the following phase correction needs to be entered: A: 0 B: +(n-1)*120 C: -(n-1)*120 Again taking the 3rd harmonic as an example: A: 0 B: -360 + 240 = -120 C: +360 - 240 = 120

24.4.3

Frequency Dependent Parameters

Due to the skin effect and variations in the internal inductance, resistances and inductances are usually frequency dependent. This can be modeled in PowerFactory by associating a "frequency characteristic'' to these quantities. Two types of characteristic may be used: either a polynomial characteristic (ChaPol) as illustrated in Figure 24.6, or a userdefined frequency table (TriFreq and ChaVec). These kinds of characteristics are then assigned via the Harmonics tab of the correspoding elements dialogue, as illustrated by the example in Figure 24.7 for a line element.

Fig. 24.6:

The Frequency Polynomial Characteristic (ChaPol)

24 - 12

DIgSILENT PowerFactory

Harmonics Analysis

For the polynomial characteristic object shown in Figure 24.6, the following formula is used:

f h b y ( f h ) = ( 1 a ) + a ---- f 1
The parameters a and b are specified in the ChaPol dialogue. Variable y is usually expressed in % of the corresponding input parameters. For example, the resulting line resistance is obtained by:

R ( fh ) = R y ( fh )
An example of the use of the polynomial characteristic for a line type is shown in Figure 24.7.

Fig. 24.7:

Frequency Dependencies in a Line Type

It also is possible to define frequency dependent characteristics using vectorial characteristics (ChaVec). An example for a grid impedance defined with a ChaVec is shown in Figure 24.8.

24 - 13

DIgSILENT PowerFactory

Harmonics Analysis

Fig. 24.8:

Frequency Dependent Grid Impedance as Vectorial Characteristic

The following objects can have frequency dependent parameters defined using a frequency characteristic: TypLne TypAsm TypSym ElmShnt ElmVac ElmNec Line Type Asynchronous Machine Type Synchronous Machine Type Shunt/Filter AC Voltage Source NEC/NER

Lines which are represented by a tower type TypTow are automatically assigned a harmonic characteristic. The same applies to cables using the detailed cable representation type TypCab.

24.4.4

Waveform Plot

The waveform plot is used to display the waveform of a voltage or a current following a harmonic load flow calculation. The harmonics are typically emitted by a harmonic voltage or current source, as described in Section 24.4. In this plot, a waveform is generated using the magnitude and phase angle of the harmonic frequencies. With this diagram, a variable such as the voltage or current, which is defined in a harmonic source (i.e. a power electronic device or a load), can be easily shown as a time dependent variable. This way the real shape of the voltage can be seen and analyzed. For a more detailed description, see Section 20.1.6 (The Waveform Plot).

24 - 14

DIgSILENT PowerFactory

Harmonics Analysis

24.5

Definition of Result Variables

Before a Frequency Sweep calculation can be performed, all variables of interest must be defined for recording. These variables can be defined by right-clicking on a network component (or multi-selecting several components and right-clicking), either in the single-line diagram or in the data manager, and selecting the option Define >Variable Set (Harmonics Load-Flow); or Define >Variable Set (Frequency Sweep). This will add a new (but still empty) variable set for the selected object to the result object (referred to by parameter Result Variables on the Basic Options tab of the Harmonic Load Flow command dialogue). All results of harmonic analyses, with the exception of the single frequency harmonic load flow, are stored in a normal result object (ElmRes). This result object stores graphs of result variables vs. frequency. For more information about the result object, see Section 20.2.1 (Result Objects). New result variables may also be added by clicking on the Edit Result Variable icon ( ) on the main toolbar. There are two instances of this button; one for each harmonic analysis function, i.e. one associated with the Harmonic Load Flow . and one associated with the Frequency Sweep . Select the button associated with the relevant calculation. This will open the variable set manager, which displays the list of all defined variable sets for that calculation. Each variable set contains the variables of interest for a single object. A window is opened automatically whenever a new variable set is defined, as shown in Figure 24.9, displaying the list of variable sets. A new variable set can also be defined by clicking on the New icon ( ).

Fig. 24.9:

Example of a List of Variable Sets

It should be noted that the column labelled Object must be set before any variables can be defined. This can be done by either double-clicking the appropriate cell, or by rightclicking the cell and selecting Select Element.... A single variable set from the variable sets list can be accessed (and the desired variables defined) by either double-clicking on the icon in the corresponding row, or right-clicking on the icon and selecting the Edit menu option. The Variable Set object (IntMon) dialogue opens, as shown in Figure 24.10. Select the Harmonics tab of the IntMon dialogue and then a list of all results that are available for the selected object (relevant to harmonics analysis) will be available for selection.

24 - 15

DIgSILENT PowerFactory

Harmonics Analysis

Fig. 24.10:

Harmonics Result Variables for a Terminal

Result variables may be added or removed from the set of selected variables by pressing the or buttons. Additionally, different variables are available for selection depending on the selection made from the Variable Set drop-down list. This is available in the Filter for section on the Harmonics tab of the IntMon dialogue. It should be noted that as the results of the discrete harmonic analysis are discrete, the plots generated from the result file should have the Bars option enabled. To do this, open the subplot dialogue by double-clicking on a subplot, going to the Advanced tab, and selecting Bars in the Presentation section.

24 - 16

DIgSILENT PowerFactory

Stability and EMT Simulations

Chapter 25 Stability and EMT Simulations

The transient simulation functions available in DIgSILENT PowerFactory are able to analyze the dynamic behavior of small systems and large power systems in the time domain. These functions therefore make it possible to model complex systems such as industrial networks and large transmission grids in detail, taking into account electrical and mechanical parameters. Transients, stability problems and control problems are important considerations during the planning, design and operation of modern power systems. Studies involving electromagnetic transients and different aspects of stability may be conducted using time-domain simulations for varying time periods, or dynamic or small-signal stability analysis tools using (for example) eigenvalue analysis. A large range of AC and DC systems can be analyzed (i.e. transmission systems with detailed models of power plants, complex HVDC systems, motor start-up), as well as a combination of both. Applications such as wind power integration or power electronics constitute new challenges in the analysis of power systems, and as a result new models and techniques are provided in PowerFactory to meet these requirements. For modelling a variety of machines and controller units, as well as the electrical and mechanical components of power plants, etc., PowerFactorys global library provides a large number of predefined models. This library includes models of generators, motors, controllers, motor driven machines, dynamic loads and passive network elements. As an example, this library contains the IEEE standard models of power plant controllers. Furthermore, the user can model specific controllers and develop block diagrams of power plants with a large degree of freedom. A Stability simulation in PowerFactory is started by: Selecting the Stability toolbar by clicking on the Stability toolbar; icon from the Select

Calculating the initial conditions for the simulation by either pressing the icon on the main toolbar, or by selecting Calculation > Stability > Initial Conditions... from the main menu; When the initial values have been calculated successfully, the icon on the main toolbar will be activated and can be pressed to start the simulation.

25 - 1

DIgSILENT PowerFactory

Stability and EMT Simulations

25.1

Introduction

The study of power system stability involves the analysis of the behavior of power systems under conditions before and after sudden changes in load or generation, during faults and outages. The robustness of a system is defined by the ability of the system to maintain stable operation under normal and perturbed conditions. It is therefore necessary to design and operate a power system so that transient events (i.e. probable contingencies), can be withstood without the loss of load or loss of synchronism in the power system. Transients in electrical power systems can be classified according to three possible timeframes: short-term, or electromagnetic transients; mid-term, or electromechanical transients; long-term transients. The multilevel modelling of power system elements and the use of advanced algorithms means that the functions in PowerFactory can analyse the complete range of transient phenomena in electrical power systems. Consequently, there are three different simulation functions available: 1 2 A basic function which uses a symmetrical steady-state (RMS) network model for mid-term and long-term transients under balanced network conditions; A three-phase function which uses a steady-state (RMS) network model for midterm and long-term transients under balanced and unbalanced network conditions, i.e. for analyzing dynamic behaviour after unsymmetrical faults; An electromagnetic transient (EMT) simulation function using a dynamic network model for electromagnetic and electromechanical transients under balanced and unbalanced network conditions. This function is particularly suited to the analysis of short-term transients.

In addition to the time-domain calculations, two other analysis functions are available: Parameter Identification Modal Analysis or Eigenvalue Analysis Time-domain simulations in PowerFactory are initialized by a valid load flow, and PowerFactory functions determine the initial conditions for all power system elements including all controller units and mechanical components. These initial conditions represent the steady-state operating point at the beginning of the simulation, fulfilling the requirements that the derivatives of all state variables of loads, machines, controllers, etc., are zero. Before the start of the simulation process, it is also determined what type of network representation must be used for further analysis, what step sizes to use, which events to handle and where to store the results. The simulation uses an iterative procedure to solve AC and DC load flows, and the dynamic model state variable integrals simultaneously. Highly accurate non-linear system models result in exact solutions, including during high-amplitude transients. Various numerical integration routines are used for the electromechanical systems (including voltage regulators and power system stabilisers) and also for the hydro-mechanical or thermomechanical models. The process of performing a transient simulation typically involves the following steps: 1 2 Calculation of initial values, including a load flow calculation; Definition of result variables and/or simulation events;

25 - 2

DIgSILENT PowerFactory

Stability and EMT Simulations

3 4 5 6 7

Optional definition of result graphs and/or other virtual instruments; Execution of simulation; Creating additional result graphs or virtual instruments, or editing existing ones; Changing settings, repeating calculations; Printing results.

25.2
25.2.1

Calculation Methods
Balanced RMS Simulation

The balanced RMS simulation function considers dynamics in electromechanical, control and thermal devices. It uses a symmetrical, steady-state representation of the passive electrical network. Using this representation, only the fundamental components of voltages and currents are taken into account. Depending on the models of generators, motors, controllers, power plants and motor driven machines used, the following studies may be carried out: transient stability (e.g. determination of critical fault clearing times); mid-term stability (e.g. optimization of spinning reserve and load shedding); oscillatory stability (e.g. optimization of control device to improve system damping); motor start-up (e.g. determination of start-up times and voltage drops); Various events can be included in the simulation, including the following examples: start-up and/or loss of generators or motors; stepwise variation of loads; load-shedding; line and transformer switching/tripping; symmetrical short-circuit events; insertion of network elements; power plant shut down; variations of controller setpoint; change of any system parameter. Because of the symmetrical network representation, the basic simulation function allows the insertion of symmetrical faults only.

25.2.2

Three-Phase RMS Simulation

If asymmetrical faults or unbalanced networks have to be analysed, the three phase RMS simulation function must be used. This simulation function uses a steady-state, threephase representation of the passive electrical network and can therefore compute unbalanced network conditions, either due to unbalanced network elements or due to asymmetrical faults. Dynamics in electromechanical, control and thermal devices are represented in the same way as in the basic RMS simulation function.
25 - 3

DIgSILENT PowerFactory

Stability and EMT Simulations

Asymmetrical electromechanical devices can be modelled, and single-phase and twophase networks can also be analysed using this analysis function. In addition to the balanced RMS simulation events, unbalanced fault events can be simulated, such as: single-phase and two-phase (to ground) short-circuits; phase to phase short-circuits; inter-circuit faults between different lines; single- and double-phase line interruptions. All of these events can be modelled to occur simultaneously or separately, hence any combination of symmetrical and asymmetrical faults can be modelled.

25.2.3

Three-Phase EMT Simulation

Voltages and currents are represented in the EMT simulation by their instantaneous values, so that the dynamic behavior of passive network elements is also taken into account. This is necessary for the following applications: DC and harmonic components of currents and voltages; Exact behavior of inverter-driven machines; Exact behavior of HVDC transmission systems; Non-linear behavior of passive network elements such as transformer saturation; Overvoltage phenomena in switching devices; Lightning strikes and travelling waves; Analysis of the exact behavior of protection devices during faults. The high level of detail used to represent the modelled network means that all phases and all defined events (symmetrical and asymmetrical) can be simulated. The EMT function can also be used for the simulation of longer-term transients. However, due to the passive network elements being represented dynamically, the integration step size has to be significantly smaller than in the case of a steady-state representation and as a result, the calculation time increases.

25.3

Setting Up a Simulation

Based on the results of a load flow calculation, all internal variables and the internal operating status of connected machines, controllers and other transient models have to be determined. As a result of this calculation, the synchronous generator excitation voltages and load angles are calculated. Additionally, all state variables of controllers and power plant models, and any other device which is active and will affect the time-domain simulation, are also calculated. The calculation of initial conditions is started by either: Selecting the icon from the icon toolbar, and then pressing the icon;

Selecting Calculation > Stability > Initial Conditions... from the main menu. In the Initial Conditions command (ComInc) dialogue all simulation settings can be de25 - 4

DIgSILENT PowerFactory

Stability and EMT Simulations

fined, such as the simulation type (i.e. RMS or EMT, balanced or unbalanced) and simulation step size settings. These settings include: Basic Options The simulation type is selected here (RMS, EMT; balanced, unbalanced), and the load flow command, the result object and the event list are defined. Step Sizes Maximum and minimum step size are specified for use by the step size algorithms. Step Size Adaptation Enables the variable step size algorithm. Advanced Options Includes various error margins, iteration limits, damping factors, etc. Noise Generation Defines parameters of the noise generation for stochastic applications.

25 - 5

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.1:

The Initial Conditions Command (ComInc) Dialogue

25.3.1

Basic Options

The basic options are used to select the simulation type and the network representation. References to the result object, the event list and the load flow command are available for inspecting or editing these objects, by clicking on the respective icon.

Verify Initial Conditions


If the initial conditions can be fulfilled, the power system will be in a steady-state condition. When the Verify Initial Conditions options is enabled, then the condition dx/dt=0 is checked for all state variables. If one or more of the state variable derivatives does not equal zero, the power system may start 'moving' from the very beginning of the simulation, even without the application of an external event. In this case the user should analyse the relevant controller or model and its defined initial conditions carefully.
25 - 6

DIgSILENT PowerFactory

Stability and EMT Simulations

All warnings or error messages issued in the output window should be checked carefully. Typical problems are devices which are overloaded or operate above or below signal limitation from the beginning of the simulation. The error message displayed in the output window might look as follows:
DIgSI/err DIgSI/err DIgSI/err DIgSI/err Some models could not be initialized. Please check the following models: 'Simple Grid\AVR Common Model.ElmDsl': Initial conditions not valid !

Automatic Step Size Adaptation


This option enables the step size adaptation algorithm, and can be used to speed-up the simulation considerably. PowerFactory adjusts the step size to the actual course of each state variable at any moment in time. Based on the local discretisation error, PowerFactory calculates an optimal step size that keeps the numerical errors within the specified limits. A step size controller adjusts the integration step size. As a result, when fast transients have decayed, PowerFactory automatically increases the step size and speeds up the simulation process considerably. In the case of events (external or internal), the step size is always set back to the Minimum Step Size. This way, the behavior of the system during a transient event is represented with the best accuracy. If this option is activated, two integration step sizes are available on the Step Size tab of the dialogue: Electromagnetic Transients/Electromechanical Transients Minimum step size for EMT and RMS simulations, respectively. Maximum Step Size Maximum step size for the simulation. Further parameters to adapt this algorithm can be found on the Step Size Adaptation tab.

25.3.2

Step Sizes

Integration Step Sizes


When using a fixed step size for the simulation (deactivate Automatic Step Size Adaptation on the Basic Options tab), the integration step size for EMT or RMS has to be set. It is often unnecessary to plot every single calculated time step, and this reduction in plotted data can also result in a reduced simulation time. For this purpose, the step size for the output graphs can be set, so that not every point in time throughout the simulation time will be drawn on the virtual instruments plot. By selecting a larger Output step size, the simulation process will speed up without influencing the calculation process. It should be noted, however, that fast changes may not be seen in the reported results. The parameters which are available for the step size are: dtemt dtgrd dtout Electromagnetic Transients (typical value: 0.0001 sec) Electromechanical Transients (sym, asm, vco, pss) (typical 0.01 sec) Output (typical equal to dtemt for EMT; and dtgrd for RMS simulation)

25 - 7

DIgSILENT PowerFactory

Stability and EMT Simulations

Start Time
The start time of the simulation. This is typically negative, allowing the first event to be analysed to take place at t=0s.

Note

When setting up time-domain simulations, it is very important to use the correct time steps for simulations in order to observe the right phenomena in the results. For the RMS simulation the minimum time step should always be smaller then the time constants in the system. In controllers one must consider both the open-loop and the closed-loop time constants. For electromagnetic transients, e.g. when analyzing travelling waves, the smallest travelling time would be the upper limit for the minimum time step.

In addition to the Newton-Raphson based algorithm for the solution of "weak'' non-linearities (i.e. saturation effects in synchronous and asynchronous machines), the EMT simulation function allows interrupts for the simulation of "strong'' non-linearities (i.e. switches, two-slope transformer saturation or thyristors). These interrupts can also occur between time steps. In case of such an interrupt, all time dependent variables are interpolated to the instant of interrupt and the simulation restarts at that point. This prevents numerical oscillations and allows much a lower integration step size to cater for power electronics devices. The dynamic model equations of the voltage-controllers (vco) and the power system stabilisers (pss) are solved simultaneously with the electrical generator and passive network equations (stepsize dtgrd).

25.3.3

Step Size Adaptation

If option Automatic Step Size Adaptation is enabled on the Basic Options tab, further step size options are available on the Step Size Adaptation tab. These options are: errmax errinc ninc finc fdec ddtemt_max Maximum Prediction Error (typical value: 0.01) Minimum Prediction Error (typical value: 0.01) Delay for Step Size Increase (typical value: 10 time steps) Speed Factor for increasing the time step (default value: 1.5) Speed Factor for decreasing the time step (default value: 2) Maximum increase of step size (typical values: 0.05 for RMS; 0.001 sec for EMT)

Note

The simulation time can be very sensitive to some of the parameters. For example when you increase the maximum time step the duration of calculating transients may not always increase. If this time step is increased over an "optimal'' time step the simulation time may increase as well. It is strongly recommended to critically observe the simulation time and the results for different simulation parameters.

25 - 8

DIgSILENT PowerFactory

Stability and EMT Simulations

25.3.4

Advanced Options

The advanced options may be used to tune the performance of the simulation algorithm. Less experienced users are recommended to use the default values.

Event Control
Resolution Factor The value entered here (parameter name: kres) determines the time interval used to synchronize events. Every time an internal or external event occurs (usually between two integration time steps), PowerFactory interpolates all state variables up to the moment in time at which the event has occurred and restarts the simulation from there. In the case of large disturbances it is possible that a very large number of events occur almost simultaneously. As this would slow down the simulation considerably, PowerFactory executes all events that occur within a time interval of duration kres*dtmin at the same time. All system variables are then interpolated up to the point in time when the event takes place, and the simulation is started from there. A higher resolution factor decreases the minimum time interval between events. The default value of 0.001 is usually sufficient. If an event occurs, there are two different options available:

Interpolation at user defined events


Calculation of v(t) and v(t+h) as usual. PowerFactory uses special numerical methods to allow this without numerical oscillations.

Re-Initialize After Event


Calculation of v(t) and v(t+h), hence two values at the same time, one before the occurrence of the event, and one after. The second method is applied if the option Reinitialize After Event is enabled. Further parameters can be changed to control the simulation algorithm.

Integration Control
errseq itrpx alpha_rms alpha_emt Maximum Error of State Equations (typical value: 0.1%) Maximum Number of Successive State Iterations (typical value: 10) Damping Factor (RMS) (typical value: 1) Damping Factor (EMT) (typical value: 0.99)

Iteration Control
errsm Maximum Iteration Error of Nodal Equations (typical value: 10*errlf ) The iteration error errsm depends on the nominal power of the machines and the voltage levels. As an adequate starting value, errsm should be set to: errsm = 10*errlf, where errlf is the Max. Allowable Load-Flow Error for each Bus. Checking is best done by plotting some voltages at generator
25 - 9

DIgSILENT PowerFactory

Stability and EMT Simulations

busbars. If voltage steps are observed, the value of errsm should be reduced. erreq itrlx Maximum Error of Model Equations (typical value: 1%) Maximum Number of Iterations (typical value: 25) itrpx specifies the max. number of iterations at each integration step which are allowed to reach the max. tolerable bus-error errsm. During the transient simulation process, the typical number of iterations required is between 1 and 5. Under certain conditions - i.e. after switching operations - up to 25 iterations may be observed. Iteration Limit to Recompute Jacobian Matrix (typical value: 5)

itrjx

Signal Buffer Reference System Local/Global Reference System


The PowerFactory stability analysis uses the angle of a reference machine and refers all other angles to this reference angle. This is a numerically very efficient approach. After running initial conditions, the reference machine is displayed in the output window. It is usually the "Slack''-machine of the load-flow calculation. In case of several isolated islands, PowerFactory offers the option of using one reference machine for the whole system (Global Reference System), or to use an individual reference machine for each island. The first case should be used if the islands are re-synchronised again later in the simulation. In all other cases the option (Local Reference System) should be used because it leads to a higher numerical stability and to faster simulation times.

Calculate Maximum Rotor Angle Deviation


PowerFactory can also calculate the maximum deviation between the rotor angles between the synchronous machines in the system. This variable is then called dfrotx and

can be chosen and displayed from the variables of all synchronous generators in the system. This variable can be used as an indicator for the synchronous operation of a large transmission system.

A-stable integration algorithm for all models


If you enable this option, PowerFactory uses an A-stable numerical integration algorithms for all models to solve the simulation. In this case dynamic model equations and network equations are solved simultaneously. This algorithm is (slightly) slower in case of small step sizes but converges much better in case of large step sizes. Typical applications are longer term simulations, in which the simulation step size is increased considerably after fast transients have decayed. Another typical application are systems with power electronics. Even if power electronics devices are usually equipped with very fast controls, the A-stable algorithm still allows reasonable step sizes, at which the relaxation method would fail. When using a conventional, explicit numerical integration algorithm, such as Runge-Kutta
25 - 10

DIgSILENT PowerFactory

Stability and EMT Simulations

(not an A-stable algorithm), the integration step size must be adjusted to the eigenvalues of a system. Such a method (Relaxation Method) means a mutual solution of dynamic model equations and network equations until convergence is reached: This algorithm is fast for small step sizes but fails to converge when the step size is increased. Best choice for classical transient stability applications. But if excessively large step sizes are used, the numerical solution becomes unstable, even if fast modes have fully decayed and are no longer apparent in the system. With the PowerFactory A-stable algorithm, the step size can be adjusted to the actual course of all state variables without considering numerical stability. When fast transients have decayed, the step size can be adjusted to the speed of slower transients, etc. If some very fast modes are not of interest, a large step size can be selected from the beginning, and the algorithm will automatically smooth fast variations. A typical application of this type of algorithm is the simulation of long-term phenomena - where it is necessary to increase the simulation step size to the range of minutes, even if fast modes are present in the system. However, if power electronics are involved, characteristic time constants can be extremely short (i.e. 1ms), even if a stability model with steady-state equations for the electrical network is used. Hence, using a classical integration algorithm would require the use of step sizes significantly smaller than the smallest time constant of the system, otherwise it would be numerically instable.

Note

A requirement for using the A-stable integration algorithm is that just "true" input and output signal variables are used for exchanging information between different models.

It should be mentioned, that it is also possible to choose the usage of an A-stable algorithm for some element models only (not for all models), so that it is possible to run just a part of the models with the A-stable algorithm (for example the power electronic converters or fast controllers). This option is available in the dialogues of the elements. With the A-stable algorithm, these systems can be analysed with reasonable step sizes. Hence, the A-stable algorithm cannot be described as using simplified models but as a different type of numerical integration algorithm.

25.3.5

Noise Generation

The Noise Generator element (ElmNoise) can be used in a transient simulation to produce a noise signal based on random numbers. On the Noise Generation page of the ComInc dialogue, the random number generation method can be selected. The random number generator can be selected to be automatic (by selecting option auto), which is the default value and the most commonly used. Alternatively, the option renew may be selected, in which case the random seed of the noise generator can be selected manually from "A" to "K". Thus the noise signal will look the same in every simulation, i.e. the results of a former simulation can be reproduced exactly.

25 - 11

DIgSILENT PowerFactory

Stability and EMT Simulations

25.3.6

Advanced Simulation Options - Load Flow

There are further options which can influence the simulation process and its results. In the load flow command dialogue (ComLdf, see also Section 22.3.1) on the Advanced Simulation Options tab, the influence of protection devices or various controller models can be neglected. Hence the chosen models or protection devices will be ignored during the simulation as well as in load flow and other calculations. This is illustrated in Figure 25.2.

Fig. 25.2:

Advanced Simulation Options in the ComLdf Command Dialogue

The options available for the consideration of protection devices are: none all main No protection devices are considered in the calculations All protection devices are considered Only the protection devices are in operation, which are defined as 'main' devices Only the 'backup' protection devices are considered. According to the controller models, there is the possibility to ignore all controllers and mechanical elements with the option Ignore Composite Elements. If there are only some specific model types one would like to neglect in the simulation, they can be moved from the left window Considered Models to the right window, Ignored Models.

backup

25 - 12

DIgSILENT PowerFactory

Stability and EMT Simulations

25.4

Result Objects

During an EMT or RMS simulation, a large number of signal variables are changing over time. To reduce the available data and to narrow down the number of variables to those necessary for the analysis of each particular case, a selection of these signals for later use has to be defined. Therefore, one or more result objects containing the result variables can be configured. The simulation function needs the reference to a result object to store the results. The command dialogues for calculation functions, that produce signals, have result object references, as depicted in Figure 25.3 for the Initial Conditions (ComInc) dialogue. See also Figure 25.1 for the complete dialogue.

Fig. 25.3:

Result Object Reference

Such a result object reference refers to the currently used result object. The downward arrow button ( ) is used to select or reset the reference, or to edit the contents of the referenced result object. The right-arrow button ( ) is used to edit the result object itself. When editing the output variables press this Edit button and then Contents to get access to the list of variables stored inside the result object. This will pop up the corresponding ElmRes edit dialogue. An easier way to edit or inspect the result object is to press the icon on the main toolbar, or to select the Data > Stability > Result Variables option from the main menu. This will enable the user to edit the contents of the currently selected Result object in the Initial Conditions (ComInc) command dialogue. Result objects (ElmRes) are treated in detail in Chapter 20 (Reporting Results in PowerFactory). To add variables of different elements to the result object for RMS and EMT simulations, right-click on the desired element in the single-line graphic and select Define...--> Variable Set (Sim)... as shown in Figure 25.4.

25 - 13

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.4:

Defining a Variable Set for a Line Element

This element will then be monitored during the simulation. A browser window is automatically opened, and by double-clicking on the variable set icon ( ) of the relevant row, the variables of interest to be recorded can then be selected. See also Section 20.2.1 (Result Objects).

Note

Most of the variables for RMS and EMT simulations are identical. Nevertheless there may exist variables that are valid for EMT but not for RMS calculations. It is advisable to only use variables for the calculation which is currently being performed.

25.4.1

Saving Results from Previous Simulations

The variables to be monitored are stored (by default) in the result object All calculations. The results of the variables in the current simulation are stored in this file also. If the results of two different simulations are to be displayed, e.g. in one virtual instrument, there is the possibility to save the result object of a previous simulation simply by copying the result object All calculations and renaming it to something else. This can be done easily in the data manager. The result object can be found in the currently active study case. Copy the result object and paste it into the same study case. Following this, a second result object will be created with the name All calculations(1). If desired, the object can be renamed to something more appropriate. In the following simulation, the default result object All calculations will be overwritten with the new results, but the copied results will not be modified and can be displayed together with the new simulation results in one plot. For further information see Section
25 - 14

DIgSILENT PowerFactory

Stability and EMT Simulations

20.1.2 (Plots).

25.5

Events

Besides the reference to a result object, the simulation function needs a reference to an event object to determine the simulation events. The default event object in PowerFactory is Simulation Events and, like the result object, is also stored inside the study case. External events are used in steady-state calculations (e.g. short-circuit calculations) as well as for transient calculations (Simulations).

PowerFactory offers several kinds of events for time-domain simulations: 1 Switch events (EvtSwitch) 2 Parameter events (EvtParam) 3 Short-circuit events (EvtShc) 4 Intercircuit fault events (EvtShcll) 5 Synchronous machine events (EvtSym) 6 Load events (EvtLod) 7 Outage of element (EvtOutage) 8 Message events (EvtMessage) 9 Set integration step size event (EvtStep) 10 Tap event (EvtTap)
The different events are stored in the event object. The contents of the currently selected event object (labelled Events) can be found in the ComInc dialogue. This object can be edited using the right-arrow ( ) button followed by the Contents button to access the event list stored inside the event object. Alternatively, the event object can be easily accessed from the main toolbar by pressing icon. A list of the currently defined events will be displayed the Edit Simulation Events including the set simulation time, when the event will occur, and the related object. Figure 25.5 shows an example set of events.

25 - 15

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.5:

The Event Object Including a Set of Events

When creating a new event, use the icon in the toolbar, as can be seen in the Simulation Events object dialogue in Figure 25.5. The event type can be chosen from the list in the element selection dialogue which pops up, as shown in Figure 25.6. The events can also be modified during a simulation by stopping the calculation, editing the events and continuing the simulation.

25 - 16

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.6:

Defining a New Simulation Event

An alternative means of defining events is as follows: upon calculation of the initial conditions ( ), or when the simulation is already running, double-click on the desired cubicles to create switch events. Additionally, the user can right-click on an element and then select an element-related event such as Define... > Switch Event, Define... > Load Event or Define... > Short-Circuit Event. During a simulation all previous events (i.e. events which have already occurred), are displayed in a grey font style and can no longer be edited or changed. When the simulation is finished or is stopped manually, the events which are still to come in the simulation can be altered and new events can be created.

Note

At the end of a simulation the event list shows all events, which are now grey in color. They can no longer be modified for this simulation, because the simulation could be restarted from this point on. To change the events for a new simulation one must first initialise the calculation again ( beginning. ), so the simulation time is reset to the

25 - 17

DIgSILENT PowerFactory

Stability and EMT Simulations

25.5.1
the

Switch Events
icon on the main menu (if this icon is available), which will open a browser con-

Switch events are used only in transient simulations. To create a new switch event, press taining all defined simulation events. Click on the icon in this browser, which will show a IntNewobj dialogue which can be used to create a new switching event.

Fig. 25.7:

Creation of a New Switch Event (IntNewobj)

After pressing OK, the reference to the switch (labelled Breaker or Element) must be manually set. Any switch in the power system may be selected, thus enabling the switching of lines, generators, motors, loads, etc. The user is free to select the switches/breakers of all phases or of only one or two phases. It should be noted that more than one switching event must be created if, for instance, a line has to be opened at both ends. These switch events should then have the same execution time.

25.5.2

Parameter Events

With this type of event, an input parameter of any element or DSL model can be set or changed. First, a time specifying when the event will occur is inserted. Then an element has to be to specified/selected using the down-arrow button . Then choose Select... from the context-sensitive menu. Afterwards insert the name and the new value of a valid element parameter.

25.5.3

Short-Circuit Events

This event applies a short-circuit on a busbar, terminal or on a specified point on a line. The fault type (three-phase, two-phase or single-phase fault) can be specified as well as the fault resistance and reactance and the phases which are affected.
25 - 18

DIgSILENT PowerFactory

Stability and EMT Simulations

The duration of the fault cannot be defined. Instead, to clear the fault, another short-circuit event has to be defined, which will clear the fault at the same location. An example is shown in Figure 25.5.

25.5.4

Intercircuit Fault Events

This type of event is similar to the short-circuit event described in Section 25.5.3 (ShortCircuit Events). Two different elements and their respective phases are chosen, between which the fault occurs. As for the short-circuit event (EvtShc), four different elements can be chosen: Busbar (StaBar) Terminal (ElmTerm) Overhead line or cable (ElmLne)

25.5.5

Events of Synchronous Machines

There is a special event for synchronous machines, which is used to easily change the mechanical torque of the machine. The user specifies the point in time in the simulation for the event to occur, and an active synchronous machine ElmSym. The user can then define the additional mechanical torque supplied to the generator. The torque can be positive or negative and is entered in per unit values.

25.5.6

Events of Loads

The user specifies the point in time in the simulation for the event to occur, and a load element (ElmLod, ElmLodlv or ElmLodlvp). The value of the load can then be altered using the load event. There are different ways to change the power of the selected load: Step Changes the current value of the power (positive or negative) by the given value (in % of the nominal power of the load) at the time of the event. Changes the current value of the power by the given value (in % of the nominal power of the load), over the time specified by the Ramp Duration (in seconds). The load ramping starts at the time of the event.

Ramp

25.5.7

Outage of Element

This event can only be used during an RMS simulation, when an element is to be put out of service at a specific point in time. The option Take element out of service should be selected within the dialogue. It should be noted that it is not possible to bring the outaged elements back into service during the transient simulation. This is only possible in steadystate calculation functions, e.g. short-circuit calculation or reliability assessment. In timedomain simulation the following error message will occur in the output window:
DIgSI/err (t=000:000 ms) - Outage Event in Simulation not available. 25 - 19

DIgSILENT PowerFactory

Stability and EMT Simulations

Use Switch-Event instead!

25.5.8

Save Results

This event is only used in the PowerFactory Monitor of the program. It cannot be used during time-domain simulations.

25.5.9

Set Integration Step Size

25.5.10

Tap Event

The user specifies the point in time in the simulation for the tap event to occur, and a shunt or transformer element (ElmShnt, ElmTr2, etc). The Tap Action can then be specified.

25.6

Running a Simulation
), the

Upon successful calculation of the initial conditions (i.e. execution of ComInc

icon on the main toolbar will be activated and can be pressed to start the simulation. The simulation is performed for the time interval between the start time defined in the initial conditions command ComInc, and the stop time (parameter name: tstop), which can be specified in the simulation (ComSim) dialogue. After a simulation has finished, it may be continued by pressing the icon again, and entering a new stop time. In this case, the stop time may also be entered relative to the current simulation time. A running simulation may be interrupted by pressing either the icon or the icon on the main toolbar. Additional events can be created and results may be viewed while the simulation is paused. The simulation is then continued by pressing the Pausing and continuing the simulation may be done as often as required. icon again.

25 - 20

DIgSILENT PowerFactory

Stability and EMT Simulations

25.7

Models for Stability Analysis

Stability analysis calculations are typically based on predefined system models. In the majority of cases the standard IEEE definitions for controllers, prime movers and other associated devices and functions are used. For planning purposes, this approach might be acceptable. The predefined sets of parameters will allow a favorable and reasonable behavior of the analyzed system. This approach is often also applied to operation analysis, and the system should show a response similar to a real system. For systems and configurations for which no IEEE models exist, such as wind generators, HVDC-systems, etc., powerful tools for user defined modelling are required. For this purpose, highly specialised, exact models can be created in PowerFactory. In cases when manufacturers are able to supply exact controller models including real parameters, the system model can be improved by not using the IEEE standard models, but instead building a new block diagram of the individual controller/mechanical system to represent the device. This facilitates highly accurate system modelling. Utilities and consultants often conduct system operation performance and optimization studies, and therefore have a clear need for accurate methods and tools for creating accurate transient models for stability analysis. This includes complex operation analysis and special component planning problems. This demand led to the development of highly flexible and accurate DIgSILENT PowerFactory time-domain modelling features, which are introduced in this chapter.

25.7.1

System Modelling Approach

System modelling for stability analysis purposes is one of the most critical issues in the field of power system analysis. Depending on the accuracy of the implemented model, large-signal validity, available system parameters and applied faults or tests, nearly any result could be produced and arguments could be found for its justification. This is one aspect of the complexity of a transient stability study. The other aspect results from the often large set of time-domain models that are required, each of which may be a combination of other models. All these time-domain models are ultimately wired together into one large, single transient model from which the basic set of system differential equations can be obtained. Given this complexity of a transient analysis problem, the PowerFactory modelling philosophy is targeted towards a strictly hierarchical system modelling approach, which combines both graphical and script-based modelling methods. The basis for the modelling approach is formed by the basic hierarchical levels of timedomain modelling: The DSL block definitions, based on the "DIgSILENT Simulation Language" (DSL), form the basic building blocks to represent transfer functions and differential equations for the more complex transient models. The built-in models and common models. The built-in models or elements are the transient PowerFactory models for standard power system equipment, i.e. for generators, motors, static VAr compensators, etc. The common models are based on the DSL block definitions and are the front-end of the user-defined transient models.

25 - 21

DIgSILENT PowerFactory

Stability and EMT Simulations

The composite models are based on composite frames and are used to combine and interconnect several elements (built-in models) and/or common models. The composite frames enable the reuse of the basic structure of the composite model. The relation between these models and the way that they are used is best described by the following example. Suppose the frequency deviation due to the sudden loss of a fully-loaded 600 MW unit in a particular network is to be analyzed. Depending on the network and the required detail in the calculated results, such analysis may ask for a detailed modelling of the voltage controllers, prime movers and primary controllers, or any other important equipment for all large generators in the system.

PSS Power System Stabilizer

VCO Voltage Controller VPSS

V EXC SYM Synchronous Machine

V GEN PGEN GEN

PCO Primary Controller

AV

PMU Prime Mover Unit

PT

PCU Primary Controller Unit

Fig. 25.8:

Example of a Composite Generator or Power Plant Model

Figure 25.8 shows a typical configuration of a synchronous generator with power system stabilizer, voltage controller, primary controller, and prime mover model. The primary controller and prime mover can be summarized as the primary controller unit model. To create this kind of model, the following actions are required: 1 2 3 4 Transient models for each required controller type or unit type have to be defined (Model/Block Definition). For each generator, the transient models of the individual controller must be customized by setting the parameters to the correct values (Common Model). A diagram has to be made defining the connections between the inputs and outputs of the various models (Composite Frame). For each generator, the diagram and the customized transient models are to be grouped together to define an unique 'composite' generator model (Composite Model).

It may seem unnecessary to include steps 2 and 3: it would be possible to create customized transient models for each generator directly, with 'burned-in' parameter settings, and to link these models to a generator without having to define a diagram first. This, however, would mean that one would have to create a new voltage controller, e.g. for each generator in the system. Often the design of many of these voltage controllers will be similar. To omit the need of creating copies of these controllers for each generator and to avoid redundant copies of controllers or also of whole generator models. Here the same relationship as that between individual controller (Common Model) and
25 - 22

DIgSILENT PowerFactory

Stability and EMT Simulations

controller definition (Model Definition) is used; this time between the generic power plant diagram (Composite Frame) and the individual power plant (Composite Model). DIgSILENT PowerFactory uses two key objects in creating composite models, which can be compared to the element definition of the different elements: The Common Model (ElmDsl) combines general time-domain models or model equations (a block definition) with a set of parameter values and creates an integrated time-domain model. The Composite Model (ElmComp) connects a set of time-domain models inside a diagram (a composite frame) and creates a 'composite model'. The following diagrams explain the relation between the Composite Model (which is using a Frame as type) and the Common Model (based on a block diagram as type) in detail. The Composite Model (ElmComp), see Figure 25.9, references the definition of a composite frame. This composite frame is basically a schematic diagram containing various empty slots, in which controller or elements can be assigned. These slots are then interconnected according to the diagram, see Section Composite Block Definitions (part of Section 25.8.3: Defining DSL Models). The slots in the composite frame are pre-configured for specific transient models. The schematic diagram in Figure 25.10 shows a Composite Frame (BlkDef ) which has one slot for a synchronous machine, one for a primary controller unit (pcu slot), and one for a voltage controller (vco slot). The composite model, which uses this composite frame, shows a list of the available slots and the name of the slot. Now the specific synchronous generator, voltage controller or primary controller unit model can be inserted into these slots. The synchronous machine that is used in the Composite Model is called a Built-In Model, see Figure 25.11. This means that such elements are pre-configured elements which do not need a specific model definition. Any kind of element which is able to provide input or output variables, e.g. converters, busbars, etc, can be inserted into the slots. The voltage controller, and primary controller unit, however, are user-defined Common Models, see Figure 25.12. The 'front-end' of all user-defined transient models is always a common model (ElmDsl), which combines a model definition with specific parameter settings. There are predefined definitions as well, so that the user can create her/his own model definitions. The common model has a reference to the Model Definition (BlkDef ), which looks similar to the composite frame (shown in Figure 25.13). Here different blocks are defined and connected together according to the diagram. The input and output variables have to fit with the slot definition of the slot that the model is defined for. Not all slots of the composite model must necessarily be used. There can also be empty slots. In such cases, the input of this slot is unused and the output is assumed to be constant over the entire simulation. The usage of composite models with a composite frame, and the common model with its block definitions are described in the next sections. The design and creation of user defined common models using the "DIgSILENT Simulation Language" (DSL) can be found in Section 25.8 (User Defined (DSL) Models).

25 - 23

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.9:

Example of a Composite Model Using the Frame Frame_Generator


u

pss slot ElmPss*

upss

vco slot ElmVco*


1

ve

sym Slot ElmSym* pt

pcu Slot ElmPcu*

fe

Fig. 25.10:

Composite Frame Frame_Generator

G ~
G1 L1

Fig. 25.11:

Generator G1 (Built-In Model)

25 - 24

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.12:

Example of a Common Model Using the Definition vco_simple


vco_Simple: Simplified Excitation System

o13

usetp

Emax

o12

yi

PID Controller Ta,Tb,K1

ve

_{K/(1+sT)}_ Ke,Te

uerrs

Emin
3

upss

Fig. 25.13:

Example of a Model Definition vco_simple

25 - 25

DIgSILENT PowerFactory

Stability and EMT Simulations

25.7.2

The Composite Model

A composite model element (ElmComp) can created using the "New Object" ( ) icon, located in the toolbar of the data manager and selecting Composite Model from the available options. The next step is to select the composite frame. The composite frame can be stored either in the global library or in the local library, and is conceptually similar to a type definition for an electrical element. The composite model then shows the list of slots in the composite frame as shown in Figure 25.14. Existing controllers or models can be assigned to a slot manually by right-clicking the slot and selecting Select Element/Type, as depicted in Figure 25.14. A data manger window will pop up and the user can then browse the grid for the element to insert into the selected slot.

Fig. 25.14:

Editing the Composite Model (ElmComp) Dialogue

When inserting controller models into a slot, it is often the case that the controller element has not yet been created. To create a new controller element select New Element/Type from the slots context-sensitive menu. PowerFactory will automatically jump to the project Library and show a list of available user defined models (ElmDsl). Selecting a model definition from the project library or the global library will open the element dialogue of the newly-created common model, so that its parameters can be defined, similar to (for example) a transformer element. If no suitable model is found, a block definition has to be selected prior to setting the model parameters (see Section 25.7.3 (The Composite Frame) and Figure 25.13). If an element is assigned to a slot, it is possible to edit the assigned element by simply right-clicking and selecting Edit Element/Type. The right-mouse button menu entry Reset Element/Type will reset the slot, so that it is empty again.

25 - 26

DIgSILENT PowerFactory

Stability and EMT Simulations

Note

Depending on the settings of the individual slot, the menu entry Reset Element/Type will not only clear the marked slot but also delete the built-in or common model, if it is stored inside the composite model in the data manager. These settings are explained in detail in Section 25.7.3 (The Composite Frame).

A faster method for defining standard composite models is to right-click on an object in the single line diagram and select Define... from the context menu of the element. When a standard composite model is available for the selected object, a list of the available controllers is shown. Selecting a controller will add it to the composite model, which is automatically created when no composite model yet exists for the selected object. Standard composite models are available for: The synchronous motor and generator; The asynchronous motor and generator; The static VAr system.

Slot Update
The Slot Update button in the composite model (ElmComp) dialogue will re-read the slot definitions from the composite frame and will cancel all invalid slot assignments. A slot assignment is invalid when a model has been assigned to a slot which is not suited to receive this kind of model, i.e. a voltage controller cannot be assigned to a slot defined for a primary controller model. All built-in models and common models which have been created for a specific composite model are stored in that composite model itself. The contents of a composite model are shown in the data manager where the composite model is treated as a normal database folder. Basic power system equipment, such as synchronous machines or static VAr compensators, are normally not stored in the composite folder, but in the grid itself. The slot update will try to re-assign each model found in its contents to the corresponding slot.The options defined for each slot are important, and are described in the paragraph Classificationin Section 25.7.3 (The Composite Frame).

Step Response
The Step Response button in the composite model (ElmComp) dialogue will activate the Step Response command (ComStepres). The dialogue can be seen in Figure 25.15. Next to the references to the composite model, the template and the target directory, the two step response tests, which will be created, can be specified. The study case to be activated can also be selected. When Execute is pressed, PowerFactory will create a new folder in the current project named Step Response Test. Figure 25.16 shows this folder in the data manager.

25 - 27

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.15:

Step Response Command (ComStepres) Dialogue

Fig. 25.16:

Step Response Folder in the Data Manager

Inside the Step Response Test folder, a second folder is created, named according to the composite model which is to be tested. Here the simple test grid can be found including only the generator, the complete composite model and a load. Additionally there will be two new study cases in which a step response for the AVR and the PCU, respectively, of the composite model can be tested. The user can switch between these two study cases and her/his previously-used study cases by activating and deactivating them.

Note

There is now no longer any connection between the original elements and the new elements of the composite model. Therefore, you can change any controller settings without changing your network.

After testing the controller, the folder Step Response Test can be deleted completely without loss of information in the original network.

25 - 28

DIgSILENT PowerFactory

Stability and EMT Simulations

25.7.3

The Composite Frame

A composite frame is a block diagram which defines two or more slots, their input and output signals, and the connections between them. A composite frame is defined graphically by drawing it. Drawing a composite model frame is similar to drawing a normal block diagram. The main difference is that instead of common blocks, only slots may be used. To create a new composite frame select the Insert New Graphic icon on the main toolbar (in the graphics window) and then select Block/Frame Diagram and press Execute as shown in Figure 25.17. This new block definition will then be automatically created in the local library.

Fig. 25.17:

Creating a New Composite Frame

An empty diagram of the frame will appear in the graphics window. A slot is then created by selecting the icon in the graphics toolbox and positioning the slot on the drawing surface by clicking once at the desired location. This is similar to placing elements in the single-line diagram. An empty slot will be drawn on the page. To define the slots input and output signals and different parameters, edit the slot by double-clicking it. The slot edit dialogue will pop up as shown in Figure 25.18.

25 - 29

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.18:

Slot Dialogue (BlkSlot)

Name and Sequence The name of the slot will appear later in the composite model dialogue, and it is therefore recommended to name this element according to which slot it will be assigned (e.g. 'vco slot'). The Sequence parameter defines the order of the slots appearing in the composite model dialogue. Classification The classification options only effect the external behavior of the slot. Linear The slot representation in the frame diagram will be as a linear or nonlinear model.

Automatic, model will be created When this option is activated, the function 'Slot Update' (see Section 25.7.2: The Composite Model) will automatically create a DSL model and ask for a block definition from the library. Local, Model must be stored inside This option is activated by default. This means that when a Slot Update is executed in the composite model, PowerFactory will only search for elements which are stored inside the ElmComp. A reference to models which are stored outside, i.e. the synchronous generator in a plant model, will be removed from the slot. Not all input or output signals of built-in elements or common models have to be used
25 - 30

DIgSILENT PowerFactory

Stability and EMT Simulations

and defined in the slot. A slot may only have an input or an output signal. For example, the voltage or frequency of an AC voltage source ElmVac may be controlled by an external function. Therefore, the slot for the source will only have two input signals u0 and f0. More information about drawing composite frame diagrams can be found in Section 25.7.6 (Drawing Composite Block Diagrams and Composite Frames). Input and Output Signals The input and/or output signal(s) have to be defined for each slot. The available signal names for the Built-In transient models can be found in the corresponding Technical References of the elements. The given input and output signal names in this slot dialogue have to match the input/output signals of the given transient model exactly, or the signals will not be connected properly and an error message will result. Only after one or more input and output signals have been defined for a slot, is it possible to connect the slot with signal lines to other slots. It is therefore recommended to first position and edit all slots and to draw the signal connections thereafter. Limiting Signals There is also the possibility to enter 'limiting signals'. These signals are handled by PowerFactory exactly like normal input signals. The difference is only in the graphical representation in the block diagram. These signals will be shown as inputs on the top or bottom of the slot. Class/Name Filter There is also the possibility to specify a filter for the class name and/or for the model name to be inserted. This makes sense when (for example) only synchronous machines should be assigned to the slot. In this case, the class name ElmSym* would be entered. PowerFactory then will only allow the element class "synchronous machine'' to be inserted into the slot. A filter for a specific (part of an) element name can also be defined.

Assigning a Block Definition to a Slot


A block definition (BlkDef ) can be assigned directly to a slot. This option will simplify the handling of the slot and prevent errors due to mis-matched signal names of slot and assigned block. To assign the external form of a block definition to the selected slot, edit the slot by double-clicking it and choose the "select" button for the "Block Definition" in the dialogue. Now the block definition can be selected, e.g. the type of controller or built-in element, which should be assigned to this slot later. As an example, if the newly-defined slot ought to represent a synchronous machine in the frame diagram, a predefined block definition can be chosen to insert the input and output signals to this slot available for the element ElmSym. A controller should, for example, only be assigned to a slot, when only this type of controller is to be inserted into this slot, and no other model can be.

Models\Built-in.

Some predefined block definitions can be found in the global library in the path Library\

When the block definition is selected (in our example the ElmSym.BlkDef ), the input and output as well as limiting signals will disappear from the slot dialogue. The filter for the class name will automatically be entered. When clicking on the Ok button, the slot will
25 - 31

DIgSILENT PowerFactory

Stability and EMT Simulations

then show the right inputs and outputs of the block definition.

Note

When a block definition is assigned directly to a slot, only the input/ output signals are set automatically. The internal equations/definitions of the block definition are not implemented in the slot and the slot itself remains empty. There is always the need to create a common model, which is the model inserted into the slot of the composite model. When the slot refers to an outside block definition, beware that this reference is also inside your project. If the reference to the definition is invalid or changed, the slot may be changed as well. Therefore, assign a block very carefully.

25.7.4

The Common Model

The common model element (ElmDsl, ) is the front-end object for all user-defined block definitions. This means that user-defined transient models, but also the block diagrams that are ready-shipped with the PowerFactory program, cannot be used other than through a common model. The common model combines a model or block definition with a specific set of parameter values. The common model shown in Figure 25.19 uses the block definition vco_Simple. Typically the model definition is implemented as a block definition, such as that shown in Figure 25.20. A model definition contains block references which may in turn either point to a primitive block definition (see Figure 25.21) or to a another composite block definition (see Figure 25.22). The structure of the block definition is thus recursive and the user should check that this recursive structure does not contain circular references to composite block definitions. A primitive block definition contains one or more DSL expressions and forms a basic block for more complex transient models. A description of how to use and create DSL models can be found in Section 25.8 (User Defined (DSL) Models). It is also possible to implement the model definition not as a block definition, but directly as a primitive block definition (Figure 25.21), coded using DSL. Each block definition generally has one or more parameters which can be changed to define the model's behavior. Two kinds of parameters are supported: Scalar parameters, i.e. amplification factors, offsets, setpoints, etc. Two and three dimensional array parameters, which are used in the DSL lapprox()/ lapprox2() and sapprox()/sapprox2() functions.

25 - 32

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.19:

Common Model for the VCO

vco_Simple: Simplified Excitation System

o13

usetp

Emax

o12

yi

PID Controller Ta,Tb,K1

ve

_{K/(1+sT)}_ Ke,Te

uerrs

Emin
3

upss

Fig. 25.20:

Block Definition of the VCO, Using a Sub-Definition

25 - 33

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.21:

Implementation of the Limiter Block, Using a DSL Routine

yi

K K1 o 1 1 (1 ..

o11

y2

K1/K2 Ta,Tb

yo

yi1

1/sT Tb

Fig. 25.22:

Implementation of the Controller, Defining a Sub-Block

To create a common model, use the "New Object" ( ) icon in the toolbar of the data manager and select Common Model. The block/model definition has to be selected first. Similar to the composite frame, this definition is either stored in the global library or in the local library. The common model then displays the list of available parameters and arrays from the block diagram, as shown in Figure 25.23. All parameters are listed on the first page of the common model, and their values can be specified there.

25 - 34

o1 yo(1)

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.23:

Common Model with Parameter List

If the selected block definition uses one or more arrays in its definition, then these arrays are displayed on the second page (for simple characteristics) and third page (for two-dimensional characteristics) of the ElmDsl object. In Figure 25.24 an example is shown for a 13x4 array definition.

Fig. 25.24:

Common Model with Array List

The characteristics are defined as follows: Characteristic In the row labelled 'Size', insert the number of rows in the first cell; the number of columns is set automatically. If the number of rows is changed, jump to the previous page the characteristic. and back again to update

Two-Dimensional Characteristic In the row labelled 'Size', insert the number of rows in the first cell and
25 - 35

DIgSILENT PowerFactory

Stability and EMT Simulations

the number of columns in the second cell. If one of these numbers is changed, jump to the previous page the characteristic. and back again to update

25.7.5

The Composite Block Definition

A composite block diagram of the model definition is a graphical representation of a mathematical transfer function, which produces one or more output signals as a function of one or more input signals. A block diagram may also have limits (minimal and maximal values) as input signals. A block diagram may thus be described as: (y_0, y_1, ...) = function(u_0, u_1, ...) where y_0, y_1, ... represent output signals 0, 1, ... and u_0, u_1, ... represent for input signals 0, 1, .... These signals are all functions of time. Block diagrams consist basically of the following elements: Summation Points which produce the single output y=(u_0+u_1+...) Multipliers Divisors Switches Signal Lines which produce the single output y=(u_0*u_1*...) which produce the single output y=(u_0/u_1/...) which produce the single output y=u_0 or y=u_1 which produce one or more outputs from one input: y_0=y_1=...=u

Block References which are used to include other block definitions. Block references can be looked upon as macros that insert a low-level block definition inside a composite block diagram definition. A block reference may either point to another composite block definition or to a primitive block definition. The PowerFactory program is shipped with a large set of primitive block diagrams for most common controller elements like PID-controllers, Dead Bands, Valve Characteristics, etc., and can be found in the PowerFactory tree under Database | Library | Models |Global_Macros. These predefined DSL primitives may be copied and altered for specific needs. A block reference is created by using the icon in the graphics toolbox. This creates an empty square which can then refer to any existing block definition in the library.

Note

The composite frame and the model definition are very similar and their usage is almost identical. When creating one or the other PowerFactory recognizes the class when you place the first slot or block. If you place a block ( ) first, the icon for the slot will become inactive, so the user cannot inadvertently mix up slots and blocks in one diagram. See also Section 25.7.6 (Drawing Composite Block Diagrams and Composite Frames).

If the block type is selected, PowerFactory inserts all available parameters of the re25 - 36

DIgSILENT PowerFactory

Stability and EMT Simulations

ferred block. The user may change the name of any parameter, however ensure that the order of the parameters is not changed. The order is important so that the right parameter is assigned to the parameters inside the block definition. Signal lines are directed branches, connecting input and output signals. A single output line may be branched off and connected to more than one input terminal. After the block reference has been edited, it will show the input, output and limiting signal connection points of the referenced block definition as one or more colored dots on the left and right side, respectively, on the upper and lower side of the box. Signal lines may then be connected to these points. It is allowed to refer to the block definition more than once in the same block diagram. This way, it is possible to use a particular PID-controller, for instance, twice or more in the same model definition. An example of a simple block diagram, comprising a multiplier, a summation point and a standard PI block, is shown in Figure 25.25.

Fig. 25.25:

Example of a Simple Block Diagram

When rebuilding a diagram (by pressing the icon), the DSL representation of the block diagram is written to the output window. For the example block diagram in Figure 25.25, this results in the following output:
model o1 = 'MyBlock'(i1,i2;x1;Kp,Ti;yi) s1 = '\System\Library\Models\DSL\PI.BlkDef'(xe;x1;Kp,Ti;yi) xe = i1*i2 o1 = s1+i2+i1

This simple example shows the whole meaning of the block diagram graphics: it is a convenient way to define specific controllers, based on standard components. However, it would also be possible to define exactly the same block diagram by entering the above DSL script manually and thereby create a primitive block definition.

25.7.6

Drawing Composite Block Diagrams and Composite Frames

Although the composite block diagram and the composite frame diagram should be distinguished from one other, they are drawn in the same way. The basic distinction between a block diagram and a frame diagram is that the latter contains only slots and signals, whilst the block diagram must not contain any slots. A new block or frame diagram can be created in various ways: Selecting the main menu entry File > New or Strg-N and then selecting the option Block/Frame Diagram from the "New" command dialogue (ComNew);
25 - 37

DIgSILENT PowerFactory

Stability and EMT Simulations

By clicking on the Insert New Graphic icon on the toolbar of an open graphic, and selecting the option Block/Frame Diagram; By right-clicking on, or inside a (library) folder in the active project in the data manager and selecting New... > Block/Frame - Diagram from the context-sensitive menu; By using the New Object Definition (BlkDef). icon in the database manager and selecting Block

Note

The two later options only create a block definition object (BlkDef), but no graphic. This method is therefore not suitable for creating a composite block or frame diagram, but only for creating primitive block definitions by entering the DSL code.

In the first two methods, a graphic will be created and will appear in the open graphics board. A new graphics board will be created when no graphics board is open. The new block/frame diagram graphic will show a single rectangular block, which depicts the block or frame. The name of the new diagram will appear on top of the frame. Inside this rectangle the following objects can be placed from the graphic toolbox for the block diagram: Node objects: - block references - summation points - multipliers - divisors - switches - different kinds of graphical objects Branch objects: - signals lines Inside a frame diagram only the following elements are allowed: Node objects: - slots - different kinds of graphical objects Branch objects: - signals lines These objects can be selected from the Drawing Toolbox. The toolbox also has buttons for pure graphical add-on objects (lines, polygons, rectangles, texts, etc.) as shown in Figure 25.26. It should be noted that the availability of this toolbox is according to whether or not the graphic is frozen ( ). When the graphic is not frozen, the toolbox is available, and likewise, when the graphic is frozen for editing, the toolbox is hidden.

25 - 38

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.26:

Block/Frame Diagram Objects

Note

When creating a frame or a block definition, PowerFactory recognizes the type of definition when you place the first slot or block. Because a composite frame diagram may only contain slots and signal lines, creating a slot will disable all other node objects in the drawing toolbox. If you place a block ( ) first, the icon for the slot will become inactive, so you can't mix up slot and block elements in one diagram.

Adding a Block Reference


Drawing the block objects and connecting them with signals is done in a similar way as is done with elements in the single line graphic. A block reference is first displayed as an empty square which has to be edited in order to assign a (low level) block diagram to it. Because of lack of information about the number of inputs and outputs of the new block reference before a (lower level) block definition is assigned to it, it is not possible to connect signals to the empty block. It is therefore recommended to first draw all block references and to assign block definitions to them. The block references then show all available input and output signal connections. A block reference is edited by right-clicking on it and selecting Edit from the context-sensitive menu, or simply by double-clicking on it. The dialogue as displayed in Figure 25.27 will pop up.

25 - 39

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.27:

Edit Dialogue of the Block Reference

Use the Select button ( in Figure 25.27) to select a model definition. Predefined standard block diagrams for your usage are located in the folder Database\ Library\ Models. It is also possible to create a block in the graphical Block Definition by dragging Macros from the global library or project library into the drawing area of the Block Definition, using the Drag & Drop functionality.

Adding Calculation Blocks


Summation Point Every dot can be used as an input to the summation point. The sign of signals at summation points can be changed by editing the summation point object. The "edit" dialogue will pop up, where any connected input connection can be inverted. It should be noted that not all dots have to be used and only one dot can be defined as an output. Multiplier Every grey dot of this block can be used as an input or output of the multiplier. An output of three input signals will thus be: out=(in_0*in_1*in_2). It should be noted that not all dots have to be used and only one dot can be defined as an output. Divisor Every grey dot of this block can be used as an input or output for the divisor. The first input will be the numerator and thus will be divided by the second (and if existing, the third) input. The order of the signals will be clockwise beginning from the left. An output of three input signals will then be: out=(in_0/in_1/in_2). Mind that not all dots have to be used and only one dot can be defined as an output.

25 - 40

DIgSILENT PowerFactory

Stability and EMT Simulations

Switch Two input signals can be applied to this block, which will be connected to the output according to the position of the switch. Additionally a control signal has to be connected to the top, which will define the operation of the switch. If the control signal is 0.5 or less, the switch will stay in the displayed state, whereas a signal greater than 0.5 will cause the switch to change to the upper signal and the other way round. In the edit dialogue the zero position of the switch may be altered.

Connecting Signals
After drawing and defining the block references, slots or other node elements, they can be connected with signal lines. After selecting the button from the graphical toolbox, a signal line is drawn by first clicking on a 'from' node (output of a block/slot), optionally clicking on the drawing surface to make a non-direct connection, and finally clicking on a 'to' node (input to a block/slot). The input and output terminals of common blocks and other node elements are depicted with colored dots (see Figure 25.28).

Fig. 25.28: Green: Red: Blue: Pink: Gray:

Block Signal Connections Input Output Min. Limitation Max. Limitation Every signal can be connected

The signal lines can also be edited in the corresponding dialogue, which provides the possibility to change the name of the signal.

Multi-Signal Connections
Signals normally connect a single output parameter with a single input parameter. Especially in the case of three phase signals, as is often the case for voltage or current signals, multi-signal connections may be used. A multi-signal is defined by writing two or more signal names together, separated by semicolons, e.g "I_A;I_B;I_C''. In Figures 25.29 and 25.30, the multi-signal output and input of two block definitions are shown. Both blocks will show a single input or output connection point. They can be connected to each other by a single signal line, as illustrated in Figure 25.31.

25 - 41

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.29:

Output Definition of Block 1

Fig. 25.30:

Input Definition of Block 2

Fig. 25.31:

Multi-Signal Connection

Note

The number of variables and their order in the output signal must be equal to the number of signals in the input signal.

Block Diagram Input and Output Definitions


The composite block diagram normally has input, output and limiting signals of its own. Input signal points are defined by starting a new signal line on the left, top or bottom side of the frame enclosing block diagram. This will create a new input signal for the composite block definition. New output signals are defined by ending a signal line by clicking on the right side of the enclosing rectangle frame. Signals, which are thus connected to the rectangular frame, have the following meanings: connected to the left side: Input connected to the right side: Output connected to the bottom side: Minimum Limitation connected to the top side: Maximum Limitation

Note

The names of the input and output signals must be the same as the names of the input and output signals defined in the slot or block to which it is intended to assign the definition.

Resize
If a marked symbol has small black squares at its corners, it can be resized by left clicking one of the squares, as can be seen in Figure 25.32. The cursor will change to a double
25 - 42

DIgSILENT PowerFactory

Stability and EMT Simulations

diagonal arrow, and moving it (while holding down the left mouse button) resizes the object. Release the mouse when the new size is correct.

Fig. 25.32:

Resizing an Object

It is also possible to make the object(s) have a new size by clicking on one side of the marking box. The marked object(s) will only resize in one direction in that case. This is not possible for all objects. Some objects may only be resized with a fixed X/Y- ratio; some other objects cannot be resized at all.

Additional Equations
After the internal structure of the block diagram has been defined graphically, the block diagram itself can be edited. This can be done without having to close the graphical representation of the block diagram. By left or double-clicking the enclosing rectangular frame, the block diagram edit dialogue will pop up. This dialogue will show all input, output and internal signals, as have been defined graphically. On the second page of the dialogue, which can be accessed by pressing the button, information and equations for the initialisation of the block can/has to be entered. Additionally, the name and the unit of the parameters to be defined in the common model can be specified (see also Section 25.8: User Defined (DSL) Models). Additional DSL equations can be defined on the second page of the block diagram edit dialogue.

25.8

User Defined (DSL) Models

System modeling for stability analysis purposes is one of the most critical issues in the field of power system analysis. Depending on the accuracy of the implemented models, large signal validity, available system parameters and applied faults or tests, nearly any result could be produced and arguments could be found for its justification. A simple example illustrates this. In a 10 GW power system the expected steady-state frequency deviation when losing a fully loaded 2000 MW unit depends highly on the frequency dependency, K_f, of loads. Assuming a total system droop of 7% and a K_f value of 0, the steady-state frequency deviation will be approximately 700 mHz. Now with a more realistic coefficient of K_f = 5 %/Hz, the steady-state frequency deviation is expected to be 596 mHz only. On the other hand, the frequency dependency might be slightly higher or lower, but the non-linear characteristics of hydro turbine efficiencies and steam valve non-linearities could be more relevant at a certain unit loading point. Consequently, as long as only one or two different loading scenarios are
25 - 43

DIgSILENT PowerFactory

Stability and EMT Simulations

considered, average values with reasonable simple models may give acceptable results by tuning only some key parameters like the frequency dependency of loads or droop settings. Thus system model structures and parameter settings are to be best evaluated against the following main criteria: System size Large and small systems have different "key parameters''. Referring to the above example, for a smaller power system the frequency dependency of loads is irrelevant, while in large systems such as UCTE or UPS/IPS, frequency dependency may cover the spinning reserve requirements totally. Steady-state and transient behavior of large units is more decisive for the overall system response than smaller units which might have a very negligible effect on the total system.

Unit size

System structure Independent of system and unit size, the system structure may be more relevant than any other factor. This can be easily demonstrated when weak systems with a longitudinal geographical extension or appropriate substructures are analyzed. System fault Most relevant to system modeling considerations are the applied faults and related problems which are to be analyzed. The analysis of system damping and PSS tuning will not necessarily require the boiler dynamics to be considered. On the other hand, load shedding optimization and frequency restoration would not give appropriate results if mid- and long-term characteristics of relevant system elements are neglected.

Study purpose In general, for systems which are in the planning stage, typical models and parameters could be applied as long as there is no specific additional information available. However, a more detailed representation is necessary for system extensions, where a detailed model representation should form part of the performance specification. Special attention has to be paid to the analysis of operational problems and operation optimization. For these cases, detailed modeling of the relevant components is critically important. As soon as a detailed analysis and representation of system models is required, the subsequent questions to be asked are: How can the structures and parameters of the model be determined? Are IEEE models and additional manufacturers block diagrams adequate and accurate? How could the available information be used within the power system analysis software? The approach which is presented here and successfully applied in various projects can be called the "Advanced System Modeling Approach (ASMA)''. Typical applications are: The analysis of controller problems and relevant malfunctions, especially under disturbance conditions; Optimization of control parameter settings;

25 - 44

DIgSILENT PowerFactory

Stability and EMT Simulations

Modeling of unconventional system structures and control concepts often found in industrial systems; Study applications for the design and specification phase of components and systems (e.g. power system stabilizer, generator and HVDC controllers). For the ASMA approach, the following steps are critically important: Setup of system models Based on the fundamental equations of engineering and physics, the basic algebraic and differential equations are to be set up according to the required degree of accuracy. In addition, all parameters such as time constants and gains which could be also derived from these basics, are to be calculated with the same degree of accuracy. Performance of system tests In order to define all other parameters and, in particular, non-linear characteristics, system performance tests are the best method. In the majority of cases, frequency response tests will not permit the determination of any non-linear structure and its parameters. Special test procedures, which do not interfere with normal operation, have to be applied to focus on the steady-state characteristics, gains and time constants. These measurements are preferably executed with a highly accurate digital transient performance measurement system. System Identification Non-linear, multi-input and multi-output system identification techniques are applied for system identification procedures. Typically, the mismatch between measured and identified data should be smaller than 2%. Comparison of measurements and simulations Besides the analysis of subsystems and components, overall system performance is to be compared with the theoretical model for all relevant operating modes. Of course, very strict application of the ASMA approach is not necessary for modeling relays and less complex or digital control functions, as these are clearly defined by their appropriate general and acceptance test documentation. However, independently of the analyzed system, where the system representation cannot be matched to a classical IEEE or any other standard model, there is a substantial need for an easy to use and flexible method for the realization of individual models.

25.8.1

Modeling and Simulation Tools

As already indicated, the most critical and decisive factor for reliable simulation results is the accuracy and completeness of system model representation for identification and simulation purposes. Methods for solving this task range from the classical and traditional way of using software which allows interfacing of user-defined models at the FORTRAN/ C level - typically via connection lists - to the block-oriented approach which is based on the provision of predefined low-level block macros being connected at the case definition level. In addition, most modern commercially available general purpose simulation tools may be used for flexible and specific system representation. Unfortunately, this approach does not adequately cover the special electrical system load flow characteristics.
25 - 45

DIgSILENT PowerFactory

Stability and EMT Simulations

In order to provide a very flexible modeling and simulation tool, which forms part of a stability program, a control system based simulation language was developed. The following describes the main features of the DIgSILENT Simulation Language (DSL): The simulation tool falls into the category of a Continuous System Simulation Languages (CSSL); DSL includes a complete mathematical description of (time-) continuous linear and non-linear systems; The simulation tool is based upon common control and logic diagrams, leading to a non-procedural language, as the sequence of elements can be chosen arbitrarily. In other words, a DSL model can be converted into a graphical representation; Provision of flexible definition of macros, which could be: algebraic equations, basic control elements like PID, PTn or even complete physical subsystems like valve groups or excitation systems; Provision of various intrinsic functions such as: "select'', "lim'', "limits'', "lapprox'', "picdrop'' in order to provide a complete control of models; Provision of various formal procedures for error detection and testing purposes such as: algebraic loop detection, reporting of unused and undefined variables and missing initial conditions.

25.8.2

DSL Implementation: an Introduction

The "DIgSILENT Simulation Language" is used to define new dynamic controllers which receive input signals from the simulated power system and which react by changing some other signals. DSL itself can be looked upon as an add-on to the transient analysis functionality of PowerFactory. During the simulation, the model equations of the DSL models are combined with those describing the dynamic behavior of the power system components. These equations are then evaluated together, leading to an integrated transient simulation of the combination of the power system and its controllers. The DSL main interfacing functions are: Signal input and output channels: Any variable defined within the kernel (currently more than 2500) and in a DSL model, can be accessed in a read-and-write mode. Main and sub-address features are implemented allowing the access of any signal existing in the system or to build up complex structures such as hardware-based modules taking equipment "rack'' and "function card'' structures into account. Events: Conditions evaluated by DSL models may cause events to be sent to the program kernel where they will be scheduled within the event queue.

Output and Monitoring: Conditions may trigger user-defined messages to be displayed in the output window.

25 - 46

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.33:

Structure of the PowerFactory DSL System

The structure of a DSL model is best explained by an example. This example considers a prime mover unit model of a simple hydro turbine. This DSL model has been defined graphically, and contains one embedded DSL macro. This embedded macro models a single integrator and is defined by programming it. The basic method for designing new DSL models is as follows: 1 A set of basic DSL models is created. These models implement simple, 'primitive' controllers like a 'first order time lag' or a 'PID' controller. The PowerFactory program is shipped with a large number of these primitive controller models. New primitives are created by programming their differential equations and signal settings, using the DSL language. The more complex controller is created graphically by drawing its block diagram. This kind of block diagram normally uses references other DSL models which are thus combined into a more complex controller. Controller references may be used to include DSL primitive models into the complex model, but may also refer to other graphically defined complex models. Highly complex controllers may thus be designed in a hierarchical way, by designing sub-models and sub-sub-models, where the DSL primitives form the lowest level. Section 25.8.3 (Defining DSL Models) describes these procedures in detail.

25 - 47

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.34:

Diagram of a Simple Model of a Hydro Turbine

Figure 25.34 depicts the model definition that was used to define the hydro turbine model. The resulting DSL code, as shown in the output window when a graphical Rebuild ( is performed is:
1. 2. 3. 4. 5. 6. 7. 8. model Pt = 'pmu_hydro'(At,C;x1;Ti;) pt_x = 'I.BlkDef'(xe;x1;Ti;) i3 = i1/i2 i1 = At*At i2 = pt_x*pt_x i4 = xe*pt_x xe = i3-C Pt = pt_x-i4

The line numbers have been added for readability. The corresponding block definition shows:
Output Signals Input Signals State Variables Parameter Internal Variables : : : : : Pt At, C x1 Ti

The example describes a simple hydro turbine model with the input signals A_t and C and the output signal P_t.

Fig. 25.35:

Graphical Representation of a DSL Model of an Integrator

Figure 25.35 depicts the graphical representation of the embedded primitive DSL model. This primitive model is included in the hydro turbine (in line 2 of the definition of the hydro). The DSL primitive implements a single integrator and is programmed as follows:
1. 2. 3. 4. 5. 25 - 48 model y = 'I'(xe;x1;Ti;) [Ti] = 's' limits(Ti) = (0,) inc(x1) = y inc(xe) = 0

DIgSILENT PowerFactory

Stability and EMT Simulations

6. 7.

x1. = xe/Ti y = x1

Line 1 is generated by clicking on the Equations button in the block diagram dialogue. Lines 2..7 were entered manually. The block definition dialogue was used to set the following:
Output Signals Input Signals State Variables Parameter Internal Variables : : : : y xe x1 Ti

Parts of a DSL Model


Both example DSL models show the two basic parts of any DSL model, primitive or complex: 1 2 The interface definitions The DSL model description

Interface description The interface defines the model name, names of input and output signals, model parameters and state variables. These are shown in the output window in the model heading. Example (line 1 from the hydro turbine model):
1. model Pt = 'pmu_hydro'(At,C;x1;Ti;)

The block diagram dialogue further allows for the definition of limiting parameters and input signals, and the classification of the model as a linear model and/or as a DSL macro. Model description The model description describes the DSL model, based on the signals defined in the interface. The DSL description includes: Parameter descriptions: name and unit Allowed parameter ranges Initial conditions and functions which are used to calculate initial values. The algebraic relations which define the controller. Example (the integrator):
2. 3. 4. 5. 6. 7. [Ti] = 's' ! the unit of Ti is seconds limits(Ti) = (0,) ! Ti > 0 inc(x1) = y ! initially x1=y inc(xe) = 0 ! initially xe=0 x1. = xe/Ti ! equation 1: deltax1 / deltat = xe/Ti y = x1 ! equation 2: y=x1

25 - 49

DIgSILENT PowerFactory

Stability and EMT Simulations

Advanced Features
The numerical integration of DSL models, interrupt scheduling and input-output signal processing is handled automatically by the program kernel. In addition, if the output of a DSL model is an electric current being added to the appropriate total bus current - which is the case if a load or generator model is created - all Jacobian elements necessary for the iterative simulation procedure will be calculated automatically. Another useful feature of DSL is the algorithm implemented for numerical setup of the system matrix for eigenvalue calculation purposes. Consequently, any model implemented at the DSL level will be automatically taken into consideration when calculating the system eigenvalues or when applying the modal network reduction approach (MRT). Of course, any signal limiting functions will be disabled automatically for this calculation procedure. In addition, inputs and outputs of model parameters, its organization via windows menus etc. is also derived automatically from the DSL model.

25.8.3

Defining DSL Models

A new DSL model is created either by entering the DSL code in the equation part of a "Block Definition'' (BlkDef ) object, or by creating a new Graphical Block Diagram (see also section Composite Block Definitions on how to create a new block definition). Both methods will result in a Block Definition Object which holds the definition of the DSL model. The block definition objects thus serve two purposes in the process of constructing a DSL model: They hold the definitions and parts of a graphically constructed composite block definition, and the diagram graphic which was used to define the model; They provide the surrounding in which a new "DSL primitive '' or 'primitive block definition' can be defined.

Composite Block Definitions


To create a new composite block definition: Use the main menu entry File > New or Strg-N and then select the option Block/ Frame Diagram from the "New" command dialogue (ComNew). icon on the toolbar (of the graphics window) and Use the Insert New Graphic select the option Block/Frame Diagram. To access the dialogue of the block definition (BlkDef ), double-click on the frame box surrounding the diagram. Complex block definition objects are conceptually similar to "Grid Folders'' in the PowerFactory database tree. They are defined by graphically defining a controller block diagram of which they will store the graphical information and all logic parts. These parts include signals, small standard components (adders, multipliers, etc.) or DSL primitives.

Although a complex block definition object is created graphically, it allows for additional DSL equations to define those aspects of the controller that would be otherwise difficult to enter in a graphical way. The graphical environment in which a complex block diagram is constructed, is not treated
25 - 50

DIgSILENT PowerFactory

Stability and EMT Simulations

here. Please refer to Chapter 10 (The Graphics Editor) for more information.

Primitive Block Definitions


To create a primitive DSL block definition: Right-click on or inside a (library) folder in the active project in the data manager and select New... > Block/Frame - Diagram from the context-sensitive menu; Use the "New Object" (BlkDef); icon in the database manager and select Block Definition

Double-click an new/empty block reference in an open block diagram and then use the button to select a block definition. Following this, use the new block definition inside the local library. icon to create a

DSL primitives are the building blocks from which the more complex controller diagrams are composed. A DSL primitive, for example, might implement a low pass filter, which may then be used to graphically construct more complex controllers which include this kind of filter. Unlike transformers or other power system components, which may be looked upon as 'power system primitives', a DSL primitive is only referred to by a complex block diagram and may thus be used in more than one complex DSL model at the same time.

Block Definition Dialogue


When creating a primitive DSL model or by double-clicking on the frame of a composite block definition, a dialogue will appear, where input and output variables, parameters, state variables and limiting signals can be defined. Furthermore, additional equations, initial conditions of variables as well as names and units of parameters can be inserted. Figure 25.36 shows an example dialogue of a PI controller including limiting parameters and a 'switch' signal.

25 - 51

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.36:

Dialogue of the Block Definition

The Name and Title will appear in the library folder, where the model is stored. The Level of the model representation is only important when using or changing old models. For new created models "Level 3'' should always be used. For macros, this option does not have any impact, because the level of the highest block is important, i.e. the controller definition. "Automatic Calculation of Initial Conditions'': PowerFactory can calculate the initial conditions automatically. However, if no sequence is found (because of, for example, deadlock situations) there will be an error message. "Classification'': Linear This option will only effect the graphical representation of the block in the diagram. If this option is enabled, the block will be represented as a linear block, otherwise as a non-linear block with two lines. Macro This option is used to identify the block definition as a macro inside the library. Matlab Enabling the 'Matlab' tag will show an input dialogue, where a Matlab (*.m) file can be defined with which the block definition can

25 - 52

DIgSILENT PowerFactory

Stability and EMT Simulations

communicate during a simulation. For more information about the Matlab interface see Section 25.10 (Matlab Integration). A constant Limiting Parameter may be defined, which are defined in the common model dialogue, as well as limiting signals, which are similar to input signals. The difference is the graphical representation in the block diagram. Input and output signals have to be defined for internal use inside the block definition. The number and their name will then appear in the graphical diagram when the block is used. State variables are needed when not only linear, but also differential, equations are used. Then for every first-order derivative one state variable must be specified. The Parameters will appear in the common model dialogue and can then be specified. The parameter defined in the block definition will automatically be inserted in the block reference. The names of the parameters can be different in the block reference and in the block definition. Only the order must be identical. Internal variables are only used inside the block definition but can not be set from outside. There are several buttons on the right side of the dialogue: Contents This button will display the (possible) contents of the block definition. This can be the graphically inserted objects, further block references or the packed macros. This may additionally include, for example, internally-defined events. The "Equations" button will print the DSL equations to the output window, regardless of whether they are defined graphically or on the "Additional Equations" page, as well as variable definitions.

Equations

Macro Equat. This button prints the current block definition DSL equations (including the equations in the used macros) to the output window. Check "Check" will verify the model equations and output error messages if errors have occurred. Otherwise the following message will occur:

DIgSI/info - Check '\TestUser.IntUser\Windparks.IntPrj\Library \Block Definitions\DFIG\Voltage Control.BlkDef': DIgSI/info - Block is ok.

Check Inc. Pack

The initial conditions of the block definition will be printed and checked. Pack will copy all used DSL models (macros) of a composite model definition to the folder "Used Macros" inside the block definition. In this way there will now be references to other projects or libraries outside the model. Beware: any further changes in the macro library have no influence; the macros are copied and no longer linked to the library. So if there is an error in a certain macro it has to be fixed separately in each packed block. This command will reduce the entire model including DSL blocks and additional equations and macros into one DSL model containing only equations. All graphical information will be lost. It should be noted that this command is irreversible. The "Encrypt" button is available when Pack-> Macro is activated before. This command encrypts all equations inside the model, so that the equations can not be seen or output anymore. In this way a model
25 - 53

Pack-> Macro

Encrypt

DIgSILENT PowerFactory

Stability and EMT Simulations

containing sensitive or restricted device equations can be delivered without showing the internal equations. It should be noted that this command is irreversible and a decrypt function is not available. By clicking on the button the second page of the dialogue can be accessed. Here the (additional) equations of the DSL model can be defined. Also further information e.g. the initial conditions of state variables and the name and unit of parameters can be specified. Figure 25.37 shows the additional equations of the DSL model of the PI controller.

Fig. 25.37:

Dialogue of the block definition - Page 2

The next section describes the handling and usage of the DSL language.

25.9

The DIgSILENT Simulation Language (DSL)

The DSL language is used to program models for the electrical controllers and other components used in electrical power systems. As for any other simulation or programming language, a special syntax is provided for the model formulation.

25.9.1
expr

Terms and Abbreviations


arithmetic expression, not to be terminated with a ';'

The following terms and abbreviations are used to describe the DSL syntax: - arithmetic operators: +, -, *, / - constants: all numbers are treated as real numbers - standard functions: sin(x), cos(x), tan(x), asin(x), acos(x), atan(x), sinh(x), cosh(x), tanh(x), exp(x), ln(x), log(x) (basis 10), sqrt(x) (square root), sqr(x) (power of 2), pow(x,y), abs(x), min(x,y), max(x,y), modulo(x,y), trunc(x), frac(x), round(x), ceil(x), floor(x). These standard functions are described in detail in the last chapter. - Parenthesis: (arithmetic expression) All trigonometric functions are based on radians (RAD). Example:
A = x1+2.45*T1/sin(3.14*y)

boolexpr

logical expression, not to be terminated with a ';'

- Logical relations: <, >, <> (inequality), >=, <=, =. - Unary operators: .not. - Binary operators: .and. .or. .nand. .nor. .eor.
25 - 54

DIgSILENT PowerFactory

Stability and EMT Simulations

- Parentheses: {logical expression} Example:


A = {x1>0.and..not.x2 <= 0.7}.or.T1=0.0

string

anything within '...' (single quotation marks).

Example: A = 'this is a string'

25.9.2

General DSL Syntax


The maximal line length is 80 characters. Longer lines have to be broken by using the '&' sign in the first column of the continuing line. A '&' sign in the first column joins the current row and its preceding row.

Line length:

Example:
y = lapprox(x, 1.674, 7.367, 2.485, 12.479, 5.457, 18.578 & 6.783, 15.54, 8.453, 12.589, 9,569, 6.478)

Line breaking cannot be used within names or strings. Case sensitivity All keywords, names, functions, variables, models, macros, etc. are case sensitive. Blanks Comments Example:
! comments may start at the beginning of a line x1. = select(at<>0, ! comments may be used in broken lines & (1-sqr(x1)/sqr(at))/Tw, 0)

All blanks are removed when the DSL code is processed. Exception: blanks in strings are kept. The '!' sign causes the remaining line to be interpreted as a comment. Comments are removed when the DSL code is processed.

25.9.3

DSL Variables

A DSL model may use five different types of variables: Output signals Output signal variables are available as input signals to more complex DSL models. Input variables may originate from other DSL models or from power system elements. In the latter case, currents and voltages, as well as any other signal available in the analyzed power system, become available to the DSL model. State variables are time-dependent signals generated and used within the DSL model itself. Parameters are 'read only' numbers which are set to alter the behavior of the DSL model.

Input signals

State variables

Parameters

25 - 55

DIgSILENT PowerFactory

Stability and EMT Simulations

Internal variables Internal variables are defined and used in the DSL model to ease the construction of a set of DSL equations. The following rules may be helpful when interpreting warning and error messages: A state variable may not be simultaneously used as a state variable and an output variable; if required, the use of an assignment like y=x1 is recommended. All parameters are real numbers. A special parameter 'array_iiii' (with up to 4 digits i), with 2*iiii elements is provided to define characteristics (see procedure "lapprox''). Only the derivatives of state variables can be assigned an expression.

25.9.4

DSL Structure

DSL models are constructed of three parts: The interface part, which states the model name, title, classification and variable set. This part is set in the first page of the block diagram dialogue; Definition code; Equation code. The definition and equation code form the actual controller network definition and are treated in the next sections.

25.9.5

Definition Code

Definition code in the equation part of a DSL model is used to define parameter
properties and initial conditions.

Unit and Parameter Description


vardef(varnm) = unitstring;namestring Unit and name for variable varnm. Examples:
vardef(Ton) = 's';'Pick up time for restart' ! defines unit and name vardef(Ton) = ;'Pick up time for restart' ! only defines name vardef(Ton) = 's'; ! only defines unit

[varnm] = unitstring Unit for variable varnm, maximum 10 characters wide. Remark: A macro call causes error messages if the units of the substituted variables do not match the defined units. Example:
[Ton] = 's' ! defines unit

25 - 56

DIgSILENT PowerFactory

Stability and EMT Simulations

Valid Value Ranges


limits(varnm) = [/( minimum value, maximum value ]/) Defines the valid interval for variable varnm. Violations of the interval limits during simulation will be reported:
limits(yt)=(,1] is equivalent to output(yt>1,'Maximum exceeded: yt=yt>1')

The '(' and ')' braces exclude the minimum or maximum value from the interval; the '[' and ']' braces include them. Examples:
limits(x)=[min,max] ! min <= x <= max limits(x)=(min,max] ! min < x <= max limits(x)=(,max] ! x <= max limits(x)=(min,) ! min < x

If required and if possible, the program automatically determines the smallest interval under several intervals of the same variable. Example:
limits(x)=(1,3) and limits(x)=(2,4] results in 2<x<3.

Macro models often define limits for certain variables. The model which uses the macro might also define limits for the variables which are used in the macro calls. The 'smallest interval' method gives the calling model thus the freedom to redefine parameter limits without violating the internal macro limit definitions.

25.9.6

Initial Conditions

Direct Setting of Initial Conditions


inc(varnm) = expr Definition of the initial condition of variable varnm. If inc(varnm) is not defined, the normal assignment expression will be evaluated (only possible if varnm is of the intern or input type). If inc(varnm) is defined, it will be evaluated when the model is reset. inc0(varnm) = expr Definition of the initial condition of variable varnm, for unconnected output or input variables. This variant of the inc() statement is used only when the variable varnm could not be initialized through the initial condition of the connected input or output signal. The inc0() statement is thus used to make open input or output terminals possible. incfix(varnm) = expr This variant of the inc() statement is valid only in connection with automatic initialization and is used to determine the initial values in ambivalent situations. With the incfix, one or more variables can be directly initialized so that other variables can be initialized automatically. Example: An AVR model has two inputs, [upss , usetp ], and one output, [uerrs ]. Both inputs cannot both be initialized automatically by the single output value, which is determined by the connected machine. Therefore one of the inputs must be initialized as fixed, e.g. by incfix(upss)=0. The initial value of usetp is now automatically determined, using
25 - 57

DIgSILENT PowerFactory

Stability and EMT Simulations

upss=0.

Iterative Setting of Initial Conditions


Three functions are available for determining initial values iteratively: looping, intervalinc, newtoninc. These functions are used to find the initial value for one set of parameters if the initial values of another set of parameters, which are functions of the first set of parameters, are known. The iterative functions are used to find the (approximated) values for the unknown parameters for which the known parameter take their initial value. loopinc (varnm, min, max, step, eps) Performs a simple linear search for a single value for which the parameter varnm is closest to its known initial value.

varnm = target variable, whose initial value is known min = lower limit max = upper limit step = stepsize eps = maximum error
Example:
inc(a) = loopinc(b, -5, 5, 0.01, 0.001)

The initial value of variable a is searched for by evaluating parameter b, beginning at a=-5, ending at a=5, with an increment of 0.01. Return value: the value of a for which the deviation of b from its known initial value, takes the smallest value. A warning is given if the smallest deviation is greater than eps. Restriction: Can only be used on the right side of an inc() statement intervalinc(varnm, min, max, iter, eps) Performs an 'interval-division search' for a single value for which the parameter varnm is closest to its known initial value. varnm = target variable, whose initial value is known min = lower limit, max = upper limit iter = maximum number of iterations s = maximum error Example
inc(a) = intervalinc(b, -5, 5, 40, 0.001)

Explanation: The initial value of the variable a is searched for, within the interval [-5,5] by successively dividing the interval as long as the deviation of the variable b from its initial value is less than eps. The iteration stops if the maximum number of iterations is reached, and a warning is given if the smallest deviation is greater than eps. Restriction: May only be used on the right side of an inc() statement newtoninc(initexpr, start, iter, eps) Performs a Newton iterative search for one or more parameters by minimising the errors in a set of coupled equations.
25 - 58

DIgSILENT PowerFactory

Stability and EMT Simulations

initexpr = the expression which must equal the parameters whose initial value is sought start = the starting value for the parameter whose initial value is sought iter = the maximum allowed number of iterations eps = the maximum allowed absolute error between initexpr and the parameter whose initial value is sought.
Example:
qt0 = 0.5 eps = 0.000001 maxiter = 100 inc(hedr) inc(qt1) inc(qt2) inc(qt3) inc(qt4) = = = = = newtoninc(hw-sqr(qedr)*(Rds+Rdr), hw, maxiter, eps) newtoninc(Pt1/(4*dh*eta1), qt0, maxiter, eps) newtoninc(Pt2/(4*dh*eta2), qt0, maxiter, eps) newtoninc(Pt3/(4*dh*eta3), qt0, maxiter, eps) newtoninc(Pt4/(4*dh*eta4), qt0, maxiter, eps)

This example shows a part of the initial value definitions for a model where the initial values of 5 parameters (hedr ,qt1 ,..,qt4) are sought simultaneously by setting up a system of coupled equations and solving that system by the Newton method so that, eventually:

hedr hw qedr ( Rds + Rdr ) qt1 Pt1 ( 4 dh eta1 ) qt2 Pt2 ( 4 dh eta2 ) qt3 Pt3 ( 4 dh eta3 ) qt4 Pt4 ( 4 dh eta4 )
The following guidelines should be considered: Add the initial conditions to the complex block, as opposed to each primitive (like a first-order time lag). The general initialisation 'direction' is from right to left, i.e. the outputs are normally known and the inputs (or setpoints) have to be determined. If initial conditions are not defined for a certain variable, the simulation equations are used instead. It should be therefore enough to specify the initial conditions of the state variables and input variables. The option Automatic Calculation of Initial Conditions requires configuring, but does not require correct initial conditions for each state/input variable. The initial values are only used to initialize the iteration process. The incfix-function can be used to determine the initial values in ambiguous situations. Use the option Verify Initial Conditions to check if the initial conditions lead to the correct result.

25 - 59

DIgSILENT PowerFactory

Stability and EMT Simulations

25.9.7

Equation Code

Within the equation code, all equations necessary to build up the simulation models are included. The set of equations defines a set of coupled differential equations which describe the transfer functions between the input and output signals. These transfer functions may range from simple linear, single-input single-output functions, to highly complex non-linear, non-continuous, multi-input, multi-output functions. DSL is used to describe the direct relationships between signals and other variables. Expressions may be assigned to a variable, or to the first derivative of a state variable. Higher order differential equations have to be thus split up into a set of single order equations by the introduction of additional state variables.

25.9.8

Equation Statement

The equation statements are used to assign expressions to parameters, thus relating all parameters in a set of differential equations. Syntax: varnm = expr Assigns expression 'expr' to variable 'varnm'. Examples:
y = sin(a)+3*x1 y = .not. x1>2 .or. a<=3

varnm. = expr Assigns expression expr to the first order derivative of the variable varnm. Examples:
x1. = (xe-x1)/T1 x2. = x1

Remarks DSL assignments may occur in any sequence. The sequence does not influence the evaluation of the assignments. All variables are of type floating point, even if assigned to a boolean expression, in which case the value will be 0.0000 or 1.0000. When a variable z is used in a logical expression (i.e. y=.not.z), the logical 1 of z is tested by evaluating (z>0.5): y1 = .not.z is interpreted and equal to y1 = (z=<0.5) There is no warning against mixing logical and non-discrete variables in expressions. Consequently the following code will not cause a message to be emitted: depending on y, z will take the value x1 + 4.0, or just x1:
y = .not. x1>2 .or. a<=3 z = 4.0*y + x1

The assignment of a value to a variable takes place in an order which recognizes the connections between these variables. In the case of the following example, the second line will be evaluated first, then line 1:
1. a = b+5 2. b = x1 3. x1. = 1

Algebraic loops are not supported. In the following example, an error message will be displayed:
25 - 60

DIgSILENT PowerFactory

Stability and EMT Simulations

a = b+5 b = 2*a

If there is no assignment to a variable varnm, varnm will keep its initial value. The right side expression may not contain derivatives. Derivatives may only appear on the left side of the equal sign. The first example is correct; the second is false.
x1. = asin(a) a = sin(x1.) ! Correct ! Not accepted

25.9.9

DSL Macros

A DSL macro is a predefined DSL model, complex or primitive, which is meant to be included in higher level DSL models. The block diagram edit dialogue offers a 'Macro' classification option which can be set to mark the model as a macro. A DSL macro is included in a higher level DSL model either by creating a block reference in the block diagram graphics or by its explicit inclusion in a DSL equation. Syntax: varnm1, varnm2,... = macroname (i1,i2,... ; s1,s2,... ; p1,p2,... ; i1,i2,...) Assigns the output signals of the DSL macro macroname to the variables varnm1, varnm2 , ... Assigns the input signals of DSL macro to the variables i1, i2,... The macro uses the state variables s1, s2,... the parameters p1, p2,... and the internal variables i1, i2,... Example:
P1,P2 = '\User\I.BlkDef'(i1,i2;s1,s2;T1,T2)

This example assigns to P1 and P2 the output of DSL model \ User\ I.BlkDef . Macro calls are not supported within expressions, even if they only have one output variable. Correct example:
y = my_macro(x1, s1, p1, i1) !

Incorrect example:
y = 3 * my_macro(x1, s1, p1, i1) + 4

which should be replaced by:


y1 = my_macro(x1, s1, p1, i1) y = 3 * y1 + 4

DSL Internal Macro Handling


A preparser substitutes each macro call with the equation code of the macro. The variables of the macro DSL model are then replaced by the variables used in the macro call. The local variable names of macros thus disappear after the preparation process.

DSL Models
In general, there are two basic types of DSL models possible: 1 Models of electrical devices such as generators, loads or HVDC systems. These models are characterized by their principal output signal "complex device current'', which is injected to the electrical grid at a certain busbar. However, in addition to the electrical device currents, there may be any other variable defined as an output
25 - 61

DIgSILENT PowerFactory

Stability and EMT Simulations

signal. A summary of the available variables can be seen in the corresponding Technical References of the element. 2 Models with output signals which are not directly injected to the electrical network (general devices). Among these types of models are prime mover units, voltage controllers, relays, calculation procedures, etc.

25.9.10

Events and Messages

The DSL language provides procedures for the generation of an interrupt event and for sending messages to the output window: The procedure fault(boolexpr, event_string) generates an event and is evaluated at the beginning of each time step The procedure output(boolexpr, message_string) outputs a message and is evaluated at the end of each time step. The "fault" and "output" procedures are evaluated at each time step during the simulation of a model. The first time that boolexpr is found to be true, the string will be processed and a message will be sent to the output window, or an event will be added to the PowerFactory event queue. The '"fault" or "output" procedures will be disabled afterwards until the DSL model is reset, to prevent an avalanche of messages or events. Both procedures are explained in detail in the following paragraphs.

output(boolexpr, message_string)
The message_string may contain variables and the special function num(boolexpr) or num(expr): Variable names which appear directly after an '=' sign will be substituted by their actual values; hence, the line of code below may generate the message: maximum exceeded: yt=1.2 > ymax=1.0:
output(yymax,'maximum exceeded: yt=yt > ymax=ymax')

The num(expr) or num(boolexpr) will be substituted with the calculated value of the expression, e.g.:
value=num(a+b) may produce value=3.5000

fault(boolexpr, event_string)
Each DSL model can add events to the event list. A DSL model of a distance relay, for instance, can open the power switch of a line by adding the correct switch event. 'Adding an event' is done by executing an existing event object in the PowerFactory database. Consequently, all events that may be used by the DSL model have to be created together with the DSL model. They must all be stored inside the common model (ElmDsl). These DSL events will thus form an integrated part of the DSL model. The event_string in the fault expression must refer to the name of one of these events. At evaluation, the event will be thrown onto the event stack if boolexpr is true. As soon as the simulation reaches the event, it will execute it. Consequently, a delayed event may be thrown by the DSL model by setting the execution time ahead of the current time. The parameters of the event can be modified in the fault string by assigning a new value. The mechanism is the same as described above in the output procedure.
25 - 62

DIgSILENT PowerFactory

Stability and EMT Simulations

Example:
fault(u>1.1,'name=MySwitchEvent1 dtime=0.15')

If the variable u exceeds 1.1, the event named 'MySwitchEvent1' will be thrown onto the event stack and its variable dtime (relative event time) will be set to 15 milliseconds. The event will thus be delayed for that amount of time, which, in this case, mimics the time needed to open a switch. The actual switch that will open is defined in the event object 'MySwitchEvent1'.

Note

The events are accessed or created by opening the edit dialogue of the common model (double-click on the DSL model in the Data Manager), and then pressing the button Events in the dialogue. A list of events already defined inside this model is displayed. The events are not added to the projects global event list unless the event is 'activated' by the DSL model.

25.9.11

Example of a Complete DSL Model

Thermal Double Reheat Turbine with Steam Storage Controller Model:


model pt,ptmw = 'pmu_1'(at,sgn,cosn,ngnum;x1,x2,x3,x4;Thp, Tip,Tlp,alflp,Tspi) [T1] = 's' limits(T1) = [0,) limits(alfhp) = [0,1] vardef(alfhp) = ;'High pressure turbine ratio'; limits(alflp) = [0,1-alfhp] vardef(alflp) = ;'Low pressure turbine ratio'; vardef(Tspi) = 's';'Boiler capacity time constant'; limits(Tspi) = (0,) vardef(Thp) = 's';'High pressure turbine time constant'; vardef(Tip) = 's';'First reheater time constant'; vardef(Tlp) = 's';'Second reheater time constant'; inc(x1) = y/K inc(xe) = y/K inc(x4) = 1.0 inc(at) = pt inc(steamflow0) = pt inc(ylp) = pt x1. = select(T1>0,(xe-x1)/T1,0) y = K*select(T1>0,x1,xe) ! if T1=0 => y=xe steamflow = at*x4 x4. = (steamflow0 - steamflow)/Tspi ! boiler yhp = PT1(steamflow;x1;Thp) ! high pressure part yip = PT1(yhp;x2;Tip) ! medium pressure part ylp = PT1(yip;x3;Tlp) ! low pressure part pt = yhp*alfhp + ylp*alflp+ yip*(1.0-alfhp-alflp) ptmw = pt*sgn*cosn*ngnum ! only for output purposes

The used macro 'PT1' is defined as:


model y = 'PT1'(xe;x1;K,T1;) x1. = select(T1>0,(xe-x1)/T1,0) y = K*select(T1>0,x1,xe) ! if T1=0 => y=xe inc(x1) = y/K 25 - 63

DIgSILENT PowerFactory

Stability and EMT Simulations

inc(xe) = y/K [T1] = 's' limits(T1) = [0,)

25.10 Matlab Integration


Additionally to designing controllers or various electrical and mechanical models using the DIgSILENT Simulation Language, there is also the possibility to use an interface to Matlab. This interface gives the opportunity to model controller or very complex transfer functions using the Matlab environment and insert them as a block definition into a frame in a PowerFactory transient simulation.

PowerFactory can correspond to the Matlab program during the simulation. It will transfer the input values of a block to Matlab for every time step, which will then simulate
a specified *.m file in its own environment and gives back the results as the outputs of the block definition. Consequently this function needs a installation of the Matlab program including the Simulink package.

The implementation of a Matlab file is shown in the next sections. In this example a voltage controller is implemented first using a built-in model (ElmVco) and using a definition from Matlab. This example can also be found in the FAQ on the DIgSILENT home page.

25.10.1

Implementation of Voltage Controller - Example

In this example the grid consists of two generators, one load and one line, as shown in Figure 25.38.

Fig. 25.38:

Matlab example grid

The simulation event is defined for the load, where the reactive power is increased after 0.5 seconds. The complete example contains three files: 1 Matlab Example.dz is a PowerFactory file.

25 - 64

DIgSILENT PowerFactory

Stability and EMT Simulations

VCOtype16.m is a Matlab M-file. This file is an interface to the Simulink model, and it is used as a middle layer in the communication between PowerFactory and Simulink. vcotype16mod.mdl is a Simulink model and contains Simulink implementation of VCO type 16.

25.10.2

Implementation with Built-In Model

In the base study case, the voltage controller models are represented by the built-in models VCO type 16 (ElmVco__16). The built-in VCO type 16 inside PowerFactory is one excitation control system with simplified exciter. Both composite models use the AVR inside the IEEE-frame from the global library. The generators have different VCO parameters set. In Figure 25.39 the edit dialogue of the ElmVco with the parameters of the AVR can be seen.

Fig. 25.39:

Parameters dialogue of the voltage controller

The model representation of the ElmVco__16 is indicated in Figure 25.40.

Fig. 25.40:

Parameters dialogue of the voltage controller


25 - 65

DIgSILENT PowerFactory

Stability and EMT Simulations

The plots resulting from the simulation (Figure 25.45) show busbar voltages and excitation voltage for both generators. The results are stored in result files located under the Results folder of the relevant study case.

25.10.3

Implementation with Matlab Model

In the second study case "Matlab'' which is a modification of the base case, VCO type 16 is modelled inside the Simulink package, instead of using a built-in model. The Matlab console is started automatically when running the simulation. To implement a Matlab model into a current project in PowerFactory it has to be included into a frame similar to a DSL model definition. This procedure is described in detail in the Section 25.10 (Matlab Integration). First a slot inside the frame has to be created, where the controller model should be inserted. This is done exactly like for implementing built-in models or common models. Then a block definition BlkDef has to be created inside the library. Instead of programming the transfer function using the DSL code, there can now the definition of the Matlab code be imported. This can be done in the dialogue of the block definition. When creating a primitive DSL model in the library by right-clicking a or inside a (library) folder in the active project in the data manager and selecting New... > Block/Frame - Diagram from the context menu. using the "New Object'' Definition (BlkDef). icon in the database manager and selecting Block

double-clicking an new/empty block reference in an open block diagram and then use the button to select a block definition. Then The new block definition inside the local library. Now open the dialogue of the new BlkDef by double-clicking on the frame of a composite block definition by double-clicking the definition in side the library or on its icon Here input and output variables, parameters, state variables and limiting signals have to be defined. Instead of inserting the equations to describe the different function blocks, a Matlab file *.m can be selected, when the option Matlab is activated. The edit dialogue of the block definition including the parameter definition and the selected file can be seen in Figure 25.41 for the mentioned example. icon can be used to create a

25 - 66

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.41:

Composite model using a special frame

The model representation of the ElmVco__16 in the Matlab Simulink package is shown in Figure 25.42.

Fig. 25.42:

Parameters dialogue of the voltage controller

When the block definition is specified, a DSL model has to be created first. As described in Section 25.7.4 (The Common Model), the common model element (ElmDsl, ) is the front-end object for all user-defined block definitions. This means that all user-defined transient models including built-in elements or Matlab models cannot be used other than through a common model. The common model then combines a model or block definition with specific set of parameter values. The edit dialogue of the DSL element now looks different to the builtin ElmVco. From Figure 25.43 can be seen, that this dialogue is similar to the normal DSL models. All time constants and other parameters are the same as for the built-in VCO models.

25 - 67

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.43:

Parameters dialogue for the Matlab voltage controller

Figure 25.44 shows the composite model using the special frame with the generator 'G1' and the Matlab-AVR inserted into the slots.

Fig. 25.44:

Composite Model using a special frame

These results from the simulation of the reactive power step using the built-in VCO model (dotted curves) and using the Matlab representation (solid curves) can be seen in Figure 25.45.

25 - 68

DIgSILENT PowerFactory

Stability and EMT Simulations

Fig. 25.45:

Results of the transient simulation with the Built-In model

25.10.4

The Matlab File

The Matlab file VCOtype16.m is an interface configuration for the Simulink model, stored in the file vcotype16mod.mdl, and the PowerFactory DSL model. There the input and output signals, the parameters and the state variables are defined, as described below. The transfer function is specified. The contents of this file is listed here:
function [t, x, y] = VCOtype16 global U Tvm Usetp Upss Vska Tisp Ur1mx Ur1mn Vsex Efdmx Efdmn ve1 x1 x2 options = simget('VCOtype16mod'); options = simset('InitialState', [x1,x2]); [t, x, y] = sim('VCOtype16mod', [], options);

PowerFactory inserts the following variables into the Matlab workspace:


U, Tvm, Usetp, Upss, Vska, Tisp, Ur1mx, Ur1mn, Vsex, Efdmx, Efdmn, ve1, x1, x2

Those variables are necessary to successfully run the Simulink model. There are three input signals (U, Estop, Upss), one output signal Uerrs and two state variables x1 and x2. In each step of the PowerFactory simulation the Simulink model is completely evaluated. State variables ('InitialState') are assigned to Simulink model in each step of the simulation. For PowerFactory it is a simple function call:
[t, x, y] = VCOtype16.

PowerFactory uses only one Simulink model for both generators. To avoid limitation of
25 - 69

DIgSILENT PowerFactory

Stability and EMT Simulations

Factory must send all parameters in the each step of the simulation.

Simulink, which allows only one instance of the model running at the same time, Power-

To find appropriate equations for the initial conditions you need to understand the construction of the transfer function blocks in Simulink. To obtain this understanding you can replace the variables with actual numbers in the Matlab Simulink model, set the initial conditions, run it for a few seconds and monitor the outputs of all transfer functions to see whether the model initialized correctly. The Matlab Simulink model (.mdl) and the interface file (.m) file may not have the same name. The order of the state variables in the interface file's statement "options = simset('InitialState', [x1, x2, .])" is important; the order of the elements in the vector [x1, x2, ] must be the same as in the state variable vector constructed internally by Matlab. To determine the order of the Matlab state variable vector the user may use the command "[sizes,x0,xstring]= ModelName" in the Matlab workspace, where ModelName is the name of the Simulink model (without the .mdl extension and without inverted commas). The output of the string variable xstring contains the names of the dynamic blocks in the Simulink model in the desired order. In the case of the above example the first state variable is in the measurement block and the second state variable is in the integrator:
xstring = ...'VCOtype16_model/Measure/State Space' ...'VCOtype16_model/Integrator'

The names of the variables in the 'Initial conditions' fields in the masks of the Simulink model dynamic blocks is irrelevant. The initial conditions are set within PowerFactory. Also, for the purpose of PowerFactorys model checking mechanisms, the state derivatives equal to zero The Simulink solver parameters are set to integrate over one small time step, e.g. start time = 0, end time = 0.01, and step size = 0.01. The y-matrix returned by MATLAB contains the output variables. If more than one output variable is defined in the DSL model, then those are sorted alphabetically before assigning the outputs from MATLAB. For example, if there are two outputs "uerrs" and "output", then the value from the first column of the y-matrix is assigned to "output" and the value from the second column is assigned to "uerrs".

25.10.5

Additional notes

"Matlab.Application" and "Matlab.Application.Single". PowerFactory will start that same MATLAB installation which was used last. Additional information on the calling of MATLAB is available on http://www.mathworks.com.

DIgSILENT PowerFacory calls MATLAB using the programme identification keys

25 - 70

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

Chapter 26 Modal Analysis / Eigenvalue Calculation

The modal analysis calculates the eigenvalues and eigenvectors of a dynamic multi-machine system including all controllers and power plant models. This calculation can be performed not only at the beginning of a transient simulation but also at every time step when the simulation is stopped. The eigenvalue analysis allows for the computation of modal sensitivities with respect to generator or power plant controllers, reactive compensation or any other equipment. The calculation of eigenvalues and eigenvectors is the most powerful tool for oscillatory stability studies. For its application it is highly recommended to first compute the bare natural system oscillation modes. These are the oscillation modes of the system without taking any controller or power plant model into consideration, i.e. with constant turbine power, constant excitation voltage etc. Starting from these bare natural modes the effects of controllers (structure, gain, time constants etc.) and other additional models can be calculated as the second step.

26.1

Theory of Modal Analysis

After the initial conditions have been calculated successfully, which means that all timederivatives of the state variables should be zero, or the simulation has been stopped at a point in time, the modal analysis calculates the complete system A-matrix by means of numerical, iterative algorithms. The representation of the electrodynamic network model is equivalent to the representation used for the balanced RMS simulation, except for the general load model, for which the frequency dependencies are neglected. The computation time for the models analysis is approximately proportional to the number of state space variables to the power of three. A multi-generator system exhibits oscillatory stability, if all conjugate complex eigenvalues, making up the rotor oscillations have negative real parts. This means they will lie in the left complex half-plane. The individual generator oscillations will then be stable. Assuming that one of the conjugate complex pair of eigenvalues is given by:

i = i j i
then the oscillatory mode will be stable, if the real part of the eigenvalue is negative

i < 0
The period and damping of this mode are given by

Ti = 2 ---------i
26 - 1

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

An 1 - ln -------------- d i = i = ----A Tp n + 1
where An and An+1 are amplitudes of two consecutive swing maxima or minima respectively. The oscillatory periods of local generator oscillations are typically in the range of 0.5 to 5 Hz. Higher frequency of the natural oscillations, i.e. those which are normally not regulated out, are often damped to a greater extent than slower oscillations. The oscillatory period of the oscillations of areas (inter-area oscillations) is normally a factor of 5 to 20 times greater than that of the local generator oscillations. The absolute contribution of an individual generator to the oscillation mode which has been excited as a result of a disturbance can be calculated by: n i t (t ) = ci i e i=1 where

(t ) i i ci
n

generator speed vector i'th eigenvalue i'th right eigenvector magnitude of excitation of the i'th mode of the system (at t=0) (depending on the disturbance) number of conjugate complex eigenvalues (i.e. number of generators - 1)

In the following c is set to the unit vector, i.e. c = [1, ..., 1], which corresponds to a theoretical disturbance which would equally excite all generators with all natural resonance frequencies simultaneously. The elements of the eigenvectors i then represents the mode shape of the eigenvalue i and shows the relative activity of a state variable, when a particular mode is excited. They show e.g. the speed amplitudes of the generators when an eigenfrequency is excited, whereby those generators with opposite signs in i oscillate in opposite phase. The right eigenvectors i can thus be termed the "observability vectors''. The left eigenvectors i measures the activity of a state variable x in the i-th mode, thus the left eigenvectors can be termed the "relative contribution vectors''. Normalization is performed by assigning the generator with the greatest amplitude contribution the relative contribution factor 1 or -1 respectively. For a n-machine power system, n-1 generator oscillation modes will exist and n-1 conjugate complex pairs of eigenvalues i will be found. The mechanical speed of the n generators will then be described by:

26 - 2

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

1 2 ... n = c1

11 12 ... 1n e
1 t

21 + c2 22 ... 2n e
2 t

n1 + ... + c 2 n2 ... nn e
n t

The problem of using the right or left eigenvectors for analyzing the participation of a generator in a particular mode i is the dependency on the scales and units of the vector elements. Hence the eigenvectors i and i are combined to a matrix P of participation factor by:

p 1i pi = p 2i ... p ni =

1i i1 2i i2 ... ni in

The elements of the matrix pij are called the participation factors. They give a good indication of the general system dynamic oscillation pattern. They may be used easily to determine the location of eventually needed stabilizing devices in order to influence the system damping efficiently. Furthermore the participation factor is normalized so that the sum for any mode is equal to 1. The participation factors can be calculated not only for the generator speed variables, but for all variables listed in Table 26.1.

Name s:speed s:phi s:psie s:psiD s:psix s:psiQ

Unit p.u. rad p.u. p.u. p.u. p.u.

Description Speed Rotor-angle Excitation-Flux Flux in D-winding Flux in x-winding Flux in Q-winding

Table 26.1: Variables accessible for eigenvalue calculation

26 - 3

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

26.2

Performing an Eigenvalue Analysis

A modal analysis can be started when a balanced steady-state condition is reached in a dynamic calculation. Normally, such a state is reached by a balanced load-flow calculation, followed by a calculation of initial conditions. However, it is also possible to perform a balanced RMS simulation and start a modal analysis after the end of a simulation or after stopping the simulation.

Note

The modal analysis can be executed at any point of time in a transient simulation. Nevertheless always keep in mind that the results of the modal analysis are valid on the basis, that the system is in a quasi steady-state operation point. Furthermore the calculated oscillation modes are only valid for "small'' perturbations of the system. If large transient disturbances are applied to the network, the oscillation frequency and damping may change from the results of the eigenvalue analysis.
) be-

When a load-flow is calculated, the icon to open the modal analysis dialogue(

comes active. Using the Settings button (in the ''Basic Options'' page), the options for calculating the initial conditions used by the modal analysis can be specified. On the ''Advanced Options'' page, the state variable and the result file for the Eigenvalue analysis can be defined. The default state variable is the speed signal of the generators. The default result file is Eigenvalue (s:speed) and is stored inside the active study case. The relative participation factors can be calculated not only for the generator speed variables, but there is also the possibility to select from the variables as shown in table 26.1. Figure 26.1 shows the command dialogue of the modal analysis with the variable s:speed selected as the state variable.

Fig. 26.1:
26 - 4

Command dialogue of the modal analysis

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

When executing the command by pressing Execute, the initial conditions of all elements is calculated first. Then the modal analysis constructs a system matrix from the load-flow and the dynamic data. The eigenvalues and eigenvectors are calculated directly from that matrix. Since eigenvalue calculations require linearized models, PowerFactory automatically performs the linearization of all relevant system elements. The following information is printed to the output window, when the eigenvalues are calculated:
DIgSI/info (t=-100:000 ms) - Initial conditions calculated. DIgSI/info (t=-100:000 ms) - Starting Modal Analysis. Please wait... DIgSI/info (t=-090:000 ms) - Modal Analysis ready !

26.3
26.3.1

Visualization of Modal Analysis Results


Output Window

The results of the modal analysis can be outputted in various ways: The system eigenvalues and eigenvectors only The relative generator participation factors Detailed information about the eigenvalues and the relative generator participation factors The results are printed to the output window with the ComSh output command by activating the "Output Calculation Analysis"-icon . After a modal analyses has been executed, the ComSh shows the active option Eigenvalues in the LoadFlow/Simulation report selection. Selecting Eigenvalues will then enable the selection Output of Eigenvalues, as shown in Figure 26.2. Either the eigenvalues may be reported, or the participation factors. When the option Eigenvalues is selected all calculated eigenvalues of the system are printed in a report style into the output window. Figure 26.3 shows the results of a small example power system.

26 - 5

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

Fig. 26.2:

Output of eigenvalues with participation factors selected

Fig. 26.3:

Output of system eigenvalues

Selecting the option Participations, either detailed or not, will further enable the selection of the state variables and the certain eigenvalues as can be seen in Figure 26.2. For the user convenience, there is also the possibility to define a filter for the eigenvalues (system modes). The filter for eigenvalues is used to show only the participation factors of specific system modes, if Select Eigenvalue(s) is set to Filtered. Otherwise the selected specific eigenvalue will be used and the filter will be ignored. The system modes and participating generators can be filtered by using the following options:
26 - 6

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

Maximal Damping The damping of the system mode will be below the defined value in [1/s]. Maximal Period System modes oscillating below the defined periodic time in [s] will be shown. Min. Participation Only generators with a participation factors above the specified limit will by outputted. The results of the participation factors of the generators in the small example power system are shown in Figure 26.4.

Fig. 26.4:

Output of participation factors

26.3.2

Modal Analysis Plots

The Eigenvalue Plot (Viseigen)


The Eigenvalue Plot displays the calculated eigenvalues in a two axis coordinate system. For the vertical axis, it is possible to select among the imaginary part, the period or the frequency of the eigenvalue. The horizontal axis shows the real part. An Eigenvalue Plot is generated by clicking on the icon from the 'Select Plot Type' button of the toolbar menu (see Figure 26.5). After cliking on the icon, the edit dialogue of the Viseigen object pops up; there the user can set the figure appearance and the displayed values on the vertical axis. Figure 26.6 shows an example of an Eigenvalue Plot displaying the imaginary part of the calculated eigenvalues.

Fig. 26.5:

Selection of the modal analysis plot


26 - 7

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

Double-clicking on any of the displayed eigenvalues, pops-up the informative dialogue of Figure 26.7. There the oscillation parameters and the coordinates in complex and polar representation are given.
3.9739
DIgSILENT

Frequency [Hz]

2.3843

0.7948

-35.714

-24.797

-13.879

-2.9612

7.9564

Neg. Damping [1/s]

18.874

-0.7948

-2.3843

-3.9739 178 out of 186 Eigenvalues are stable 8 out of 186 Eigenvalues are unstable

Fig. 26.6:

The Eigenvalue plot

Fig. 26.7:

IntEigen dialogue

The Mode Bar Plot (VisModbar)


Displays the participation factors of the system generators (according to the state variable selected in the modal analysis command, Figure 26.1) in a selected mode by means of a bar diagram. A new Mode Bar Plot is created by clicking on the Plot Type' button (Figure 26.5). icon from the 'Select

After the icon has been clicked, the VisModbar dialogue pops up, there the bar diagram options and the displayed mode can be set. Participant generators can be filtered according to the magnitude of the participation factor; also the bar diagram can be restringed
26 - 8

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

to a selected group of generators. Figure 26.8 shows the Mode Bar Plot for the 20th mode of the small power system used for the example of figures 26.3 and 26.4.
D IgSILEN T

TCHIMH03: -0.303 / +133.1 deg

TCHIMH02: -0.324 / +121.5 deg

TCHIMH01: -0.176 / -167.2 deg

OW ENDG02: -0.145 / -127.2 deg

OWENDG01: +0.420 / +89.6 deg

INJEC01: +1.000 / +0.0 deg

KINGUH03: -0.362 / -133.9 deg

KINGUH02: -0.334 / -152.4 deg

KINGUH01: +0.337 / -39.3 deg

-1.00

-0.50

0.00

0.50

1.00

Participation of mode: +1.258 +10.451*j Magnitude: 10.527 1/s, Angle: 83.134 deg Period: 0.601 s , Frequency: 1.663 Hz Damping: -1.258 1/s, Ratio of Amplitudes: 0.469 Min. contribution: 0.100

Fig. 26.8:

The Mode Bar plot

The magnitude and the phase of any participation factor can be visualized by double clicking on a bar. This action opens the so called IntEigstate dialogue from Figure 26.9.

Fig. 26.9:

Eigenvalue state dialogue

Mode Phasor Plot (VisModephasor)


The Mode Phasor Plot displays the participation factors of the system generators (according to the state variable selected in the modal analysis command, Figure 26.1) in a selected mode by means of a phasor diagram. A new Mode Phasor Plot is created by clicking on the icon from the 'Select Plot Type' button (Figure 26.5). Like in the Mode Bar Plots, the participant generators can be filtered according to the
26 - 9

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

magnitude of the participation factor and the diagram can be restringed to a selected group of generators. Figure 26.10 shows the Mode Phasor Plot for the same mode from Figure 26.8. Double clicking on a participation factor phasor will display its IntEigstate dialogue as in Figure 26.9.
0.32 / 121.5 deg 0.30 / 133.1 deg 1.00
DIgSILENT

Cluster 1: TCHIMH02: Cluster 2: TCHIMH03:

Cluster 7: OWENDG01: 0.42 / 89.6 deg Cluster 8: INJEC01: 1.00 / 0.0 deg

0.50

-1.00

-0.50

0.50

1.00

-0.50

Cluster 3: TCHIMH01: Cluster 4: KINGUH02: Cluster 5: KINGUH03:

0.18 / -167.2 deg 0.33 / -152.4 deg 0.36 / -133.9 deg Participation of mode: +1.258 +10.451*j Magnitude: 10.527 1/s, Angle: 83.134 deg Period: 0.601 s, Frequency: 1.663 Hz Damping: -1.258 1/s, Ratio of Amplitudes: 0.469 Min. contribution: 0.100 -1.00

Cluster 6: OWENDG02: 0.15 / -127.2 deg

Cluster 9: KINGUH01:

0.34 / -39.3 de

Fig. 26.10:

The Mode Phasor plot

26.3.3

Data Browser

The calculation results of the modal analysis can be displayed in a data browser by clicking on the icon (toolbar menu). The ComModres dialogue from Figure 26.11 pops up. There the result file containing the defined output variables (see 26.2) and the values to display (eigenvalue or mode data) are selected. Pressing the Execute button in the ComModres dialogue, opens a data browser containing the calculation results as in Figure 26.12.

26 - 10

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

Fig. 26.11:

Displaying modal analysis results in a data browser (ComModres dialogue)

Fig. 26.12:

Modal analysis results in a data browser

26 - 11

DIgSILENT PowerFactory

Modal Analysis / Eigenvalue Calculation

26 - 12

DIgSILENT PowerFactory

Model Parameter Identification

Chapter 27 Model Parameter Identification

The process of parameter estimation for power system elements for which certain measurements have been made is performed with the "Parameter Estimation" function using the icon . The ComIdent command object is a high performance non-linear optimization tool, which is capable of a multi parameter identification for one or more models, given a set of measured input and output signals. This identification is principally performed in the following way: A "Measurement File'' object (ElmFile) is created which maps the raw measured data onto one or more "measurement signals''. These signals may contain measured excitation and response signals. The measurement signals are used as inputs by the models of the power system elements for which one or more parameters have to be identified, or they may be used to control voltage or current sources. The output signals of the power system elements are fed into a comparator, just as the corresponding measured signals. The comparator is thus given the measured response on the excitation and the simulated response of the element models. The comparator calculates an objective function, which is the weighted sum of the differences between the measured and the simulated response, raised to a whole power (by default to the power of 2). The ComIdent command will collect all objective functions from all comparator objects in the currently active study case and will minimize the resulting overall objective function. To do this, the ComIdent command is given the list of parameters which are to be identified. The objective functions are minimized by altering these parameters. This whole process is visualized in Figure 27.1.

27 - 1

DIgSILENT PowerFactory

Model Parameter Identification

Fig. 27.1:

The identification Principle

Of course, Figure 27.1 only visualizes the principle of the identification. To connect measurement files, power system models and comparator objects to each other, a composite frame is used. This, and all other details of the PowerFactory identification functions, is described in the following sections.

27.1

Target Functions and Composite Frames

The parameter identification process is performed by minimizing objective functions. These objective functions are calculated by ElmCompare objects from the difference between measured responses and calculated responses of one or more power system elements. To define an objective function, the measured excitation signals must be connected to the component models or to voltage or current sources, and the measured and calculated response signals must be connected to the compare object. All this is done graphically by drawing a Composite Frame, using a block definition (BlkDef ) with slots. A simple example of an identification block diagram, for the objective function for a voltage controller, is visible in Figure 27.2.

27 - 2

DIgSILENT PowerFactory

Model Parameter Identification

Fig. 27.2:

Simple identification block diagram

The block diagram uses slots which reserve space for the measurement files, the comparator and the element models.

27.1.1

The Measurement File Slot

The measurement file object (ElmFile) has the following signals available: Number of Input Signals: 0 Number of Output Signals: 10 Input Signals Names: Output Signals Names: "y1,..,y10'' The measurement file slot in the example of Figure 27.2 has the following settings: Class Name Filter: "ElmFile'' Output Signals: "y1,y2'' The fact that the signal is named "output'' signals in the case of the measurement file does not implicate that the parameter identification only regards measured response signals ("measured outputs'') from power system elements. It only means that the measured excitation signals will be mapped onto ElmFile signals. The ElmFile will reproduce the measured excitation and response signals during the identification process.

27.1.2

Power System Element Slot

Power system element slots are used in the identification block diagram in the same way as they are used to define composite models. As in the case of a composite model diagram, the element slots may use any of the available parameters of the power system element model as input or output. The in- and output signals are defined by stating the exact variable name (see also Section Composite Block Definitions in Section 25.8 (User Defined (DSL) Models)). In the case of the example in Figure 27.2, the "Vco1'' slot has the following parameters set: Class Name Filter: "ElmVco*'' Output Signals: "uerrs'' Input Signals: "u''
27 - 3

DIgSILENT PowerFactory

Model Parameter Identification

27.1.3

Comparison Slot

The comparison object ElmCompare has the following properties: Number of Input Signals: 21 Number of Output Signals: 0 Measured Response Signal Names: "in1mea,..,in10mea'' Simulated Response Signal Names: "in1sim,..,in10sim'' Weighting Factor: qzpf Output Signals Names: The calculated value of the objective function will be multiplied by the weighting factor before it is put out. The weighting factor may be used, for instance, to connect a timewindow to the comparison object which forces the objective function to zero for those moments in time which are not to be used in the identification process. In the case of the example in Figure 27.2, the Comparison slot has the following parameters set: Class Name Filter: "ElmCompare'' Input Signals: "in1meas,in1sim''

27.2

Creating The Composite Identification Model

The identification block diagram only defines a generalized 'workbench' that is needed for the identification process. Its function is similar to that of the "Composite Frame'' object. There is also the need to create a composite model, based on the block diagram, to identify particular parameters of particular objects. Suppose having a voltage controller model of which one wants to identify the parameters ka '' and ta. Measurements of the behavior of the physical appliance are available as measured voltage-curves on the input and output of the controller during a disturbance. Assuming the example identification block diagram of Figure 27.2, a composite model (ElmComp) has to be created in the active grid folder.

Note

If the identification process only addresses secondary power system element, which are not directly connected to busbars, the identification process does not require a power system grid. However, all calculation functions like load-flow or EMT simulation require a calculation target in the form of an activated grid of system stage folder. Therefore, a grid folder with at least one 'DUMMY' busbar has to be created when secondary element models are to be identified.

The composite model must be set to use the identification block. It will then show the slots that have been defined in that block. In the current example, the composite model dialogue will look like Figure 27.3.

27 - 4

DIgSILENT PowerFactory

Model Parameter Identification

Fig. 27.3:

The example composite identification model

In this figure, the three slots have been assigned already. Visible is that the comparison object "Compare Signals'' is selected, as well as a measurement file and the voltage controller of which to find the best possible values for ka and ta.

27.2.1

The Comparison Object

The comparison object calculates the objective function from the connected measured and simulated responses. It allows for the use of weighting factors and for other powers to raise to. The example in Figure 27.4 shows the default settings.

27 - 5

DIgSILENT PowerFactory

Model Parameter Identification

Fig. 27.4:

The comparison object dialogue

In this figure, the 10 difference signals are listed, with their weighting factor. By default, these are one, but they may be edited freely. The power factor equals 2 by default but may be set to any other positive whole number from 2 to 10. The objective function calculated by the comparison object equals n p [ ( Mi Si ) wi ]

i=1 where M i is the measured response (i.e. "in1mea'')

S i the simulated response (i.e. "in1sim'')

w i is the weighting factor (i.e. for the difference signal nr.1) p is the power

27.3

Performing a Parameter Identification


icon on the main menu. This icon can be found on the "Stability'' .

The identification process is executed by the ComIdent command. This command can be opened by the toolbar which is be accessed by selecting the icon

The Comident dialogue is depicted in Figurefigure 27.5.

27 - 6

DIgSILENT PowerFactory

Model Parameter Identification

Fig. 27.5:

The ComIdent dialogue

This dialogue shows references to the following objects: Composite Model This reference is normally not needed. When left open, the identification process will automatically gather all composite identification models and will minimize all objective functions.When the composite model reference is set, then the identification will only minimize that model's objective function. Load-Flow Settings This reference is automatically set to the load-flow command that will be used during the identification process. Initial Conditions This reference is automatically set to the initial conditions command that will be used during the identification process. Simulation This reference is automatically set to the simulation command that will be used during the identification process. The identification process allows for the use of load-flow calculations and/or dynamic simulations. The "Load-Flow'' and "Simulation'' pages shows the variables that are to be identified, in case of a load-flow or a dynamic identification. See for example Figure 27.6.

27 - 7

DIgSILENT PowerFactory

Model Parameter Identification

Fig. 27.6:

Setting identification parameters

In this example, two parameters of the voltage controller element "vco IEEEX1'' from the Composite Identification Model are listed. The identification process will alter these parameters in order to minimize the objective functions. The "Mode'' field in the parameter list determines the parameter constraints: 0 means not to change the parameter, but to leave it at its initial conditions. This option may be used to temporarily exclude some parameters from the identification process. mean to optimize the parameter without restrictions means to optimize the parameter, given the constraint that the parameter value must always be greater than zero.

1 2

Although the object for which the parameters are optimized in this example is the same object as is used in the Composite Identification Model, it is allowed to enter any other parameter from any other element, as long as that element belongs to the active study case. Such may be used to optimize secondary appliance, where only the behavior of the primary appliance has been measured.

27.4

Identifying Primary Appliances

A primary appliance, such as a general load, an asynchronous machine or a static var system, do not have an input signal like a voltage controller or any other secondary appliance. It would therefore not be possible to connect a measured signal directly to a load model in order to simulate its response. To identify a primary element model, a small grid model is used to which one or more controllable voltage sources may be connected. These voltage sources will translate the measured voltage signals from the measurement file into a normal busbar voltage which will be used in the load-flow or simulation calculations. The response of the primary element models connected to that busbar may then be compared to a measured response. An example of this method is shown in the following figures.

27 - 8

DIgSILENT PowerFactory

Model Parameter Identification

Fig. 27.7:

Identification diagram with primary element

In Figure 27.7, a simple Identification Block Diagram is shown in which the measurement file is no longer connected to the element slot, but to the voltage source slot. The voltage at the busbar at which the voltage source will be connected will thus be forced to the measured values during the identification process.

Fig. 27.8:

Primary element and voltage source

In Figure 27.8, a very simple grid is shown to which the load which is to be identified and a voltage source element are connected. As with the normal identification process, a Common Identification Model has to be created which uses the Identification Diagram with Primary Element as shown in Figure 27.7. In the ComIdent command dialogue, the unknown parameters of the load may then be listed. It is of course possible to mix the identification of both primary and secondary power system elements at the same time.

27 - 9

DIgSILENT PowerFactory

Model Parameter Identification

27 - 10

DIgSILENT PowerFactory

Contingency Analysis

Chapter 28 Contingency Analysis

In general, contingency analysis is performed to ascertain the risks that contingencies pose to an electrical power system. PowerFactorys contingency analysis module offers two distinct contingency analysis methods: Single Time Phase Contingency Analysis: The non-probabilistic (deterministic) assessment of failure effects under given contingencies, within a single time period. Multiple Time Phase Contingency Analysis: The non-probabilistic (deterministic) assessment of failure effects under given contingencies, performed over different time periods, each of which defines a time elapsed after the contingency occured. It allows the definition of user defined post-fault actions. Contingency analyses can be used to determine power transfer margins or for detecting the risk inherent in changed loading conditions. This chapter deals with deterministic contingency analysis.

28.1

Single Time Phase Contingency Analysis

The single time phase contingency analysis function performs load flow calculations for user-defined sets of contingency cases, which take one or more primary components out of service. The command calculates the initial consequences of the contingencies, but does not regard the operational measures taken to mitigate voltage band problems or supply interruptions. To access the various contingency analysis related functions within PowerFactory, click on the icon on the "Select Toolbar" (shown in Figure 28.1).

To initiate the contingency analysis command, click on the icon, which should now be visible in the first row of icons at the top right of the screen.

Fig. 28.1:

Contingency Analysis Selection from the Main Toolbar

28 - 1

DIgSILENT PowerFactory

Contingency Analysis

The single time phase contingency analysis is carried out using the Contingency Analysis command (ComSimoutage, ). When executed, it automatically performs a 'base' load flow calculation to determine the operational point of the network under no-fault conditions. The command contains Contingency Cases (ComOutage objects) which define one or more elements that are taken out of service simultaneously. Following the calculation of the base load flow, for each of these contingencies a contingency load flow is calculated. This calculation considers the post-fault thermal ratings of branch elements (see Section 7.5.7), transformer tap changer controller time constants and automatic shunt compensators (for further information please refer to Section 28.2). In PowerFactory, contingency cases can be generated by two primary means: Via the definition and use of Fault Cases and Fault Groups; and/or Using the Contingency Definition (ComNmink) command, either via its toolbar icon ( ) or by selecting component(s) in the single-line graphic, right-clicking and selecting Calculate --> Contingency Analysis... . In the first case, contingency cases can be created using references to user defined Fault Cases and Fault Groups (introduced in Section 7.5.3) from the Operational Library. By means of a topological search, PowerFactory determines which circuit breakers must

be operated in order to clear the faults, and generates the corresponding contingency cases. Each contingency case is generated with its corresponding interrupted components for each fault case/group. Fault cases and groups reside in the Operational Library folder, and can be reused. Hence there is no need to manually redefine the same contingencies each time a contingency analysis is required. For further information on creating contingencies from fault cases/groups, please refer to Section 28.5. In the second case, contingencies can be created using the Contingency Definition

command. This command is available either via the icon on the main toolbar, or by right-clicking on a selection of elements in the single line diagram, and selecting the option Calculate --> Contingency Analysis.... Either an n-1 or an n-2 outage simulation for the selected elements can then be prepared. The Contingency Definition command optionally allows all lines/cables, transformers and/or generators to be selected to create contingencies. For further information on creating contingencies using the Contingency Definition command, please refer to Section 28.6. The raw results of the single time phase contingency analysis correspond to the steadystate operational points of the network being studied, considering each one of the defined contingencies up to the given Post Contingency Time (see Section The Single Time Phase Contingency Analysis Command for further information on this setting). The reporting facilities available in PowerFactorys contingency analysis function allow the filtering of results of interest to the user; i.e. maximum loading of branch elements, exceeded voltage limits, etc. Refer to Section The Single Time Phase Contingency Analysis Command for further information on configuring the reporting settings; and see Section 13.9 (Results Objects) for information on using results (ElmRes) objects in PowerFactory. The following sections provide detailled information regarding the settings and features of the contingency analysis command in its single time phase configuration.

28 - 2

DIgSILENT PowerFactory

Contingency Analysis

28.2

The Single Time Phase Contingency Analysis Command

PowerFactorys contingency analysis command (ComSimoutage

) can be configured to perform single time phase contingency analysis, as displayed in Figure 28.2. In this configuration, it determines the initial operational point of the network by means of a 'base' load flow calculation; then for each of the stored contingency cases, places the interrupted components (see Section 28.2.4) on outage and performs a contingency load flow.

The contingency load flow is characterized by the Post Contingency Time parameter (available in the Basic Options tab of the Contingency Analysis command, if either a Contingency Load Flow has been defined, or when the option Consider Specific Time Phase has been selected). This parameter determines the duration of the interval between the occurrence of the fault(s) which define the contingency, and the time when the load flow calculation of the network under the contingency situation is performed. The Post Contingency Time is a key parameter of the single time phase contingency analysis because: 1 The actions of transformer automatic tap changers and switchable shunt compensators on the faulted network are only regarded if the time constants of their controllers are less than the defined Post Contingency Time (i.e. if the controllers are fast enough to operate during the time phase); and The operational thermal ratings of branch elements during the contingency (if 'short term' thermal ratings (see Section 7.5.7) have been defined) will depend on the duration of the contingency, i.e. the Post Contingency Time.

Note:

The 'base' and the 'contingency' load flow calculations by default use the same load flow command (ComLdf object). However, the user can define different load flow commands for these two calculations by selecting the option Allow different settings on the Advanced tab of the contingency analysis command (ComSimoutage). The actions of automatic tap changers and switchable shunts are only possible if the corresponding options are selected in the 'Basic Options' tab of the load flow command(s).

The contingency analysis uses a result file object (ElmRes, see Section 13.9: Results Objects) to store the voltages at terminals, and the loading of certain branch element classes (lines, transformers, series capacitances and series reactances). Recording the loadings for all branches and the voltages for all terminals for every contingency may lead to excessive data storage. Therefore, in order to reduce the amount of data recorded, only significant results are recorded. For contingency analysis, a calculated parameter is considered to be significant if the constraints (voltage and thermal limits) of the corresponding component are violated. Constraints can be set individually for each terminal and branch element (in the Load Flow tab of the elements dialogue) or globally in the Limits for Recording field of the contingency analysis command. A calculated result is stored in the result file whenever one of the constraints (individual or global) is violated.

28 - 3

DIgSILENT PowerFactory

Contingency Analysis

Fig. 28.2:

Basic Options for the Contingency Analysis (ComSimoutage) Command

The settings of the contingency analysis command are entered using the dialogue shown in Figure 28.2. The following subsections explain each of the available options.

28.2.1

Basic Options

Calculation Method
AC Loadflow Calculation The contingency analysis uses an iterative AC load flow calculation to calculate the power flow per contingency case. DC Loadflow Calculation The contingency analysis uses a linear DC load flow calculation to calculate the active power flow per contingency case.

28 - 4

DIgSILENT PowerFactory

Contingency Analysis

Calculation Settings
Load Flow Only available when option Use same settings is selected in the Base Case versus Contingency Load Flow section of the Advanced Options

tab.This is a reference to the load flow command used to calculate both the network operational point before the simulation of contingencies, and the contingency load flow(s). The settings of this load flow command can be edited by pressing the button.

Base Case Load Flow Only available when option Allow different settings is selected in the Base Case versus Contingency Load Flow section of the Advanced Options tab. This is a reference to the load flow command used to calculate the network operational point before the simulation of contingencies. The settings of this load flow command can be edited by pressing the button.

Contingency Load Flow Only available when option Allow different settings is selected in the Base Case versus Contingency Load Flow section of the Advanced Options tab. This is a reference to the load flow command used to assess the network under contingency situations. It is characterized by the Post Contingency Time, which is defined in the Post Contingency Time field, also located in the Calculation Settings section of the dialogue. The contingency load flow command referred to by the Contingency Load Flow is always stored inside the contingency analysis command itself. The settings of this load flow command can be edited by pressing the button. The Contingency Load Flow command settings can be set those currently used by the Base Case Load Flow command by pressing the button.

Note:

If no 'contingency' load flow command is defined, the 'base' load flow command is used to asses the network under contingency situations. In this case the action of automatic transformer tap changers and switchable shunt compensators is directly considered (provided that the corresponding options are selected in the 'Basic Options' tab of the assigned load flow command).

Consider Specific Time Phase


Only available when option Use same settings is selected in the Base Case versus Contingency Load Flow section of the Advanced Options tab. This option must be enabled to define a post contingency time.

28 - 5

DIgSILENT PowerFactory

Contingency Analysis

Post Contingency Time (End of Time Phase)


This value defines the time phase under consideration for the update of contingencies. This means that all switch-open events with an event time less than or equal to this are considered in the update. The contingency load flow is calculated at the post contingency time.

Limits for Recording


The parameters in this section set the global constraints used to determine whether a calculated result is recorded in the Results object (i.e. the object pointed to by the Results field in the Basic Data tab of the dialogue). Whenever one of the defined constraints is violated, the calculated result (for the corresponding contingency case and network component) is recorded. Different limits for Base Case If selected, a different set of limits can be defined for recording the 'base' load flow calculation results. Max. thermal loading of edge element Maximum thermal loading. Values exceeding this value will be recorded in the result file for the corresponding component. Lower limit of allowed voltage Minimum admissible voltage. Voltages lower than this value will be recorded in the result file for the corresponding terminal. Upper limit of allowed voltage Maximum admissible voltage. Voltages higher than this value will be recorded in the result file for the corresponding terminal. Maximum voltage step change Maximum (+/-) admissible voltage change. Larger voltage changes will be recorded in the result file for the corresponding terminal.

Contingencies
The Contingencies section of the Basic Data tab, as shown in Figure 28.3, allows the display, creation and removal of contingencies. These are the contingencies that will be analyzed by the contingency analysis command.

Fig. 28.3:

Contingencies Section of Contingency Analysis Dialogue


Displays a list of all defined contingencies. This button is used to create contingency cases (ComOutage objects) based on fault cases and/or fault groups. A fault case contains events:

Show

Add Cases/Groups

28 - 6

DIgSILENT PowerFactory

Contingency Analysis

one for the fault location, and (optionally) others specifying post-fault actions. Fault groups contain a set of references to fault cases. In order to use the Add Cases/Groups option, the fault cases and/or groups must have been previously defined in the Operational Library. If these have been defined, when the Add Cases/Groups button is pressed, a data browser listing the available fault cases/groups pops up. The user can then select the desired fault cases/groups from this browser and press Ok. The corresponding contingencies are then created automatically by PowerFactory. One contingency is created for each selected fault case, and one contingency is created for each fault case referred to within each selected fault group. For further information on creating contingencies from fault cases/groups, please refer to Section 28.5.

Remove All

Removes all contingency cases (ComOutage objects) stored in the contingency analysis command.

Results
Reference to the result file object (ElmRes) where the contingency analysis results are recorded. The results stored in this file are filtered according to the global constraints set in the Limits for Recording section of the Basic Data tab, and also according to the individual constraints defined within each components respective dialogue (i.e. on the Load Flow tab of the element dialogue). For further information on result objects, see Section 13.9: Results Objects.

Additional Functionality
Besides the standard buttons found within a PowerFactory command (Execute, Close and Cancel), the contingency analysis command provides an additional button:

Update

Updates all contingency case objects (ComOutage). This occurs before any analysis is executed. The n-k level is detected. For contingencies based on fault cases/groups the list of interrupted components (see Section 28.2.4) is updated. If desired, an Update can be executed before every contingency analysis. Note that topological changes made to the network under study may lead to changes in the contingency cases, in which case it is recommended to execute an Update.

Note:

Changes made to the network topology or in the settings of the contingency analysis command and its load flow commands, often have an effect on the stored contingency cases. These effects are only visible if an Update is executed. Updates can be made automatically by selecting the option Update contingencies

28 - 7

DIgSILENT PowerFactory

Contingency Analysis

28.2.2

Effectiveness

Calculate Quad Booster Effectiveness Show QBs Add QBs Remove All

Shows a list of the transformers for which the effectiveness should be calculated. Adds references to transformers for which the effectiveness should be calculated. Removes all references to transformers for which the effectiveness is currently calculated.

Calculate Generator Effectiveness Show Gen. Add Gen. Remove All


Shows a list of the generators for which the effectiveness should be calculated. Adds references to transformers for which the effectiveness should be calculated. Removes all references to generators for which the effectiveness is currently calculated.

28.2.3

Advanced Options

Update contingencies before running a calculation Updates all contingency case objects (ComOutage) before any analysis is executed. The n-k level is detected. For contingencies based on fault cases/groups the list of interrupted components (see Section 28.2.4) is updated. Note that topological changes made to the network under study may lead to changes in the contingency cases, therefore it is recommended to always enable this option. For further information please refer to Section 28.5. Base Case versus Contingency Load Flow Use same settings Uses the settings from the base case load flow for the contingency case load flow. Allow different settings Allows different settings for the base case load flow and the contingency case load flow.

28 - 8

DIgSILENT PowerFactory

Contingency Analysis

Output per Contingency Case Short Displays only the number of iterations required for each contingency case. Displays the full load flow output per contingency case.

Detailed

Initialisation of Contingencies If the AC Load Flow Calculation is selected in the Calculation Method section of the Basic Options tab, the user has the possibility to choose between the previous contingency case and the base case to initialize the current contingency load flow.

Calculating an Individual Contingency


Click on the Show button in the contingency analysis command dialogue (see Figure 28.2 or 28.3) to open the list of contingencies included in the analysis. From here the user can right-click on a contingency of interest, and select Execute from the context sensitive menu. Additionally, the corresponding element can be marked in the single line graphic by right-clicking on the contingency object in the list and selecting Mark in Graphic from the context sensitive menu.

28.2.4

Representing Contingency Situations - Contingency Cases

Contingency cases (ComOutage objects) are objects used in PowerFactory to define contingency situations within the analyzed networks. A contingency case determines which components are put on outage. When a contingency analysis (ComSimoutage) is executed, the contingency analysis command considers each of the contingency cases stored inside it, taking the corresponding components out of service and performing a contingency load flow. As mentioned previously, the contingency cases used by a specific contingency analysis command are stored inside the command itself. Contingency cases are created either by using Fault Cases and/or Fault Groups (see Section 28.5), or via the Contingency

Definition command (

, see Section 28.6). The contingency cases can be viewed using

the Show button available in the dialogue of the corresponding contingency analysis command (see Figure 28.3). Additionally, the contingency cases within the active study cases contingency analysis command may be viewed by clicking on the Show Contin-

gencies icon ( Analysis toolbar

), located on the main toolbar (only available when the Contingency

is selected). In both cases a new data browser listing the defined contingencies is opened, with the contingencies listed inside. By double-clicking on a contingency from the list, the corresponding edit dialogue for that particular contingency is opened (as illustrated in Figure 28.4). The dialogue displayed in Figure 28.4 shows the following fields:

28 - 9

DIgSILENT PowerFactory

Contingency Analysis

Name Not Analyzed

Name of the contingency case. If enabled, the case is not considered by the contingency analysis command. An identification number which is stored in the results. The number can be used for reporting. Reference to the fault case (if any) from where the contingency case originated. Reference to the fault group (if any) from where the contingency case originated. This field is only available if the contingency case has an associated fault group.

Number

Fault Case

Fault Group

Interrupted Components This is a table showing the components put on outage by the contingency case. The table, which is read-only, is automatically generated when the contingency case is created. Fault Type Displays the fault type and the contingency order. See Figure 28.8.

Contingency Analysis Reference to the contingency analysis command where the contingency case is stored. The Mark in Graphic button highlights the interrupted components in the single line diagram.

28 - 10

DIgSILENT PowerFactory

Contingency Analysis

Fig. 28.4:

Contingency Cases (ComOutage objects)

Normally, contingency cases (ComOutage objects) are analyzed by the contingency analysis command (ComSimoutage) in which they are stored. However, each contingency case provides the functionality of a command itself, and can be executed individually using the Execute button at the top right of the ComOutage dialogue. In this case the actions taken by the circuit breakers, which must switch to clear the fault, are shown in the single line graphic (only if the contingency case was created using fault cases/ groups).

Note:

The 'Interrupted Components' table is updated by the program each time the Update button from the single time phase contingency analysis command is pressed. Similarly if the option 'Update contingencies before running a calculation' is selected on the Advanced Options page, the tables of all the stored contingency cases are automatically updated before executing the contingency analysis.

For further information about contingency cases generated using fault cases and/or fault groups, please refer to Section Creating Contingency Cases Using Fault Cases and Groups. For information about contingency cases created using the Contingency Definition (ComNmink) command, please refer to Section Creating Contingency Cases Using the Contingency Definition Command.

28 - 11

DIgSILENT PowerFactory

Contingency Analysis

28.3

Multiple Time Phase Contingency Analysis

PowerFactory provides tools for the analysis of contingencies over multiple time phases,

allowing the definition of post-fault actions that can lead to the mitigation of voltage band problems or supply interruptions which are caused by faults in the networks under analysis. Before presenting the multiple time phase contingency analysis itself, it is necessary to introduce two basic concepts used to define the functionality of this tool: Contingencies: These are objects of the class ComOutage ( ) which are used to represent contingencies. They are defined by a set of events which represent the occurrence of the originating fault(s) over time and the subsequent fault clearing and post fault actions. It should be noted that in PowerFactory there generally exists one ComOutage object which covers all time phases. This means that the calculation of a contingency considers all time phases defined in the contingency analysis command. All events which fall within the specific time phase are executed. For further information about the definition and use of contingencies please refer to Section 28.4.5. Time Phases: These represent points in time at which the steady-state operational point of the network under analysis is calculated. Each time phase is defined via a user defined Post Contingency Time (see the Basic Options tab of the Contingency Analysis command). The Post Contingency Time defines the end of a phase, i.e. the point in time at which the steady-state of the network is calculated. For further information regarding the definition of time phases please refer to Section 28.4.4. The contingency analysis with multiple time phases is executed via the Contingency

Analysis command (ComSimoutage,

). Upon execution, it performs a pre-fault (base) load flow calculation, then for each contingency (stored inside the command), it loops over the list of defined time phases (also stored inside the command), calculating the corresponding post-contingency load flows. For each load flow calculation, the events (faults and post-fault actions) whose time of occurrence is earlier than, or equal to, the corresponding Post Contingency Time, are considered. Similar to single phase contingency analyses, the effect of transformer tap changers and switchable shunts depends on these components corresponding time constants and the current Post Contingency Time. Controllers are only considered if their time constants are smaller than the current Post Contingency Time. Additionally, the operational thermal ratings of branch elements during the contingency (if 'short term' thermal ratings (7.5.7) have been defined) will depend on the duration of the contingency i.e. the current Post Contingency Time. The raw results of the contingency analysis with multiple time phases correspond to the steady-state operational point of the network being analysed, at every Post Contingency Time for each of the defined contingencies. The reporting features included in the function allows the filtering of problematic contingencies, according to maximal loading of branch elements, exceeded voltage limits, etc. The following sections provide detailled information regarding the settings and features of the contingency analysis command in its multiple time phase configuration.

28 - 12

DIgSILENT PowerFactory

Contingency Analysis

28.4

The Multiple Time Phase Contingency Analysis Command

The Contingency Analysis command (ComSimoutage) can be used to perform contingency analysis with multiple time phases. In this configuration it determines the initial operational condition of the system via a 'base' load flow calculation. Following this, it loops over the defined time phases for each stored contingency (ComContingency object). Load flow calculations are performed which consider the contingency events whose time of occurrence is earlier than, or equal to, the Post Contingency Time set in the corresponding load flow command. As a result of the execution of the Contingency Analysis command, the steady-state operational point of the network at the Post Contingency Time, for every contingency, is obtained. The calculated results are filtered according to user defined criteria and recorded in the Results (ElmRes) object referred to by the Contingency Analysis command. When configured to perform contingency analysis with multiple time phases, the Contingency Analysis command stores the contingencies to be analyzed within the command itself. A folder (named Time Phases) is also stored within the command; this folder contains the load flow commands that define the time phases. The user may define as many contingencies and time phases as required, following the procedures explained in this section. the icon (provided that the Contingency Analysis toolbar has already been selected). The following subsections present the options available in the dialogue.

The Contingency Analysis command can be accessed via the main toolbar by clicking on

28 - 13

DIgSILENT PowerFactory

Contingency Analysis

28.4.1

Basic Options

Fig. 28.5:

Basic Options Tab of the Contingency Analysis (ComSimoutage) Command

Calculation Method
This setting is configured as described for Single Time Phase operation. Please refer to Section 28.2.1.

Calculation Settings Load Flow


This is the reference to the load flow command which is used to calculate the network operational point, both prior to the simulation of contingencies and for the contingencies. The settings of this load flow command can be accessed and edited by pressing the
28 - 14

DIgSILENT PowerFactory

Contingency Analysis

button. If the option Allow different settings has been selected on the Advanced Options tab, the Calculation Settings section will be configured as shown in Figure 28.7.

Base Case Load Flow


This is the reference to the load flow command which is used to calculate the network operational point prior to the simulation of contingencies. The settings of this load flow command can be accessed and edited by pressing the button.

Time Phase n
Lists the defined time phase(s). The button next to each time phase can be used to remove the corresponding time phase. If the option Allow different settings has been selected on the Advanced Options tab, the Time Phase will have its load flow accessible by pressing the button next to the defined time phase.

Add Time Phase

Opens an input dialogue to define the new time phase by entering its Post Contingency Time. If the option Allow different settings has been selected on the Advanced Options tab, the previous (i.e. that with the next earlier occurrence in time) load flow settings will be used for the new time phase. In the case that there is no previous time phase load flow the base case settings will be used for the new time phase.

Use Base Case Settings for All

Copies the settings from the base case load flow to all time phase load flows.

Limits for Recording


This setting is configured as described for Single Time Phase operation. Please refer to Section 28.2.1.

Contingencies
This setting is configured as described for Single Time Phase operation. Please refer to Section 28.2.1.

Results
This setting is configured as described for Single Time Phase operation. Please refer to Section 28.2.1.

28.4.2

Effectiveness

These options are only available for the Single Time Phase calculation. Please refer to Section 28.2.2.
28 - 15

DIgSILENT PowerFactory

Contingency Analysis

28.4.3

Advanced Options

Post contingency time for order identification


The order of the contingencies stored inside the command is calculated according to the time defined in this field. Only the events (actions) taking place before this point in time are considered when calculating the contingency order.

Note:

In PowerFactory a region is defined as a set of topologically connected components. A region is interrupted if it is energized (topologically connected to a network reference bus) before a fault and de-energized afterwards. The order of a contingency corresponds to the number of interrupted regions at the time of its calculation (i.e. the 'Post contingency time for order identification').

Base Case versus Contingency Load Flow This setting is configured as described for Single Time Phase operation. Please refer to Section 28.2.3. Output per Contingency Case This setting is configured as described for Single Time Phase operation. Please refer to Section 28.2.3. Initialisation of Contingencies This setting is configured as described for Single Time Phase operation. Please refer to Section 28.2.3.

28.4.4

Defining Time Phases for Contingency Analyses

The time phases of a contingency analysis are defined in the Calculation Settings section of the Basic Data tab of the Contingency Analysis command, by specifying a Post Contingency Time for each defined time phase. A specified Post Contingency Time defines the end of a time phase and is used to determine which events (actions) from the analyzed contingency are considered. If the time of occurrence of an event from a contingency occurs earlier than or equal to the Post Contingency Time, the event will be considered in the corresponding load flow calculation. Each defined time phase uses a corresponding load flow calculation, and by default, this is the same load flow calculation as that used for the base case load flow. In this case, the load flow used for the entire contingency analysis calculation is accessible via the Load ), as shown in Figure 28.6. If the option Allow different settings in the Base Flow field ( Case versus Contingency Load Flow section of the Advanced Options tab is selected, the user can define individual load flow commands for each time phase, as illustrated in Figure 28.7. Access to each load flow command and its settings is again via the button.
28 - 16

DIgSILENT PowerFactory

Contingency Analysis

Fig. 28.6:

Same Settings for Base Case and Contingency Load Flows

Fig. 28.7:

Different Settings for Base Case and Contingency Load Flows

Note:

Transformer tap changer controllers and switchable shunts are only considered by a time phase if their time constants are smaller than the current Post Contingency Time. The operational thermal ratings of branch elements during a contingency (if 'short term' thermal ratings (see Section 7.5.7) have been defined) will also depend on the duration of the contingency (i.e. the current Post Contingency Time).

The Contingency Analysis time phases are stored within a folder inside the ComSimo-

utage command and can be accessed via the Data Manager. By clicking on the button next to each defined time phase in the Calculation Settings section of the Basic Data tab, the edit dialogue of the corresponding load flow command pops up. New time
phases can be defined in the data browser by clicking on the Add Time Phase button. Existing time phases can be deleted using the icon. Note that after several time phases have been defined, this list is then scrollable using the up/down arrow buttons ( ) available in the dialogue.

28.4.5

Representing Contingency Situations with Post-Fault Actions

Contingency situations which include post-fault actions are represented in PowerFactory via objects called 'Contingencies' (ComOutage, ). The contingencies are defined by a set of events which represent: Faults on the selected components; The switching actions carried out to isolate the faulty components;

28 - 17

DIgSILENT PowerFactory

Contingency Analysis

The post contingency actions taken in order to mitigate the subsequent voltage band problems and/or supply interruptions. Contingencies are created based on fault cases defined in the Operational Library. These fault cases define the location of the fault events, and may also define post contingency actions taken to isolate the fault and mitigate the effects of the outage of the component(s). Whenever a new contingency is created, a link from the ComContingency object to the fault case is set. New contingencies are created in a Contingency Analysis command by clicking on the Add Cases/Groups button in the Configuration section of the Basic Data tab (see 28.2). Besides the events which are transferred from the linked fault case during calculation of the contingency case, the user has the possibility to define additional post contingency actions in the contingency by manually creating new events. The contingencies calculated in a Contingency Analysis, are stored inside the command itself and can be accessed using the Show button (see Figure 28.5). Alternatively, the contingencies in the Contingency Analysis command contained in the active study case can be viewed by clicking on the Show Contingencies icon ( ) on the main toolbar. In both cases a new data browser listing the defined contingencies is shown. By doubleclicking on a selected item from the list, the edit dialogue of the corresponding contingency (Figure 28.4) pops up. Normally, contingency cases are analyzed by the Contingency Analysis command in which they are stored. However, each case provides the functionality of a command and can be executed individually using the Execute button at the top right of the ComOutage dialogue (see Figure 28.4). In this case, all of the time phases are executed for the selected contingency considering its associated events. The results observed in the single line graphic correspond to those from the last time phase, including the final states of the network switches. The events that define a contingency can be displayed in a list format in a new data browser by pressing the Events button in the fault case (IntEvt) dialogue (as shown in Figure 28.10). This data browser can be used to edit and/or delete the listed events. New icon at the top of the opened browser window. events can be created using the New It should be noted that events created locally in the contingency object are only considered if the option Use locally defined events (User defined) is selected in the Events Used for this Contingency field. , available on the main toolbar) can be used to follow the The Start Trace button ( behavior of the system over time. When this button is pressed, a dialogue opens allowing the user to select a contingency. Following the selection of a contingency by the user and pressing OK, the contingency dialogue is closed and the base case load flow is executed. The execution of the first event(s) and all subsequent event(s) is initiated by pressing the button on the main toolbar. At each time step the load flow calculation results and the state of the network circuit breakers are displayed in the single line graphic. It should be noted that the Next Time Step evaluates events according to their time of occurrence, and not according to the time phases defined in the Contingency
28 - 18

Next Time Step

DIgSILENT PowerFactory

Contingency Analysis

Analysis command. After the last time event(s) are executed, the Next Time Step button
becomes inactive. The Stop Trace button ( ) can be pressed to clear the calculation. Alternatively, the Trace button in each ComOutage dialogue can be used to initiate the Trace for that particular contingency.

Note:

The 'Trace' functionality can be started directly from the main toolbar by pressing the 'Start Trace' button ( ). In this case a data browser listing all available contingencies (those stored inside the 'Contingency Analysis' command of the active study case) is displayed. After the user selects the desired contingency by doubleclicking on it, the 'Base Case' load flow is executed. The subsequent event(s) are then calculated using the 'Next Time Step' button.

28.5

Creating Contingency Cases Using Fault Cases and Groups

Contingency cases created from fault cases can be regarded as contingency situations produced in a network as a consequence of the clearing of a fault. Fault cases without switching events (created following the procedure described in Section 15.3: Fault Cases and Fault Groups) are used to automatically generate contingency cases in the contingency analysis command, by pressing the Add Cases button and selecting the desired objects from the data browser that pops up. For every selected fault case, the calculation automatically detects which circuit breakers must open in order to clear the defined fault(s). All components which, after the switching actions that clear the fault(s), lose their connection to the network reference bus, are regarded as 'interrupted' and are subsequently added to the Interrupted Components table of the corresponding contingency case. In other words, these components are put on outage by the contingency case. Depending on the fault defined in the fault case that generates a contingency, the field Fault Type (Figure 28.8) in the contingency case dialogue is regarded as: Busbar fault: If the contingency originates from a fault on a busbar n-k fault: With contingency order equal to k (k >= 0). k corresponds to the number of network regions (sets of topologically connected components) which are disconnected during a fault, by the switching actions performed. It should be noted that the switching actions which are considered depend on the post contingency time used by the update (this time differs between single- and multiple time phase analyses).

Fig. 28.8:

Fault Type field in the Contingency Case (ComOutage) dialogue

28 - 19

DIgSILENT PowerFactory

Contingency Analysis

Note:

In PowerFactory an interrupted component is a network primary element that is energized before a fault and de-energized afterwards. A component is considered to be energized if it is topologically connected to a network reference bus. A region is defined as a set of topologically connected components. Like components, regions can have energized, de-energized and interrupted states, depending on their connection to a network reference bus.

Contingency cases can be created from fault cases/groups, which reside in the Operational Library, by pressing the Add Cases/Groups button in the contingency analysis command (see Section 28.2.1 and Figure 28.3). In the case of creating contingencies from fault group(s), a contingency case will be generated for each fault case referred to in the selected fault group(s).

Note:

The 'topological search' algorithm used by the program to set contingency cases from fault cases requires the explicit definition of at least one reference bus in the analyzed system. A bus is explicitly set as reference if a synchronous generator (ElmSym) or an external network (ElmExtnet) with the option 'Reference Machine' enabled (available in the elements 'Load Flow' tab) is connected to it.

28.5.1

Browsing Fault Cases and Fault Groups

There are two types of subfolder inside the Faults folder in the Operational Library: Fault Cases and Fault Groups.

Fig. 28.9:

Contents of the Faults folder in the Operational Library

In order to make a new folder of either of these types, left-click on the Faults folder icon ( ) and then press the "New Object" button ( ) on the toolbar of the Data Manager. In the drop-down list, select whether a new Fault Cases or Fault Groups folder should be created. The Fault Cases folder holds every contingency (n-1, n-2, or simultaneous) defined for the system, as described in Section Defining a Fault Case. Alternatively, several fault cases can be selected and stored in a Fault Group, as described in Section Defining a Fault Group.

28 - 20

DIgSILENT PowerFactory

Contingency Analysis

28.5.2

Defining a Fault Case

To define a fault case for an element in the grid, select it on the single-line diagram. Then right-click and choose Define --> Fault Case --> Single Fault Case or Define ... --> Fault Case --> Multiple Fault Cases, n-1 (or Multiple Fault Cases, n-2). If Multiple Fault Cases, n-2 is selected, fault cases will be created for the simultaneous outage of each two elements in the selection. It is also possible to specify simultaneous outage of all elements in the selection. Several elements can be selected in the single-line diagram, in which case a fault case will be created for each of these elements in the Fault Cases folder. Alternatively, a filter can be used to list all elements which outages are to be defined for. Highlight these elements, right-click and choose Define --> Fault Case.... The Simulation Events/Fault dialogue opens, as displayed in Figure 28.10, where the user can enter the desired name of the fault case in the Name field; create switch events (on the second page button). of the Basic Data tab, by clicking on the Create Switch Events

Fig. 28.10:

Creation of Fault Case (IntEvt)

Fault cases can also be defined by the Contingency Definition command, as explained in Section 28.6. For further background on fault cases, please refer to Section 7.5.3 (Faults).

28.5.3

Defining a Fault Group

To define a fault group, left-click on the Fault Groups folder. Then click on the 'New Object' button ( ). A Fault Group dialogue pops up as shown in Figure 28.11. In this dialogue the user can specify the name of the fault group in the Name field, and add fault cases to this new group using the Add Cases button. Click the Cases button to view existing cases (if any) in the fault group.

28 - 21

DIgSILENT PowerFactory

Contingency Analysis

Fig. 28.11:

Creation of Fault Group (IntFaultgrp)

Note:

When a fault group is defined and fault cases are added to it, a reference is created to each selected fault case. The fault case itself resides in the Fault Cases subfolder. This means that if an item in the fault group is deleted, only the reference to the fault case is deleted. The fault case itself still exists in the Fault Cases folder.

28.6

Creating Contingency Cases Using the Contingency Definition Command

The Contingency Definition command (ComNmink ) is used to generate contingency cases based on selected components. In this case the selected components are directly put on outage (and therefore listed in the Interrupted Components table in the contingency case dialogue) without any switching actions. The Contingency Definition command can be used to generate contingency cases either for (i) a user-defined selection of elements; and (ii) for pre-defined sets of elements. This is described below. To generate contingency cases for a new selection of elements:  Select the components to be put on outage via either the single line graphic or the Data Manager.  Right click on the selection and choose Calculate --> Contingency Analysis... This command will create a list with references to the selected objects inside the Contingency Definition command (ComNmink). The command dialogue shown in Figure 28.12 will pop up.  Set the options in the command according to the desired type of contingency cases (see explanation of options below) and click on Execute. To generate contingency cases for either the complete system or a pre- user defined set:  Click on the icon on the main toolbar to open the command;

 Set the options in the command according to the desired type of contingency cases and the selection of elements (see explanation of options below) and click on Execute.

28 - 22

DIgSILENT PowerFactory

Contingency Analysis

Fig. 28.12:

Analysis)

Contingency Definition Dialogue (option: Generate Contingencies for

Once the Contingency Definition command is executed, it generates the corresponding contingency cases according to the options selected and the listed objects. The contingency analysis command in the active study case (where the newly-created contingency cases are stored) is then automatically opened. The created contingencies can be analyzed by executing the already-opened contingency analysis command. Note that when a new list of contingencies is created using the Contingency Definition command, the previous content of the contingency analysis command is overwritten. It is also possible to open the Contingency Definition command directly from the Contin-

gency Analysis toolbar (

), without any previous selection, by clicking on the icon. In this case, contingencies for all elements within the network (selected according to their class, as described below), can be created.

The Contingency Definition command offers the following options to generate contingency cases from the selected objects:

Creation of Contingencies
Generate Fault Cases for Library Generates fault cases which are stored in the Operational Library, in a folder named Faults. Generate Contingencies for Analysis Generates contingencies which are stored in the contingency analysis command, and then opens the contingency analysis command (ComSimoutage) dialogue.

28 - 23

DIgSILENT PowerFactory

Contingency Analysis

Outage Level
n-1 n-2 Creates single contingency cases for each of the selected components. Creates contingency cases for every unique combination of two selected components.

Lines/cables
Contingency cases according to the selected outage level will be generated for all lines and cables (ElmLne objects) in the system.

Transformers
Contingency cases according to the selected outage level will be generated for all transformers (ElmTr2, ElmTr3 objects) in the system.

Generators
Contingency cases according to the selected outage level will be generated for all synchronous generators (ElmSym objects) in the system. The selection of elements to outage in the preparation command can also be created by the use of DPL scripts. Please refer to the ComNmink methods in the DPL Reference manual.

Note:

It is important to note the difference between contingency cases created from fault cases and contingency cases created with the Contingency Definition command. In the former, the cases are regarded as the outage of certain network components as a consequence of fault clearing switching actions, with the fault(s) being defined by the fault case and the switching actions automatically calculated by the program. In the latter, the cases are regarded as contingency situations generated by the outage of a selected group of components.

28 - 24

DIgSILENT PowerFactory

Reliability Assessment

Chapter 29 Reliability Assessment

In general, the assessment of reliability indices for a power system network, or of parts thereof, is the assessment of the ability of that network to provide the connected customers with electric energy of sufficient availability, as one aspect of power quality. The reliability assessment module of PowerFactory offers two distinct calculation functions for the analysis of network reliability under probabilistic scenarios, as described below: Network reliability assessment: The probabilistic assessment of interruptions during an operating period of the power system. Voltage sag assessment: The probabilistic assessment of the frequency and severity of voltage sags during an operation period. Both of these calculation methods has its own typical applications. Network reliability assessment is used to calculate expected interruption frequencies and annual interruptions costs, or to compare alternative network designs. Voltage sag assessment is used to determine the expected number of equipment trips due to deep sags. This chapter deals with probabilistic Reliability Assessment. For information on PowerFactorys deterministic Contingency Analysis, please refer to Chapter 28 (Contingency Analysis).

29.1

Network Reliability Assessment

Reliability analysis is an automation and probabilistic extension of contingency evaluation. The planner is not required to pre-define outage events, but can optionally select that all possible outages are considered for analysis. The relevance of each outage is considered using statistical data about the expected frequency and duration of outages according to component type. The effect of each outage is analyzed in an automated way, meaning that the software simulates the protection system and the network operator's actions to re-supply interrupted customers. As statistical data regarding the frequency of each event is available, the results can be formulated in probabilistic terms. An analytical assessment of the network reliability indices (transmission, sub-transmission or distribution level) is initiated by the following actions within PowerFactory: Clicking the icon on the main toolbar to activate the reliability toolbar (if not already active); and Clicking on the icon.

The Reliability Assessment (ComRel3) dialogue will then appear, as shown in Figure
29 - 1

DIgSILENT PowerFactory

Reliability Assessment

29.4. A reliability assessment will be started when the Execute button is pressed. The calculation time required for a reliability assessment can range from a few seconds for a small network only considering single-order contingencies, to several hours for a large network considering also second-order faults. A reliability assessment calculation can be interrupted by clicking on the Break icon ( ) on the main toolbar. The following sections provide the technical background information required to perform reliability assessment with PowerFactory.

29.1.1

Probabilistic Reliability Assessment - Technical Background

The assessment of reliability indices, also known simply as "reliability analysis'', essentially comprises the following: Failure modeling Load modeling System state production Failure Effect Analysis (FEA) Statistical analysis Reporting

Electric System Model

Failure Models Load Models

System State Generation

Failure Effect Analysis

Statistical Evaluation

Fig. 29.1:

Reliability Analysis: Basic Flow Diagram

The basic reliability analysis calculation flow diagram is depicted in Figure 29.1. The failure models describe the way in which the system components may fail, how often they will fail and how long it takes to repair them. The load models may consist of only a few possible load demands, or may be based on precise load forecast and growth scenarios. The combination of one or more simultaneous faults and a specific load condition is called a 'system state'. The system state production module will use the failure models and load
29 - 2

DIgSILENT PowerFactory

Reliability Assessment

models to build a list of relevant system states. Each of these system states may have one or more faults. It is the task of the FEA module to analyze the faulted system states by imitating the system reactions to these faults, given the current load demands. The FEA will normally take the power system through a number of operational states which may include: Fault clearance by tripping protection breakers; Fault separation by opening separating switches; Power restoration by closing normally open switches; Overload alleviation by load transfer and load shedding. The basic task of the FEA functions is to find out whether system faults will lead to load interruptions and if so, which loads will be interrupted and for how long. The results of the FEA are combined with the data that is provided by the system state production module to update the statistics. The system state data describes the expected frequency of occurrence of the system state and its expected duration. The duration of these system states should not be confused with the interruption duration. A system state with a single line on outage (i.e. due to a short-circuit on that line), will normally have a duration equal to the time needed to repair that line. In the case of a double feeder, however, no loads may suffer any interruption. In the case that loads are interrupted by the outage, the power may be restored by network reconfiguration (i.e. by fault separation and closing a back-stop switch). The interruption duration will then equal the restoration time, and not the repair duration (=system state duration).

Stochastic Models
A stochastic model describes how and how often a certain object changes. A line, for example, may suffer an outage due to a short-circuit. After this kind of outage, repair will begin and the line will be put into service again following successful repair. If two states for line A are defined (i.e. "in service'' and "in repair''), monitoring of the line could result in a graph as depicted in Figure 29.2.

A A
Fig. 29.2:

R1 T1 T2

S2 T3

R2 T4

S3 T5

R3 T6

S4 t

Example of a Monitored Component State in Time

Line A in this example fails at time T1 after which it is repaired and put back into service at T2. It fails again at T3, is repaired again, etc. The repair durations R1=T2-T1, R2=T4T3, etc. are exaggerated in this example. The repair durations are also called the "Time To Repair'' or "TTR''. The service durations S1=T1, S2=T3-T2, etc. are called the "life-time'', "Time To Failure'' or "TTF''. Both the TTR and the TTF are stochastic quantities. By gathering failure data about a large group of similar components in the power system, statistical information about the TTR and TTF, such as the mean value and the standard deviation, can be calculated. The
29 - 3

DIgSILENT PowerFactory

Reliability Assessment

statistical information is then used to define a stochastic model. There are many ways in which to define a stochastic model. The so-called "homogenous Markov-model'' is a highly simplified but generally used model. A homogenous Markov model with two states is defined by: A constant failure rate lambda ('lambda'); and A constant repair rate mu ('mu'). These two parameters can be used to calculate the following quantities: mean time to failure, TTF = 1/lambda; mean time to repair, TTR = 1/mu; availability, P = TTF/(TTF+TTR); unavailability Q, = TTR/(TTF+TTR); The availability gives the fraction of time during which the component is in service; the unavailability gives the fraction of time during which it is in repair; and P+Q = 1.0. For example, if 7500 monitored transformers were to show 140 failures over 10 years, during which a total of 7360 hours was spent on repair, then:

140 1 1 - -- = 0,0019 - = --------------------10 7500 a a 1 TTF = -- = 530a 7360 - h = 52,6h = 0,006a TTR = ----------140 1 1 = ----------- = 167 -a TTR 530 P = ---------------------------= 0,99989 530 + 0,006 min 0,006 Q = ---------------------------- = 6 --------a 530 + 0,006
These equations also introduce some of the units used in the reliability assessment: frequencies are normally expressed in [1/a] = "per annum'' = per year; lifetimes are normally expressed in [a] = "annum''; repair times are normally expressed in [h] = hours; probabilities or expectancies are expressed as a fraction or as time per year ([h/a], [min/a]). Of course, it is also possible to define a homogenous Markov model with more than two states. This kind of model may be needed to distinguish between faults that can be repaired reasonably fast, and faults which require a longer time to repair. Two repair states are then needed, each with a different mean repair time. The homogenous Markov model is completely memory-less. This means that if preventive maintenance is performed to improve the reliability of a component, it does not make any
29 - 4

DIgSILENT PowerFactory

Reliability Assessment

change if the last maintenance has been performed one week or 5 years ago, or even if maintenance was performed at all. The probability for the component to fail in the next period of time will be equal in all cases. Effects of changing preventive maintenance can therefore not be calculated when using the homogenous Markov model. The same memory-less quality means that all repairs will behave in the same way, apart from their mean duration. Only mean durations can be determined when using homogenous Markov models. Interruption costs, however, may be dependent on the fraction of repairs that take longer than a certain amount of time. A certain repair may take 2 hours on average, for example, but when compensation has to be paid for interruptions longer than 3 hours, and when such long repairs occur in 20% of all cases, using the mean duration alone will not produce correct results. A realistic assessment of interruption costs is therefore not possible when using the homogenous Markov model. All reliability assessment functions in DIgSILENT PowerFactory are therefore based on the "Weibull-Markov'' model (WM-model). This more advanced stochastic model has the following features: It uses Weibull distributions for all stochastic durations. This distribution uses a shape factor and a characteristic time. By setting the shape parameter "beta'' to 1.0, a homogenous Markov model results. The Weibull-Markov model is therefore 100% backwards-compatible with the homogenous Markov model, and existing 'homogenous Markov data' may be used directly without any need for conversion. It allows addressing the effects of maintenance and ageing of equipment. It allows a fast and correct calculation of interruption costs in all cases. A Weibull-Markov model with three states is depicted in Figure 29.3.

Pr01 Pr10 Pr21 Pr02 Pr20 S2 2, 2


Fig. 29.3: A Weibull-Markov model

S1 1, 1

Pr12

This example shows all the parameters needed for defining a Weibull-Markov model. If the example model would describe the behavior of a generator, then: State S 0 could describe the state with 100% capacity; State S 1 could describe a derated state with limited capacity; State S 2 could describe the repair state. The parameters beta ('beta') and eta ('eta') are used to define the stochastic duration of each state, i.e. the stochastic TTF (State S 0) or TTR (State S 2). The "Transition Proba29 - 5

DIgSILENT PowerFactory

Reliability Assessment

bilities'' Prij define the probability of the generator to change to another state. The probability Pr01, for example, equals the fraction of failures where the generator is not tripped but kept on line with derated capacity. The probability Pr02 equals the fraction of failures that cause the generator to trip, and Pr01+Pr02=1.0 in this example. In the example of the 7500 monitored transformers, a Weibull-Markov model would result in

10 7500 - a = 530a 0 = --------------------140 TTF = 0 = 530a 7360 - a = 0,006a = 52,6h 1 = ----------140 TTR = 1 = 52,6h 0 = 1,0 1 = 1,0
The shape factors beta0 and beta1 were left at their default values as no data is available for calculating them. The raw data, however, could be analyzed to get more realistic values.

29.1.2

The Reliability Assessment Command


). It can be accessed from the main toolbar when

In PowerFactory the network reliability analysis is carried out using the Reliability

Assessment command (ComRel3

the 'Reliability Analysis' toolbar is selected. The configuration options available for the calculation are described in the following subsections.

29 - 6

DIgSILENT PowerFactory

Reliability Assessment

Basic Options

Fig. 29.4:

Reliability Assessment (ComRel3) Dialogue - Basic Options

The following options can be configured in the Reliability Assessment dialogue shown in Figure 29.4: Analysis Network, connectivity analysis This will start an analysis involving the entire network. A load is assumed to be supplied when it is connected to a source of power. The analysis considers disconnected loads only. A load is considered to be disconnected if it is supplied before a fault and is interrupted due to failure effects. Possible overloading of components is not regarded. Network, load flow analysis This will start an analysis during which load flow calculations are made to check for possible overloading. A load might be disconnected or partially shed due to load or voltage constraints. Generator re-dispatch, load transfer and load shedding are used to alleviate overloads.
29 - 7

DIgSILENT PowerFactory

Reliability Assessment

Start Year Start of the period for consideration of load curves. Stop Year Final year of the period for consideration of load curves. Loads Consider Load Curves If this option is checked, characteristics assigned to the active and reactive power of loads will be considered during the analysis. If unchecked, the power demand entered in the dialog the load element (ElmLod), disregarding any time-based characteristics. Define Load States When considering load curves, the reliability analysis is not able to study each time interval of the study period. A useful approach is to aggregate the individual hours of the time to study to representative states, called clusters. The procedure used in PowerFactory is adaptive and selects the number of clusters according to the load and generation characteristics. Show Load States Displays the load characteristics object which contains the defined load states. Characteristic Load States Sets the time scale for the load state clusters. Possible options are Yearly (creates a load characteristic object for every single year) and Complete Time Range (creates a single load characteristic object for the complete time range). It is recommended to use Yearly only if load characteristics were defined over years. Complete Time Range is recommended when there is no load change/development over several years. Automatic Contingency Definition Selection Commonly in reliability analysis, outages are studied in one specific part of the grid (e.g. at one voltage level), however the consequences of the outages should be analyzed for the entire grid. This option allows the user to define the scope of the outages studied, relative to the entire network. The options are Whole System (consideration of all elements for outages); Single Grid (selection of a single grid contained in the Network Data folder); or User Defined (uses a selection which contains references to the failing elements). Busbars/Terminals Consideration of busbar/terminal outages. Lines/Cables Consideration of overhead line and cable outages. Transformers Consideration of transformer outages. Generators/External Grids Consideration of power source outages. Common Mode Consideration of Common Mode outages. These are groups of elements which are in topological or functional vicinity. Therefore all elements in this group may be affected by a single outage event. Common Mode outages are treated like single element failures.

29 - 8

DIgSILENT PowerFactory

Reliability Assessment

Independent second failures In addition to n-1 outages, n-2 outages for all combinations of n-1 outages are considered. Double-earth faults Consideration of double-earth faults. The probability of double-earth faults can be defined on the Earth Fault tab of the Line Type Failures (StoTyplne) dialogue. Independent/switching failures Consideration of situations where protection devices or circuit breakers refuse to open for fault clearance. The Probability of Failure (of refusal to open) can be defined on the Reliability tab of circuit-breaker elements (ElmCoup, StaSwitch). Maintenance The reliability assessment function in PowerFactory considers not only forced outages, but also scheduled outages. Scheduled outages are known in advance and are therefore considered separately to forced outages. Even if scheduled outages do not lead to service interruptions, they weaken the structure of the grid and therefore thorough reliability analyses should consider them. Loads disconnected due to scheduled maintenance are not treated as interrupted.

Outputs

Fig. 29.5:

Output Tab of Reliability Assessment Dialogue

The following options are available on the Outputs tab (see Figure 29.5): Results This options allows the selection of the result element (ElmRes) where the results of the reliability analysis will be stored. Normally PowerFactory will create a result object within the active study case.

Perform Evaluation of Result File When a reliability analysis is started, all contingencies studied are written to a database file. Typically the database file is analyzed in a second step, where the contingencies can be filtered and the results analyzed in detail. The re-evaluation of the existing database content is carried out when this button is pressed.

29 - 9

DIgSILENT PowerFactory

Reliability Assessment

Output

Displays the form used for the output report. Report settings can be inspected and the format selected by clicking on the button.

FEA
A failure effect analysis (FEA) is made for each system state that occurs during the state enumeration. The configuration options are shown in Figure 29.6 and are explained next.

Fig. 29.6:

Reliability Analysis dialogue - FEA options

Switch/Load Events Delete switch events Removes all switch events associated with the contingencies stored inside the command. Delete load events Removes all load events associated with the contingencies stored inside the command.
29 - 10

DIgSILENT PowerFactory

Reliability Assessment

Fault Clearance Breakers Use all circuit breakers All switches in the system whose Usage is set to Circuit Breaker can be used for fault clearance. Use only circuit breakers with protection device All circuit breakers in the system which are controlled by a protection device (fuse or relay) can be used for fault clearance. Automatic Power Restoration If this option is not selected the FEA will stop after the protection trips and will not perform any remedial actions. All loads disconnected after fault clearance are treated as interrupted. This typically leads to an extreme worst-case analysis, particularly for distribution systems where re-supply by switching is a typical option. Fault Separation Use all separation switches Normally, any components affected by faults will be isolated so that the remaining healthy part of the grid can be re-connected to the power supply. By selecting this option, the user allows all switches to be used for disconnecting a defective component. Use only marked separation switches Normally, any components affected by faults will be isolated so that the remaining healthy part of the grid can be re-connected to the power supply. By selecting this option, the user allows only switches with the option Use for fault separation enabled to be used for disconnecting a defective component. Time to open remote controlled switches The time (in minutes) taken to open remote controlled switches. Switch Actions When set to parallel, it is assumed that the switching actions can be performed immediately following the switching time. However, a switch can be closed for power restoration only after the faulted element was disconnected. When set to serial, it is assumed that all switching actions are performed serially. Overloading This option only appears when the Analysis option on the Basic Options page is set to Load Flow Command Displays the load flow command used for reliability analysis. The load demand is calculated using this load flow. In addition, its settings are used for the overload alleviation calculation. Consider branch if loading exceeds If there are overloaded elements in the system, these overloadings should be removed through overload alleviation. Branches whose loading exceeds this limit, are considered by the overload alleviation algorithm. Network Transmission (Gen. Re-dispatch, Load-Transfer/-Shedding)
29 - 11

Network, Load Flow Analysis.

DIgSILENT PowerFactory

Reliability Assessment

Distribution (Switching Actions, Loading & Voltage Constraints)

Advanced Options

Fig. 29.7:

Reliability Analysis dialogue - Advanced Options

Definition of Colours for the 'Isolated Grids' Colouring Mode The sequence of events during the FEA of a contingency can be visualized on the single line diagram. This option allows the definition of colors to be used for differentiating areas for re-supply. State Enumeration Load States Accuracy Accuracy used for calculating load characteristics. A load is discretized with the accuracy entered here. An accuracy of 5% will divide each load into 20 discrete load steps starting from 0MW up to the maximum demand. Limited number Used to limit the number of load states. If this option is enabled a maximum number of load states can be defined. In the case that the
29 - 12

DIgSILENT PowerFactory

Reliability Assessment

load characteristics generation exceeds this number, an error message is displayed and the algorithm stops. Ignore Load Correlation By default, the time correlation of the load curves is considered when creating the load characteristics. For radial networks this correlation can be ignored. Therefore, to reduce the number of different load states, enable this option. Failures, correction of forced outage rate Usually the failure rate is determined using historical statistics of failures. A failure is registered only if the element was healthy before the failure occurred. Therefore, the failure rate should consider the probability of the element being healthy. To consider this, enable this option.

29.1.3

Calculated Results for Reliability Assessment

The network reliability assessment produces two sets of indices: Load point indices System indices Load point indices are calculated for each individual load point, and are used in the calculation of many system indices. This section provides the principle equations for the various reliability indices, however it should be noted that the actual reliability assessment calculations use somewhat more complex calculation methods. Nevertheless, the principle equations shown here can be used for hand calculations or for gaining a better understanding of the reliability assessment results. In the definitions for the various reliability indices, the following parameters are used:

Ci Ai Fr k pr k
C A

The number of customers supplied by load point i The number of affected customers for an interruption at load point i The frequency of occurrence of contingency k The probability of occurrence of contingency k The number of customers The number of affected customers The total connected kVA interrupted, for each interruption event, m Duration of each interruption event, m The total connected kVA served

Lm rm LT

Load Point Frequency and Expectancy Indices:


ACIF: ACIT: LPIF: Average Customer Interruption Frequency Average Customer Interruption Time Load Point Interruption Frequency
29 - 13

DIgSILENT PowerFactory

Reliability Assessment

LPIT:

Load Point Interruption Time

These indices are defined as follows:

ACIF i = ACIT i =

Frk fraci, k , Unit: 1/a


k

Prk fraci, k , Unit: h/a


k

LPIF i = ACIF i C i , Unit: 1/a LPIT i = ACIT i C i , Unit: h/a ACIT i AID i = --------------ACIF i
where i is the load point index, k is the contingency index, and frac_i,k is the fraction of the load which is lost at load point i, for contingency k. For unsupplied loads, or for loads that are shed completely, frac_i,k=1.0. For loads that are shed only partly, 0.0 <= frac_i,k < 1.0.

For the Analyzed System:


SAIFI the mean interruption frequency found by dividing by the total number of customers in the analyzed system. Customer Average Interruption Frequency Index, in units of [1/A/a], is the mean interruption frequency found by dividing by the total amount of affected customers. i.e. customers that will suffer interruptions, in the analyzed system. Average System Interruption Frequency Index, in units of [1/a], is the equivalent of SAIFI, but scaled by load. System Average Interruption Duration Index, in units of [h/C/a], is the mean time per year that customers are interrupted, by dividing by the total number of customers in the analyzed system. Customer Average Interruption Duration Index, in units of [h], is the mean duration per interruption. Average System Interruption Duration Index, in units of [h/a], is the equivalent of SAIDI but scaled by load. Average Service Availability Index, is the probability of having one ore more loads interrupted. Average Service Unavailability Index, is the probability of having all loads supplied.

System Average Interruption Frequency Index, in units of [1/C/a], is

CAIFI

ASIFI SAIDI

CAIDI ASIDI ASAI ASUI

29 - 14

DIgSILENT PowerFactory

Reliability Assessment

ACIF i C i SAIFI = --------------------------------- , Unit: 1/C/a Ci ACIFi C-i , Unit: 1/A/a CAIFI = -------------------------------- Ai ACITi Ci SAIDI = ---------------------------------- , Unit: h/C/a Ci SAIDI CAIDI = ---------------- , Unit: h SAIFI ASUI = ACIT i C i ---------------------------------8760 C i ( rm Lm ) ------------------------------ , Unit h/a LT Lm --------------LT

ASAI = 1 ASUI ASIDI =

ASIFI =

, Unit 1/a

Load Point Energy Indices:


LPENS LPES Load Point Energy Not Supplied Load Point Energy Shed

These indices are defined as follows:

LPENS i = ACIT i ( Pd i + Ps i ) in MWh/a LPEAR i = ACIT i Pr i in MWh/a LPES i = ACIT i Ps i in MWh/a


Where Pd_i Pr_i Ps_i

is the weighted average amount of power disconnected is the weighted average amount of power at risk is the weighted average amount of power shed at load point i.
29 - 15

DIgSILENT PowerFactory

Reliability Assessment

For the Analyzed System:


ENS SEAR SES AENS ACCI which is expected not to be delivered to the loads. System Energy At Risk, in units of [MWh/a], is the total amount of energy at risk for the system. System Energy Shed, in units of [MWh/a], is the total amount of energy which is expected to be shed in the system. Average Energy Not Supplied, in units of [MWh/C/a], is the average amount of energy not supplied, for all customers. Average Customer Curtailment Index, in units of [MWh/A/a], is the average amount of energy not supplied, for all affected customers.

Energy Not Supplied, in units of [MWh/a], is the total amount of energy

LPENSi in MWh/a SEAR = LPEAR i in MWh/a SES = LPES i in MWh/a


ENS = ENS in MWh/C/a AENS = -----------Ci

ENS in MWh/A/a ACCI = ------------Ai

Load Point Interruption Cost:


LPEIC is defined as

LPEIC i =
where LPEIC_i,k

LPEICi, k in M$/a
is the average interruption cost for load point i and contingency case k, considering the load point interruption costs function and the assessed distribution of the durations of the interruptions at this load point for contingency case k. The interruption costs are calculated differently for different cost functions. All costs functions express the costs as a function of the interruption duration. For cost functions expressed in money per interrupted customer, the number of interrupted customers is estimated for each interruption as the highest number of customers interrupted at any time during the whole interruption duration.

For the analyzed system


EIC

Expected Interruption Cost, in units of [M$/y], is the total expected


interruption cost.

29 - 16

DIgSILENT PowerFactory

Reliability Assessment

IEAR

Interrupted Energy Assessment Rate, in units of [$/kWh], is the total


expected interruption cost per not supplied kWh.

EIC =

LPEICi in M$/a

EIC IEAR = ----------- in $/kWh ENS Additional Calculated Indices for Load Points:
AID Average Interruption Duration [h]

Additional Calculated Indices for Busbars/Terminals:


AID LPIF LPIT Average Interruption Duration [h] Yearly Interruption Frequency [1/y] Yearly Interruption Time [h/y]

29.1.4

Failure Models for Reliability Assessment

Failure models are available for the following PowerFactory objects: Busbars and terminals; Lines and cables; Transformers; Synchronous generators. In addition to the line or cable failure model, a common mode failure model is available. All failure models define how often a component will suffer an active failure. All active failures must be cleared by protection. When a failure cannot be separated from all generators or external networks by protection, a warning message will be issued. Repair of the faulted component is assumed to start directly after the fault has been cleared. The repair duration (which is also defined in the failure models) is the time needed to restore the functionality of the component. The time needed to begin the repair (i.e. if spare parts need to be ordered first) and all other delays are therefore to be included in the total repair time.

29 - 17

DIgSILENT PowerFactory

Reliability Assessment

Busbar and Terminal Failures


The failure model for busbars and terminals is normally specified on the Reliability tab of a bar type (TypBar). This busbar type is then assigned to a busbar or terminal element (ElmTerm) via the Type in the Basic Data tab of the busbar or terminal element. The bar type model (TypBar) has a reference to a failure model (StoTypbar), as shown in Figure 29.8.

Fig. 29.8:

Busbar Type Failures (StoTypbar)

The bar failure model defines a failure frequency for the busbar itself and an additional failure frequency for each connection to the busbar. The repair duration is independent of the number of connections. The total failure frequency for a triple busbar system with six feeders, for example, is calculated as: F_tot = 3 * F_bar + 6 * F_connection [1/a] which would total 0.24 per year for the failure model shown. The bar or terminal elements will show the total outage rate, outage expectancy and mean outage duration on their respective Reliability tabs. See Figure 29.9.

29 - 18

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.9:

Reliability Data for the Busbar/Terminal

The busbar or terminal element can be made to overrule its assigned Type model by selecting an Element model. The terminal element also provides fields for user defined voltage limits and switch access times.

29 - 19

DIgSILENT PowerFactory

Reliability Assessment

Line Failures
The line and cable failure model is normally specified on the Reliability tab of a line type (TypLne). This is a reference to a line failure model (StoTyplne) as shown in Figure 29.10.

Fig. 29.10:

The Line Type Failure Model (StoTyplne)

Depending on the options selected, the line failure model uses a failure frequency or expectancy per unit length. The repair duration is independent of the length. Both the time to failure and the repair duration have a shape factor Beta. The Outage Expectancy equals the Mean repair duration multiplied by the Failure Frequency and is therefore also defined in units of per 100 km length.

Reliability tab of the line/cable element, as depicted in Figure 29.11. The failure data can
be defined in the line type data and used by different line elements.

The frequency, outage expectancy and mean outage duration are displayed on the

29 - 20

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.11:

Reliability Data for Line/Cable

The line or cable element can be made to overrule its assigned Type model by selecting an Element model. The line element offers an additional user defined parameter on its Reliability tab: Load Shedding/Power Restoration Constraints Settings valid for emergency loading situations. Max. Loading This is the admissible loading during contingencies. Typically this value depends on the thermal inertia of the element (cable or line) as this emergency loading will only occur for a limited time. Reasonable values may be between 120% and 140%. If the loading of the element exceeds this limit the reliability analysis will start load-shedding.

29 - 21

DIgSILENT PowerFactory

Reliability Assessment

Transformer Failures
A single transformer failure model is available for both two- and three-winding transformers. The transformer failure model is normally specified on the Reliability tab of a transformer type (TypTr2, TypTr3). This is a reference to a failure model as depicted in Figure 29.12.

Fig. 29.12:

The Transformer Failure Model (StoTyptrf )

Depending on the selected options, the transformer failure model has a Failure Frequency or Expectancy and a Repair duration distribution. Both the time to failure and the repair duration have a shape factor Beta. The Outage Expectancy equals the Mean repair duration multiplied by the Failure Frequency.

29 - 22

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.13:

Reliability Data for a Transformer

The frequency, outage expectancy and mean outage duration are displayed on the Reliability page of the transformer element, as depicted in Figure 29.13. The transformer element can be made to overrule its assigned Type model by selecting an Element model. All transformer failures are assumed to be active failures. Like the line element, the transformer element Reliability tab also offers an additional parameter to be defined. Load Shedding/Power Restoration Constraints Settings valid for emergency loading situations. Max. Loading Admissible loading during contingencies. For transformers, a value may be entered up to 140%.

29 - 23

DIgSILENT PowerFactory

Reliability Assessment

Synchronous Machines Failures


The failure models for busbars, lines and transformers have a fixed number of possible states. Essentially, these elements are either available or not. In contrast, the failure models for the synchronous generator, however, allow for any number of states. Therefore, PowerFactory makes it possible to model so-called 'derated' states, in which the generator is still available but with reduced capacity. The synchronous generator failure model is depicted in Figure 29.14 (Stochastic Synchronous Machine Model (StoSym)).

Fig. 29.14:

Stochastic Synchronous Machine Model (StoSym)

In such cases, the failure model is somewhat more difficult to define. The first step is to append one or more states to the model, as the default model has only one state. This is done by going to the Stochastic Model tab, right-clicking on the row number of an existing state in the State Duration Matrix and selecting Append Rows, as depicted in Figure 29.15.

29 - 24

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.15:

Appending a State

The second step is to name the created states and to enter the capacity in each state. The stochastic synchronous machine has the following state attributes: Relative Nominal Apparent Power percentage Machines On Outage A fully available machine has: Nominal Power = 100% Machines On Outage = 0 A fully unavailable machine has: Nominal Power = 0% A derated state can be defined by defining a nominal power of less than 100%, or by setting Machines On Outage > 0. A nominal power or 50%, for example, will halve the capacity of all parallel machines, but all machines will remain running. A number of machines on outage larger than zero will also reduce the total capacity, but will additionally cause a change in the electric properties due to the reduced number of machines running. The definition of the Weibull-Markov model for the synchronous machine, i.e. the definition of the state duration matrix, transition probability matrix, or the transition rate matrix, is described in Section (Defining a Stochastic Model for a Power Plant). A failure model is selected for a synchronous machine by setting the Stochastic Model reference on the Reliability tab of the synchronous machine element (ElmSym), as depicted in Figure 29.16.

29 - 25

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.16:

Assigning a Stochastic Model to a Machine

Each failure model may be used by more than one synchronous machine at the same time. All synchronous machines which use the same failure model will nevertheless behave stochastically, independently of one other.

Defining a Stochastic Model for a Power Plant


All failure and load models needed for reliability assessment calculations are based on the advanced Weibull-Markov model. For most failure models, however, a simple interface is offered for entering the failure data. For a transformer, for instance, it is sufficient to enter a failure frequency and a mean repair duration. In some cases, the Weibull-Markov model can be defined freely. Examples are the failure model for the synchronous generator and the stochastic load model. The advantage of a free definition of the failure or load model is that it allows for any number of states. A failure model for a synchronous generator may therefore also contain so-called derated states, in addition to the "in-service'' and the "out-of-service'' states. The ability to define any number of states is particularly important for creating realistic load models. The interface available for creating a Weibull-Markov model is described in this section, and is shown in Figure 29.17 (Example of a Weibull-Markov model).

29 - 26

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.17:

Example of a Weibull-Markov model

The Weibull-Markov model allows stochastic data to be entered in a number of ways. The following parameters may be used. Mean Variance Beta Lambda The mean state duration The variance of the state duration The form factor of the Weibull probability distribution The characteristic time of the Weibull probability distribution

Transition Rates The rates at which the element changes to the other states Transition Probabilities The probabilities of changing to other states. Because these parameters are redundant -- each can be calculated from the others -there is more than one way to define a WM-model. Two primary methods may be used: - Specifying transition rates - Specifying state duration parameters and transition probabilities The choice of what to enter is made by pressing the Options button. The state duration parameters Mean, Variance, Beta and Lambda are 2-out-of-4 redundant; i.e. two of them will determine the other two. The combination of mean state durations and transition probabilities will determine the transition rate matrix. The transition rate matrix alone determines both mean state durations and transition probabilities. The Variance or Beta must be specified additionally
29 - 27

DIgSILENT PowerFactory

Reliability Assessment

when the transition rate matrix is used. By default, the Beta parameter equals 1, which yields a standard homogenous Markov model. In Figure 29.17, an example is shown for a model which was defined by entering state duration parameters (Mean duration and Beta), and transition probabilities. The example shows a generator model with a derated state. The first state (named "in service'') has a mean duration of 2850 hours. There is a 65% probability that, when a failure occurs, the generator will transition to state 2 (named "single burner'') and a 35% that it will go to state 3. The Weibull-Markov model is determined completely by the state duration parameters and the transition probabilities. The use of form-factors (Beta) that differ from 1.0 is optional. The button Options may be used to switch to the transition rate matrix at any time. The transition rate matrix is calculated from the state durations and transition probabilities. Figure 29.18 shows the transition rate matrix for the model depicted in the figure.

Fig. 29.18:

The Calculated Transition Rate Matrix

When the transition rate matrix is changed, the state duration matrix and the transition probability matrix also subsequently change. Figure 29.19 shows the failure model following rounding of the transition rates.

29 - 28

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.19:

The Weibull-Markov Model by Transition Rates

A Weibull-Markov model may therefore be defined as: a Weibull-Markov model, by state durations and transition probabilities; or a homogenous Markov model, by transition rates only. In addition to the transition rates, the Beta's of the state durations may be changed to values other than 1.0, thus creating a Weibull-Markov model from 'homogenous data'. A Weibull-Markov model with all Beta's set to 1.0 will equal a standard homogenous Markov model, which is fully determined by its transition rates. As soon as a Weibull-Markov model has been defined, all statistical parameters for each state are calculated automatically: The state Probability, which is the long-term probability of finding the element in the state; The state Frequency, which is the mean number of times per year the element enters or leaves the state; The state Expectancy, which is overall mean number of hours per year the element spends in the state; The Mean Time Between, which is the mean time between entering the state. These state statistics are shown, together with the duration distribution, on the Graph tab as depicted in Figure 29.20.

29 - 29

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.20:

Example State Statistics

29 - 30

DIgSILENT PowerFactory

Reliability Assessment

Maintenance
Maintenance is included in the reliability assessment by defining one or more maintenance blocks. A maintenance block consists of: A list of objects to maintain; A maintenance schedule. All objects in the list of objects will be taken simultaneously out of service for maintenance by this maintenance block. See Figure 29.21 for an example.

Fig. 29.21:

Defining a Maintenance Block

The maintenance schedule is a list of deterministic moments in time at which the maintenance will start. For each planned maintenance activity, the duration must be given. See Figure 29.22 for an example.

29 - 31

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.22:

Defining a Maintenance Schedule

Common Mode Failures


All component failure models are independent models. Two or more objects may share the same failure model, but their failure behavior will be independent. From the failure models, the outage expectancy can be calculated as the average fraction of time, or the average time per year, during which the component is not available. Two parallel lines on the same tower or two cables in the same trench will normally share the same failure data. The probability of both lines on outage at the same time will be the product of the individual outage probabilities, because the failures that lead to the outages are independent. The following example illustrates this. Suppose each line suffers an outage once every 5 years, for 10 hours. Their outage expectancy is therefore 2 h/y and their individual outage probability is 2.3CDOT 10^4. The probability of the overlapping events which result in both lines on outage is 5.2CDOT 10^-8, and the outage expectancy is thus only 1.6 SECONDS per year. The overlapping outage occurs on average once every 21900 years. The double outage, however, may be much more frequent due to causes that effect both lines. Examples of such causes are dredging, lightning, storms, cars hitting poles, etc. The common mode object which is used to model such common mode causes is depicted in Figure 29.23 and Figure 29.24.

29 - 32

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.23:

Common Mode Failure: Basic Data

Fig. 29.24:

Common Mode Failure: Failure Data

The Basic Data page of the common mode model shows a list where all objects that are outaged by the common cause can be entered. The failure data is entered in the Failure Data page. The example shows a common cause which outages two lines once every 5 years on average, for an average of 52 hours. Common mode failure models can be defined for lines or cables and for line or cable routes. The common mode failures will not cancel the individual failure models, but will cause additional (simultaneous) outages of all listed components. Common mode failure models are created as: In the database manager, open the grid folder in which the elements for which a common mode failure is to be defined are located Create a new StoCommon object in this grid folder (click on the Enter the failure frequency etc., as described above. icon)

Add two or more lines in the model and select the elements that will fail

29 - 33

DIgSILENT PowerFactory

Reliability Assessment

29.1.5

Load Modeling for Reliability Assessment

Stochastic Load Models


A power system may include independent stochastic loads, such as large industrial loads, pumping stations, etc. For most applications, however, the behavior of the loads can be modeled by historic characteristics. The settings for load characteristics can be entered in the Reliability tab of the load element (ElmLod) dialogue. In addition to the parameters displayed, load characteristics (e.g. 24h-load curve, annual load growth rate) can also be considered in the reliability evaluation. The Reliability tab of the load element is shown in Figure 29.25. The following section describes the options available.

Fig. 29.25:

Stochastic Load Model

Number of connected customers In addition to the loads active and reactive power, the number of connected customers also impacts on the calculation of some load point and system indices (e.g. SAIFI, SAIDI). The number of individual customers connected to this particular load element is specified here. Interruption costs A characteristic of interruption cost (given in currency units per kW of installed power) can be referred to. This possibility is discussed in detail in the next section of this chapter. Time dependent rate A characteristic describing the interruption costs per (for example) kWh, over interruption time.

29 - 34

DIgSILENT PowerFactory

Reliability Assessment

Scaling factor

This factor is used to scale the cost characteristic and adapt it to a specific customers damage cost. The following units can be selected: $/kW, $/customer, or $. If load shedding is required, the Load Priority is used for discriminating between more important loads and less important loads. The priority value is proportional to the importance of the load; i.e. the higher the priority value, the more important the load. It should be noted that this value is only used as a guide within the reliability calculation; the algorithm will try to shed lower priority loads first, but may ultimately (or alternatively) shed higher or highest priority loads depending on system conditions.

Unit

Load Shedding/Transfer Load Priority

Shedding Steps Number of steps for load shedding. For example, a value of 4 steps means that the load can be shed in steps of 25%. An infinite number of steps means a load that can be shed exactly as required. Transferable This percentage indicates the extent to which a load can be supplied by an external source, i.e. by a connection to a neighboring network which is not shown in detail in the grid.

Alternative Supply Node Node which delivers the transferred power. If this node is not given, it is assumed that the transferred supply comes from outside the modeled grid.

29 - 35

DIgSILENT PowerFactory

Reliability Assessment

Interruption Cost Functions


Interruption cost functions are defined as one-dimensional vector characteristics (ElmVec) with time scales (TriTime). An example is shown in Figures 29.26 and 29.27. The time scale is freely definable, but must be monotonically rising. More than one interruption cost function may be used at the same time for different loads, and each function may use a different time scale.

Fig. 29.26:

Customer Damage Function - Time Intervals

29 - 36

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.27:

Customer Damage Function - Cost per Time Interval

Interruption costs functions are not interpolated in any way. The interruption costs used for a certain interruption duration will remain constant between durations. This means that an interruption functions such as:

30min $7.50 60min $20.00 180min $80.50


means that:

0min t < 30min $0.00 30min t < 60min $7.50 60min t < 180min $20.00 180min t $80.50
Selecting an interruption cost function for a particular load is done by setting the Time dependent rate reference on the Reliability tab of the load element dialogue, as depicted in Figure 29.28. The type (parameter name: Unit) of the interruption cost function must be set in the load element. Three types of interruption cost functions can be used: $/kW $/customer $ Cost per interrupted power (kW), versus the interruption duration. Cost per interrupted customer, versus the interruption duration. Cost versus the interruption duration.
29 - 37

DIgSILENT PowerFactory

Reliability Assessment

The selected interruption cost function will be interpreted according to the selected Unit.

Fig. 29.28:

Load with Interruption Cost

Load Shedding and Transfer


Load transfer and load shedding are performed for the express purpose of overload alleviation. If overloading is detected in the post-fault system condition, a search is begun for the loads contributing to these overloads. The overloads are then alleviated by either: Transferring some of these loads, if possible; or Shedding some of these loads, starting with the lowest priority loads. Each load model uses three values to define the load transfer and load shedding possibilities: The number of load shedding steps (parameter name: Shedding steps) defines the minimum amount of load that can be shed. Four shedding steps means that the load can only be shed to 25%, 50%, 75% or 100%. A value of zero shedding steps means that the load can be shed up to any amount. The Load priority is used to determine which loads to shed. The algorithm will always try to shed the loads with the lowest priority first. However, should system conditions require it, higher priority loads may be shed instead, or they may be shed following the shedding of lower priority loads. The load transfer percentage (parameter name:Transferable) defines the amount of load that can be transferred away from the current network. The network that picks up the transferred load is not considered. A transfer percentage of 30% would mean that the load can be transferred away, by up to 30%. A percentage of zero means that no transfer is allowed. A distinction should be made between load transfer for overload alleviation, and load transfer for power restoration. Load transfer by isolating a fault and closing a back-stop
29 - 38

DIgSILENT PowerFactory

Reliability Assessment

switch is already considered during the fault separation and power restoration phase of the failure effect analysis.

29.1.6

System State Enumeration in Reliability Assessment

The enumeration method analyses all relevant possible states of the system one by one. A fast "topological'' state enumeration method is used which ensures that each possible system state is only analyzed once. Realistic state frequencies (average occurrences per year) are calculated by considering only the transitions from a healthy situation to an unhealthy one and back again. This is important as the individual system states are analyzed one by one, and the (chronological) connection between them is therefore lost. The enumerated calculation method has the advantage that is fast enough for quick investigation of large distribution networks, but does not compromise accuracy. Exact analytic averages are calculated. Distributions of reliability indices, however, cannot be calculated. For example, the average annual unavailability in hours/year can be calculated, but the probability that this unavailability is less than 15 minutes for a certain year cannot be calculated. The state enumeration algorithm may include independent, overlapping failures as well as common mode failures and maintenance schedules. The use of the Weibull-Markov model means that annual interruption costs can also be assessed accurately. The principle flow diagram for the entire reliability assessment by state enumeration is depicted in Figure 29.29.

29 - 39

DIgSILENT PowerFactory

Reliability Assessment

Pre-Processing - Load Curves - Load Growth - Statistics Initialization

First Contingency

Fault Clearance

Next Load Demand

Fault Separation

Adjust Load-Flow

Power Restoration

Overload ? Y

Worst-Case AC Load-Flow

Optimize Energy at Risk

First Year of Load Growth

Optimize Load Shedding

First Load Demand

Update Statistics More More

Next Year of Load Growth Next Contingency

More

Post-Processing - Load Point Indices - System State Indices - Reports

Fig. 29.29:

Principle Flow Diagram for Reliability Assessment by State Enumeration

After the termination of the State Enumeration, the analyzed cases are available for verification. An example can is given in Figures 29.30 and 29.32.

29 - 40

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.30:

Reliability Assessment - Contingency Cases

Fig. 29.31:

Contingency Case (ComContingency) Dialogue

29 - 41

DIgSILENT PowerFactory

Reliability Assessment

29.1.7

Failure Effect Analysis in Reliability Assessment

Of central importance in the reliability assessment calculation is the analysis of the reaction of the system to specific contingencies. This analysis is performed by the failure effect analysis (FEA) function. The FEA function is a stand-alone function which can also be started separately. Basically, a FEA analysis consists of 4 steps: Fault clearance; Fault isolation; Power Restoration; Overload alleviation. The failure effect analysis for the network assessment may be carried out with or without overload alleviation. Overload alleviation is performed by calculating an AC load flow, searching for overloaded branches and performing load transfer and load shedding. Disabling the overload alleviation for networks where overloads due to contingencies are not expected to occur may speed up calculations considerably. The failure effect analyses will be performed for each failure. For every failure a contingency is created. Should the calculation be using load characteristics, a contingency is created for every failure and load state. The general sequence of actions is illustrated in Figure 29.32. For each of the system states, one or more failures are present in the system. All failures are assumed to be active, i.e. they will cause an intervention by the protection system. The system is assumed to react to these short-circuits by immediately opening one or more protection switches (breaker B2), followed by manual or automated separation of the faulted equipment (disconnectors D2A, D2B) and the restoration of power to the remaining part of the protected area (restoration switch R12).

B1 R12 F2

B2

D2A

D2B

Fig. 29.32:

Fault Clearance and Power Restoration

Fault Clearance
The fault clearance functions assume 100% selectivity of the protection. Therefore it is assumed that the relays nearest to the failure will open. In the case that protection/ switching failures are considered in the FEA, it is assumed that the next protection device
29 - 42

DIgSILENT PowerFactory

Reliability Assessment

has a 100% selectivity. Failure of either the protection system or of circuit breakers is not considered in the present version of PowerFactory. In the pre-processing phase of the reliability assessment, all breakers in the system that can be tripped by an overcurrent or distance relay, fuse, or any other kind of relay, are marked as "protection breakers''. Figure 29.33 shows a simple network containing four loads, a breaker and a back-stop switch. The current system state to be analyzed for possible load interruptions is the one with a short-circuit on line "LR2''.

Fig. 29.33:

Short-Circuit on Line

At fault clearance, a topological search is started at all faulted components. This search will find the smallest network area around each faulted component which is confined by protection breakers only. This smallest area will be isolated from the rest of the network if these protection breakers are opened. This set of protection breakers is further reduced by regarding only those breakers which would actually interrupt a fault current. Breakers further down a feeder past the fault position, i.e. breakers that would not see a fault current, will not be opened. The fault clearance phase is ended by opening the minimum set of protection breakers found earlier. If it is impossible to isolate the faulted component from all synchronous generators or external networks by protection breakers only, then an error message will be issued and the reliability assessment will terminate. The area around the faulted components which is isolated by the protection breakers is referred to as the "protected area''. Figure 29.34 shows the example network after the fault clearance functions have opened the protection breaker. The protected area is the whole bottom line feeder; and loads 1, 2, and 3 are interrupted.

Fig. 29.34:

Protected Area

29 - 43

DIgSILENT PowerFactory

Reliability Assessment

Fault Isolation
If the option Automatic Power Restoration has been enabled in the FEA tab of the Reliability Assessment command dialogue, and one or more separation and one or more power restoration switches have been found, an attempt is made to minimize the effects of the faults by re-connecting as many loads as possible back to the healthy part of the system. After the protected area and the tripped breakers have been determined during the fault clearance phase, a search is started for the minimum separated area. The fault separation and power restoration both make use of the same topological search for switches as has been used to find the protection breakers during the fault clearance phase. The fault separation phase starts a topological search at the faulted components for the smallest area around these components which is confined by separating breakers. This smallest area will be isolated from the remaining network by opening these separating switches. Either all closed switches qualify as separators, or only those switches which have the option Use for fault separation selected in the switch elements Reliability tab (when the option Only use marked separation switches was selected on the FEA tab of the reliability command dialogue). The result of the search for the separation switches is a set of separating switches which will, when opened, isolate the smallest possible area around the faulted elements from the rest of the network. This area is called the "separated area''. The separated area is smaller than, or equal to, the protected area. It will never extend beyond the protected area. The area between the protected and the separated area is called the "restorable area'' because, in principle, power may be restored to those areas. Figure 29.35 shows the example network with the opened separation switches. The separated area now only contains the faulted line. Two restorable areas result from the fault separation; the area which contains load 1, and the area which contains loads 2 and 3. Power to load 1 is restored by (re)closing the protection breaker. The left-most separation switch is remotecontrolled and has a switching time of 3 minutes. The protection breaker is also remote controlled, and load 1 is therefore restored in 3 minutes (=0.05 hours). Load 2 and 3 are still to be restored.

Fig. 29.35:

Fault Isolation and Power Restoration

29 - 44

DIgSILENT PowerFactory

Reliability Assessment

Power Restoration
If the option Use Power Restoration Switches has been enabled in the command dialogue, then a search will be started for the minimum number of restoration switches needed to restore as large a part of the protected area as possible. During this search, only the opened protection switches and the normally open switches that have the option Use for power restoration selected, are considered. The power restoration phase uses a topological search for all power restoration switches along the borders of the restorable areas. Each of these switches that are connected to an area that is still supplied are marked as possible candidates for power restoration. For each restorable area, only the fastest candidate switch is closed. Each restorable area that is reconnected to the supplied network is called a "restored'' area. Figure 29.36 shows the example network in which power to load 1 is restored by (re)closing the protection breaker. Power to load 2 and 3 is restored by closing the back-stop switch. Because the back-stop switch has a switching time of 30 minutes, loads 2 and 3 are restored in 0.5 hours. The network is now in the post-fault condition.

Fig. 29.36:

Power Restoration by Back-Stop Switch

All loads and busbars in a separated area are considered to be interrupted for the duration of the repair, which is normally in the order of hours. All loads and busbars in a restored area are considered to be interrupted for the time needed to open all separators and to close all power restoration switches. Each switch can have an individual actuation time defined. Effects of automation and remote control can thus be analyzed by lowering the actuation times for the remote controlled switches. In order to enhance the transparency of the network reliability assessment, the system response to user selected faults can be made visible in the single line diagram. The different areas and the protection, separation and restoration switches can be colored differently. This gives a quick insight into the possible impact of certain faults or fault combinations. Click on the Colour Representation icon ( the appropriate colouring mode. ) on the main toolbar to select

29 - 45

DIgSILENT PowerFactory

Reliability Assessment

Overload Alleviation and Power at Risk


Many reliability calculations in radial distribution systems may be carried out assuming that overloading of lines due to the outage of one or more components seldom occurs. In such cases, the overload verification may be disabled, thereby increasing the calculation speed. A connection algorithm is used to check if a certain busbar or load is still physically connected to a generator or external network. When this is the case, the load or busbar is considered to be supplied. In meshed structures, or in cases where overloading is important (i.e. when there is a risk that increasing loads would lead to overloading), an overload verification must be used. For all contingencies which are analyzed in the reliability assessment, an AC load flow is carried out for the post-fault system state. The post-fault system state is reached after the fault clearance, fault separation and power restoration processes have finished. Figure 29.37 shows a line overload in the post-fault condition in the example network: line "LnA'' is loaded to 122%.

Fig. 29.37:

Overloaded Post-Fault Condition

Load Transfer
In many distribution systems, it is possible to transfer loads from one feeder to the other. If both feeders are being considered in reliability assessment, and when the normallyopen switch between them is marked for power restoration, the transfer will be automatically performed in the power restoration phase. In some cases, however, the transfer switch and/or the alternative feeder are not included in the network model for which the reliability assessment is made. This may be the case when a (sub-)transmission network is analyzed, where the connected distribution networks are modeled as single lumped loads. In this scenario, transfer switches that connect two distribution networks will not be visible. Therefore, the possibility of transferring parts of the lumped load model to other feeders can be modeled by entering a transfer percentage at each lumped load. This transfer percentage defines the portion of the lumped load that can be transferred 'away' from the analyzed network, without specifying to which feeder(s) the portion is transferred. The use of the load transfer percentage (parameter name: Transferable on the load elements Reliability tab) is only valid when load transfer is not expected to result in an overloading of the feeders which pick up the transferred loads. Load transfer is used in the overload alleviation prior to the calculation of power at risk (see following section for further information). The power at risk is considered to be zero if all overloads in the post-fault condition can be alleviated by load transfers alone.
29 - 46

DIgSILENT PowerFactory

Reliability Assessment

Load Shedding
In the example network shown in Figure 29.38, loads 2, 3 and 4 all contribute to the line overload. As a result, some of these loads must be shed. There are three basic variations of shedding that can be used: Optimal load shedding Priority optimal load shedding Discrete optimal load shedding Optimal load shedding presumes that all loads can be shed to any amount. The target is then to find a shedding variation in which as little load as possible is shed. In the example network it does not matter which load is shed, as a MW reduction of any load will result in equal reduction of the line overloading. In more complex (meshed) networks, with more than one overloaded branch, the reduction of one particular load may have a greater impact on the total overloading than the reduction of another load. The reliability assessment functions use linear sensitivity indices to first select those loads with any contribution to overloading. A linear optimization is then started to find the best shedding variation for alleviating all overloading, which will minimize the total amount of shed load. The resulting minimum amount of shed load is called the "Power at Risk'', because it equals the minimum amount of load that has to be shed in case of the initial network fault occurring. The power at risk is multiplied by the duration of the system state to get the "Energy at Risk''. The total energy at risk for all possible system states is reported after the reliability assessment has finished, and is referred to as the "System Energy At Risk'' (SEAR). Figure 29.39 shows the calculated energy at risk. Because the line was overloaded by 0.53 MW and the faulted line has an outage expectancy of 0.15 h/a, the energy at risk is 0.08 MWh/a.

Fig. 29.38:

Energy at Risk

The priority load shedding is performed after the power at risk has been determined. The priority optimal load shedding considers the load priorities defined for each load. The overload alleviation functions use the load sensitivity indices to calculate the lowest possible shedding priority. This is done such that when all loads which have equal or lower priority would be shed, then all overloads would be alleviated. From this, it is clear that loads with higher priorities do not need to be shed to alleviate the overloading. The priority load shedding is performed by repeating the linear optimization for the lower priority loads only. Figure 29.39 shows that when load 4 is set to a higher priority, load 2 is shed instead.

29 - 47

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.39:

Priority Load Shedding

Discrete optimal load shedding is performed together with priority load shedding. Mixing discrete and priority load shedding does not require additional calculations. The discrete load shedding variation uses the fact that each load can only be shed over a fixed number of steps. The number of possible steps is entered in each load element (Reliability tab, parameter Shedding steps). The discrete shedding variation is calculated by transforming the linear optimization problem into a discrete optimization problem. Solving this linear optimization problem results in a higher or equal total shed power. Figure 29.40 shows the example network where all loads can only be shed completely. As the demand at load 3 is only 0.35 MW, and the overload is 0.53 MW, it cannot contribute to overload alleviation. Shedding load 2 therefore leads to the minimum amount of shed load.

Fig. 29.40:

Discrete Load Shedding

29.2
29.2.1

Voltage Sag Analysis


Calculation Options

Voltage sag analysis has a lot in common with probabilistic reliability analysis. Both use fault statistics to describe the frequency of faults and then use these statistics to weight the results of each event and to calculate the overall effects of failures. Reliability analysis looks for sustained interruptions as one aspect of quality of supply, whereas voltage sag analysis calculates the voltage drop during the fault until the protection system has disconnected the defective component. An assessment of voltage sag tables for a selection of load points can be started as follows:
29 - 48

DIgSILENT PowerFactory

Reliability Assessment

Select one or more busbars/terminals and/or loads in the single line diagram or the data manager, right-click the selection and select "Calculate... --> Voltage sag table..."; or Click on the icon on the main toolbar to activate the Additional Tools toolbar (if ).

not already visible), and then click the Voltage sag table assessment icon (

In both cases, the voltage sag table command dialogue will open, as shown in Figures 29.41 and 29.42.

Fig. 29.41:

Voltage Sag Table Assessment - Basic Options

Basic Options Load selection Reference to the set of load points. A load point can be defined by a busbar, terminal or load. Short-circuit command Displays the short-circuit command that is used. The options for the short-circuit type will be changed during the voltage sag calculation, depending on the Advanced Options specified in the ComVsag dialogue. However, other settings may be inspected or changed by clicking on the button. Results Reference to the result file that is used for storage of results. Exposed area limit This defines the minimum remaining voltage for the voltage sag calculation to continue calculating short-circuits at busbars which are further away from the selected load points. If short-circuits at all busbars (at a certain distance away from all load points) result in voltages at the load points being higher than this limit, then no further short-circuit will be analyzed. Advanced Options The Advanced Options shows the various short-circuit types that can be analyzed by the voltage sag assessment command. All components for which a failure model has been defined use the same short-circuit frequency. It is not possible to define frequencies of occurrence for single phase, two-phase or three-phase short-circuits independently for each component. The relative frequency for each type of short-circuit is entered for all components in a uniform way.
29 - 49

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.42:

Voltage Sag Table Assessment - Advanced Options

The voltage sag analysis simulates various faults at all relevant busbars. It starts with the selected load points, and proceeds to neighboring busbars until the remaining voltage at all load points does not drop below the defined Exposed area limit. The remaining voltages and the short-circuit impedances for all load points are written to the result file specified by the Results parameter. After all relevant busbars have been analyzed, the sag table assessment continues by analyzing short-circuits at the midpoint of all lines and cables that are connected between the relevant busbars. Again, the remaining voltages and short-circuit impedances for all load points are written to the result file. After the complete exposed area has been analyzed in this way, the result file contains the values for Z_F1, Z_F2, Z_F0, Z_S1, Z_S2, Z_S0 and ura, uia, urb, uib, urc, uic for the two ends of all relevant lines and cables and at their midpoints. The written impedances are interpolated between the ends of a line and the middle with a two-order polynomial. From them, and from the written remaining voltages, the various source impedances are estimated. These estimated impedances are also interpolated between the ends and the midpoint. The interpolated impedances are then used to estimate the remaining voltages between the ends and the midpoints of the lines or cables. This quadratic interpolation gives very good results also for longer lines, and also for long parallel or even triple parallel lines. The main advantage is a substantial reduction in computation and an increase in the overall calculation speed.

29 - 50

DIgSILENT PowerFactory

Reliability Assessment

29.2.2
1

Performing a Voltage Sag Table Assessment

A voltage sag table assessment is performed in two phases: A result file with remaining voltages and short-circuit impedances is created by executing the ComVsag command. This can be done by selecting one or more nodes, right-clicking and executing the Calculate... --> Voltage sag table... option, or by initiating the command directly from the main toolbar by clicking on the 2 icon. A voltage sag plot is created by selecting one or more of the nodes for which the ComVsag command was executed, right-clicking and executing the option Show --

> Voltage Sag Plot...


Alternatively,

The Load selection in the ComVsag dialogue can be filled manually with a set of objects. A load point is defined by a terminal, a busbar, or by a single-connection element (a load, motor, generator, etc.). These kinds of elements can be multiselected from the single-line diagram or data manager. Once selected, right-click on them and select Define... --> General Set from the context-sensitive menu. This set can then be selected as the Load selection. A voltage sag plot can be created on a virtual instrument page manually, and the load points can then be selected from the list of analyzed load points. If several objects are selected which are all connected to the same busbar, then that busbar will be added only once to the set of load points. The Load selection parameter in the voltage sag assessment command should be set to use the SetSelect which has the Used for: Voltage sag table flag set. However, any other selection may be assigned to the Load selection. The voltage sag tables are not calculated until a voltage sag plot is constructed. Upon reading the remaining voltages, short-circuit frequencies and short-circuit impedances from the result file, a voltage sag table is constructed for each selected load point. Figure 29.43 shows the voltage sag plot dialogue.

29 - 51

DIgSILENT PowerFactory

Reliability Assessment

Fig. 29.43:

Voltage Sag Plot Dialogue

Because there is no single definition of a voltage sag, the plot offers a selection of sag definitions: Minimum of Line-Neutral Voltages Minimum of Line-Line Voltages Minimum of Line-Line and Line-Neutral Voltage Positive Sequence Voltage Secondly, the x-variable against which the sag frequency will be shown has to be selected. Possible x-variables are: Remaining Voltage Nom. Voltage at Shc-Busbar Fault Clearing Time Short-Circuit Type Additionally, the x-variable can be sub-divided according to a split-variable (parameter name: Split Bars in). Possible split variables are:
29 - 52

DIgSILENT PowerFactory

Reliability Assessment

no split any of the possible x-variables the same parameter cannot be selected for the x-variable and the split-variable. An example of the resulting voltage sag plot, in accordance with the settings shown in Figure 29.43 is shown in Figure 29.44.

Fig. 29.44:

Example Voltage Sag Plot

The voltage sag plot always shows the annual frequency of occurrence on the y-axis. The example plot shows a bar for each load point for each x-variable, which is the Remaining Voltage. All three loads can be seen to suffer either deep sags (remaining voltage less than 0.4 p.u.), or very shallow sags, although the values at 0.8 p.u. are also significant. Each bar is subdivided to the nominal voltage at SHC-Busbar. The shallow sags are caused by the low voltage network, as well as the very deep sags. The high voltage network seems to cause moderate voltage sags. This is caused by the fact that the low voltage networks in this example are radially operated and the higher voltage networks are meshed. More detailed information about a specific value in the voltage sag plot can be obtained by placing the mouse over a bar or part of a bar (without clicking) and allowing the balloon help to pop up. The voltage sag plot dialogue has a Report button, which outputs the voltage sag plot data to the output window. A table for each selected load point will be written in accordance to the selected Voltage Sag definition, x-Variable and Split Bars in selection. An example of a voltage sag table is shown below. The reported voltage sag tables also show the totals for each row and column.
DIgSI/info - 'Grid\TA2.ElmTerm' col : Remaining Voltage (Volt.Sag) [p.u.] row : Nom. Voltage at Shc-Busbar (Unom Shc) [kV] val : Frequency of Shc (Sag Freq.) [1/a] ---------------------------------------------------------------------| 0.20 0.50 0.60 0.80 0.85 0.90 0.95 1.00 | -------|-------------------------------------------------------|-----10.0 | 1.56 0.94 0.00 0.00 0.00 0.00 2.25 6.75 | 11.50 50.0 | 1.45 1.52 0.00 0.83 0.09 0.12 1.08 5.57 | 10.66 150.0 | 3.50 2.32 1.67 0.00 0.00 0.00 0.00 0.00 | 7.50 380.0 | 0.00 1.25 0.00 1.25 0.00 0.00 0.00 0.00 | 2.50 -------|-------------------------------------------------------|-----| 6.52 6.04 1.67 2.08 0.09 0.12 3.33 12.32 | 32.16 ----------------------------------------------------------------------

29 - 53

DIgSILENT PowerFactory

Reliability Assessment

29.3

Compact Reliability Glossary

Lost load
A system load that is disconnected from the supply as a direct result of one or more system failures by intervention of automatic protection devices. A system load cannot be partly lost.

Shed load
A system load that is disconnected from the supply as a result of one or more system failures by intervention of a system operator. A system load may be shed up to a certain percentage.

Stochastic
A quantity is said to be stochastic when its value is random and therefore unknown. The range of possible values is known, however, as is the respective likelihood of these values. The number of eyes thrown with a dice is random, the possible outcomes are {1,2,3,4,5,6} and the likelihood is frac16 for each outcome. For a continuous range of possible outcomes, the likelihood is a continuous function, which is called the Probability Density Function or "PDF''.

Statistic
Statistical calculation methods are used to analyze stochastic quantities. A simple example is the method for calculating a mean repair duration by dividing the total time spend repairing by the number of repairs performed. Information obtained using statistical methods on measured data can be used to build stochastic models of the observed equipment.

Outage
The removal of a primary component from the system.

Forced Outage
The unplanned removal of a primary component from the system due to one or more failures in the system. A failure does not have lead to lead to an outage, for instance the failure of a transformer tap changer.

Scheduled Outage
The planned removal of a primary component from the system.

Maintenance
The planned removal of one or more primary components from the system.
29 - 54

DIgSILENT PowerFactory

Reliability Assessment

Spare Unit
A reserve component, not connected to the system, which may be used as a replacement for a component on outage by switching or replacing.

Failure
The event in which a component does not operate as intended or stops operating as intended. An example of the former is a circuit breaker that fails to trip; an example of the latter is a transformer that is tripped by its Buchholz relay.

Hidden Failure
An undetected change in a component which will lead to the failure of the component the next time it is required to operate, unless it is inspected and repaired first.

Active Failure
The failure of a component which activates the automatic protection system. Active failures are always associated with short-circuits.

Passive Failure
The failure of a component which does not activate the automatic protection system.

Repair
The restoration of the functionality of a component, either by replacing the component or by repairing it.

Interruption
An unplanned zero-voltage situation at one or more load points due to outages in the system.

Contingency
The state of a system in which one or more primary components are on outage. The level of a contingency is determined by the number of primary components on outage. A "kLevel'' contingency is thus the state of a system in which exactly k primary components are on outage.

Adequacy
The ability of the electrical power system to meet the load demand under various steady state system conditions.

29 - 55

DIgSILENT PowerFactory

Reliability Assessment

Security
The ability of the system to meet the load demand during and after a transient or dynamic disturbance of the system.

Availability
The fraction of time a component is able to operate as intended, either expressed as a real fraction or in hours per year.

Redundant Unit
A component whose outage will never lead to an interruption in the base state which cannot be restored by normal switching actions (i.e normal network reconfiguration) alone.

Base State
The state of the system where all components are able to operate as intended.

(n-1) system
A system for which all relevant components are redundant units.

(n-k) system
A system for which the outage of any k or less components will never lead to an interruption which cannot be restored by normal switching actions (i.e normal network reconfiguration) alone.

Distribution Function
The distribution function for the stochastic quantity X equals the cumulative density function CDF(x). CDF(x) = the probability of X to take a value smaller than x.

Probability Density Function


The function PDF(x), describing the probability of the stochastic quantity to take a value from an interval around x, divided by the length of that interval. The PDF(x) is the derivative of the distribution function.

Hazard Rate Function


The function HRF(x) describes the probability of a stochastic quantity to be larger than x+dx, given the fact that it is larger than x, divided by dx. Therefore, the hazard rate may describe the probability of the failure of an element in the upcoming time period, given the fact that it is still functioning properly. The hazard rate is often used to describe equipment ageing and wear. A well-known example is the "bath-tub'' function which
29 - 56

DIgSILENT PowerFactory

Reliability Assessment

describes the probability of a device failing in the next period of time during wear-in, normal service time and wear-out.

29 - 57

DIgSILENT PowerFactory

Reliability Assessment

29 - 58

DIgSILENT PowerFactory

Optimal Power Flow

Chapter 30 Optimal Power Flow

PowerFactorys Optimal Power Flow (OPF) module optimizes a certain objective function in a network whilst fulfilling equality constraints (the load flow equations) and inequality constraints (i.e. generator reactive power limits). The user can choose between non-linear and linear optimization methods.
An OPF calculation in PowerFactory can be initiated by one of the following means: By going to the main menu and selecting Calculation --> Optimal Power Flow...; or By clicking on the OPF icon on the main toolbar.

In both cases, the calculation is started by pressing the Execute button in the OPF command dialogue.

30.1

OPF (Non-Linear Optimization)

If the Non-Linear Optimization method is selected, the OPF performs a non-linear optimization based on a state-of-the-art interior-point algorithm. The following sections explain the selection of objective function to be optimized, the selection of control variables, and the definition of inequality constraints. The OPF command in PowerFactory is accessible by going to the main menu and selecting Calculation --> Optimal Power Flow... , or via the OPF icon on the main toolbar.

30.1.1

Basic Options

Objective Function The OPF command object (ComOpf ) dialogue is shown in Figure 30.1. For non-linear optimization, a selection of three distinct objective functions is available, namely: Minimization of Losses Minimization of Costs Minimization of Load Shedding

30 - 1

DIgSILENT PowerFactory

Optimal Power Flow

Minimization of Losses When this objective function is selected, the goal of the optimization is to find a power dispatch which minimizes the overall active power loss. Minimization of Costs When this objective function is selected, the goal of the optimization is to supply the system under optimal operating cost. More specifically, the aim is to minimize the cost of power dispatch based on non-linear fuel cost functions for each generator and on tariff systems for each external grid. For this purpose, the user needs to introduce, for each generator, a cost function for its power dispatch; and for each external grid, a tariff system.

Fig. 30.1:

Selection of Objective Function for OPF (Non-Linear Optimization Formulation)

Cost Functions for Generators Imposing a fuel cost function on a generator element is done as follows: on the Optimization tab of each synchronous machine (ElmSym) elements dialogue (see Figure 30.2), it is possible to specify the operating costs of the unit with the aid of the Operating Costs table (which relates active power produced (in MW) to the corresponding cost (in $/h)). This data is then represented graphically for verification purposes (see Figure 30.2), beneath the Operating Costs table. The number of rows that can be entered in to the table is unlimited. To add or delete table rows, right-click on a row number in the table and select the appropriate command (i.e. Copy, Paste, Select All; Insert Rows, Append Rows, Append n Rows, Delete Rows, etc.). Tariff Systems for External Grids An external grid contributes to the overall cost function by a predefined tariff system. On the Optimization tab of each external grid (ElmXnet) elements dialogue (see Figure 30.3), the tariffs can be edited via the Incremental Costs table. This table relates the cost (in $/MWh) over a certain range of active power exchange. The input data is represented graphically beneath the Incremental Costs table. In addition, the user can enter a monthly no load cost (in $/month), which can be interpreted as a vertical shift of the cost function. This input parameter is called No load costs (monthly) and can be seen in Figure 30.3.

30 - 2

DIgSILENT PowerFactory

Optimal Power Flow

In contrast to a synchronous machine, where the cost curve is directly expressed in $/h, the cost curve of an external grid is defined by means of a tariff which holds within certain intervals. Mathematically speaking, the cost curve of a synchronous machine is calculated as the interpolation of predefined cost points, whereas the cost curve of an external grid is a piecewise linear function with predefined slopes in each interval.

Fig. 30.2:

Editing the Operating Costs of a Synchronous Machine (ElmSym)

30 - 3

DIgSILENT PowerFactory

Optimal Power Flow

Fig. 30.3:

Editing the Incremental Costs of an External Net (ElmXnet)

Note that this piecewise linear function is not differentiable at the interval limits. Since non-differentiable functions might cause problems within the optimization routine, PowerFactory smooths the cost function slightly over a small range around the nondifferentiable points. The width of this range can be defined by the user through the Smoothing Cost Function factor (also shown in Figure 30.3). A value of 0% corresponds to no smoothing of the curve, whereas a value of 100% corresponds to full interpolation. The default value is 5%. It is recommended to leave this value at its default setting. Minimization of Load Shedding The goal of this objective function is to minimize the overall cost of load shedding, such that all constraints can be fulfilled. A typical application for this objective function is Infeasibility Handling. For the above mentioned objective functions, it may happen that the constraints imposed on the network are such that no feasible solution exists. This can be seen by lack of convergence of the non-linear optimization. In such cases, it is highly likely that not all loads can be supplied due to constraint restrictions. Hence it is recommended in these situations to firstly perform a Minimization of Load Shedding. In this (and only this) optimization scenario, all load elements which have the option Allow load shedding enabled will act as controls. This option is enabled in the load (ElmLod) elements dialogue on the Optimization tab in the Control section. All loads without this option enabled will behave as they would in a conventional load flow calculation. In order to minimize the overall load shedding, for each individual load, the user must specify the cost of shedding (in $ per shed MW).
30 - 4

DIgSILENT PowerFactory

Optimal Power Flow

For each load that participates as a control in the optimization, the scaling factor will be optimized. The optimization is such that the overall cost of load shedding is minimized. Additionally, the user can specify the range over which the load may be scaled (options Min. load shedding and Max. load shedding), as shown in Figure 30.4.

Fig. 30.4:

Editing a Load Element (ElmLod) for Minimization of Load Shedding

Controls
The global control parameters can be selected on the Basic Options tab of the OPF (ComOpf ) dialogue (see Figure 30.5). The user can specify which parameters might serve as potential degrees of freedom for the OPF algorithm; i.e. which parameters will contribute as controls. The set of potential controls can be grouped into four categories: 1 2 3 Generator Active Power Dispatch (ElmSym) Generator Reactive Power Dispatch (ElmSym) Transformer Tap Positions (for 2- and 3-winding transformers): - 2-Winding Transformer (ElmTr2): Tap Position (continuous or discrete) - 3-Winding Transformer (ElmTr3): HV-Tap Position (continuous or discrete) LV-Tap Position (continuous or discrete) MV-Tap Position (continuous or discrete) 4 Switchable Shunts (ElmShnt): Number of steps (continuos or discrete) It should be noted that the load scaling factors will only be taken into account for the Minimization of Load Shedding objective function. In this case, all loads which allow load shedding are automatically used as controls. These global controls determine which element controls will be considered in the optimization. The general rule is as follows: a parameter will be considered as a control if the corresponding flag is set on the Optimization page of the elements dialogue and if, in addition, the corresponding global parameter is set on the Basic Options tab of the OPF
30 - 5

DIgSILENT PowerFactory

Optimal Power Flow

command dialogue (see Figure 30.5). For example, if the control parameter Tap Position HV-Side of a 3-winding transformer is enabled (as shown in Figure 30.8), it will only be included in the OPF as a control parameter if the corresponding option Transformer Tap Positions (parameter name: iopt_trf ) is enabled in the ComOpf dialogue (as shown in Figure 30.5). If enabled, the above mentioned control parameters serve as variable setpoints during the OPF. However, if a parameter is not enabled as a control parameter, the OPF will treat this parameter according to the load flow settings.

Fig. 30.5:

Global Controls for OPF (Non-Linear Optimization Formulation)

For example, if the Tap Position HV-Side parameter of a 3-winding transformer is selected as an OPF control, the optimization algorithm will adjust it in such a way that it contributes optimally to the objective function. On the other hand, if the user decides that this tap position shall not be a control parameter, the OPF will calculate the correct tap position according to the load flow settings. This could be a fixed position or a position found due to the option Automatic Tap Adjust of Transformers being selected in the load flow command. In this mode, the transformer tap position could be found in order to control the voltage of a certain node, or to be a slave that is externally controlled by some other transformer tap. Setting Individual Model-Based Controls Each control can be individually selected to take part in the optimization. Specifically, for each generator (ElmSym), each transformer (ElmTr2, ElmTr3), and each shunt (ElmShnt), the user can check the corresponding Control flag on the optimization page of the elements dialogue. Synchronous Machines A synchronous machine may contribute two possible setpoints, namely active and reactive power control (see Figure 30.6).

30 - 6

DIgSILENT PowerFactory

Optimal Power Flow

Fig. 30.6:

Active and Reactive Power Controls of a Synchronous Machine (ElmSym)

2- and 3-winding Transformers If a transformer has the Tap Position option selected, the user can further select the associated Control Mode to be used. This determines whether the tap position will be treated as a continuous or a discrete control parameter in OPF. Note that a 3-winding transformer has up to three tap changers which may individually be used as either continuous or discrete control parameters in OPF. Figure 30.7 shows the Controls section of the dialogue for a 2-winding transformer and Figure 30.8 shows the Controls section of the dialogue for a 3-winding transformer.

Fig. 30.7:

Tap Position Control (and Loading Constraint) for a 2-Winding Transformer

30 - 7

DIgSILENT PowerFactory

Optimal Power Flow

Fig. 30.8: Shunts

Tap Position Control for a 3-Winding Transformer

In a similar fashion to transformers, the number of steps for a shunt may serve as either a continuous or a discrete optimization parameter (see Figure 30.9).

Fig. 30.9:

Control Parameter for a Shunt (ElmShnt)

Constraints
The user can formulate various inequality constraints for certain system parameters, such that the OPF solution lies within these defined limits. Since all inequality constraints are considered as hard constraints, setting constraints may result in no feasible solution being found. The handling of OPF constraints in PowerFactory is very flexible, and various categories of constraints exist. A constraint is considered in the OPF if and only if the individual constraint flag is checked in the element and the corresponding global flag is enabled in the OPF dialogue. Figure 30.10 shows the Constraints available for the non-linear optimization formulation of OPF in PowerFactory.

30 - 8

DIgSILENT PowerFactory

Optimal Power Flow

Fig. 30.10:

Constraints Settings for OPF (Non-Linear Optimization Formulation)

The optimization uses further constraints that are automatically imposed as soon as the corresponding parameter is used as a control. Examples of such constraints are tap position limits and the number of steps for switchable shunts. Network elements and their available constraints are listed below: Busbars and Terminals (StaBar, ElmTerm): - Minimum Voltage - Maximum Voltage Lines (ElmLne): - Maximum Loading 2- and 3-Winding Transformer (ElmTr2, ElmTr3): - Maximum Loading - Tap Position range (if corresponding tap is a designated control parameter) Shunts (ElmShnt): - Controller Steps range (if switchable steps are designated control parameters) Generator (ElmSym): - Minimum Active Power - Maximum Active Power - Minimum Reactive Power - Maximum Reactive Power

30 - 9

DIgSILENT PowerFactory

Optimal Power Flow

Secondary Controller (ElmSecctrl): - Minimum Total Active Power - Maximum Total Active Power Station Controller (ElmStactrl): - Minimum Total Reactive Power - Maximum Total Reactive Power Boundary (ElmBoundary): - Minimum Active Boundary Flow - Maximum Active Boundary Flow - Minimum Reactive Boundary Flow - Maximum Reactive Boundary Flow Branch Flow Limits (max. loading) Branch flow limits formulate an upper bound on the loading of any branch (ElmLne, ElmTr2, ElmTr3, etc). The user has to specify a maximum value for the loading (see

Figure 30.11). If specified as in Figure 30.11, this constraint is only taken into consideration if the corresponding flag (Branch Flow Limits (max. loading)) in the OPF dialogue is set. Loading limits are supported for lines and 2- and 3-winding transformers.

Fig. 30.11:

Constraint on the Max. Loading of a Line Element (similar for 2- and 3Winding Transformers)

Active and Reactive Power Limits of Generators


For each synchronous machine (ElmSym), the user may impose up to four inequality constraints: namely a minimum and maximum value for active power generation; and a minimum and maximum value for reactive power generation (see Figure 30.12). Active power limits are specified as MW values; reactive power limits may be specified as either absolute values or as per unit values (i.e. referred to the types nominal apparent power). Alternatively, it is possible to directly use the reactive power limits specified in the synchronous machines type (TypSym). Again, the user is free to select any number and combination of the available constraints.

30 - 10

DIgSILENT PowerFactory

Optimal Power Flow

Fig. 30.12:

Active and Reactive Power Constraints of a Synchronous Machine (ElmSym)

Active Power Limits of Secondary Controllers


A secondary controller (ElmSecctrl) may impose an upper and lower active power constraint on the sum of the participating synchronous machines (see Figure 30.13). For practical purposes, this may serve as a reserve constraint for the total active power generation of various synchronous machines, in order to cover an outage of one of the machines. Suppose, for example, that a secondary controller is defined for three machines with maximum active power limits of 15MW, 20MW, and 25MW, respectively. Then a maximum total active power constraint of 35 MW on these three generators would cover an outage of the highest rated generator, and accordingly, an outage of any single one of the generators.

Fig. 30.13:

Total Active Power Sum Limit Constraint of a Secondary Controller (ElmSecctrl)


30 - 11

DIgSILENT PowerFactory

Optimal Power Flow

Reactive Power Limits of Station Controllers


Similar to the secondary controller (however with the roles of active and reactive power exchanged), a station controller (ElmStactrl) may hold an upper and a lower limit on the total sum of the reactive powers of the participating generators (see Figure 30.14).

Fig. 30.14:

Total Reactive Power Sum Limit Constraint of a Station Controller

Voltage Limits of Busbars/Terminals


The maximum and minimum allowable voltages for each terminal or busbar element (ElmTerm) can be specified in the corresponding elements dialogue (see Figure 30.15). Therefore, each terminal or busbar may contribute at most two inequality constraints to the OPF. Maximum and minimum voltage limits may be imposed individually, i.e. it is possible to specify an upper limit without specifying a lower limit.

Fig. 30.15:

Voltage Constraints for a Terminal/Busbar (ElmTerm)

Boundary Flow Limits


Boundary elements (ElmBoundary, icon ) may define topological regions by specifying a topological cut through the network. Constraints can be defined for the flow of active and reactive power in a network (between defined boundaries), and this constraint can then be enforced in OPF. For detailed information on defining boundaries, please refer to Section 12.3.

30 - 12

DIgSILENT PowerFactory

Optimal Power Flow

Fig. 30.16:

Defining Boundary Flow Limits (ElmBoundary) for OPF

Mathematical Background
The non-linear optimization is implemented using an iterative interior-point algorithm based on the Newton-Lagrange method. Recall that the goal of the optimization is to minimize an objective function f subject to the equality constraints imposed by the load flow equations and also to the inequality constraints defined for various power system elements. This is summarised mathematically as follows:

min = f ( x )
subject to:

g(x) = 0 h(x) 0
where g represents the load flow equations and h is the set of inequality constraints. Introducing a slack variable for each inequality constraint, this can be reformulated as:

g(x) = 0 h(x) + s = 0 s0
We then incorporate logarithmic penalties and minimize the function:

min = f ( x )

i where is the penalty weighting factor. In order to change the contribution of the penalty function:

log ( si )

f pen =

i to the overall minimization, the penalty weighting factor will be decreased from a userdefined initial value (max) to a user-defined target value (min). The smaller the minimum penalty weighting factor, the less the applied penalty will be for
30 - 13

log ( si )

DIgSILENT PowerFactory

Optimal Power Flow

a solution which is close to the constraint limits. This may result in a solution that is close to the limiting constraint bounds (if necessary). On the other hand, a smaller minimum penalty weighting factor will result in a higher number of iterations required.

Results
The presentation of the OPF results is integrated into the user interface, in that the solution of the non-linear optimization OPF is available via the complete set of variables available for conventional load flow calculations. These can be viewed in the single line diagram of the grid, or through a data browser. The inclusion of the following variables in the Flexible Data tab (for synchronous machines and grids) is suggested, as shown in Figure 30.17. The actual variable names are given in parentheses. For further information on defining Flexible Data in PowerFactory, please refer to Section 11.5. Synchronous machines: Active Power (Calculation parameter P:bus1; see this parameter highlighted in Figure 30.17) Reactive Power (Calculation parameter Q:bus1) Apparent Power (Calculation parameter S:bus1) Voltage Magnitude (Calculation parameter u:bus1)

Fig. 30.17: Grids:

Definition of Flexible Data for Synchronous Machines (ElmSym)

Total Production Cost, including costs through external grids (Calculation parameter c:cst_disp; see this parameter highlighted in Figure 30.18). It should be noted that the production costs are expressed in the same units utilized in the production cost tables of the individual generator elements. Active Power Losses (Calculation parameter c:LossP) Reactive Power Losses (Calculation parameter c:LossQ) Active Power Generation (Calculation parameter c:GenP) Reactive Power Generation (Calculation parameter c:GenQ)

30 - 14

DIgSILENT PowerFactory

Optimal Power Flow

Fig. 30.18:

Definition of Flexible Data for Grids (ElmNet)

Besides these results, the complete set of variables from conventional load flow calculations is available. A text report is also available and can be generated by clicking on the icon on the main toolbar. This offers various templates for detailed result documentation.

Output Calculation Analysis

30.1.2

Initialization

The non-linear optimization requires initialization to generate an initial starting condition. The Iteration tab of the OPF dialogue as shown in Figure 30.19 allows the user to select the initialization method.

Fig. 30.19:

Initialization Settings for OPF (Non-Linear Optimization Formulation)

Initialization of Non-Linear Optimization Load Flow Displays the load flow command which is used for initialization in the case that no flat start is used. Initialize by Flat-Start The user may choose whether the initialization is performed by a load flow calculation or by a flat start. If it is known in advance that the final solution of the optimization is close to a valid load flow solution, initialization using a load flow calculation results in faster convergence. No Flat Initialization (Use Load Flow Result) If this option is selected, the OPF checks whether an OPF-initializing load flow result has been calculated prior to the OPF. Here, OPF-initializing means that the flag iopt_initOPF was enabled in the load flow command dialogue before execution.
30 - 15

DIgSILENT PowerFactory

Optimal Power Flow

This flag is labelled Use this load flow for initialization of OPF and can be found on the second page of the Advanced Options tab in the ComLdf dialogue. The result of this load flow is then used as a starting point for the iterative OPF interior-point algorithm. If no valid OPF-initializing load flow result is found, the OPF will recalculate a new load flow.

30.1.3

Advanced Options

Penalty Weighting Factor


Initial Value Initial value of the penalty factor. Target Value Target value of the penalty factor. Reduction Factor A factor by which the current penalty factor will be divided by between the iterations.

Fig. 30.20:

Penalty Weighting Factor Settings for OPF (Non-Linear Optimization


Formulation)

30.1.4

Iteration Control

OPF dialogue are shown in Figure 30.21.

PowerFactory offers the user flexibility in configuration of the number of iterations and the convergence criteria for OPF. The available options on the Iteration Control tab of the

30 - 16

DIgSILENT PowerFactory

Optimal Power Flow

Fig. 30.21:

Iteration Control Settings for OPF (Non-Linear Optimization Formulation)

The implementation of the Lagrange-Newton method means that the OPF will internally minimize the resulting Lagrange function:

L ( x, s, ) = f ( x )

log ( s i ) + ( ) [ g ( x ) + h ( x ) + s ]

with the Lagrange multipliers ( ) . The following parameters can be used to alter the stopping criteria for this iterative process. The algorithm stops successfully if the following three criteria are fulfilled: 1 2 The maximum number of iterations has not yet been reached. All load flow constraint equations g(x)=0 are fulfilled to a predefined degree of exactness (i.e. within an allowable tolerance), which means: - all nodal equations are fulfilled. - all model equations are fulfilled. 3 The Lagrange function L converges. This can be achieved if: - either the objective function itself converges to a stationary point, or the gradient of the objective function converges to zero. The following parameters are used to configure these stopping criteria. The alteration of the default values for these parameters is recommended only for advanced users. Maximum Number of Iterations Interior-Point Algorithm (Inner Loop) Maximum number of iterations for the interior-point algorithm. Control Loop (Outer Loop) Maximum number of iterations of the outer loop.
30 - 17

DIgSILENT PowerFactory

Optimal Power Flow

Convergence Criteria Max. Acceptable Error for Nodes The maximum allowable error for the nodal equations (in kVA). Max. Acceptable Error for Model Equations The maximum allowable error for the model equations (in %). Max. Change of Objective Function Used when Convergence of Objective Function option values of objective function become constant is selected. The user enters a value (in %), below which the Lagrangian is considered to have converged. Max. Value for Gradient of Objective Function Used when Convergence of Objective Function option gradient of objective function converges to zero is selected. The user enters an absolute value, below which the Lagrangian is considered to have converged. Convergence of Objective Function Options relating to the convergence criteria for the Lagrangian function: either the function itself is required to converge to a stationary point, or the gradient of the Lagrangian is expected to converge, as described below. values of objective function become constant If this option is selected, the user is asked to enter a value for the Max. Change of Objective Function. If the change in value between two consecutive iterations falls below this value, the Lagrangian is considered to have converged. gradient of objective function converges to zero If this option is selected, the user is asked to enter a value for the Max. Value for Gradient of Objective Function. If the gradient falls below this value, the Lagrangian is considered to have converged.

For reasons of mathematical exactness, it is strongly recommended to select the latter option, gradient of objective function converges to zero. If the underlying Jacobian matrix is numerically instable, this often results in oscillatory behaviour in the last iterations. Therefore, the latter method provides assurance that the result is in fact a minimum.

30.1.5

Output

Prior to the non-linear optimization, the OPF informs the user (in the output window) of the total number of constraints and controls that will be considered in the subsequent calculation. This information is detailed in that the imposed constraints and the participating controls are counted for each constraint and control categories separately. Two options are available to select the level of detail contained in output messages. These options are available in the Output tab of the OPF dialogue and are shown in Figure 30.22 and are described below.

30 - 18

DIgSILENT PowerFactory

Optimal Power Flow

Fig. 30.22:

Output Settings for OPF (Non-Linear Optimization Formulation)

Show Convergence Progress Report If this flag is checked on the Output page of the OPF dialogue, the user will get a detailed report on the convergence of the non-linear optimization. For each step of the iteration, the following figures are displayed in the output window: The current error of the constraint nodal equations (in VA) (Err.Nodes); The current error of the constraint model equations (Err. ModelEqu); The current error of the inequality constraints (eInequ); The current value of the gradient of the Lagrangian function (gradLagFunc); The current value of the Lagrangian function (LagFunc); The current value of the objective function f to be minimized (ObjFunc); The current value of the penalty function fpen (PenFunc); The current values of the relaxation factors (Rlx1, Rlx2) for the primal and dual variables; The current value of the penalty factor (PenFac). Show Max. Nodal and Model Equation Error Elements If this flag is checked, the algorithm outputs per iteration, the components which have the largest error in the equality constraints (i.e. mismatch in the load flow equations). An outer loop is wrapped around the central non-linear optimization algorithm. This outer loop is required to round and optimize the evaluated tap and shunt positions to discrete values (if desired by the user). The maximum number of outer loops is defined on the Iteration Control tab of the dialogue. However, if no convergence is reached with the defined number of outer loops, the user will be informed via a message in the output window that further outer loop iterations are required.

30 - 19

DIgSILENT PowerFactory

Optimal Power Flow

30.2

OPF (Linear Optimization)

The following describes the configuration of a linear optimization formulation of OPF in PowerFactory. Internally, from the settings provided, a linear programming (LP) formulation of the problem is derived. The load flow is calculated using the linear DC load flow method. For general information about DC load flow please refer to Section 22 (Load Flow Analysis). PowerFactory uses a standard LP-solver (based on the simplex method and a branchand-bound-algorithm) which ascertains whether the solution is feasible. The result of the linear optimization tool includes calculated results for control variables, such that all imposed constraints are fulfilled and the objective function is optimized. Provided that a feasible solution exists, the optimal solution will be available as a calculation result. i.e., the algorithm will provide a DC load flow solution, where all generator injections and tap positions are set to optimal values. The DC load flow solution includes the following calculated parameters: For terminals: - Voltage Angle (phiu [deg]) - Voltage Magnitude (u [p.u.] (assumed to be 1.0 p.u. in DC calculation)) - Voltage Magnitude (upc [%] (assumed to be 100 % in DC calculation)) - Line-Ground Voltage Magnitude (U [kV]) - Line-Line Voltage Magnitude (U1 [kV]) For branches: - Active Power Flow (P [MW]) - Active Power Losses (Ploss [MW] (assumed to be 0 MW in DC calculation)) - Reactive Power Flow (Q [Mvar] (assumed to be 0 MVAr in DC calculation)) - Reactive Power Losses (Qloss [Mvar] (assumed to be 0 MVAr in DC calculation)) - Loading [%] (Loading with respect to postfault continuous rating) The following parameters are calculated in addition to the results found by the DC load flow: For generators: c:avgCosts The fixed cost factor [$/MWh] used in the objective function (i.e. average cost considering the costs at the generators active power limits) c:Pdisp Optimal Power Dispatch for Generator Optimal (postfault) generation for each contingency case. The optimum (postfault) generation for each contingency case is stored as a parameter event object in the corresponding contingency object (ComOutage). Thus, each contingency object will hold parameter events for each selected generator (the name of the parameter event is the name of the generator). The parameter event reflects the optimal postfault generation for that generator in the given contingency case.
30 - 20

DIgSILENT PowerFactory

Optimal Power Flow

c:cst_disp

Production costs in optimal solution: cst_disp = costs * Pdisp

For Transformers: c:nntap Optimal (prefault) tap position for the base case. Optimal (postfault) tap positions for each contingency case. The optimum (postfault) tap positions for each contingency case are stored as a parameter event object in the corresponding contingency case object (ComOutage). Thus, each contingency object (ComOutage) will hold parameter events for each selected transformer (the name of the parameter event is the name of the transformer). The parameter event reflects the optimal postfault tap position for that transformer in the given contingency case. c:mxTpChng (_l, _m, _h) mxTapChng is the maximum tap change deviation between the optimal base case (prefault) tap position and the optimal postfault tap position (over all contingencies). For 3-winding transformers, HV-, MV- and LV-side tap deviations are calculated individually. For loads: c:Pdisp Optimal load shedding for load Optimal (postfault) load shedding for each contingency case. The optimum (postfault) load shedding for each contingency case is stored as a parameter event object in the corresponding contingency case object (ComOutage). Thus, each contingency object will hold parameter events for each selected load (the name of the parameter event is the name of the load). The parameter event reflects the optimal postfault load shedding for that load in the given contingency case.

30 - 21

DIgSILENT PowerFactory

Optimal Power Flow

30.2.1

Basic Options

Objective Function
The user can select a linear optimization objective function using the list box as shown in Figure 30.23. These objective functions are now described.

Fig. 30.23:

Objective Function Selection for OPF (LP Formulation)

None Performs a constrained load flow (i.e. a feasibility check of the network considering the specified controls and constraints). Minimization of Generation Fuel Costs The objective is to minimize generation fuel costs. Further Input Variables: In the case that a cost minimization is calculated for each generator, a cost factor needs to be entered: Cost curve $/MWh per generator (ElmSym) The (linear) algorithm uses a fixed cost-factor [$/MWh] per generator. This cost factor is the mid-cost between the costs at the generators active power limits. Minimization of (Pre-to-Postfault) Tap Deviations Minimizes the deviations in tap positions between the base case and the contingency case. Min. Generation Fuel Costs + Min. Tap Deviations. Combination objective function; multi-objective optimization. Min. Generator Dispatch Change Minimizes the change in generator dispatch from the generators initial values. Min. (Pre-to-Postfault) Generation Minimizes the changes between base case generation and contingency generation.

30 - 22

DIgSILENT PowerFactory

Optimal Power Flow

Controls
The user can select from the following control variables: Generator Active Power Dispatch (ElmSym) - Prefault, Base Case (BC): In prefault generator optimization, for each selected generator a single control variable is introduced to the system. The total number of generator controls in this case equals the number of selected generators. - Postfault, per Contingency Case (CC): In postfault generator optimization, for each selected generator, a control variable is introduced for the base case and for each CC. This flag has to be switched on when the objective function Min. (Pre-to-Postfault) Generation has been selected. The total number of generator controls in this case equals: (number of selected generators) * (1 + number of selected contingencies) Transformer Tap Position (ElmTr2, ElmTr3) - Prefault, Base Case (BC): In prefault tap optimization, for each selected transformer a single control variable is introduced to the system. The total number of tap controls in this case equals the number of selected transformers. - Postfault, per Contingency Case (CC): In postfault tap optimization, for each selected transformer, a control variable is introduced for the BC and for each CC. This flag has to be switched on when the objective function Minimization of Tap Deviations has been selected. The total number of tap controls in this case equals: (number of selected transformers) * (1 + number of selected contingencies) Allow Load Shedding (ElmLod) A separate control variable is introduced to the system for the BC and for each CC. These control variables can be activated using any objective function. The total number of load controls equals: (number of selected loads)*(1 + number of selected contingencies)

Note

At least one type of control variable in the Controls section of the OPF dialogue must be selected. It should be noted that the postfault controls can only be selected following the selection of prefault controls.

Constraints
Please refer to Section 30.1.1 (Non-linear OPF). In addition, for linear optimization, the following constraint types can be imposed: Contingency Constraints

is considered in calculation. For each loading constraint, 2*(number of contingencies) constraints will be added to the LP.

Contingency Analysis for a predefined set of contingencies (ComOutage) (i.e., a set of interrupted components per contingency case). Maximum Active Power Flow (max.), along lines (ElmLne, ElmTr2, ElmTr3), (one constraint per side) for each contingency case

30 - 23

DIgSILENT PowerFactory

Optimal Power Flow

This flag must be enabled when the objective function includes a Minimization of Tap Deviations aim. Transformer Tap Constraints (implicitly imposed) Tap Position Constraints: Minimum and maximum tap positions (ElmTr2, ElmTr3) for transformers are considered. This leads to 2 constraints in LP for the base case tap position calculation, and to 2 x (1 + number of contingencies) constraints for postfault calculations. Tap Deviation Constraints If this additional checkbox is checked, then for each contingency, no more than the maximum tap position change steps from pre- to postfault are allowed over all transformers (i.e. for a given contingency, a constraint is enforced on the sum of all max. difference of pre- to postfault taps, over all transformers).

Handling
Active power dispatch constraints can be chosen on an individual basis (by a checkbox) per generator. Please see Figure 30.12 for setting min/max constraints for generators for optimization. Tap position constraints will be implicitly imposed whenever the corresponding tap is a designated control variable, as illustrated in Figure 30.7.

Loading constraints can be chosen on an individual basis (by a checkbox) per line element (ElmLne). Once a loading constraint for a specific line is imposed, it will be considered by all contingencies contained in the contingency list. See Figure 30.11.
If loading constraints are included, the maximum loading limits will be calculated with respect to the type of the element, or with respect to a thermal rating object (IntThrating, as shown in Figure 30.24). If a thermal rating object is selected, the limits for the base case will be calculated with respect to the prefault continuous rating value, and the limits for contingency cases will be calculated with respect to the postfault continuous rating value (specified in the thermal rating object).

30 - 24

DIgSILENT PowerFactory

Optimal Power Flow

Fig. 30.24:

Thermal Rating Object (IntThrating) Ratings Tab for Setting Rating Values

Boundary flow constraints can be chosen on an individual basis per boundary (ElmBoundary). Once a boundary constraint for either the maximum total active power limit or min total active power limit is imposed, it will be considered by all contingencies in the contingency list. See Figure 30.16. The consideration of contingencies in OPF is selected as shown in Figure 30.25. The list of contingencies is selected by choosing a specific contingency analysis command (parameter Contingency Analysis in the OPF dialogue, Basic Options tab), which contains in its folder the contingency objects (ComOutage) to be considered.

30 - 25

DIgSILENT PowerFactory

Optimal Power Flow

Fig. 30.25:

Basic Options tab for Setting Contingency Constraints in ComOpf

30.2.2

Initialization

The OPF calculation is initialized by a load flow, which is displayed by the Load Flow parameter. The user can inspect the load flow settings by clicking on the button, as illustrated in Figure 30.26. The load flow command contained in the current study case is set here automatically. Within the load flow command, the Calculation Method will be automatically set to DC Load Flow (linear) for use by OPF (when Method is set to LP).

Fig. 30.26:

Initialization Settings for OPF (LP Formulation)

30 - 26

DIgSILENT PowerFactory

Optimal Power Flow

30.2.3

Advanced Options

Fig. 30.27:

Advanced Options for OPF (LP Formulation)

Load Shedding Options


If Allow Load Shedding is among the selected Controls (see Section 30.2.1) on the Basic Data tab, an additional term will be added to the objective function. This weight of this term can be controlled using the Penalty Factor in the Load Shedding Options section of the dialogue. The following term will be added to the objective function, where is the specified Penalty Factor:
Co Load


j=1 i=1

Load i Load i

curr

Transformer Tap Deviation Control


If tap positions have to be optimized, different solutions can yield the same optimal value for the objective function. Therefore one can impose a term to the objective function, which forces the solution to be as close as possible to the initial transformer tap positions. Use Penalty Factor for Tap Deviation If enabled, the following additional term is added to the objective function: n Tr

i=1

tap i tap i

curr

30 - 27

DIgSILENT PowerFactory

Optimal Power Flow

Penalty factor

Specifies the weighting factor for the additional objective function term above.

Calculation of Transformer Tap Positions


Discrete controls (Using direct method) This method calculates discrete tap position values within the LP (known as the direct method). This method may provide better accuracy however will yield fewer solutions. Continuous controls (Using outer loop rounding) This method uses continuous tap position values and then rounds these values to discrete values in the outer loop of the calculation. This method may be faster but the values may not be optimal.

30.2.4

Iteration Control

Two settings are available for controlling the number of iterations of the algorithm and the tolerance, as shown in Figure 30.28.

Fig. 30.28:

Iteration Control Settings for OPF (LP Formulation)

Outer Loop
Following the solution of the LP problem, it may be the case that loading constraints are not within their boundaries. The reason is that the algorithm uses tap sensitivities which assume that a linear change in MW flow per tap step. Since these tap sensitivities depend on the initial tap position, the result becomes inaccurate if the optimal tap position is far from the initial tap position. This inaccuracy can be remedied by an additional outer loop. At each iteration, this outer loop starts with the optimized tap positions which were calculated in the previous loop. The following Outer Loop settings can be entered on this tab: Max. Number of Iterations Maximum number of outer loop iterations until all constraints are fulfilled (within a defined tolerance). Max. Acceptable Error for Constraints Maximum relative error (in %) by which a constraint can be violated while still assuming a feasible solution. It should be noted that when Max. Number of Iterations is set to one, the LP is solved
30 - 28

DIgSILENT PowerFactory

Optimal Power Flow

without outer loops.

30.2.5

Output

If contingencies are considered in OPF, one can choose to record the results of those branches which exceed a selected limit value. This can be done for both the non-optimized results and the optimized values. For each recording of results (i.e. with optimized or non-optimized values) a separate result file must be chosen.

Fig. 30.29:

Output Settings for OPF (LP Formulation)

Contingency Analysis Results


Results (non-optimized) The result file in which to store the non-optimized results. Results (optimized) The result file in which to store the calculated (optimized) results.

Limits for Recording


The limits displayed here are set in the selected Contingency Analysis command on the Basic Options tab of the OPF dialogue. Please refer to Section 28.2.1 for further information.

30 - 29

DIgSILENT PowerFactory

Optimal Power Flow

30 - 30

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

Chapter 31 Optimization Tools for Distribution Networks

The objective of this chapter is to present the tools implemented in PowerFactory for the optimization of distribution networks. By means of simple command edit dialogues it is possible to calculate the optimal placement, type and size of capacitors in radial distribution networks; the optimal separation points of meshed networks and the optimal type of reinforcement cables and overhead lines. Each section introduces a different tool, presenting a general description, the objective function, the optimization procedure and the command dialogues.

31.1

Optimal Capacitor Placement

The idea for optimal capacitor placement is to determine the location, type and the size of capacitors to be installed in the nodes of the radial distribution network. The economic benefits due to energy loss reduction are weighted against the cost of installation of such capacitors while keeping the voltage profile of the system within defined limits. The pre-configured commands related to optimal capacitor placement become available at the button bar on the main menu after selecting the commands are: Setup of Optimization and execution icon in flexible tool bar. These

(see 31.1.3 and 31.1.4). .

Showing and setting up the list of available capacitor types Result output for nodes with new capacitors installed .

Result output for new capacitors recommended for installation Result output as a pre-configured text report .

31.1.1

Objective Function
m n

The optimization algorithm minimizes the annual total network cost according to: TotalCosts = CLosses + Where:
31 - 1

( CCap ) + ( CVoltViol )
i=1 i=1

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

CLosses correspondes to the anual cost of grid losses. Ccap corresponds to the annual cost of capacitors (investment, maintenance, insurance), as indicated on the description page of the capacitor type. m is the number of installed capacitors. CVoltViol corresponds to a fictitious cost used to penalize the bus voltage violation. n is the number of feeder buses. The voltage violation cost is calculated according the voltage limits defined in the 'Basic Options' tab ('Allowed Voltage' field) and the penalty factors from the 'Advanced Options' ('dv < dvmax' and 'dv > dvmax' fields):  If the voltage U of a busbar is within the allowed limits, its penalty cost corresponds to: CVoltViol = w1 U Where:

U is the absolute deviation from the nominal voltage w1 is the penalty factor 'dv < dvmax' from the 'Advanced Options' tab
 If the voltage U is outside the allowed band, its penalty cost corresponds to: CVoltViol = w2 ( U Umax ) + w1 U or CVoltViol = w2 ( U Umin ) + w1 U With:

U absolute deviation from the nominal voltage Unominal + Umax higher voltage limit Unominal - Umin lower voltage limit w2 penalty factor 'dv > dvmax' from the 'Advanced Options' tab
Figure 31.1 ilustrates the concept of the voltage band violation cost.

31 - 2

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

Fig. 31.1:

Fictitious cost assigned by voltage band violations

Note

If no penalty costs are to be applied within the admissible band, w2 ('dv < dvmax' ) should be set to zero. In case this value is greater than zero, the program will add additional costs to all busbar with voltage different from 1.0 p.u.

31.1.2
1 2

Optimization Procedure

To find the optimal configuration of capacitors, PowerFactory applies 2 different steps: Sensitivity analysis to select the candidate buses for capacitor installation Optimization step to determine the actual locations and sizes of the shunt capacitors

The optimization is not only performed for a single load level, but for all load levels described in a discrete scale that is handed over to PowerFactory. For each of these load levels the voltage at the buses must be kept within the allowed bandwidth. An additional vectorial characteristic describes the probability of each of these load levels in hours/year, so that the cost of losses can be calculated accordingly. The final result of the optimization process are the locations for the installation of capacitors, the types and sizes of capacitors to be installed and the capacitor switch positions for the different load levels.

Sensitivity Analysis
In this step test capacitors are installed at all busbars in the system and the effect of the installation on the total annual system cost is evaluated. The size of the test capacitors used to evaluate the cost benefit can be selected according to 4 different options: Minimum available capacitor size is used. Maximum available capacitor size is used. The capacitor size is determined by the peak reactive power requirements of the load. The capacitor size best fitting to the reactive energy consumption of the load is used.
31 - 3

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

Final optimization step


This step implements 2 different optimization procedures to determine the optimum location of capacitors: a. b. Gradient search - this search is fast and mostly will find a solution that performs well - even if not the mathematically exact global optimum. Tabu Search - this search finds the exact optimum, but may be more timeconsuming.

31.1.3

Basic Options Page

Fig. 31.2:

Basic Options page

Feeder
Please select the feeder for which the optimum capacitor placement should be performed. The feeder is a special PowerFactory element which has to be created before selecting it in this dialogue (for information about feeders refer to 7.3.3 (Network Data)).

Optimization Level
The Optimization Level List offers 4 options: Remove previous solution - deletes any capacitors placed in the network during the previous run of the optimization function
31 - 4

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

Sensitivity only: Performs the sensitivity analysis and shows the result in the text output window, but does not place any capacitors Fix Capacitors: Optimizes the network for fix capacitors, that is capacitors without any voltage control Switched Capacitors: Optimizes the network for switched capacitors performing voltage control.

Sensitivity Analysis
Min Shunt: the minimum available capacitor size is used Max. Shunt: the maximum available capacitor size is used Best fit to load: the capacitor size best fitting to the reactive energy consumption of the load is used Depend on load: the capacitor size is determined by the reactive power requirements of the load

Optimization Approach
Gradient Search: Newton-Raphson-Optimization to detect local optimum Reactive Tabu Search: Tabu search to detect global optimum of reactive power installation

Max. Number of Iterations


Max. number of iterations as criterion for interrupting before termination of optimization process.

Max. Execution Time


Max. duration until interrupting before termination of optimization process.

Connect Candidate Shunts


The optimization always generates a report describing the proposed capacitor locations. If this field is checked, the capacitors are added to the data of the network.

Do not consider Energy Cost


If this option is checked, the cost of losses are not considered in the target function.

Energy Cost
Energy cost applied (in specific cost per kWh).

Constraints - Allowed voltage


Voltage band, defined by lower limit (min. voltage) and upper limit (max. voltage) in %.
31 - 5

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

Different penalty cost apply for voltages within the allowed band and outside.

Constraints - Reactive Power of all capacitors


If the sum reactive power of all capacitors is limited, the value is entered in this field.

Available Capacitors
When pushing this button, the list appears with all capacitor types available for the optimization. The recommended way of entering types to this list is by copy/paste from type libraries.

31.1.4

Advanced Options Page

Fig. 31.3:

Advanced Options page

Discrete Scale and Trigger


Scale with discrete steps of the loading.The correct consideration of the load levels makes it necessary to have defined a vectorial characteristic with scaling factors for each load during the defined load level. It is good practise to refer to this characteristic in the scaling factor on the load-flow page of each load. Figures 31.4 and 31.5, show an example of a discrete scale and a load characteristic. Further information on scales and vector characteristics is given in 7.7 (Parameter Characteristics and Parametric Studies).

31 - 6

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

Fig. 31.4:

Example of discrete scale for loading level

Fig. 31.5:

Example of load characteristic

Time Vector
Vectorial Characteristic to describe the probability of each discrete loading level (in hrs/ yr). Further information on scales and vector characteristics is given in 7.7 (Parameter Characteristics and Parametric Studies).

31 - 7

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

Fig. 31.6:

Example of load curve (time vector)

Candidate Buses
Percentage of all candidate buses from the sensitivity analysis that are used for the actual optimization process.

Fix number of capacitors


If checked, each capacitor type in the list is used once only.

Penalty factor 1: dv < dvmax


Penalty cost for buses with voltage values inside the admissible band (see 31.1.1).

Penalty factor 2: dv > dvmax


Penalty cost for buses with voltage values outside the admissible band (see 31.1.1).

Note

If no penalty costs are to be applied within the admissible band, 'dv < dvmax' should be set to zero. In case this value is greater than zero, the program will add additional costs to all busbar with voltage different from 1.0 p.u. The values for the penalties dv < dvmax' and dv > dvmax' should be carefully chosen since the target function is a sum of three objective functions. If these values are high, it can make the algorithm not consider the other two ob-

31 - 8

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

jectives. Otherwise, if there are very low, the algorithm may not take the voltage violations into account in the optimal capacitor placement algorithm

31.1.5

Results

The last three tool-bar buttons give access to the optimization results.

Result output for nodes with new capacitors installed


When pressing the icon listed. , a list appears with all nodes named where capacitors are

Result output for new capacitors recommended for installation


Pressing the icon generates a list of capacitors distributed in the grid.

Result output as a pre-configured text report


This icon ( ) generates a report with the results of the sensitivity analysis and the final optimization procedure.

31.2

Open Tie Optimization


in the flexible

The open tie optimization is started when selecting the general tools toolbar and pressing the icon for open tie-point optimization: Open-Tie-Optimization .

31.2.1

Optimization Procedure

Input data for the optimization algorithm is a network with - in general - a meshed topology. The optimization algorithm will proceed in the following way: A search is started for possible meshes in the network. Each found mesh is closed first by closing all open switches in the loop. A load-flow calculation is then made, after which the loop is opened at the position with the lowest current. Normally, the switch with the lowest current is opened, but alternatively, the element with the lowest current can be taken out of service when that current is lower than the lowest switch current. When opening a loop at the optimum location for active losses leads to an overload on any line in the network, the algorithm will open a different line instead.
31 - 9

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

This is continued until no more closed loops can be found. A final optimization step is following to search for further improvement. The impact of opening disconnectors on voltage band violations is not checked. The typical case in open-tie optimization however is that the open-tie-location optimum for loss reduction also performs best for keeping the defined voltage band.

31.2.2

Options Page

Fig. 31.7:

Basic Options page

Feeding points
The section of the network where the optimum open-tie points should be determined is defined by a set of "feeding points". Such feeding points can be External grids. The source-side switchbay of Lines (Overhead lines and cables). The source-side switchbay of transformers (if the complete transformer is selected, the HV side is considered the feeding side). The combination of a busbar/terminal and a branch, in which case the feeding direction towards the branch. A feeder object. The feeding points are the positions where power is assumed to flow into the network. Only meshes between the feeding points will be optimized. Meshes connecting points in already optimized meshes are optimized also.

31 - 10

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

Update Database
If this box is unchecked, the proposals for opening disconnectors are listed in the output report. If the box is checked, the status of the respective disconnectors is also modified in the data of the network.

Force elements on outage when not switchable


The search for the position with the lowest current, which is to be opened, can be extended by allowing the command to force and opening by setting an element out of service, when no switch is available at the specific location.

Selection
The possible options are: Whole System: the complete system fed by the feeding points is radialized; One Grid: If the network is composed of several grids (e.g. transmission and distribution), the grid to be optimized can be selected; User-defined: an user defined set is selected, the lines in this set are used for radializing the network. The selection can be used to further limit the area which is to be optimized. The first limitation is by defining feeding points. Only meshes for which all elements are in the selection will be optimized.

Load-Flow Command
Reference to the load-flow settings used by the optimization.

Output On
If this box is checked, the result report is directly written to the message window.

Output
Reference to the configuration dialogue of the output available after termination of the optimization routine.

31.3

Cable Size Optimization


and pressing the

The cable size optimization can be selected using the general tools icon for cable size optimization: Cable Size Optimization

31.3.1

Objective Function

The objective function for the optimization are the annual cost for the reinforced lines.
31 - 11

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

This includes investment, operational cost and insurance fees. The following constraints are considered in the optimization process, where the implementation is based on fictitious penalty cost: Maximum admissible line loading An admissible overloading percentage may be defined by the user to avoid overrating of the lines. Typically any overloading can be avoided by selecting the appropriate type of conductor for cables and overhead lines. The penalty factor for these lines therefore is fix and cannot be defined by the user. Maximum voltage drop Depending on the system topology, on the loads and on the length of the feeder, it may not be possible to avoid voltage band violations of some nodes due to voltage drop. This may be mitigated by the installation of a capacitor during a postprocessing optimization. The specific penalty cost of the optimization therefore is a parameter that can be defined by the user to weight the voltage loss against the line investments.

31.3.2

Optimization Procedure

The optimization process minimizes the annual cost of the network. As constraints for the optimization it uses the admissible voltage band (in terms of max. voltage drop along the feeder) and loading limits for the planned network. The optimization does not need a load curve or a load forecast, as the impact of the conductor type on the cost of losses is not considered within the function. Input data for the reinforcement optimization is a network model that is complete for load-flow calculation. In addition to the network model, the planner has to provide the following information: A library section with standard line types (cable or overhead line) that are available for the new type assignment. A value for the max. voltage drop that is allowed for the new network topology. The result of the optimization is a report about the recommended new cable/overhead types for the lines in the network and the cost evaluated for the recommended upgrading.

31.3.3

Basic Options Page

The basic parameter page for the Cable Reinforcement function is shown in Figure 31.8. Its options are explained in the following. Feeder Specific Feeder element that supplies the network region where the cables have to be reinforced. Cable Types Reference to folder that contains the allowed new types for overhead lines and cables. Load-Flow Parameter set for the load-flow performed to analyze overloading and voltage band violations. Cable Overloads Defines how to deal with cable overloads detected during the optimization.
31 - 12

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

Consider Cable Overloads Flag to allow overloading of cables and overhead lines for peak load situation. Max. Loading Limit for the admissible loading in the case that overloading of overhead lines and cables is allowed.

Fig. 31.8:

Basic Options page

Check Consistency Additional plausibility check that can be performed for the final solution. Several settings are possible: Off No plausibility check performed Sum of feeding cables >= sum of leaving cables very strict condition Smallest feeding cable >= biggest leaving cable less strict criterion) Voltage Profile Criteria for dealing with voltage band violations.

31 - 13

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

Consider Voltage Profile Flag to force that voltage band violations should be included into the optimization of the line types. Maximum Voltage Drop Limit value (in %) to define the max. voltage drop admissible at the end of the feeder. Output Various output options for the optimization results are possible. Report Only Proposed new types for cables and overhead lines are listed in a report of pre-defined form Automatic Type Replacement If this option is selected, the Report will be generated and additionally the network database will be update with the proposed types. Report Format Selection of the format of the generated report.

31.3.4

Advanced Options Page

The advanced parameter page for the Cable Reinforcement function is shown in Figure 31.9.

Fig. 31.9:

Advanced Options page

Voltage Profile The voltage profile is treated as a constraint of the optimization process. A plane with two slopes at the lower and upper limits adds penalty cost to the optimization result in case of violations. The options are as follows: Penalty Factor 1 Penalty cost for voltage drop lower or equal than admissible limit defined on the basic parameter page (typically this value is set to 0). Penalty Factor 2 Penalty cost for voltage drop higher than the admissible limit defined on the basic parameter page. The value entered here describes the weight of the voltage band limit in comparison to the investment cost for the cable/OHL reinforcement.
31 - 14

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

Consistency Verification/Voltage Drop Additional plausibility check that can be performed for the final solution if voltage drop optimization is applied Cross Section Type selection for reducing the voltage drop is based on cable/OHL cross section. Nominal Current Type selection for reducing the voltage drop is based on rated current of cable/OHL.

31 - 15

DIgSILENT PowerFactory

Optimization Tools for Distribution Networks

31 - 16

DIgSILENT PowerFactory

Protection

Chapter 32 Protection

The PowerFactory protection modeling features have been implemented with the following philosophy in mind. The protection modeling should be as realistic as possible The user must be able to create new complex protection devices or alter existing ones Although the protection models may show high complexity, their use must be kept easy All protection models will act on switches. These specifications led to the following principles. A fuse is modeled as a time-overcurrent relay acting on a switch A distinction is made between defining or altering new relay models, which is described in the Technical References, and the use of those models, which is described in this chapter.

32.1

Creating a Protection Device

Protection devices are normally stored in the object which they act upon, but they may be stored elsewhere when needed. Recommended, and by default, is that protection devices which act upon a single switch are stored in the cubicle which contains that switch (highly recommended) protection devices which act upon two or more switches connected to the same busbar are stored in that busbar protection devices which act upon two or more switches connected to the same busbar system, are stored in the station containing that busbar system protection devices which act upon switches connected to more than one busbar system are stored in the station containing those busbar systems, or in the power system grid folder if more than one station is involved As a rule, the relay is best stored in the same folder as the voltage and/or current transformers which it uses. Editing or creating protection devices in a cubicle can be done in several ways: by right-clicking a switch-symbol in the single line graphic. This will bring a pop up menu with the options Edit Protection Devices and New Protection Devices

32 - 1

DIgSILENT PowerFactory

Protection

by editing the object which is connected to the cubicle (line, transformer, load, etc.) and pressing the button at the cubicle field. See Figure 32.1 for example. The option Edit Relays will bring a list of all protection devices in the cubicle. New devices may be then created with the icon.

Fig. 32.1:

Editing line protection devices

In all cases, selecting the option to create a new protection device will bring a list with the following options: Relay Model (ElmRelay) Fuse (RelFuse) Current Transformer (StaCt) Voltage Transformer (StaVt) Each of these options will open a dialogue to specify the device that is to be created or to select the one that is to be edited.

32.1.1

Example: a Time-Overcurrent Relay

Protection devices form a group of highly complex and non-uniform power system devices. This places any program for modeling them for a difficult dilemma. On the one hand, the relay models should be as flexible and versatile as possible, to ensure that all types of protection relays can be modeled with all of their features. On the other hand, the relay models should be as simple as possible in order to reduce the amount of work and knowledge needed to define power system protection devices. This dilemma is solved by PowerFactory by separating the process of definition a protection type definition from the process of creating a specific protection element. Although the definition of a new protection type asks for a good understanding of composite frames, DSL, time overcurrent plot definitions, etc., the use of a protection element is more or less a 'take of the shelf' process. This separation between defining new or using existing relay types led to the global relay object hierarchy as shown in Figure 32.2.

32 - 2

DIgSILENT PowerFactory

Protection

Fig. 32.2:

Global relay object hierarchy

The relay frame is a graphically defined composite frame which defines the functional parts of the relay and their connections. The relay frame can be compared with an empty printed circuit board. The relay type is based on the relay frame and defines the type of parts which are allowed to be put in the relay slots. The relay type can be compared with a printed circuit board with specific, but still empty, chip or relay sockets. The relay itself models a specific protection element, based on the relay frame and the relay type. The relay model uses specific functional elements where the relay type defines only the allowed type of elements. These specific elements must be based on those element types. The relay object can be compared with a finished printed circuit board, where specific relays and chips have been inserted in the sockets. Figure 32.2 also shows that most of the work of defining a protection device is done by the Relay Type Designer. A large set of common relays types is available in the database and these types are ready for use. How to use a relay type, that is: how to create a relay element, how to add it to the power system, how to adjust the relay settings, how to perform calculations, etc., is shown by the example of a simple time-overcurrent relay. This relay measures the currents in three phases, but calculates a single maximum current Imax. The relay trips a breaker when Imax violates either the time-overcurrent or the instantaneous overcurrent conditions.

32 - 3

DIgSILENT PowerFactory

Protection

The Relay Frame


The example relay frame is shown in Figure 32.3. This is not a symbolic representation of the relay, but the selected composite frame which defines the relay type. The design of these relay frames is described in the Technical References manual. The block diagram is only shown here to explain the example relay.

Fig. 32.3:

Composite frame of a time-overcurrent relay

In the relay frame, the following slots can be distinguished: A current transformer slot (StaCt), which outputs are the real and imaginary parts of the three phase currents (IrA, IiA, IrB, etc.) and the real and imaginary parts of the zero sequence current (I0x3r,I0x3i). A measurement unit slot (RelMeasure), which output is Imax, which is the maximum of the three phase currents. A slot for a time-overcurrent relay unit (RelToc) and one for an instantaneous overcurrent relay unit (RelIoc), with the tripping signals as outputs. A logic unit slot (RelLogic), which combines the tripping signals in a logical way to produce a single tripping signal.

The Relay Type


The example relay type that is defined on the basis of the time-overcurrent relay frame is shown in Figure 32.4.

32 - 4

DIgSILENT PowerFactory

Protection

Fig. 32.4:

The relay type dialogue

The "Relay Definition'' field points to the relay frame. The slot definition list will automatically show all slots defined by that relay frame. In the example, these are the five slots described in the previous section. The "Category'' field is only used to help selecting a relay type. An object type is normally selected for each slot, except for the slots for the current and voltage transformers. A relay based on the relay type may not use elements other than such which are based on the given object types. The fact that, in the example, no type is specified for the current transformer, means that all current transformers may be used. Normally, relay types are only selected but not changed or edited. The PowerFactory relay database offers a wide variety of relay types.

Creating a Relay Model


This is where we leave the domain of the relay designer enter that of the relay user. As soon as a new relay is inserted in the power system, which is normally done by rightclicking a switch and selecting New Protection Device - Relay Model, an empty relay model (ElmRelay) appears. The example relay model is depicted in Figure 32.5.

32 - 5

DIgSILENT PowerFactory

Protection

Fig. 32.5:

Relay model dialogue

The relay model has a reference to a relay type, a location, a device number and a list of slots. The location is normally set automatically when a relay is defined in the single line graphic by right-clicking a cubicle. The cubicle then defines the location. The device number is only relevant for the device documentation. The slot list is defined by the relay type. As is shown in Figure 32.5, the relay model should define objects for all the slots in the relay type. Each of these 'slot elements' must use the corresponding 'slot type', when such a type is defined in the relay type. Luckily, the tedious work of creating the correct elements, selecting the correct type and assigning the element to the correct slot, is performed by the relay element itself. The whole process of creating a specific relay model thus only asks for selecting a relay type from the database. What follows then can best be compared by an automatic assembly process: as soon as a new relay type is selected, the slot definition list is updated all slot elements for which a slot type has been defined will be created automatically. No elements will be created for those slots for which no slot type has been defined. Normally, these are only the voltage and current transformer slots. However, if already existing and valid objects are found in the relay model or the cubicle in which it resides, they will be assigned to the slots automatically. the created slot elements are inserted in the slot definition list The result is a new and complete relay model with all slots filled (except maybe for the transformer slots). Of course, all relay settings are still set to their default values.
32 - 6

DIgSILENT PowerFactory

Protection

All slot elements created by the relay model are stored in the relay model itself. Figure 32.6 shows the database tree with the example relay model.

Fig. 32.6:

Example relay model with slot elements

The current transformer in the example is not stored in the relay model but in the cubicle. When, again, a new relay type is selected, the slot elements created for the previous relay type will in most cases not be suited for the new type. However, the 'automatic assembly process' will try to reuse as much data as possible from the old settings: Slot elements that are also suited for the new rely type will be reused as they are Slot elements which are correct except for their type will be assigned the correct slot type Slot elements which cannot be reused will be deleted Missing slot elements will be created automatically

Pressing the Cancel button after the Relay Type has been changed will not restore the old slot elements.
Normally, the relay type will not define any current and/or voltage transformer types. The corresponding transformer element will thus not be created automatically. However, if these measurement transformers were created prior to creating the relay element, they will be assigned to the correct slot automatically. This is the recommended practice. If the measurement transformers were not created yet, they may be created by pressing the Create VT or Create CT buttons. That will create a new transformer in the cubicle were the relay element is stored.

32.1.2

Editing the Relay Elements

After a relay element has been defined and all slot elements have been created, the editing of the relay settings may be started by editing the slot elements. In the example settings have to be enter for The CT "Current Transformer 0'' The Measurement object "Measurement'' The time overcurrent relay "Toc'' The instantaneous overcurrent relay "Ioc'' The logic object "Logic'' For the current transformer, the tap settings and the connection type have to be selected. The possible tap range is limited by the type. See Figure 32.7.
32 - 7

DIgSILENT PowerFactory

Protection

Fig. 32.7:

A current transformer dialogue

The measurement object only needs the Nominal Current and Nominal Voltage. Their range is limited by the measurement type. The nominal values are only needed if the relay uses p.u. values. In the example, the measurement object needs no data at all. See Figure 32.8.

Fig. 32.8:

A measurement object

The time overcurrent relay allows for setting The time overcurrent characteristic The pickup current The time dial All three settings are limited by the relay type: only those characteristics available for this
32 - 8

DIgSILENT PowerFactory

Protection

type of relay can be selected and not every possible values for the pickup current or time dial may be entered. See Figure 32.9.

Fig. 32.9:

A time overcurrent relay

The instantaneous overcurrent relay allows for setting the pickup current. See Figure 32.10.

Fig. 32.10:

An instantaneous overcurrent relay

The logic unit dialogue shows a list of all switches that will be opened as soon as the logic unit trips. The logic unit combines the tripping signals of the sub relays (the Toc and Ioc relays in this example), in an AND/OR expression (Toc OR Ioc in this example). All switches in the list will be opened. If the relay to which the logic unit belongs is stored in a cubicle, the three-phase breaker in that cubicle will be opened by default if no switches are been specified. See Figure 32.11.
32 - 9

DIgSILENT PowerFactory

Protection

Fig. 32.11:

A logic relay object

32.2

Basic Protection Devices

As has been explained in the introduction of this chapter, the whole hierarchy of objects that is used to build protection devices can be divided into objects which are needed to define new types of protection devices objects which are needed to define specific relay models. The first group of objects are treated in detail in the Technical References manual. The second group of objects are treated in this section.

32.2.1

The Current Transformer

A new current transformer (CT) can be created by right-clicking a cubicle in the single line diagram and selecting "New Protection Device - Current Transformer''. The dialogue as depicted in Figure 32.12 will then pop up.

32 - 10

DIgSILENT PowerFactory

Protection

Fig. 32.12:

The Current Transformer dialogue

A thus created CT will be stored in the cubicle that was right-clicked. The "Location'' fields "Busbar'' and "Branch'' will be set automatically in that case. A current transformer always needs a current transformer type. The top "Location'' field is used either to select a cubicle when the CT is created from outside the cubicle, to select the preceding CT in the case of an auxiliary CT. After selecting the type and the setting of the current transformer, its set ratio is shown in the dialogue (Ratio). In very special cases CTs may be connected in series, that is the output of one CT is used as the input of the second CT. In this application the second CT will show a Ratio (the actual ratio of the CT) and a Complete Ratio, (the ratio between the primary branch flow and the secondary CT current, which is the overall ratio of all CTs connected in series). In the example of Figure 32.12, the CT is directly connected to the primary component (which is the standard) and both Ratio and Complete Ratio show the same value of 1000 A to 1 A. The primary connection type is only available in the case of an auxiliary CT. The number of phases can be set to 3, 2 or 1. For a 3- or 2-phase CT, the secondary connection type can be set to D or Y. For a 1-phase CT, the phase can be set to a, b or c phase current N = 3*I0 I0 = I0 The primary and secondary tap settings are limited to the values defined in the current
32 - 11

DIgSILENT PowerFactory

Protection

transformer type.

The Current Transformer Type


The current transformer type dialogue, as depicted in Figure 32.13, defines the single phases of a CT. The information about the connection of these phases (Y or D) is defined in the CT element that uses the CT type.

Fig. 32.13:

The Current Transformer Type dialogue

The current transformer type defines the primary and secondary taps of the transformer. The "Additional Data page'' is used only when saturation is considered, to set the accuracy parameters: The accuracy class The accuracy limit factor either - The apparent power (acc. to IEC) - The burden impedance (ANSI-C) - The voltage at the acc. limit (ANSI-C)

32.2.2

The Voltage Transformer

A new voltage transformer (VT) can be created by right-clicking a cubicle in the single line diagram and selecting "New Protection Device - Voltage Transformer''. The dialogue as depicted in Figure 32.14 will then pop up.

32 - 12

DIgSILENT PowerFactory

Protection

Fig. 32.14:

The Voltage Transformer dialogue

A thus created current transformer will be stored in the cubicle that was right-clicked. A voltage transformer always needs a voltage transformer type. The "Location'' field is used either to select a cubicle when the VT is created from outside the cubicle to select the preceding VT in the case of an auxiliary VT After selecting the type and the setting of the current transformer, its set ratio is shown in the dialogue (Ratio). In the example of Figure 32.14, the shown VT has a ratio of 5000 V to 100 V. The primary winding is defined by selecting a tap and a connection type. The available tap range is defined in the voltage transformer type. The secondary winding is defined by the secondary winding type, the tap setting and the connection type. The available tap range is defined in the secondary winding type. A voltage transformer requires at least one secondary winding. More windings can be defined by pressing the button Additional Secondary Windings. This will bring a list of all previously defined secondary windings. New windings can be created by pressing the icon. The connection type "O'' for the secondary windings is the "Open Delta'' connection, as depicted in Figure 32.15.
32 - 13

DIgSILENT PowerFactory

Protection

Fig. 32.15:

The open delta (O) winding connection

The connection type "V'' for the primary and secondary windings is depicted in Figure 32.16. Selecting a "V'' connection for the primary winding automatically sets the secondary winding to a "V'' too.

Fig. 32.16:

The "V'' winding connection

The VT Secondary Winding


A secondary winding element is needed when a voltage transformer with two or more secondary windings has to be modeled. The edit dialogue for the voltage transformer provides parameters to define the first secondary winding.

Fig. 32.17:

The VT secondary winding dialogue

32 - 14

DIgSILENT PowerFactory

Protection

The secondary winding element requires a type and a reference to the voltage transformer. The tap settings range is defined by the windings type.

The VT Secondary Winding Type


The secondary winding type, as depicted in Figure 32.8, defines the burden and tap range for one phase of a voltage transformer. The phase connection type (Y, D, etc.) is defined in the secondary winding element.

Fig. 32.18:

The VT secondary winding type dialogue

The secondary tap settings defined in the secondary winding type determine the available tabs for the secondary winding element.

The Voltage Transformer Type


The voltage transformer type, as depicted in Figure 32.19 defines the primary winding of the voltage transformer.

32 - 15

DIgSILENT PowerFactory

Protection

Fig. 32.19:

The voltage transformer type dialogue

The secondary windings are defined in the voltage transformer element.

32.2.3

The Relay Model

The relay model (ElmRelay) is a general 'frame-object' which consists of a relay frame with slots and one or more elements which occupy those slots. All protection relays, except for the fuse models, are modeled as relay models.

32 - 16

DIgSILENT PowerFactory

Protection

Fig. 32.20:

The relay model dialogue

The relay element is defined by selecting a relay type. The relay type defines the relay frame and the slot types which may be used with that frame. After a relay type has been selected, the "Slot Definition'' list will be filled automatically with the correct slot elements. The current and voltage transformers, however, are not created automatically, although available CT's and VT's are selected automatically. Editing the settings of the relay model is done by editing the settings of the listed slot elements. Double-clicking a slot element in the "Slot Definition'' list will open the dialogue of that element.

32.2.4

Directional Relay

The directional relay cannot be used 'as-is', but is always a part of a relay model. For more information about relay models, see 32.2.3 (The Relay Model) The directional relay calculates the angle between a 'polarization' voltage or current and an 'operating' current. The polarization current or voltage is rotated to the amount of the expected angle first. The relay trips if the remaining angle is smaller than 90 and if both the polarization and the operating voltage/currents are large enough. This principle is shown in Figure 32.21.

32 - 17

DIgSILENT PowerFactory

Protection

Fig. 32.21:

Directional relay principle diagram

The polarization quantity Apol is rotated over the angle MT, which is the "Max. Torque Angle'' set in the relay edit dialogue. The rotated polarization quantity A'pol defines a half plane which forms the first tripping condition. Further conditions are the projection of the operating quantity on A'pol, which must be larger than the operating current setting, and the polarization quantity, which must be larger than the polarization setting. More details about the polarization methods and the tripping conditions can be found in the basic Technical References manual. The choice for the type of operating and polarization quantity is made in the Directional Relay Type object. The relay object itself allows for the setting of the tripping direction, the polarization method when both methods (voltage and current) are available, and the polarization criteria. See Figure 32.22.

Fig. 32.22:

Directional relay

Selecting a 'Reverse Tripping Direction' will invert the used operating current. The voltage or current polarization allow for setting the "Operating Current'', the "Polarization Voltage/
32 - 18

DIgSILENT PowerFactory

Protection

Current'' and the "Max.Torque Angle''.

32.2.5

The Frequency Measurement Unit

The frequency measurement unit cannot be used 'as-is', but is always a part of a relay model. For more information about relay models, see 32.2.3 (The Relay Model)). The frequency measurement unit is used to calculate the electrical frequency for the given "Measured Voltage''.

Fig. 32.23:

Frequency Measurement

The Nominal Voltage is needed for per unit calculations. The Frequency Measurement Time defines the time used for calculating the frequency gradient.

32.2.6

The Frequency Relay

The frequency relay cannot be used 'as-is', but is always a part of a relay model. For more information about relay models, see 32.2.3 (The Relay Model). The frequency relay either trips on an absolute under-frequency (in Hz), or on a frequency gradient (in Hz/s). Which condition is used depends on the selected relay type. The relay type also defines the reset time, during which the frequency condition must be met again for the relay to reset. The time delay set in the relay element defines the time during which the frequency condition must be violated for the relay to trip. See Figure 32.24.

32 - 19

DIgSILENT PowerFactory

Protection

Fig. 32.24:

Frequency

32.2.7

The Fuse Model

The fuse model is implemented as a special instantaneous overcurrent relay which does not need a current transformer. A fuse is always located in a cubicle and will trip the phase which current exceeds the melt curve. Optionally, all three phases will be tripped if one of the phase currents exceeds the melt curve.

Fig. 32.25:

The Fuse model dialogue

The calculation of the trip time is either based on the minimum melt curve or on the total clear curve. An example of these curves are shown in Figure 32.26.
32 - 20

DIgSILENT PowerFactory

Protection

Fig. 32.26:

Fuse melt characteristics

32.2.8

The Instantaneous Overcurrent Relay

The instantaneous overcurrent relay cannot be used 'as-is', but is always a part of a relay model. For more information about relay models, see the reference documents). The instantaneous overcurrent relay allows for the setting of the pickup current and the time dial. Both entries are limited by the relay type. See Figure 32.27.

Fig. 32.27:

Instantaneous Overcurrent

The instantaneous overcurrent relay is a combination of a direct overcurrent relay and an optional time delay. The pickup time Ts is the minimum time needed for the relay to react. Additionally, a time dial Tset may be specified. The relay will not trip unless the current exceeds the pickup current Tsetr for at least Ts+Tset. See Figure 32.28.

32 - 21

DIgSILENT PowerFactory

Protection

Fig. 32.28:

Instantaneous overcurrent tripping area

The relay will not reset until the current drops under the reset level, which is specified by the relay type in percent of the pickup current: Ireset=IpsetKr/100%. See Figure 32.29 for a typical timing diagram.

Fig. 32.29:

Instantaneous overcurrent timing diagram

32.2.9

The Logic Unit

The logic unit is the front end part of a relay configuration. It combines all internal trigger signals by successive AND and OR operations and produces one single output. The logic unit type specifies the logical operation, the logic unit itself specifies the switches which will be opened when the relay trips. See Figure 32.30.

32 - 22

DIgSILENT PowerFactory

Protection

Fig. 32.30:

Relay logic

If the relay is located in a cubicle and no switch has been specified, the breaker in the cubicle will be opened by default.

32.2.10

The Measurement Unit

The measurement unit uses the 'raw' signals produces by the current or voltage transformers to calculate 'measured signals'. Which signals are being calculated depends on the measurement unit type. The measurement unit allows for setting the nominal current and voltage. Both are limited by the measurement unit type. If a relay does not need a nominal voltage (i.e. in the case of an overcurrent relay), the nominal voltage field will normally be disabled.

Fig. 32.31:

Measurement

32 - 23

DIgSILENT PowerFactory

Protection

32.2.11

The Time Overcurrent Relay

The time-overcurrent relay cannot be used 'as-is', but is always a part of a relay model. For more information about relay models, see 32.2.3 (The Relay Model). The time-overcurrent relay allows for the selection of one of the I-t curves ('characteristic') which are available for the selected relay type. The I-t curve is further specified by the pickup current and the time dial. Both values must be in the range specified by the It curve definition. See Figure 32.32 for an example.

Fig. 32.32:

The time overcurrent relay dialogue

The time dial settings will scale the I-t curve in the Time vs. I/Ip plot, according to the curve definition. See Figure 32.33 for example.

32 - 24

DIgSILENT PowerFactory

Protection

Fig. 32.33:

I-t curves for different time dials

The pickup current defines the nominal value Ip which is used to calculate the tripping time. The I-t curve definition states a minimum and a maximum per unit current. Lower currents will not trip the relay (infinite tripping time), higher currents will not decrease the tripping time any further. These limits are shown in Figure 32.34.

Fig. 32.34:

I-t curve limits

The pickup current may be defined by the relay type to be a per unit value, or a relay current. The nominal current defined by the measurement unit (see 32.2.10 (The Measurement Unit)) is used to calculate Ip in the case of a per unit value. The relay current value already equals Ip. Altering the pickup current will thus not change the I-t curve, but will scale the measured current to different per unit values. The following example may illustrate this: Suppose the minimum current defined by the I-t curve is imin=1.1 I/Ip. Suppose the measurement unit defines Inom=5.0 rel.A.

32 - 25

DIgSILENT PowerFactory

Protection

Suppose pickup current Ipset=1.5 p.u. > relay will not trip for I<1.1*1.5*5.0 rel.A = 8.25 rel.A Suppose pickup current Ipset=10.0 rel.A > relay will not trip for I<1.1*10.0 rel.A = 11.0 rel.A

32.2.12

Under-/Overvoltage Relay

The under- or overvoltage relay cannot be used 'as-is', but is always a part of a relay model. For more information about relay models, see 32.2.3 (The Relay Model). The under-/overvoltage relay type may define the relay to trip on either Either one of the three phase line to line voltages One particular line to line voltage The ground voltage U0. The positive sequence voltage U1 The negative sequence voltage U2 The relay element allows only for setting the pickup voltage and the time delay. See Figure 32.35.

Fig. 32.35:

Under-/Overvoltage

32.3

Path Definitions

A path in a single line diagram is defined by selecting a chain of two or more busbars or terminals and inter-connecting objects. The pop-up menu which opens when the selection is right-clicked will show a Path... option. This menu option has the following sub-options: New Edit Add To this option will create a new path definition this option is enabled when an existing path is right-clicked. It opens a dialogue to alter the color and direction of the path this option will add the selected objects to a path definition. The end or start of the selected path must include the end or start of an existing path.

32 - 26

DIgSILENT PowerFactory

Protection

Remove Partly This will remove the selected objects from a path definition, as long as the remaining path is not broken in pieces Remove This will remove the firstly found path definition of which at least one of the selected objects is a member

Editing, adding objects to or removing objects from path definition is only possible when the option coloring "Path Definitions'' was chosen in the Color Representation of Graphic dialogue (SetColgr). This dialogue is opened by pressing the icon toolbar. on the graphics

A path may be used as a selection for a calculation by selecting one or more objects from the path definition. This will select the whole path.

32.4
32.4.1

Protection Analysis Results


Reports

The icon "Output Calculation Analysis'' ( ) in the main menu, will open the "Output'' dialogue (ComSh). The results of the load-flow or short-circuit analysis, for a range of relays, can be generated in the output by selecting the options Results Relays To generate a report for one or more relays, or for one or more previously defined paths, the data manager may be used to select one or more relays or paths and right-clicking the selection. The menu will show the option Output-Results if at least one relay was found amongst the selected objects or in one of the selected paths. If a busbar was selected, then all relays in connection with that busbar are selected too.

32.4.2

Results in Single Line Graph

The names of the relays or the tripping times may be made visible in the single line graphic by selecting the following options in the main menu. 1 2

Output - Results for Edge Elements - Relays Output - Results for Edge Elements - Relay Tripping Times

The first option ("Relays''), which is always available, will show the names of the relays in all cubicles. The second option will show the tripping times of the relays after a loadflow or short-circuit calculation has been made. If a relays does not trip, then a tripping time of 9999.99 s is shown.

32.4.3

Plots

The time-overcurrent plots offer many features for displaying the settings of relays and the results of short-circuit or load-flow calculations. The time-overcurrent plots may also be used for changing the settings of relays and fuses, by simply moving the tripping characteristics. Especially the possibility of changing the
32 - 27

DIgSILENT PowerFactory

Protection

curves in combination with a short-circuit or load-flow result, and with the help of transformer or line damage curves, ensures a clear and comprehensible setting of the relay parameters. The following section explains the special features of the time-overcurrent plots.

32.5

Short-Circuit Sweep

The "Short-Circuit Sweep'' command as depicted in Figure 32.36 is used to calculate a short-circuit sweep along a defined path. Short-circuits are calculated along a given path and the results at each short-circuit location are written to a Results object. The position in km relative to the beginning of the path is always written to the results. The sweep command is used e.g. by the Time-Distance Diagram (see 32.7) to record the trigger times of distance relays.

Fig. 32.36:

The short-circuit sweep dialogue

32.5.1 Path

Options

Short-Circuits are calculated along this path. Path is set automatically and grayed out if the command is called by the "Time Distance Plot''.

Additional Relays
If the option "Iterate Tripping Times'' on the advanced page is set, the positions where a relay trips is interpolated and written to the results. The relays whose tripping times are
32 - 28

DIgSILENT PowerFactory

Protection

checked are the relays found in the path and, in addition, the relays given by the selection referenced in "Additional Relays''. Additional relays is grayed out and set if the command is called by the "Time Distance Diagram''.

Results Frame
The variables written to the results object can either be defined by the user or by the "Time Distance Diagram''. If the results are defined by the "Time Distance Diagram'' all "Monitor Variable Sets'' in the results object are ignored. Otherwise the variables found in the "Monitor Variable Sets'' stored in the results object are written. The result frame is grayed out if the command is accessed through the time-distance diagram.

Results
Reference to result object, see also Result Frame, grayed out if the sweep dialogue is accessed through the time-distance diagram.

Locations
A short-circuit is calculated on each busbar/terminal found in the path. If "Buses and Branches'' is selected short-circuits on the branches between the busbars are calculated.

Short-Circuit Frame
"Command'' is a reference to the short-circuit command. Except the short-circuit location the short-circuit settings are not changed by the sweep. The type of failure, the method of calculation and other settings can be modified there. "Calculation'' is just displaying the "Fault Type'' set in the short-circuit command.

32.5.2 Step Size

Advanced Options

The relay tripping positions in the path can either be iterated or calculated with a continuous step size. In the constant mode a short-circuit is calculated at the beginning of the branch. The distance between the following short-circuits on the branch is "Continuous Step Size''. There is always a short-circuit calculated at the end of the branch. In the "Iterate Tripping Times'' method the relay tripping positions are iterated. If the tripping time of a relay changes continuously (like overcurrent relays) the sweep changes to continuous mode automatically. Iteration mode is used again when the tripping time remains unchanged at the next short-circuit position. The step size frame is grayed out if the command is accessed by the time-distance diagram.

Precision and Step Size


The "Precision (Steps)'' defines the maximum iteration error at the relay tripping position. The "Continuous Step Size'' defines the step size for the sweep with constant steps. "Precision and Step Size'' is unused (hidden) if location is set to buses.

32 - 29

DIgSILENT PowerFactory

Protection

32.6

Time-Overcurrent Plot

The plot VisOcplot is showing different relay and fuse characteristics in one timeovercurrent plot. Additionally the damage curve and characteristic currents of electrical equipment in the network can easily be shown. This will help to set the relay tripping times and current settings and the selecting of fuses for a good and thorough protection of the equipment. There are several ways to create a time-overcurrent plot (VisOcplot): The easiest way to create and show a VisOcplot is to select one switch, where overcurrent relays or fuses are installed. Right-click the switch to open the context sensitive menu. This will show the options Create Time-Overcurrent Plot and Add to Time-Overcurrent Plot. PowerFactory will then create a new diagram showing the time-overcurrent plot for all relays selected. Another way is to right-click an path element and select Path...> Time-Overcurrent Plot from the context sensitive menu. Also a relay element ElmRelay can be chosen from the list of calculation-relevant objects or in the data manager. Right-click the relay on the right side of the data manager or in the list of relays. Then select Show > Time-Overcurrent Plot to create a new plot or Show > Add to Time-Overcurrent Plot to add the characteristic to an existing plot. Additionally other elements like one or more transformers, cables or motors can be selected and right- clicked. The context sensitive menu will show the options Show > Time-Overcurrent Plot to create a new plot and Show > Add to Time-Overcurrent Plot to add the characteristic to an existing plot.

Note

To show the relay locations and thus to visualize the switches with relays definitions these can be highlighted by setting the color representation of the single-line diagram to "Relay Locations''. By right-clicking these elements the option Show > Time-Overcurrent Plot is available and can be chosen.

In all these cases, it is also possible to select the option Add to Time-Overcurrent Plot. This will pop up a list of previously defined over current plots from which one has to be selected. The overcurrent plot shows the time-overcurrent characteristics of relays the damage curves of transformers or lines motor starting curves the currents calculated by a short-circuit or load-flow analysis and the resulting tripping times of the relays See Figure 32.37 for an example.

32 - 30

DIgSILENT PowerFactory

Protection

Fig. 32.37:

A time-overcurrent plot with short-circuit results

The time-overcurrent plot shows the results of the short-circuit or load-flow analysis as a vertical 'x-value' line across the graph. Because the currents differ for each particular relay, a current line is drawn for each relay. The intersection of the calculated current with the time-overcurrent characteristic is labelled with the tripping time. A 'grading margin' line, which shows the difference between the tripping times, may be added by rightclicking the plot and selecting "Show Grading Margins''. It is also possible to create an user defined 'x-value' by right-clicking the graph and selecting the Set Constant > x-value option. The vertical line will show the values at the intersections of all displayed characteristics. To move the line left, drag it with the mouse.

32.6.1

Changing Tripping Characteristics

The time overcurrent plots may also be used to change the relay characteristics graphically. Because a relay characteristic is normally the minimum of two or more sub-characteristics, it has to be split first in order to change the sub-characteristics. A characteristic is split by right-clicking the characteristic enable the split option The relay characteristics can also be split by opening the edit dialogue of the plot and enabling the option Split Relay in the table Relay, where all relays are listed. The sub-characteristics are now visible. Each of them can be left clicked and dragged along the time-overcurrent plot area. However, they cannot be dragged outside the allowed range which has been defined for the relay type. After the relay sub-characteristics have been changed, they can be combined again into one single characteristic by disabling the split option again. The plot option dialogue, which is opened by right-clicking the plot area and selecting Options, has an option for showing the grading margins when the time overcurrent characteristics are dragged. The grading margin may be set to a fixed time. The grading
32 - 31

DIgSILENT PowerFactory

Protection

margins are shown as two lines, plus and minus the grading margin above and below the dragged tripping characteristic. See Figure 32.38 for an example: the original characteristic is labelled "1'', the new position as "2'', and the grading margins are labelled "a''.

Fig. 32.38:

Moving a characteristic with grading margins

Conductor/Cable Damage Curve


The conductor and cable damage curves are used to evaluate a protection coordination variation and as guides for positioning the time-overcurrent characteristics.

32 - 32

DIgSILENT PowerFactory

Protection

Fig. 32.39:

Conductor/Cable damage curve

To add a damage curve to a time-overcurrent plot, right-click the plot area and select Add...> Conductor/Cable Damage Curve. The Rated Short-Circuit Current and time of the cable can be inserted. Also typical Cable Parameters for the conductor, insulation factor, K, are given in figures 32.40 and 32.41. These tables show the temperature range for the cables: T1 = maximum operating temperature in C T2 = maximum short-circuit temperature in C and the K factor for a cross section in mm2, CM, MCM and inch2.

32 - 33

DIgSILENT PowerFactory

Protection

Fig. 32.40:

Typical damage parameters for copper conductor cables

Fig. 32.41:

Typical damage parameters for aluminium conductor cables

Transformer Damage Curve


The transformer damage curves are used to evaluate a protection coordination variation and as guides for positioning the time-overcurrent characteristics.

32 - 34

DIgSILENT PowerFactory

Protection

Fig. 32.42:

Transformer damage curve

To add an ANSI/IEEE C57.109 damage curve to a time-overcurrent plot, right-click the plot area and select Add...> Transformer Damage Curve. An example of a timeovercurrent plot with two relay characteristics and a transformer damage curve is shown in Figure 32.43.

Fig. 32.43:

Transformer damage curve

To add the damage curves of specific transformers in the power system, right-click the transformer object in the single line graphic or the database manager and select the option Show > Add to Time-Overcurrent Plot. This will pop up the list of defined overcurrent plots from which one has to be selected. A damage curve will then be calculated from the electrical transformer data, according to the ANSI/IEEE C57.109 standard, and added to the selected time over-current plot.

32 - 35

DIgSILENT PowerFactory

Protection

It is also possible to add a two-winding or three-winding transformer object to the graph manually. This is done by editing the graph and adding the transformer object to the list of displayed relays.

Motor Start Curve


The motor start curves are used to evaluate a protection coordination variation and as guides for positioning the time-overcurrent characteristics.

Fig. 32.44:

Motor start curve edit dialogue

The characteristic currents and durations given in the edit dialogue result in a step wise motor start current plot, as depicted in Figure 32.45.

32 - 36

DIgSILENT PowerFactory

Protection

Fig. 32.45:

The motor start curve

Overcurrent Plot Settings


The time-overcurrent plot settings can be accessed by selecting the Options from the context-sensitive menu. The dialogue shows the following options: Current Unit Show Relays The current unit may be set to either primary or secondary (relay) ampere. This option is used to display only certain types of relay characteristics.

Recloser Operation The different recloser stages can be shown simultaneously or switched off in the diagram. Display automatically This option is used to select how the calculated load-flow or shortcircuit currents will be displayed. Either the current lines, the grading margins, both or none may be selected. Voltage Reference Axis More than one current axis may be shown, based on a different voltage level. All voltage levels found in the path when a time overcurrent plot is constructed are shown by default. An user defined voltage level may be added. Optionally, only the user defined voltage level is shown. Cut Curves at normally the curves of different relay zones cut at the same tripping current. Show Grading Margins while Drag&Drop When dragging the curves up and down resp. right and left, the grading margins of the curve will be shown according to the margin entered.

32 - 37

DIgSILENT PowerFactory

Protection

Fig. 32.46:

Overcurrent Plot Settings

The advanced options are: Drag & Drop Step Sizes These are used to set the step change in the relay settings when a time-overcurrent plot is dragged with a continuous time dial or pickup current. Time Range for Step Sizes Enter the tripping time range for the y-axis. 'Color for Out of Service' Units The characteristics for units that are out of service are drawn invisible by default. However, a visible color may be selected. Brush Style for Fuses This defines the fill style for fuse curves Nr. of points per curve The number of points can be changed to either refine the plotted curves for more detail, or to speed up the drawing of the diagram.

32.7

The Time-Distance Diagram

The time-distance plot VisPlottz shows the tripping times of the relays depending on the short-circuit location. It is normally calculated by the short-circuit sweep command. See short-circuit sweep command (Section 32.5) for more information. It is directly connected to a path definition described in Section 32.3 (Path Definitions), so it can only be created if a path is already defined.

32 - 38

DIgSILENT PowerFactory

Protection

Fig. 32.47:

A time-distance plot

To create a time-distance diagram: The easiest way to create and show a VisPlottz is to right-clicked an element, which is already added to a path definition. From the context sensitive menu the option Show > Time-Distance Diagram can be selected. PowerFactory will then create a new object VisPlottz showing the time-distance plot for all distance relays in the path. Another way is to right-clicked an path element and select Path...> Time-Distance Diagram from the context sensitive menu. Like above this will create a new object VisPlottz. Also path object SetPath can be chosen in the data manager under Database\ Projectname\ Paths. Select the "Paths'' folder and right-click the path object on the right side of the data manager. Then select Show > Time-Distance Diagram from the context sensitive menu.

Note

To show the path definition and thus to visualize the elements contained in the path can be highlighted by setting the color represen32 - 39

DIgSILENT PowerFactory

Protection

tation of the single-line diagram to "Path Definitions''. By rightclicking these elements the option Show > Time-Distance Diagram is available and can be chosen.
The time-distance plot in Figure 32.47 is separated in two different diagrams. The forward diagram shows all relays at the beginning of the line in path direction. The reverse diagram shows the relays at the beginning of the line in reverse path direction. The upper diagram is in forward direction, the lower one in backward direction. There are three different styles for the time-distance plot.These are: Forward/Reverse Both diagrams are shown. Forward Reverse Only forward direction diagram Only reverse direction diagram

32.7.1

The Path Axis

Fig. 32.48:

A path axis

The path axis in Figure 32.48 shows the complete path with busbar and relay locations. Busbars/Terminals are marked with a tick and the name. The boxes above and below the line show the relay locations in forward and in backward direction. The reference relays in both directions are marked with an arrow.

32.7.2

Methods for calculation of tripping times

There are several methods to calculate the tripping times shown in the plot. To change the method, select the Method option in the context sensitive menu or double-click the plot to access the time-distance plot dialogue and edit Methods option on the Relays page. The methods differ in exactness and speed. The set of possible units for the x-Axis depends on the method used. The methods are: Short-Circuit Sweep Method The short-circuit sweep method is the most accurate method for calculating the short-circuit locations. A short-circuit sweep is calculated over the branches between the first and the last busbar in the path. At each short-circuit location the relay tripping times are established. The disadvantage of this method is it's low speed. Whenever the rebuild button of the graphics window is pressed the sweep is recalculated. The possible units for the short-circuit location are position in km or reactance in primary or relay ohm. Kilometrical Method This method is the fastest but most inaccurate one. Tripping time and location are determined with the intersection of the impedances and the relay characteristic. The impedances used for calculation are the impedances of the device. If there is more than one intersection at the
32 - 40

DIgSILENT PowerFactory

Protection

same impedance the smallest tripping time is used. The possible units for the short-circuit location are position in km or reactance, resistance and impedance, each in primary or relay ohm.

Fig. 32.49:

The Time-Distance plot edit dialogue

The kilometrical method is applicable only for the following paths There are no parallel branches in the path. The path is fed from only one side or there is no junction on the path.

32.7.3

Short-Circuit Calculation Settings

If the method for the calculation of the time-distance plot is set to "Short-Circuit Sweep'', the short-circuit sweep command object ComShcsweep is used. There is either the option Shc-Calc... in the context menu of the plot or the Shc-Calc... button in the "Time Distance Plot'' edit dialogue to access the sweep command. Some of the settings in the command are predefined by the time-distance plot. These settings are grayed out when the sweep command is accessed through the plot. The short-circuit command for the calculation is set in the sweep command. To change the short-circuit method, e.. "IEC'' or "Complete'', open the sweep command and edit the short-circuit dialogue.

Note

The easiest way to calculate the short-circuit sweep for the timedistance plot is by simply pressing the button . Mind that this is only needed when using the Short-Circuit Sweep
32 - 41

DIgSILENT PowerFactory

Protection

method. The Kilometrical method does not need the short-circuit sweep command.
See Section 32.5 (Short-Circuit Sweep) for more information.

32.7.4

The x-Unit

There is a set of possible x-units depending on the method used. See the methods description for details. The short-circuit sweep method needs a relay to measure the impedance, named the reference relay. If there is no reference relay selected the first relay in the diagram's direction is used as reference relay. The options available for the x-unit are: Length x-axis is shown depending on the line/cable length from the reference relay in"km''.

Impedance (pri.Ohm) x-axis is shown depending on the impedance from the reference relay. Reactance (pri.Ohm) x-axis is shown depending on the reactance from the reference relay. Impedance (sec.Ohm) Here the impedance from the reference relay is measured on the secondary side. Reactance (sec.Ohm) Here the reactance from the reference relay is measured on the secondary side.

32.7.5

The Reference Relay

The x-Axis positions or impedances are calculated relative to the beginning of the path. If a reference relay was set the positions/impedances are relative to the reference relay. The sweep method needs always a reference relay. If no reference relay was set the first relay in the diagram's direction is taken for reference relay. The busbar connected to the reference relay is marked with an arrow pointing in the diagrams direction. The reference relay is set either using the graphic or by editing the "Time Distance Diagram'' dialogue. Changing the reference relay graphically is done by clicking with the right mouse button on the relay symbol and selecting "Set reference relay'' in the context menu. If there is more than one relay connected to the selected busbar PowerFactory prompts for the relay to use. In the dialogue of the "Time Distance Relay" the "Reference Relay'' frame is located on the bottom. Change the "Relay'' reference to set or reset the reference relay.

32.7.6
Axis
32 - 42

Double-Click Positions
Edit scale

The following positions can be double-clicked for a default action:

DIgSILENT PowerFactory

Protection

Curve Relay box Path axis Any other

Edit step of relay Edit relay(s) Edit Line Open the "Time Distance'' edit dialogue

32.7.7

The Context Sensitive Menu

If the diagram is right-clicked at any position, the context sensitive menu will pop up similar to the menu described in Section 20.1.2 (Plots) for the virtual instruments. There are some additional functions available in addition to the basic VI-methods for the time-distance plot. Grid Edit Path Method x-Unit Diagrams Report Shc-Calc... Shows the dialogue to modify the grid-lines. Opens the dialogue of the displayed path definition (SetPath). Set the used method for calculating the tripping times. Set the unit for the x-Axis, km impedances,... Select diagrams shown forward, reverse or both. This option prints out a report for the position of the relays, their tripping time as well as all calculated impedances in the output window. Show "Short-Circuit Sweep'' command dialogue.

Consider Breaker Opening Time

32.7.8

Set Relays Buttons

The Set Relays button in the dialogue of the time-distance plot fills the table with the relays in forward or reverse direction of the path automatically.

32.8

Relay Plot

The relay or R-X plot VisDraw is showing the impedance characteristics of different distance protection relays in one or several R-X plots. Additionally the impedance of connected lines and transformers in the network nearby the protection equipment can easily be shown. Thus the impedances of the different zones of the relay and the tripping time can easily be adjusted and checked for a good and thorough protection of the equipment. There are several ways to create a relay plot (VisDraw): The easiest way to create and show a VisDraw is to select one cubicle, where a distance relay is installed. Right-click the switch to open the context-sensitive menu. This will show the options Create R-X Plot and Add to R-X Plot. PowerFactory will then create a new diagram showing the R-X plot for all relays in the selected cubicle. Another way is to right-clicked an element which is belonging to a defined protection path and select Path...> R-X Plot from the context-sensitive menu. Also a distance relay element ElmRelay can be chosen from the list of calculationrelevant objects or in the data manager. Right-click the relay on the right side of the
32 - 43

DIgSILENT PowerFactory

Protection

data manager or in the list of relays. Then select Show > R-X Plot to create a new plot or Show > Add to R-X Plot to get a selection of already created plots to add the characteristic to an existing plot.

Note

To show the relay locations and thus to visualize the switches with relays definitions these can be highlighted by setting the color representation of the single-line diagram to "Relay Locations''. By right-clicking these elements the option Show > R-X Plot is available and can be chosen.

The R-X plots show the impedance characteristics of selected distance relays including the different zones. impedance curve of the lines and transformers near the relay location. the location of other distance relay nearby. the short-circuit impedance depending on the location and the fault impedances. the tripping time of the relay.

Fig. 32.50:

A R-X plot with short-circuit results and two relays

In Figure 32.50 an example is shown for the R-X plot, where two relay characteristics and the transmission line impedances are displayed. Furthermore shows the location of the short-circuit or load-flow calculation as a equivalent impedance point in the plot. For every relay displayed in the graph also a legend is shown containing the relevant information regarding the short-circuit calculation of each relay:
32 - 44

DIgSILENT PowerFactory

Protection

name of the relay, measured impedances seen from the relay location, the fault type, the actual tripping time of the relay, which zone is tripped. The information shown may be changed in the relay plot settings. For details please refer to Section 20.1.2 (Plots).

32.8.1

Modifying the Relay Settings

From the R-X plot the characteristics of the relays shown can easily be changed according to the impedances of the electrical equipment, which is to be protected. By double-clicking the characteristic of a relay zone the settings dialogue of the zone will be opened and can be modified. Here the relay specific information of the impedance characteristic can be entered. Also the information of the line branch connected to the relay in "forward'' direction is shown in the dialogue. If the OK button is selected the characteristic of the relay will be updated. It is also possible to edit the lines or transformer elements shown in the plot. Holding still the mouse arrow over the element for a second a balloon help box will appear and show the name of the element. If one of the lines is double-clicked, the edit dialogue of the element pops up like in the single-line graphics. In this way the line impedances can easily be accessed.

Relay Plot Settings


The R-X plot settings can be accessed by selecting the Options from the context-sensitive menu or by pressing the Options button in the edit dialogue of the plot.

Basic Options:
The dialogue shows the following options: Unit Relays Units Zones Display The current unit may be set to either primary or secondary (relay) ampere. This option is used to display only certain types of relay characteristics. Here the zone can be selected which is to be shown. Also All zones of the relays can be displayed in one graph (default). This option is used to select how the calculated load-flow or shortcircuit current/equivalent impedance will be displayed. Either as an short-circuit arrow, a cross or none may be selected.

Show Impedance Color out of service units Zones being out of service can be shown as well in a different color.

32 - 45

DIgSILENT PowerFactory

Protection

Fig. 32.51:

R-X-Plot Setttings

Additionally, the show/hide option for the starting, overreach zones, power swing units and the complete shape of the diagrams can be selected in the dialogue.

Branch Impedances:
There are special options to modify the appearance of the branch impedances: Number of Relay Locations Only the branches are shown up to the x-th next relay location. If zero, no branches are shown at all. Branches, max. Depth Maximum number of branches shown from each relay location. If zero, no branches are shown at all. Ignore Transformers Transformer impedances are ignored when activated. Method Method for determining the line impedances. Show Branch Options Here the line style and width can be selected.

Legend:
In the legend belonging to each relay different information and calculation results is displayed. Here the user can choose, which results are to be shown.

32 - 46

DIgSILENT PowerFactory

Protection

32.9

The Protection Coordination Wizard

The Protection Coordination Wizard for automatic overcurrent protection relay settings calculation has the purpose to: Verify that the settings (thresholds, time delays and curve shapes) of the overcurrent devices satisfy the requirements to achieve the protection of the circuit respecting the selectivity constrains and guarantying the "normal operation" of the system, Calculate the settings (thresholds, time delays and curve shapes) to satisfy protection, selectivity and "normal operation". It's possible to run the verification process without running the calculation process. The calculation process is using the verification phase to validate the results and generate a report of the achieved results. The Protection Coordination Wizard has the ability to verify/calculate the selectivity for each protective device using the settings of one phase inverse element, two phase definite time elements, one phase ground inverse element and two ground definite time elements. To protect the system the rules implemented in the wizard are calculating the relay settings of one phase inverse element, two phase definite time elements and one ground time definite element. The Protection Coordination Wizard requires that protective devices have been created on each side of a line or of a transformer. Motors, generic loads, capacitors must be protected by a protective device located on the motor, generic load, capacitor feeder itself. Please keep in mind that the coordination process is flexible but cannot manage any possible "circuit" configuration: some of them cannot be protected in a perfect way due to the circuit characteristics and to the protective device characteristics. Example: A relay protecting two transformers in parallel, the relay trip threshold should be at least two times the single transformer rated current. To manage the CT errors and the relay measurement error a 110% (or greater) safety factor is added to the threshold. The threshold value we obtain doesn't guarantee to fully protect the single machine. So it appears clear that not always coordination process is able to achieve a perfect coordination of the protective devices and protection of the protected items. Many times the results we get are an acceptable compromise between the protection and coordination needs using the available protective devices characteristics. In this case a full report showing the current ranges where the coordination or the protection isn't achieved will be made available.

32.9.1

Starting the Protection Coordination Wizard

Before you can use the Protection Coordination Wizard you have to: Define protection devices in the grid (according to Section 32.1: Creating a Protection Device). Define a feeder for the section of the grid, in which you want to ccordinate the protection devices. For informations about feeders please refer to Section 12.5 (Feeders). With these elements available in your grid, you can use the Protection Coordination Wizard. To start the wizard, either:
32 - 47

DIgSILENT PowerFactory

Protection

Select the Protection toolbar in the main icon bar of PowerFactory. Press the 'Protection Coordination Wizard' button as shown in Figure 32.52. or: Click with the right mouse button on an element in the single-line diagram, which is part of the feeder, i. e. the part of the grid, for which you want to coordniate the protection devices. Select Calculate -> Protection Coordination Wizard from the context sensitive menu as depicted in Figure 32.53.

Fig. 32.52:

The Protection Coordination Wizard button in the Protection toolbar

Fig. 32.53:

Starting the Protection Coordination Wizard from the context sensitive menu

The dialogue of the Protection Coordination Wizard pops up (see Figure 32.54). Configure the Coordiniation Wizard for meeting your requirements. Afterwards press the Execute
32 - 48

DIgSILENT PowerFactory

Protection

button to run the coordination process.

32.9.2

The Protection Coordination Wizard Dialogue Window

Normally you just have to select the options on the 'Basic Options' tab. Advanced users may use the 'Configuration' tab as well. On the 'Output' tab you can select the output format.

Fig. 32.54:

The Protection Coordination Wizard dialogue - Basic Options

32 - 49

DIgSILENT PowerFactory

Protection

Fig. 32.55:

The Protection Coordination Wizard dialogue - Output Options

32 - 50

DIgSILENT PowerFactory

Network Reduction

Chapter 33 Network Reduction

A typical application of network reduction is a project where a specific network has to be analyzed, but this network cannot be studied independent of a neighboring network of the same or a higher/lower voltage level. In such cases, one option is to model both networks in detail for calculation purposes. There may, however, be situations when it is not desirable to perform studies with the complete model. Such situations may include, for example, cases when the calculation times would increase significantly or when the data of the neighboring network is confidential and cannot be published in detail. In these cases it is common practise to provide a representation of the neighboring network, which contains the interface nodes (connection points) that may be connected by equivalent impedances and voltage sources. the reduced part of the network and calculates its parameters. This equivalent representation is valid for both load flow and short-circuit calculations, including asymmetrical faults (i.e. single-phase faults).

PowerFactorys network reduction algorithm produces an equivalent representation of

33.1

Network Reduction Example

The example configuration used in this chapter to illustrate the network reduction function is a transmission system as shown in Figure 33.1 feeding a distribution system. The distribution network is fed by two busbars, "Bus 5'' and "Bus 6'', in the center of the transmission system. It is represented by Load A and Load B and the corresponding two transformers. The distribution system is to be studied in detail, however the transmission system will be represented only by its equivalent model. The transmission system has a connection to another transmission system, which is represented by the External Grid and the connecting line. This second transmission system shall remain as-is, as we want to reduce only one transmission system. The Boundary defines which part shall be reduced.

33 - 1

DIgSILENT PowerFactory

Network Reduction

Fig. 33.1:

Example System with Original Network

The result of the network reduction is shown in Figure 33.2. The transmission network has been reduced to an equivalent representation by three AC voltage sources (ElmVac) and three common impedances (ElmZpu) connecting the remaining busbars. A load flow calculation or a short-circuit calculation in the reduced network gives the same results for the distribution network as for the original (non-reduced) network.

33 - 2

DIgSILENT PowerFactory

Network Reduction

Fig. 33.2:

Example System with Reduced Network

33.2

Executing the Reduction Process

The grid boundary, which divides the network into a part which shall remain in its original detailed representation (the retained grid) and a part that is to be reduced (i.e. that which shall be represented by a simplified equivalent grid), is defined by means of a boundary element (ElmBoundary). A boundary element is essentially a set of cubicles, each one defined with a given orientation to distinguish the two portions of the network separated by the boundary as "interior" and "exterior". The cubicles in the boundary element have to be orientated in order to have the part of the grid which shall be reduced as "interior". For more information regarding boundaries, please refer to Section 12.3 (Boundaries). To reduce the network, please proceed as follows: The Network Reduction function, by default, retains the original network data. It will only destroy the original data if the associated option for this is set accordingly (see Section 33.3.2: Outputs). However, to be absolutely sure of avoiding any data loss, even when accidentally selecting the option which will delete the original grid during the reduction procedure, please first either: - make a copy of the whole project and paste/store it with a name different to that of the original project; or - export the project as a *.dz- or *.pfd file (for information regarding exporting data please refer to Section 9.1.4: Exporting and Importing of Projects); or
33 - 3

DIgSILENT PowerFactory

Network Reduction

- activate the project and create a new Version of the project. For information about Versions please refer to Section 21.1 (Project Versions). Activate the base Study Case. This loads the original network. If you have migrated your project from PowerFactory version 13.2 or another previous PowerFactory version, please ensure that either there is a Variations folder in your current project (located inside the Network Model folder) or that there are already existing System Stages (located inside the Grid folders). For further information, please refer to Section 33.3.2 (Outputs). Define the boundary necessary to split the grid into the part to be reduced, and the part to retain its detailed representation. Ensure that the boundary splits the network into two regions by using the Check Split button in the ElmBoundary dialogue. For more information about boundaries, please refer to Section 12.3 (Boundaries). Select the Additional Tools icon ( ) from the main toolbar.

Press the Network Reduction icon ( ) from the Additional Tools icon bar (Figure 33.3). This opens the dialogue for Network Reduction (ComRed). Choose the settings according to Section 33.3 (Network Reduction Command). Click on the Execute button to start the reduction procedure.

Network Reduction

Fig. 33.3:

The Network Reduction Button in the Additional Tools Icon Bar

Depending on the option selected on the Outputs tab (Section 33.3.2: Outputs), the network reduction procedure may automatically create a new variation/system stage to represent the original grid. If the original system is represented with multiple grids (or system stages of multiple grids), a new system stage will be created in each one. In the new system stage(s), the part of the grid which shall not be reduced retains its full representation, whereas the part that shall be reduced is erased and the new simplified grid representation is added, with the connections to the other part of the grid (i. e. to the part which is not reduced). The new system stage(s) will therefore represent the combined grid (retained grid and reduced equivalent). The new system stages will be automatically activated in the active study case. In the event that one or more single line graphic diagrams were available in the system stage(s) within the original grid, these graphics will also be available in the new system stage(s) within the combined (partly retained and partly reduced) grid. The first time that the new study case is activated (automatically, at the end of network reduction procedure), the graphics will be displayed. The elements contained in the part of the grid which was reduced (if any of them were previously shown), will appear grey in colour, as "ghost"
33 - 4

DIgSILENT PowerFactory

Network Reduction

elements. Deactivating and re-activating the project will make them disappear permanently (they are graphic elements only, and have no corresponding elements in the database in the new system stage(s)). The elements contained in the equivalent grid (equivalent branches, equivalent shunts, equivalent injections, etc) are stored in the database but have no graphic image as yet. These elements can be easily drawn by making use of the PowerFactory tool "Draw Existing Net Elements", which is explained in Section 10.4.3 (Drawing Diagrams from Predefined Objects).

33.3

Network Reduction Command

In this section, the Network Reduction command options are explained.

33.3.1

Basic Options

Fig. 33.4:

Network Reduction Command (ComRed) Basic Options

Boundary

The part of the grid which shall be reduced must be defined by a boundary. The project Boundaries folder may contain many defined boundaries, so the user has to select the boundary corresponding to the division which separates the original grid into two parts: (i) the part
33 - 5

DIgSILENT PowerFactory

Network Reduction

that shall be reduced; and (ii) the part that shall retain its full representation. Only one boundary can be used in the network reduction calculation. For more information about boundaries, please refer to Section 12.3 (Boundaries).

Load Flow
Calculate load flow equivalent With this option enabled, the load flow equivalent will be created. If this option is disabled, the load flow equivalent will not be created. This option is normally enabled. Equivalent Model for Power Injection The load flow equivalent is composed of mutual impedances among boundary nodes and power injections (and shunt impedances) at boundary nodes. This kind of power injection can be represented by different models. For the load flow equivalent there are three options (models) available: Load Equivalent: a load demand Ward Equivalent: an AC voltage source which is configured as a Ward Equivalent Extended Ward Equivalent: an AC voltage source which is configured as an Extended Ward Equivalent

Short-Circuit
Calculate short-circuit equivalent This option is used to specify whether the short-circuit equivalent shall be calculated (option enabled) or not (option disabled). Currently, only the complete short-circuit calculation method is supported. Asymmetrical Representation This option is used to specify whether an unbalanced short-circuit equivalent will be created. If this option is disabled, only a balanced short-circuit equivalent will be created, valid for the calculation of 3-phase short-circuits. If this option is enabled, an unbalanced short-circuit equivalent is created as well, valid for the calculation of single-phase and 2-phase short-circuits. This means the network representation must include zero sequence and negative sequence parameters, otherwise the unbalanced calculation cannot be performed.

33 - 6

DIgSILENT PowerFactory

Network Reduction

33.3.2

Outputs

The Outputs tab is used to specify whether the reduced grid parameters shall be reported only, or whether the reduced grid shall be stored in a new variation. Calculation of Parameters Only The equivalent parameters are calculated and reported, and no new variation will be created. Create a New Variation for Reduced Network The equivalent parameters are calculated and a new variation will be automatically created, to store the reduced network representation. If the project still includes system stages (from PowerFactory version 13.2 or earlier versions) a new system stage will be created instead of a variation. Reduce Network without Creating a New Variation The reduced network will be stored directly in the Grid folder inside the Network Data folder. No variation will be created. The part of the grid to be reduced will be deleted and replaced by its reduced representation. To avoid losing the original grid data, save the data before executing the network reduction with this option. To do this, either (i) create a revision manually; or (ii) create a version of the project; or (iii) make a copy of the entire project; or (iv) export the project.

Fig. 33.5:

Network Reduction Command - Outputs

33 - 7

DIgSILENT PowerFactory

Network Reduction

33.3.3

Advanced Options

Mutual Impedance Enter here the value for the maximum equivalent branch impedance to be considered. The reduced network will be comprised of, among other elements, equivalent branches that join each pair of boundary nodes (a boundary node is identified for each boundary cubicle). The number of these branches will therefore be N*(N-1)/2, where N is the number of boundary nodes. (Note that this number can be very high in the case of many boundary nodes). It frequently occurs that some (or many) of these equivalent branches have a very large impedance value, and therefore that their associated power flows are negligible: hence they are not represented as branches. Therefore, the user is given the possibility to define an impedance limit value, above which branches will be neglected (i.e. not represented) in the reduced network equivalent. Calculate Equivalent Parameters at All Frequencies With this option the calculation of frequency-related parameters can be enabled or disabled. By default the short-circuit equivalent parameters are calculated at all frequencies relevant to short-circuit analysis (equivalent frequencies for calculating the d.c. component of the shortcircuit current): f = fn f / fn = 0.4 f / fn = 0.27 f / fn = 0.15 f / fn = 0.092 f / fn = 0.055 fn is the nominal frequency of the grid (usually 50 Hz or 60 Hz). If only transient and sub-transient short-circuit currents are being considered in the calculation, the calculation of frequency-related parameters can be skipped by unchecking this option.

Fig. 33.6:
33 - 8

Network Reduction Command - Advanced Options

DIgSILENT PowerFactory

Network Reduction

33.3.4

Verification

Check Equivalent Results If the option Check load flow results after reduction is enabled, the load flow results at the boundary nodes will be checked against the original network results. A warning message will be given if the results do not match (within a user defined tolerance). Check Deviation of Working Point If the option Save original operating point to result file is enabled, the operating point where the network reduction takes place will be automatically saved to two result files. These two created files are: LdfResultforNR.ElmRes: voltage magnitudes and angles of all boundary nodes; and ShcResultforNR.ElmRes: short-circuit level at all boundary nodes, including Ik'' (Ikss), Ik' (Iks), ip (ip), ib (ib), Ib (Ib), Xb/Rb (XtoR_b), and X/R (XtoR).

Fig. 33.7:

Network Reduction Command - Verification

33 - 9

DIgSILENT PowerFactory

Network Reduction

33.4

Technical Background

For an improved understanding of PowerFactorys Network Reduction function, some technical background is provided in the following sections.

33.4.1

Network Reduction for Load Flow

Network reduction for load flow is an algorithm based on sensitivity matrices. The basic

idea is that the sensitivities of the equivalent grid, measured at the connection points in the retained grid, must be equal to the sensitivities of the grid that has been reduced. This means that for a given (virtual) set of P and Q injections in the branches, from the retained grid to the grid to be reduced, the resulting u and (voltage magnitude and voltage phase angle variations) in the boundary nodes must be the same for the equivalent grid, as those that would have been obtained for the original grid (within a user defined tolerance).

33.4.2

Network Reduction for Short-Circuit

admittance matrices. The basic idea is that the impedance matrix of the equivalent grid, measured at the connection points in the retained grid, must be equal to the impedance matrix of the grid to be reduced (for the rows and columns that correspond to the boundary nodes). This means that for a given (virtual) additional I injection (variation of current phasor) in the boundary branches, from the retained grid to the grid to be reduced, the resulting u (variations of voltage phasor) in the boundary nodes must be the same for the equivalent grid, as those that would have been obtained for the original grid (within a user defined tolerance). This must be valid for positive sequence, negative sequence, and zero sequence cases, if these are to be considered in the calculation (unbalanced short-circuit equivalent).

Network reduction for short-circuit is an algorithm based on nodal impedance/nodal

33.4.3

Handling of Slack Bus

If the slack bus is located in the grid which is to be reduced, a neighbourhood around this slack will be automatically defined. This neighbourhood will be excluded from the grid to be reduced. That means the neighbourhood of the slack bus will remain after the Network Reduction procedure. The neighbourhood is defined based on a search from the slack element towards each connection, until a non-zero impedance element is passed. This means that the neighbourhood contains all elements encountered up to and including the non-zero impedance element.

33 - 10

DIgSILENT PowerFactory

State Estimation

Chapter 34 State Estimation

The State Estimator (SE) function of PowerFactory provides consistent load flow results for an entire power system, based on real time measurements, manually entered data and the network model. Before any further analysis, such as contingency analysis, security checks etc. can be carried out, the present state of a power system must be estimated from available measurements. The measurement types that are processed by the PowerFactory State Estimator are: Active Power Branch Flow Reactive Power Branch Flow Branch Current (Magnitude) Bus Bar Voltage (Magnitude) Breaker Status Transformer Tap Position Unfortunately, these measurements are usually noisy and some data might even be totally wrong. On the other hand, there are usually more data available than absolutely necessary and it is possible to profit by redundant measurements for improving the accuracy of the estimated network state. The states that can be estimated by the State Estimator on the base of the given measurements vary for different elements in the network: Loads - Active Power, and/or - Reactive Power, or - Scaling Factor, as an alternative Synchronous Machines - Active Power, and/or - Reactive Power Asynchronous Machines - Active Power Static var System - Reactive Power 2- and 3-winding transformers - Tap Positions (for all but one taps).

34 - 1

DIgSILENT PowerFactory

State Estimation

34.1

Objective Function

The objective of a state estimator is to assess the generator and load injections, and the tap positions in a way that the resulting load flow result matches as close as possible with the measured branch flows and bus bar voltages. Mathematically, this can be expressed with a weighted square sum of all deviations between calculated (calVal) and measured (meaVal) branch flows and bus bar voltages:

f(x) =

i=1 The state vector x contains all voltage magnitudes, voltage angles and also all variables to be estimated, such as active and reactive power injections at all bus bars. Because more accurate measurements should have a higher influence to the final results than less accurate measurements, every measurement error is weighted with a weighting factor w i to the standard deviation of the corresponding measurement device (+transmission channels, etc.). In this setting, the goal of a state estimator is to minimize the above given function f under the side constraints that all load flow equations are fulfilled.

w i calVal i ( x ) meaVal i

34.2

Components of the PowerFactory State Estimator

The State Estimator function in PowerFactory consists of several independent components, namely: 1 2 3 4 Preprocessing Plausibility Check Observability Analysis State Estimation (Non-Linear Optimization)

Preprocessing phase adjusts all breaker and tap positions according to their measured signals.

Figure 34.1 illustrates the algorithmic interaction of the different components. The first

34 - 2

DIgSILENT PowerFactory

State Estimation

Preprocessing

Plausibility Check
Eliminate Errornous Measurements

Repair Unobservability

Still Unobservable?

Observable?

State Estimation
(non-linear Optimization)
Bad Data Detection

No Bad Measurements Exists

OK

Fig. 34.1:

Variation of the PowerFactory state estimator algorithm

The Plausibility Check is sought to detect and separate out, in a second phase, all measurements with some apparent error. PowerFactory provides various test criteria for that phase of the algorithm. In a third phase, the network is checked for its Observability. Roughly speaking, a region of the network is called observable, if the measurements in the system provide enough (non-redundant) information to estimate the state of that part of the network. Finally, the State Estimation itself evaluates the state of the entire power system by solving the above mentioned non-linear optimization problem. PowerFactory provides various ways for copying with non-observable areas of the network. In order to improve the quality of the result, observability analysis and state estimation can be run in a loop. In this mode, at the end of each state estimation, the measurement devices undergo a so-called Bad Data Detection: the error of every measurement device can be estimated by evaluating the difference between calculated and measured quantity. Extremely distorted measurements (i.e. the estimated error is much larger than the standard deviation of the measurement device) are not considered in the subsequent iterations. The process is repeated until no bad measurements are detected any more. In the following, the distinct components of the PowerFactory state estimator are explained in detail.

E lim in a te B a d M e a s u re m e n ts

34 - 3

DIgSILENT PowerFactory

State Estimation

34.2.1

Plausibility Check

In order to avoid any heavy distortion of the estimated network-state due to completely wrong measurements, the following Plausibility Checks can be made before the actual State Estimation is started. Every measurement that fails in any of the listed Plausibility Checks will not be considered. Check for consistent active power flow directions at each side of the branch elements. Check for extremely large branch losses, which exceed their nominal values. Check for negative losses on passive branch elements. Check for large branch flows on open ended branch elements. Check whether the measured branch loadings exceed the nominal loading value of the branch elements. Node sum checks for both, active and reactive power. Each test is based on a stochastic analysis which takes into account the measurements individual accuracy. The strictness of the above mentioned checking criteria can be continuously adjusted in the advanced settings. The result of the Plausibility Check is reported, for each measurement, on a detailed error status page (see Section 34.5).

34.2.2

Observability Analysis

A necessary requirement for an observable system is that the number of available measurements is equal or larger than the number of estimated variables. This verification can easily be made at the beginning of every state estimation. But it can also happen that only parts of the network are observable and some other parts of the system are not observable even if the total number of measurements is sufficient. Hence, it is not only important that there are enough measurements, but also that they are well distributed in the network. Therefore, additional verifications are made checking for every load or generator injection whether it is observable or not. The entire network is said to be observable if all load or generator injections can be estimated based on the given measurements. PowerFactory does not only solve the decision problem whether the given system is observable or not: If a network is not observable, it is still useful to determine the islands in the network that are observable. The Observability Analysis in PowerFactory is not purely based on topological arguments; it heavily takes into account the electrical quantities of the network. Mathematically speaking, the Observability Check is based on an intricate sensitivity analysis, involving fast matrix-rank-calculations, of the whole system.

servable areas, and for redundant and non-redundant measurements (see Section 34.5.4).

PowerFactory offers a very flexible color representation both for observable and unob-

The result of the Observability Analysis can be viewed using the data manager. Besides,

Observability of individual states


The Observability Analysis identifies not only, for each state (i.e., load or generator injec34 - 4

DIgSILENT PowerFactory

State Estimation

tions) whether it is observable or not. It also subdivides all unobservable states into socalled equivalence-classes. Each equivalence-class has the property that it is observable as a group, even though its members (i.e., the single states) cannot be observed. Each group then can be handled individually for the subsequent state estimation.

Redundancy of measurements
Typically, an observable network is overdetermined in the sense that redundant measurements exist, whichfor the observability of the systemdo not provide any further information. During the Observability Analysis, PowerFactory determines redundant and non-redundant measurements. Moreover, it subdivides all redundant measurements according to their information content for the systems observability status. In this sense, PowerFactory is even able to calculate a redundancy level which then indicates how much reserve the network measurements provide. This helps the system analyst to precisely identify weakly measured areas in the network. It should be remarked that the non-linear optimization part of the State Estimator may highly profit from these redundant measurements; thus, redundant measurements will not be neglected in the state estimation.

34.2.3

State Estimation (Non-Linear Optimization)

The non-linear optimization is the core part of the State Estimator. As already mentioned in the introduction, the objective is to minimize the weighted square sum of all deviations between calculated and measured branch flows and bus bar voltages whilst fulfilling all load flow equations.

PowerFactory uses an extremely fast converging iterative approach to solve the problem based on Lagrange-Newton methods. If the Observability Analysis in the previous step indicates that the entire power system is observable, convergence (in general) is guaranteed.

In order to come up with a solution for a non-observable system, various strategies can be followed: One option is to reset all non-observable states, such that some manually entered values or historic data is used for these states. An alternative option is to use socalled pseudo-measurements for non-observable states. A pseudo-measurement basically is a measurement with a very poor accuracy. These pseudo-measurements force the algorithm to converge. At the same time, the resulting estimated states will be of correct proportions within each equivalence-class. In the remaining sections of this guide of use, the instructions related to Data Entry, Options and Constraints, and Visualization of Results are presented.

34.3

State Estimator Data Input

The main procedures to introduce and manipulate the State Estimator data are indicated in this section. For applying the PowerFactory State Estimator, the following data are required additional to standard load flow data: Measurements - Active Power Branch Flow - Reactive Power Branch Flow
34 - 5

DIgSILENT PowerFactory

State Estimation

- Branch Current (Magnitude) - Bus Bar Voltage (Magnitude) - Breaker Status - Transformer Tap Position Estimated States - Loads: Active Power (P) and/or Reactive Power (Q), or the Scaling Factor, as an alternative. - Synchronous Machines: Active Power (P) and/or Reactive Power (Q) - Asynchronous Machines: Active Power (P) - Static var Systems: Reactive Power (Q) - Transformers: Tap Positions For the measurements listed above, PowerFactory uses the abbreviated names P-measurement, Q-measurement, I-measurement, V-measurement, Breaker-measurement, and Tap position-measurement. Similarly, as a convention, the four different types of estimated states are shortly called P-state, Q-state, Scaling factor-state, and Tap positionstate.

34.3.1

Measurements

All measurements are defined by placing a so-called External Measurement Device inside a cubicle. For this purpose, select the device in the single-line graphic and choose from the context menu (right mouse button) New Devices and then External Measurements... (see Figure 34.2). Then, the new object dialogue pops up with a predefined list of external measurements. Please select the desired measurement device among this list (see Figure 34.3).

34 - 6

DIgSILENT PowerFactory

State Estimation

Fig. 34.2:

External Measurements that are located in a cubicle

Fig. 34.3:

Defining new external measurements

34 - 7

DIgSILENT PowerFactory

State Estimation

The following measurement devices are currently supported (External) P-Measurement (StaExtpmea) (External) Q-Measurement (StaExtqmea) (External) I-Measurement, current magnitude (StaExtimea) (External) V-Measurement, voltage magnitude (StaExtvmea) (External) Breaker Signalization Breaker Status (StaExtbrkmea) (External) Tap-Position Measurement Tap Position (StaExttapmea) Any number of mutually distinct measurement devices can be defined in the cubicle.

Branch Flow Measurements


Any branch flow measurement (StaExpmea, StaExtqmea) is defined by the following values (see figures 34.4 and 34.5): Measured value (e:Pmea or e:Qmea, respectively) Multiplicator (e:Multip) Orientation (e:i_gen) Accuracy class and rating (e:Snom and e:accuracy) Input status (to be found on the second page of the edit object, see Figure 34.5): E.g., tele-measured, manually entered, read/write protected, . . . (e:iStatus). It is important to note that the state estimator takes into account only measurements, for which the read-Status is explicitly set and for which the Neglected by SE-Status is unset.

Fig. 34.4:

Dialogue for an external P-measurement

The accuracy class and the rating are used for weighting the measurement element. In
34 - 8

DIgSILENT PowerFactory

State Estimation

case of redundant measurements, a more accurate measurement will be higher weighted than a less accurate measurement. Using the flag orientation, it is possible to define the meaning of the active or reactive power sign. Load orientation means that a positively measured P or Q flows into the element, generator orientation defines a positive flow as flowing out of an element. With the multiplicator, a measured quantity can be re-rated. E.g., if a measurement instrument indicates 150kW (instead of 0.15MW), the multiplicator can be set to 0.001 and the measured value is set to 150 resulting in a correct value. It is important to note, that External P- and Q-measurements have the additional feature to possibly serve as a so-called (externally created) pseudo-measurement. This feature is activated by checking the corresponding box (e:pseudo). Pseudo-measurements are special measurements which are ignored during the regular calculation. They are activated in a selective manner only if the observability check found unobservable states in the network (see Section 34.4.1 (Basic Setup Options) for details).

Current Measurements
The External I-measurement (Staextimea) plays a special role and slightly differs from the External P- and Q-measurements (see Figure 34.6): Besides specifying the measured current magnitude (e:Imea), the user is asked to enter an assumed (or measured) value for the power factor cos (e:cosphi and e:pf_recapr).

Fig. 34.5:

Second page Status of the dialogue for an external P-measurement

Internally, the measured current magnitude is then additionally transformed into two further measurements, namely an active and a reactive current. This is due to the fact that current magnitude does not provide information on the direction of the flow, which on the other hand is essential to avoid ambiguous solutions in the optimization. In this sense, an external I-measurement may play the role of up to three measurements:
34 - 9

DIgSILENT PowerFactory

State Estimation

1 2 3

as a current magnitude measurement. as a measurement for active current. as a measurement for reactive current.

The decision which of these measurements shall participate in the state estimator is left to the user by checking the boxes (e:iUseMagn,e:iUseAct, and/or e:iUseReact). In any case, the corresponding ratings for the used measurement types need to be specified. This is done (accordingly to the flow measurements) by entering the pairs of fields ((e:SnomMagn,e:accuracyMagn), (e:SnomAct,e:accuracyAct), and (e:SnomReact,e:accuracyReact), respectively).

Voltage Measurements
Voltage measurements (StaExvmea) need to be placed in cubicles as well. The measurement point then is the adjacent terminal.

Fig. 34.6:

Dialogue for an external I-measurement

A voltage measurement basically has the same properties as a flow measurement, except, for the rating, only a single value for the accuracy needs to be specified. The corresponding internal reference is the nominal voltage of the terminal which serves as measurement point.
34 - 10

DIgSILENT PowerFactory

State Estimation

Breaker and Tap Position Measurements


Both breaker and tap position measurements are assumed to measure the corresponding discrete breaker status and tap position signal accurately. Hence, no ratings needs to be specified. Tap position measurements have a conversion table as extra feature. The conversion table allows any discrete translation mapping between external tap positions (Ext. Tap) and tap positions used by PowerFactory (PF Tap).

34.3.2

Activating the State Estimator Display Option

To access and enter data for State Estimator calculations in the appropriate elements of the grid, the pertinent Display Options must be selected as follows: a) b) c) Click the icon , or select from the main menu Options User Settings. Change to the tab page Functions. The window shown in Figure 34.7 will appear. Enable the Display Function State Estimator as shown below. Exit the window clicking the OK button.

Fig. 34.7:

User Settings for State Estimation

With this display function enabled, a new tab called State Estimator appears in the State Estimator related elements of the grids in the activated project. The State Estimator data
34 - 11

DIgSILENT PowerFactory

State Estimation

manipulation of the different elements is indicated below.

34.3.3

Editing the Element Data

In addition to the measurement values, the user has to specify which quantities shall be considered as states to be estimated by the SE. Possible states to be optimized whilst minimizing the sum of the error squares over all measurements are all active and/or reactive power injections at generators and loads and all tap positions.

Loads
For each load (ElmLod), the user can specify whether its active and/or reactive power shall be estimated by the state estimator. Alternatively, the state estimator is able to estimate the scaling factor (for a given P and Q injection). The specification which parameter shall be estimated, is done by checking corresponding boxes on the State Estimator page of the load (see Figure 34.8). When these options are disabled, the load is treated as in the conventional load flow calculation during the execution of the SE.

Fig. 34.8:

Editing element data for loads

Synchronous Machines
Similarly, for synchronous machines (ElmSym), the active and reactive power can be selected as a control variable for being estimated by the state estimator. Again, the user will find corresponding check boxes on the State Estimator page of the element. If the corresponding check box(es) are disabled, the synchronous machine behaves as in the conventional load flow calculation.

Asynchronous Machines
For asynchronous machines (ElmAsm), the active power may serve as a state to be estimated. Once again, the corresponding box has to be checked on the State Estimator page. If the corresponding check box is disabled, the asynchronous machine behaves as in the conventional load flow calculation.

34 - 12

DIgSILENT PowerFactory

State Estimation

Static var Systems


For static var systems (ElmSvs), the reactive power may serve as a state to be estimated. Again, the corresponding box has to be checked on the State Estimator page. If the corresponding check box is disabled, the static var system behaves as in the conventional load flow calculation.

Transformers
In the 2-winding transformer elements (ElmTr2), the tap position can be specified as a state to be estimated by the State Estimator (see Figure 34.9). Tap positions will be estimated in a continuous way (without paying attention to the given tap limits). For 3-winding transformers, any two of the three possible tap positions (HV-, MV-, and LV-side) can be selected for estimation (see Figure 34.10). The corresponding check boxes are found on the State Estimator page of the transformers. If the check box is disabled the State Estimator will treat the tap position of the transformers as in the conventional load flow calculation.

Fig. 34.9:

Editing element data for 2-winding transformers

Fig. 34.10:

Editing element data for 3-winding transformers

34 - 13

DIgSILENT PowerFactory

State Estimation

34.4

Running SE

The following steps should be performed to execute the State Estimator: Start from a case where the conventional power flow converges successfully. Make sure that in the toolbar selection, the icon Execute the SE by clicking the icon Select EXECUTE. Basic Setup Options . is chosen.

Select the desired options for the State Estimator run (see below).

34.4.1

Basic Setup Options

Recall that the State Estimator in PowerFactory consists of three different parts (Plausibility Check, Observability Analysis, State Estimation (non-linear optimization)) and an additional precedent Preprocessing step (see Figure 34.1). This variation is reflected in the Basic Options dialogue (see Figure 34.11).

Fig. 34.11:
34 - 14

Editing the basic options page of the ComSe

DIgSILENT PowerFactory

State Estimation

Preprocessing
The algorithm distinguishes between breaker- and tap position-measurements on the one hand, and P-,Q-,I-, and V-measurements on the other hand. Breaker- and tap positionmeasurements are handled in the preprocessing step, whereas the latter types are processed in the subsequent parts or the state estimator. Adapt breaker measurements If this check box is marked, all measured breakers statuses will be set to the corresponding measured signal values. Adapt tap position measurements If this check box is marked, all measured tap positions will be set to the corresponding measured values.

Plausibility Check
The algorithm offers various kinds of plausibility checks to validate measurements. Each measurement undergoes the checks selected by the user. If a measurement fails any of the required tests, it will be marked as erroneous and will be neglected in all subsequent steps. A complete error report can be obtained via the error status page of each measurements (see Section 34.5). The following checks can be enabled by marking the corresponding check boxes. Consistent active power flow direction at each branch Checks for each passive branch, whether all connected Pmeasurements comply with a consistent power flow direction. More precisely, if some flow out of a passive element is measured while, at the same time, no flow into the element is measured, then all Pmeasurements connected to this element fail this test. For this check, a P-measurement is said to measure a non-zero flow if the measurement value is beyond a value of rating , where and rating are the accuracy and the rating, respectively, of the measurement. Branch losses exceed nominal values Checks for each passive branch, whether the measured active power loss exceeds the nominal loss of the branch by a factor of 1 + . This check only applies to passive branches which have P-measurements Pmea1 , . . . ,Pmear in each of its r connection devices. The threshold , by which the nominal loss shall not be exceeded, is given by:

rating, respectively, of measurement Pmeai. Negative losses on passive branches Checks for each passive branch, whether the measured active power loss is negative, i.e., if a passive branch is measured to generate active power. This check only applies to passive branches which have Pmeasurements Pmea1 , . .. , Pmear in each of its r connection devices.

i=1

i rating i , where i and ratingi are the accuracy and the

34 - 15

DIgSILENT PowerFactory

State Estimation

The measured power loss of the branch is said to be negative if it is below the threshold ( i rating i ).
i=1 r

Large branch flows on open ended branches Checks for each connection of the element, whether the connection is an open end (i.e., switch is open, or it is connected to only open detailed switches). If the connection is open and there exists a (P-, Q-, or I-) measurement which measures a non-zero flow, then the corresponding measurement fails the test. Again, a measurement is said to measure a non-zero flow if the measurement value is beyond a value of rating. Branch loadings exceed nominal values Checks for each connection of the element, if the measured complex power (which is computed by the corresponding P- and/or Qmeasurements) exceeds the rated complex power value by a factor of 1 + s. Here, s is the accuracy of the P- and/or Q-measurement(s). Node sum checks for active and reactive power This check applies to P- and/or Q-measurements. Checks, for each node of the network, if the node sum of the measured values in the adjacent branches is zero. If this is not the case, i.e., if the P- and/or Qsum exceeds a certain threshold value, all adjacent P- and/or Qmeasurements fail the test. Again, not being zero means that the sum of the measured values of the adjacent P-measurements Pmea1 , ... , Pmear has magnitude below the threshold (similarly for Q-measurements).

i=1

i ratingi

Observability Analysis
The Observability Analysis is an optional component of the State Estimator. If activated, it checks whether the specified network is observable, i.e., whether the remaining valid P-, Q-, V-, and I-measurements (which successfully passed the plausibility checks) suffice to estimate the selected P-, Q-, Scaling Factor-, and Tap position-states. In addition, the Observability Analysis detects redundant measurements. Redundancy, in general, yields more accurate results for the following state estimation. Moreover, if the Observability Analysis detects non-observable states, upon user selection, it tries to fix this unobservability by introducing further pseudo-measurements. Check for observability regions If the corresponding check box is marked by the user, the execution of the State Estimator will run the Observability Analysis (prior to the state Estimation optimization). Treatment of unobservable areas In case of unobservable states, the user has different options to cope with the situation: Stop if unobservable regions exist. The algorithm terminates with the detection of unobservable states. The Observability Analysis groups all non-observable states into different equivalence classes. Each
34 - 16

DIgSILENT PowerFactory

State Estimation

equivalence class consists of states that carry the same observability information through the given measurements. In other words, the given measurements can only distinguish between different equivalence classes, but not between various states of a single equivalence class. The results can be viewed by the user (see Section 34.5 (Results)). Use P-, Q-values as specified by model. If this option is selected, the algorithm internally drops the to be estimated flag of each nonobservable state and uses the element specifications of the load flow settings instead. For example, if a P-state of a load is unobservable, the algorithm will use the P-value as entered on the load flow page. Hence, the network is made observable by reducing the number of control variables. Use predefined pseudo-measurements. Using this option, the algorithm repairs the unobservability of the network by increasing the degrees of freedom. For that purpose, at the location of each nonobservable state, the algorithm tries to activate a pseudo-measurement of the same kind. Hence, if a P- (Q-)state is non-observable in some element, the algorithm searches for a P-(Q-)pseudo-measurement in the cubicle of the element carrying the non-observable state. In case of a non-observable scaling-factor both, a P- and a Q-pseudomeasurement are required. The introduced pseudo-measurements remain active as long as needed to circumvent unobservable areas. Use internally created pseudo-measurements. This option is similar to the previous one, except the algorithm automatically creates and activates a sufficient number of internal pseudo-measurements to guarantee observability. More precisely, internal pseudo-measurements are created at the locations of all elements that have non-observable P(Q-, scaling factor-)state. For each such element, the pseudomeasurement value for P (Q, P and Q) is taken from the elements load flow specification. All internally created pseudo-measurements use a common setting for their rating and accuracy, which can be specified on the advanced setup options page for the observability check. Use predefined and internally created meas. This mode can be considered as a mixture of the latter two options. Here, in case of a non-observable state, the algorithm tries to activate a predefined pseudo-measurement of the same kind. If no corresponding pseudomeasurement has been defined, then the algorithm automatically creates an internal pseudo-measurement.

State Estimation (Non-Linear Optimization)


The non-linear optimization is the central component of the State Estimator. The underlying numerical algorithm to minimize the measurements overall error is the iterative Lagrange-Newton method. Run state estimation algorithm Check this box to enable the non-linear optimization. Note that after convergence of the method,upon user settings on the advanced state estimation option pagePowerFactory performs a bad data check which eliminates the worst P-,Q-,V-, and I-measurements among all bad data. Observability Analysis and State Estimation are run in a loop
34 - 17

DIgSILENT PowerFactory

State Estimation

until no further bad measurements exist (recall the algorithm variation as shown in Figure 34.1).

34.4.2

Advanced Setup Options for the Plausibility Check

Each Plausibility Check allows for an individual strictness setting. Note that all checks rely on the same principle: namely, the given measurement values are checked against some threshold. Recall, for example, that the node sum check for P tests whether the active power sum at a node is below a threshold of =

sibility to influence the strictness of this threshold. Therefore, the settings provide to enter so-called exceeding factors fac > 0 such that the new threshold is fac instead of . E.g., in the case of the node sum check for P, the user may define the corresponding factor fac_ndSumP. The higher the exceeding factor, the less strict the plausibility test will be. Similar exceeding factors can be specified for any of the given tests.

i=1

i rating i . The user has the pos-

34.4.3

Advanced Setup Options for the Observability Check

Rastering of sensitivity matrix


Internally, the Observability Check is based on a thorough sensitivity analysis of the network. For that purpose, the algorithm computes a sensitivity matrix that takes into account all measurements, on the one hand, and all estimated states on the other hand. This sensitivity matrix is discretized by rastering the continuous values. The user can specify the precision of this process by defining the number of intervals into which the values of the sensitivity matrix shall be rastered (SensMatNoOfInt), the threshold below which a continuous value is considered to be a 0 (SensMatThresh) in the discrete case, and the mode of rastering (iopt_raster). It is highly recommended to use the predefined values here.

Settings for internally created pseudo-measurements


If, on the basic option page, the mode for the treatment of unobservable regions is set to use only internally created pseudo-measurements or to use predefined and internally created pseudo-measurements, the user may specify a default power rating (SnomPseudo) and a default accuracy class (accuracyPseudo). These default values are used for all automatically created internal pseudo-measurements.

34.4.4

Advanced Setup Options for Bad Data Detection

Recall that the state estimator loops Observability Analysis and State Estimation as long as no further bad measurement is found (see Figure 34.1). The following settings allow the user to control the number of iterations performed by the loop.

34 - 18

DIgSILENT PowerFactory

State Estimation

Maximum number of measurements to eliminate


The variable iBadMeasLimit specifies an upper limit on the number of bad measurements that will be eliminated in the course of the State Estimation.

Tolerance factors for bad measurement elimination


A measurement is declared to be bad, if the deviation of measured against calculated value exceeds the measurements accuracy, i.e., if Eqn 34.1:

calcVal meaVal accuracy --------------------------------------------- -------------------rating 100

where calVal and meaVal are the calculated value and the measured value, respectively. The user may modify this definition by adjusting tolerance factors for bad measurements. More precisely, a measurement is declared to be bad, if the left-hand side in equation (34.1) exceeds facErr accuracy 100 . Here facErr > 0 is a factor which can be specified by the user for each group of measurements individually. Use the factors facErrP, facErrQ, facErrV, facErrIMagn, facErrIAct, and facErrIReact for P-, Q-, V-measurements, and the three types of the I-measurements (magnitude measure, active current measure, reactive current measure).

34.4.5

Advanced Setup Options for Iteration Control

Initialization
The non-linear optimization requires an initialization step to generate an initial starting configuration.

Initialization of non-linear optimization


The user may specify whether the initialization shall be performed by a load flow calculation or by some flat start. If it is known in advance that the final solution of the optimization part is close to a valid load flow solution, initializing by a load flow calculation pays off in a faster convergence.

Load Flow
Specifies the settings of the load flow command which is taken for initialization in case no flat start is used.

Stopping criteria for the non-linear optimization


The non-linear optimization is implemented using an iterative Newton-Lagrange method. Recall that the goal of the optimization is to minimize the objective function f (i.e., the square sum of the weighted measurements deviations) under the constraint that all load flow equations are fulfilled. Mathematically speaking, the aim is to find

min { f ( x ) }
34 - 19

DIgSILENT PowerFactory

State Estimation

under the constraint that

g(x) = 0
where g is the set of load flow equations that need to be fulfilled. By the Lagrange-Newton method, we thus try to minimize the resulting Lagrange function

L ( x, ) = f ( x ) + g ( x )
with the Lagrange multipliers . The following parameters can be used to adapt the stopping criteria for this iterative process. The algorithm stops successfully if the following three issues are fulfilled: 1. 2. The maximum number of iterations has not yet been reached. All load flow constraint equations g ( x ) = 0 are fulfilled to a predefined degree of exactness, which means: (a) all nodal equations are fulfilled. (b) all model equations are fulfilled. The Lagrange function L ( x, ) itself converges. This can be achieved if (a) either the objective function itself converges to a stationary point, or (b) the gradient of the objective function converges to zero.

3.

The following parameters serve to adjust these stopping criteria. The user unfamiliar with the underlying optimization algorithm is urged to use the default settings here.

Iteration Control of non-linear optimization


The user is asked to enter the maximum number of iterations.

Convergence of Load Flow Constraint Equations


The user should enter a maximal error for nodal equations (where the deviation is measured in kVA), and, in addition, a maximally tolerable error for the model equations (in %).

Convergence of Objective Function


The user is asked choose among the following two convergence criteria for the Lagrangian function: Either the function itself is required to converge to a stationary point, or the gradient of the Lagrangian is expected to converge. In the first case, the user is asked to enter an absolute maximum change in value of the objective function. If the change in value between two consecutive iterations falls below this value, the Lagrangian is assumed to be converged. In the latter case, the user is asked to enter an absolute maximum value for the gradient of the Lagrangian. If the gradient falls below this value, the Lagrangian is assumed to be converged. It is strongly recommendeddue to mathematical precisenessto use the criterion on the gradient. The other option might only be of advantage if the underlying Jacobian matrix behaves numerically instable which then typically results in a toggling of the con34 - 20

DIgSILENT PowerFactory

State Estimation

vergence process in the last iterations.

Output
Two different levels of output during the iterative process can be selected.

34.5

Results

The presentation of the State Estimator results is integrated into the user interface. The solution of the non-linear optimization in the State Estimator is available via the complete set of variables of the conventional Load Flow calculations. It can be seen in the single line diagram of the grid or through the browser.

34.5.1

Output Window Report

The PowerFactory State Estimator reports the main steps of the algorithm in the output window (see Figure 34.12). For the Plausibility Checks, this implies the information on how many models failed the corresponding checks. For the Observability Analysis, the report contains the information on how many states were determined to be observable, andin additionhow many measurements were considered to be relevant for observing these states.

Fig. 34.12:

Report in the output window

Non-linear optimization reports, in each iteration step, the following figures: The current error of the constraint nodal equations (in VA) (Error Nodes). The current error of the constraint model equations (Error ModelEqu). The current value of the gradient of the Lagrangian function (Gradient LagrFunc). The current value of the Lagrangian function (LagrFunc). The current value of the objective function f to be minimized (ObjFunc).
34 - 21

DIgSILENT PowerFactory

State Estimation

34.5.2

External Measurements

Deviations
Each branch flow measurement (StaExtpmea, StaExtqmea) and each voltage measurement (StaExtvmea) offers parameters to view its individual deviation between measured value and computed value by the State Estimation. The corresponding variables are: e:Xmea: measured value as entered in StaExt*mea e:cMeaVal: measured value (including multiplier) e:Xcal: calculated value e:Xdif: deviation in % (based on given rating as reference value) e:Xdif_mea: deviation in % (based on the measured value as reference value) e:Xdif_abs: absolute deviation in the measurements unit Here X is a placeholder for P, Q, or U in the case of a P-, Q-, or V-measurement. Recall that a StaExtimea plays a special role, since a current measurement may serve as up to three measurements (for magnitude, for active current, and/or for reactive current). Hence, a current measurement has the above listed variables (with X being replaced by I) for each of the three measurement types. In order to distinguish between the three types, for a StaExtimea, the variables carry the suffixes Magn (for magnitude measurement), Act (for active current measurement), and React (for reactive current measurement).

Fig. 34.13:

For description page for external measurements (StaExtvmea, StaExtqmea, StaExtvmea).

34 - 22

DIgSILENT PowerFactory

State Estimation

Error Status
All measurements (StaExt*meas) which possibly participate in the Plausibility Checks, the Observability Analysis, or the State Estimation provide a detailed error description page (see figures 34.13 and 34.14) with the following information: General Errors: - Is unneeded pseudo-measurement (e:errUnneededPseudo) - Its input status disallows calculation, i.e., input status does not allow Read or is already marked as Wrong Measurement (e:errStatus) - Measurement is out of service (e:errOutOfService) Plausibility Check Errors: - Fails test: Consistent active power flow direction at each side of branch (e:errConsDir) - Fails test: Large branch losses (e:errExcNomLoss) - Fails test: Negative losses on passive branches (e:errNegLoss) - Fails test: Large branch flows on open ended branches (e:errFlwIfOpn) - Fails test: Branch loadings exceed nominal values (e:errExcNomLoading) - Fails test: Node sum check for P (e:errNdSumP) - Fails test: Node sum check for Q (e:errNdSumQ) Observability Analysis Errors: - Measurement is considered to be redundant for observability of the network, i.e., observability is already guaranteed even without this measurement. Nevertheless redundant measurements are used in the non-linear optimization since, in general, they help to improve the result (e:errRedundant). - For redundant measurements, also the redundancy level is indicated on this page (e:RedundanceLevel). The higher the redundancy level, the more measurements with a similar information content for the observability analysis exist. State Estimation Errors: - Measurement is detected to be bad, has been removed and was not considered in last non-linear optimization loop (e:errBadData) This detailed error description is encoded in the single parameter e:error that can be found on the top of the error status page. Again, we have the convention that, for a StaExtimea, the variables e:errRedundant, e:RedundanceLevel and e:errBadData carry the suffixes Magn (for magnitude measurement), Act (for active current measurement), and React (for reactive current measurement).

34.5.3

Estimated States

Which states participated as control variables?


Recall that depending on the selected treatment of unobservable regions not all states that were selected for estimation (see Section 34.3.3 (Editing the Element Data)) will necessarily be estimated by the algorithm: In case of non-observability, it may happen
34 - 23

DIgSILENT PowerFactory

State Estimation

that some control variables need to be reset.

Factory provides a flag for each possible state. These flags are called

To access the information which states were actually used as control variables, Power-

c:i{P,Q,Scale,Tap}Setp for P-, Q-, Scaling factor-, and Tap-states, respectively. They can be accessed through the Flexible Data Page as Load Flow calculation parameters for the following elements: ElmLod, ElmAsm, ElmSym, ElmSvs, ElmTr2, and ElmTr3.

Observability of individual states


The Observability Analysis identifies, for each state, whether it is observable or not. Moreover, if the network is unobservable, it subdivides all unobservable states into equivalence-classes. Each equivalence-class has the property that it is observable as a whole group, even though its members (i.e., the single states) cannot be observed. The equivalence classes are enumerated in ascending order 1, 2, 3, . ...

Fig. 34.14:

Detailed error description page for external current measurements (StaExtimea).

For this purpose, the Observability Analysis uses the flags c:i{P,Q,Scale,Tap}obsFlg for P-, Q-, Scaling factor-, and Tap-states, respectively. These parameters exist for all elements which carry possible states (ElmLod, ElmAsm, ElmSym, ElmSvs, ElmTr2,
34 - 24

DIgSILENT PowerFactory

State Estimation

ElmTr3). The semantics is as follows: a value of -2 means that the correspond state is not estimated at all. a value of -1 means that the correspond state is unsupplied. a value of 0 means that the corresponding state is observable. a value of i > 0 means that the correspond state belongs to equivalence-class i.

34.5.4

Color Representation

In addition, PowerFactory provides a special coloring mode Observability for the single line diagram which takes into account the individual measurement error statuses and the states to be estimated (see Figure 34.15). The coloring can be accessed by clicking the icon on the task bar.

The color representation is valid as soon as an Observability Analysis has been performed successfully. The color representation paints the location of measurements (of a specific type) and the location of states (of a specific type) simultaneously.

Fig. 34.15:

Coloring of measurement error statuses and estimated states.

Estimated States
The user selects to color states of a specific type (P-, Q-, Scaling factor-, or Tap position34 - 25

DIgSILENT PowerFactory

State Estimation

states). Distinct colors for observable, unobservable, non-estimated states, and states with unclear observability status can be chosen.

External Measurement Locations


The user selects to color measurements of a specific type (P-, Q-, V-, or I-measurements). Distinct colors for valid, redundant and invalid measurements can be chosen. A measurement is said to be valid if its error code (e:error) equals 0. Besides, measurements with a specific error code can be highlightened separately using an extra color. To select such a specific error code press the Error Code button and choose from the detailed error description list any AND-combination of possible errors.

34 - 26

DIgSILENT PowerFactory

Appendix

DIgSILENT PowerFactory

Glossary

Appendix A Glossary

Appliance
A specific physical, installed, power system component: a specific generator, transformer, busbar, etc. Example: a piece of NKBA 0.6/1kV 4 x 35sm cable, 12.4 meters long.

Base Case
A base case is the highest level in a tree of hierarchical system stage designs. It is the basic power system design, for which one or more alternative designs may be created and analyzed. The base case is always stored in a grid folder.

Block Definition
A block definition is a mathematical model which may be used in other block definitions or in a composite model. Examples are all default controllers (i.e. VCO's, PSS's, MDM's), and all additional user-defined DSL models. A block definition is called "primitive'' when it is directly written in DSL, or "complex'' when it is build from other block definitions, by drawing a block diagram.

Block Diagram
A block diagram is a graphical representation of a DSL model, i.e. a voltage controller, a motor driven machine model or a water turbine model. Block diagrams combine DSL primitive elements and block definitions created by drawing other block diagram. The block models thus created may (again) be used in other block diagrams or to create a Composite Frame. See also: DSL primitive, Composite Frame

Branch Elements
A one port element connected to a node, such as a load or a machine. See also nodes, edge elements.

Busbars
Busbars are particular representations of nodes. Busbars are housed in a Station folder and several busbars may be part of a station.

A-1

DIgSILENT PowerFactory

Glossary

Class
A class is a template for an element, type or other kind of objects like controller block diagrams, object filters, calculation settings, etc. Examples: The 'TypLne' class is the type model for all lines and cables The 'ElmLne' class is an element model for a specific line or cable The 'ComLdf' class is a load-flow command The 'EvtSwitch' class is an event for a switch to open or close during simulation

Composite Frame
A composite frame is a special block diagram which defines a new stand-alone model, mostly without in- or outputs. A composite frame is principally a circuit in which one or more slots are connected to each other. A composite frame is used to create composite models by filling the slots with appropriate objects. The composite frame thus acts as template for a specific kind of composite models. See also: Block Diagram, Slot

Composite Model
A composite model is a specific combination of mathematical models.These models may be power system elements such as synchronous generators, or block definitions, such as voltage controllers, primary mover models or power system stabilizers. Composite models may be used to create new objects, such as protection devices, to 'dress-up' power system elements such as synchronous machines with controllers, prime movers models, etc., or for the identification of model parameters on the basis of measurements.

Cubicle
A cubicle is the connection point between a edge or branch element and a node (represented by a busbar or terminal). It may be visualized as a bay in a switch yard or a panel in a switchgear board. Elements such as CT's, protection equipment, breakers and so forth, are housed in the cubicle, as one would expect to find in reality.

DAQ
Abbreviation for "Data Acquisition''.

Device
A certain kind of physical power system components: certain synchronous machines, twowinding transformers, busbars, or other kinds of equipment. Example: a NKBA 0.6/1kV 4 x 35sm cable.

A-2

DIgSILENT PowerFactory

Glossary

DGS
Abbreviation for "DIgSILENT Interface for Geographical Informations Systems''.

DOLE
Abbreviation for "DIgSILENT Object Language for Data Exchange''. DOLE was used in previous PowerFactory versions, but replaced by DGS meanwhile. Now, use DGS instead, please. The DOLE import uses a header line with the parameter name. This header must have the following structure: The first header must be the class name of the listed objects. The following headers must state a correct parameter name.

DPL
Abbreviation for "DIgSILENT Programming Language''.

Drag&Drop
"Drag&Drop'' is a method for moving an object by left clicking it and subsequently moving the mouse while holding the mouse button down ("dragging''). Releasing the mouse button when the new location is reached is called "dropping''. This will move the object to the new location.

DSL
Abbreviation for "DIgSILENT Simulation Language''.

DSL primitive
A DSL primitive is the same as a primitive block definition. A DSL primitive is written directly in DSL without the use of a block diagram. Examples are PID controllers, time lags, simple signal filters, integrators, limiters, etc. DSL primitives are normally used to build more complex block definitions. See also: Block Definition, Block Diagram

Edge Elements
The elements between two nodes. May also be termed 'two port element.' Source, topological studies; picture a 3 dimensional box, the corners of the box would be called the nodes, and the edges between corners are hence 'edges.' See also nodes, branch elements.

Element
A mathematical model for specific appliances. Most element models only hold the appliance-specific data while the more general type-specific data comes from a type-reference.
A-3

DIgSILENT PowerFactory

Glossary

Example: a model of a piece of NKBA 0.6/1kV 4 x 35sm cable, 12.4 meters long, named "FC 1023.ElmLne".

Graphics Board Window


The graphics board window is a multi document window which contains one or more graphical pages. These pages may be single line graphics, virtual instrument pages, block diagrams etc. The graphics board shows page tabs when more than one page is present. These tabs may be used to change the visible page or to change the page order by drag&drop on the page tab. See also: Virtual Instrument, Block Diagram, Page Tab, Drag&Drop

Grid
A Grid is a collection of power system elements which are all stored in one so-called "Grid Folder'' in the database. Normally, a grid forms a logical part of a power system design, like a the MV distribution system in a province, or the HV transport system in a state.

Object
An object is a specific item stored in the database. Examples are specific type or element models which have been edited to model specific devices or appliances. Examples: the element "FC 1023.ElmLne", the type "NKBA_4x35.TypLne", the load-flow command "3Phase.ComLdf"

Node
The mathematical or generic description for what are commonly known as busbars in the electrical world. In PowerFactory nodes may be represented by "Busbars" or "Terminals" of various kinds. These are treated in the same manner in mathematical terms but treated slightly differently in the database. As far as possible the user should use terminals as Busbars can be somewhat inflexible. See also Busbars, Edge Elements, Branch Elements.

Page Tab
Page tabs are small indexes at the edge (mostly on the top or bottom) of a multi-page window. The tabs show the titles of the pages. Left-clicking the page tab opens the corresponding page. Page tabs are used in object dialogues, which often have different pages for different calculation functions, and in the Graphics Board Window, when more than one graphical page is present.

Project
All power system definitions and calculations are stored and activated in a project. The project folder therefore is a basic folder in the user's database tree. All grids that make out the power system design, with all design variants, study cases, commands, results, etc. are stored together in a single project folder.
A-4

DIgSILENT PowerFactory

Glossary

Result Object
A result object keeps one or more lists of parameters which are to be monitored during a calculation. Results objects are used for building calculation result reports and for defining a virtual instrument. See also: Virtual Instrument

Slot
A slot is a place-holder for a block definition in a composite frame. A composite model is created from a composite frame by filling one or more slots with an appropriate object. See also: Block Definition, Composite Frame.

Study Case
A study case is a folder which stores a list of references or shortcuts to grid or system stage folders. These folders are (de)activated when the calculation case folder is (de)activated. Elements in the grid folders that are referenced by the study case form the 'calculation target' for all calculation functions. Elements in all other, non-active, grid folders are not considered for calculation. Besides the list of active folders, the calculation case also stores all calculations commands, results, events, and other objects which are, or have been, used to analyze the active power system. See also: Grid, System Stage

System Stage
A system stage is an alternative design or variation for a particular grid. A system stage is stored in a system stage folder, which keeps track of all differences from the design in the higher hierarchical level. The highest level is formed by the base grid folder. It is possible to have system stages of system stages. See also: Grid, Base Case

Type
A mathematical model for devices: general models for two-winding transformers, twowinding transformers, busbars, etc. A type model only contains the non-specific data valid for whole groups of power system elements. Example: a NKBA 0.6/1kV 4 x 35sm cable type, named "NKBA_4x35.TypLne" See also: System Stage, Grid

Virtual Instrument
A virtual instrument is a graphical representation of calculation results. It may be a line or bar graph, a gauge, a vector diagram, etc. A virtual instrument gets its values from a result object.
A-5

DIgSILENT PowerFactory

Glossary

See also: Result Object.

Virtual Instrument Panel


Virtual instrument panels are one of the possible types of pages in a graphics board window. Virtual instrument panels are used to create and show virtual instruments. Each virtual instrument panel may contain one or more virtual instruments. See also: Graphics Board Window, Virtual Instrument

A-6

DIgSILENT PowerFactory

Hotkeys References

Appendix B Hotkeys References

B-1

DIgSILENT PowerFactory

Hotkeys References

B.1

Graphic Windows Hotkeys

Combination
Alt + Alt + + Alt + Rubberband Alt + Left-click Alt + Left-click Ctrl + A Ctrl + Alt + Shift + P Ctrl + Alt + Scrolling Ctrl + Alt + Scrolling Ctrl + Alt + Scrolling Ctrl + Alt + Scrolling Ctrl + Alt + Scrolling Ctrl + C Ctrl + L Ctrl +Left-click Ctrl + Left-click Ctrl + Left-click Ctrl + M Ctrl + Q Ctrl + X Esc Esc

Where/When
Single Line Graphic, Block Diagrams, Vi's Single Line Graphic, Block Diagrams, Vi's Zoom out Zoom in

Description

Only textboxes inside the rubber band are marked, no parent objects Textbox Element Textbox und Parent-Object are marked All the connected elements will be marked All elements are marked Element Dialogue Marked Object Marked Busbar Block Marked Terminal Marked Node Marked Element Single Line Graphic, Block Diagrams Element Inserting Loads/ Generators Inserting Busbars/ Terminals Element Dialogue Single Line Graphic, Block Diagrams Marked Element Connecting Mode Inserting Symbol Rotate element 90 Rotate element 180 Mark Element in the graphic Open Graphic Layer dialogue Cut Interrupt the mode Interrupt and change to graphic cursor Will open the Define Layer dialogue to create a new layer Save a screenshot of the complete monitor as bitmap under C:\Digsi\snapshots Single Objects from a Busbar system can be moved Single objects from a Busbar System can be increased or reduced (size) The stub length of blocks in block diagrams remains when shifting Line-Routes will move to the terminal, instead of terminal to the line Symbol of the connected branch element will not be centered

B-2

DIgSILENT PowerFactory

Hotkeys References

Combination
Esc S + Left-click S + Scrolling Shift + Scrolling Shift + Scrolling Tab

Where/When
Animation Mode Element Marked Element Marked Element Marked Textbox Inserting Symbol Interrupt mode

Description

Mark only the symbol of the element Move only the symbol of the element Element can only be moved in the direction of axes After rotation, textbox can be aligned in the direction of axes Jump to next connection

B-3

DIgSILENT PowerFactory

Hotkeys References

B.2

Data Manager Hotkeys

Combination
Alt + F4 Alt + Return Backspace Pag ? Pag ? Ctrl + ? Ctrl + ? Ctrl + A Ctrl + Alt + P Ctrl + Alt + S Ctrl + Alt + Shift + P Ctrl + B Ctrl + C Ctrl + C Ctrl + D Ctrl + F Ctrl + F7 Ctrl + G Ctrl + I Right Right Right Right

Where/When

Description
Close data manager

Right; Link

Open the edit dialogue of the element Jump one directory up Scroll a page up Scroll a page down Call the edit dialogue of the next object from the list and closes the current dialogue Call the edit dialogue of the previous object from the list and closes the current dialogue Mark all Save screenshot of the data manager as bitmap under C:\Digsi\snapshots

Edit dialogue open Edit dialogue open Right

Right; Project

Open the share dialogue Save screenshot of the complete monitor as bitmap under C:\Digsi\snapshots

Detail-Modus Marked object, marked symbol Marked cell

Change to next tab Copy marked object Copy the value of the marked cell Change between normal and detail mode Call the Filter dialogue Like Ctrl + R Go to line Call the dialogue Select Element, in order to insert a new object. The object class depends on the current position Select the object Move the object Change between the display of out of service and no relevant objects for calculation

Ctrl + Left-click Ctrl + M Ctrl + O Ctrl + Q Ctrl + Q Right; station, Busbar or element with a connection Right, element with more than one connection

Close the station graphic Call the dialogue Select Station, which lists all the connected stations

B-4

DIgSILENT PowerFactory

Hotkeys References

Combination
Ctrl + R Ctrl + R Ctrl + R Ctrl + R Ctrl + S Ctrl + Shift + P Ctrl + Tab Ctrl + V Ctrl + W Ctrl + X Ctrl + X End Del Del Esc F2 F3 F4 F5 F8 Pos1 Return Return Return Return Shift + Left-click Project

Where/When

Description
Activate the project Activate study case Add the grid to the study case Insert the variant to the current study case, if the corresponding grid is not in the study case

Study case Grid Variant Left

Detail-Modus

Change to next tab Insert the content of the clipboard Change the focus between right and left side

Marked object, marked symbol Marked cell Right Right, symbol Right, cell Right; after change in the line Right; cell

Cut object Cut cell content Jump to the last column of the current row Delete marked object Delete the content of the cell Undo the change Change to edit mode Close all opened dialogues to select an element Activate/Deactivate Drag&Drop-Mode Update

Right, Graphic-Object Right Right links Right; after change in the line Right; link

Open the graphic Jump to the first column of the current row Call the edit dialogue of the marked object Display or close the content of the marked object Confirm changes Call the edit dialogue of the original object Select all the objects between the last marked object and the clicked row

B-5

DIgSILENT PowerFactory

Hotkeys References

B.3

Dialogue Hotkeys

Combination
Ctrl + A Ctrl + Alt + P Ctrl + Alt + Shift + P F1

Where/When
Input field Mark the content

Description

Save screenshot of the dialogue as bitmap under C:\Digsi\snapshots Save screenshot of the complete monitor as bitmap under C:\Digsi\snapshots Online help

B-6

DIgSILENT PowerFactory

Hotkeys References

B.4

Output Window Hotkeys

Combination
Pag (up arrow) Pag (down arrow) Ctrl + A Ctrl + Alt + home Ctrl + Pag (up arrow) Ctrl + Pag (down arrow) Ctrl + C Ctrl + E Ctrl + End Ctrl + F Ctrl + F3 Ctrl + home Ctrl + O Ctrl + P Ctrl + Arrow (up arrow) Ctrl + Arrow (down arrow) Ctrl + Pos1 Ctrl + Shift + End Ctrl + Shift + Pos1 End F3 F4 G H home Arrow (up arrow)

Where/When
Page up Page down

Description

Mark the content of the output window

Like Ctrl + Pos1 Like Ctrl + End Copy the market report to the clipboard Open a new empty editor Set the cursor in the last position of the last row Open the Search and Replace dialogue Cursor in a Word Jump to previous same word

Call the Open dialogue Call the Print dialogue Page up Page down Set the cursor in the first position of first row Set the cursor in the last position and marks the report in between Set the cursor in the first position and marks the report in between Set the cursor in the last position of the row Marked word Debug-Mode Debug-Mode Debug-Mode Jump to next same word

Set the cursor one line above

B-7

DIgSILENT PowerFactory

Hotkeys References

Combination
Arrow (right arrow) Arrow (down arrow) Arrow (left arrow) Pos1 Shift + Pag ? Shift + Pag ? Shift + F3

Where/When

Description
Set the cursor one position after Set the cursor one line below Set the cursor one position before Set the cursor to the first position of the row Set the cursor one page up and select the in between content Set the cursor one page down and select the in between content

Cursor in a Word

Jump to the next same word

B-8

DIgSILENT PowerFactory

Elements Reference

Appendix C Elements Reference

C.1

2-Winding Transformers (ElmTr2/ElmTr2n)

Objects used to represent 2-winding, three or single phase transformers (autotransformers), require a reference to a TypTr2 object. If the option Auto Transformer is enabled, autotransformer winding connection instead of galvanic separation is used. Input parameters Table C.1 shows the input parameters for the ElmTr2 object, Table C.2 for the ElmTr2n. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the two winding transformers, presenting the relations among the input parameters is given in the attached technical referece papers: TechRef_2-WTransformer_SinglePhase.pdf and TechRef_2-W-Transformer_3Phase.pdf.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.1:ElmTr2 Parameters
Name loc_name root_id fold_id charact chr_name Name Original Location In Folder Charact. Characteristic Name Description Unit Range _NameValid Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C-1

DIgSILENT PowerFactory

Elements Reference

Table C.1:ElmTr2 Parameters


Name for_name dat_src outserv typ_id iZoneBus ntnum nntap t2ldc ilcph imldc ldcct ldcpt ldcrs ldcxs ntrcn ildc strf1 ratfac ifrqft usetp psetp qsetp i_cont usp_up usp_low psp_up psp_low qsp_up qsp_low Foreign Key Data source Out of Service Type Zone parallel Transformers Tap Position Controlled Node Phase Control Mode Current Transformer Rating Voltage Transformer Ratio Rset Xset Automatic Tap Changing Line Drop Compensation (LDC) Load Current Rating Factor Frequent Fault ( >10(5)/lifetime, Category II(III) ) Voltage Setpoint Active Power Setpoint Reactive Power Setpoint Tap Changer Upper Voltage Bound Lower Voltage Bound Upper Active Power Bound Lower Active Power Bound Upper Reactive Power Bound Lower Reactive Power Bound p.u. p.u. MW MW Mvar Mvar p.u. MW Mvar x>=0&x<=1 x>0 x=1|x=0 x>=0 V V x=1|x=0 x>=0&x<=2 A x=0|x=1|x=2 x>=0&x<=6 x[0]='V'|x[0]='P'|x[0] ='Q x>0&x<100 0 0 0 0 0 ' 1. 1. 0. 0. 0 0 0. 1. 0 1. 0. 0. 0 01. Jan 0.99 0. 0. 0. 0. x>=0&x<=1 0 Description Unit Range _ForKeyValid Default

C-2

DIgSILENT PowerFactory

Elements Reference

Table C.1:ElmTr2 Parameters


Name tapctrl re0tr_h xe0tr_h re0tr_l xe0tr_l iopt_hf Cg_h Cg_l Cc1_hl Cc0_hl ifc i_rem p_rem p_cub i_auto i_eahv i_ealv ignd_h ignd_l iintgnd i_hvcon i_lvcon sernum constr doc_id desc pStoch iperfect iTaps iMeasLoc Tap Controller Re Xe Re Xe Consider HF-Parameter Capacitance HV-Ground Capacitance LV-Ground Capacitance HV-LV, 1-Sequence Capacitance HV-LV, 0-Sequence Forced Cooling Enabled Remote Control Controlled Node Controlled Branch (Cubicle) Auto Transformer HV-side, phase 2 internally grounded LV-side, phase 2 internally grounded Star Point Star Point External Star Point HV-side, phase 2 connected LV-side, phase 2 connected Serial Number Year of Construction Additional Data Description Element model Ideal component According to Measurement Report Measured at x=0|x=1 x=0|x=1 0 0 0 0 x=0|x=1 x>=0|x<=2 x>=0|x<=2 x>=0|x<=2 x>=0|x<=2 x=0|x=1 x=0|x=1 x=0|x=1 0 0 0 0 0 0 0 0 uF uF uF uF Ohm Ohm Ohm Ohm x>=0 x=0|x=1 x>=0 x>=0 x>=0 x>=0 x=1|x=0 x=0|x=1 x>=0 x>=0 0. 0. 0. 0. 0 0. 0. 0. 0. 0 0 Description Unit Range Default

C-3

DIgSILENT PowerFactory

Elements Reference

Table C.1:ElmTr2 Parameters


Name mTaps i_uopt i_uoptCont maxload iOPFCload iblock ilt_op Ub_lv Ib_lv cosphib_lv Ubqmin_hv Tctrl Kqctrl Kpctrl pldc i_tapini iIntTapCtrl dpl1 dpl2 dpl3 dpl4 dpl5 Description Measurement Report Tap Position Control Mode Max. Loading Max. Loading Unit Transformer Long-term operating conditions before short-circuit are known Highest Operating Voltage Highest Operating Current Power factor Minimum Operating Voltage Controller Time Constant Controller Sensitivity dv/dQ Controller Sensitivity dv/dP External LDC Estimate Tap Position Use Integrated Tap Controller dpl1 dpl2 dpl3 dpl4 dpl5 x=0|x=1 0 0 0. 0. 0. 0. 0. kV s %/Mvar %/MW x>0 x<0|x>0 x<0|x>0 kV kA % x=0|x=1 x>=0 x=0|x=1 x=0|x=1 x=0|x=1 0 0 100. 0 0 0 0. 0. 0.9 0. 0.5 0.1 0.1 Unit Range Default

Table C.2: ElmTr2n Parameters


Name loc_name root_id fold_id Name Original Location In Folder Description Unit Range _NameValid Default

C-4

DIgSILENT PowerFactory

Elements Reference

Table C.2: ElmTr2n Parameters


Name charact chr_name for_name dat_src outserv typ_id iZoneBus ntnum nntap t2ldc ilcph imldc ldcct ldcpt ldcrs ldcxs ntrcn ildc ratfac ifrqft usetp psetp qsetp i_cont usp_up usp_low psp_up psp_low qsp_up Charact. Characteristic Name Foreign Key Data source Out of Service Type Zone parallel Transformers Tap Position Controlled Node Phase Control Mode Current Transformer Rating Voltage Transformer Ratio Rset Xset Automatic Tap Changing Line Drop Compensation (LDC) Rating Factor Frequent Fault ( >10(5)/lifetime, Category II(III) ) Voltage Setpoint Active Power Setpoint Reactive Power Setpoint Tap Changer Upper Voltage Bound Lower Voltage Bound Upper Active Power Bound Lower Active Power Bound Upper Reactive Power Bound p.u. p.u. MW MW Mvar p.u. MW Mvar x>=0&x<=1 V V x=1|x=0 x>=0&x<=2 x>0 x=1|x=0 x>=0 A x=0|x=1|x=2 x>=0&x<=6 x[0]='V'|x[0]='P '|x[0]='Q x>0&x<100 0 0 0 0 0 ' 1. 1. 0. 0. 0 0 1. 0 1. 0. 0. 0 01. Jan 0.99 0. 0. 0. x>=0&x<=1 0 _ForKeyValid Description Unit Range Default

C-5

DIgSILENT PowerFactory

Elements Reference

Table C.2: ElmTr2n Parameters


Name qsp_low tapctrl iopt_hf Cg_h Cg_l Cc1_hl Cc0_hl ifc i_rem p_rem p_cub i_auto i_eahv i_ealv sernum constr doc_id desc pStoch iperfect iTaps iMeasLoc mTaps i_uopt i_popt i_qopt maxload iblock ilt_op Description Lower Reactive Power Bound Tap Controller Consider HF-Parameter Capacitance HV-Ground Capacitance LV-Ground Capacitance HV-LV, 1-Sequence Capacitance HV-LV, 0-Sequence Forced Cooling Enabled Remote Control Controlled Node Controlled Branch (Cubicle) Auto Transformer HV-side, phase 2 internally grounded LV-side, phase 2 internally grounded Serial Number Year of Construction Additional Data Description Element model Ideal component According to Measurement Report Measured at Measurement Report Tap Position Optimize Active Power Setpoint Optimize Reactive Power Setpoint Max. Loading Unit Transformer Long-term operating conditions before shortcircuit are known % x>=0 x=0|x=1 x=0|x=1 0 0 0 100. 0 0 x=0|x=1 x=0|x=1 0 0 0 0 x=0|x=1 x>=0|x<=2 x>=0|x<=2 0 0 0 uF uF uF uF x=0|x=1 x>=0 x>=0 x>=0 x>=0 x=1|x=0 x=0|x=1 0 0. 0. 0. 0. 0 0 Unit Mvar Range Default 0.

C-6

DIgSILENT PowerFactory

Elements Reference

Table C.2: ElmTr2n Parameters


Name Ub_lv Ib_lv cosphib_lv Ubqmin_h v Tctrl Kqctrl Kpctrl pldc iIntTapCtrl dpl1 dpl2 dpl3 dpl4 dpl5 Description Highest Operating Voltage Highest Operating Current Power factor Minimum Operating Voltage Controller Time Constant Controller Sensitivity dv/dQ Controller Sensitivity dv/dP External LDC Use Integrated Tap Controller dpl1 dpl2 dpl3 dpl4 dpl5 x=0|x=1 0 0. 0. 0. 0. 0. kV s %/Mvar %/MW x>0 x<0|x>0 x<0|x>0 Unit kV kA Range Default 0. 0. 0.9 0. 0.5 0.1 0.1

C.2

3-Winding Transformer (ElmTr3)

Object used to represent 3-phase, 3-winding transformers (or autotransformers), requires a reference to a TypTr3 object. Input parameters Table C.3 shows the input parameters for the ElmTr3 object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the 3-winding transformers, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C-7

DIgSILENT PowerFactory

Elements Reference

Table C.3: ElmTr3 Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id iZoneBus nt3nm ntrcn usetp psetp qsetp ictrlside imldc ilcph t3ldc n3tap_h n3tap_m n3tap_l n3rcn_h n3rcn_m n3rcn_l lodt3 nt3rl usetp_h Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Zone parallel Transformers Automatic Tap Changing Voltage Setpoint Active Power Setpoint Reactive Power Setpoint for Tap at Control Mode Phase Controlled Node Act. Position Act. Position Act. Position Automatic Tap Changing Automatic Tap Changing Automatic Tap Changing Type Load Pointer to relais Voltage Setpoint p.u. x>=0 0 1. x=0|x=1 x=0|x=1 x=0|x=1 p.u. MW Mvar x>=0&x<=2 x[0]='V'|x[0]='P '|x[0]='Q x>=0&x<=6 x>=0|x<=3 x>0&x<100 x=0|x=1 x>=0 0 0 0 1. 0. 0. 0 ' 0 0 0 0 0 0 0 0 x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

C-8

DIgSILENT PowerFactory

Elements Reference

Table C.3: ElmTr3 Parameters


Name usetp_m usetp_l psetp_h psetp_m psetp_l qsetp_h qsetp_m qsetp_l imldc_h imldc_m imldc_l t3ldc_h t3ldc_l t3ldc_m ratfac_h ratfac_m ratfac_l i_rem p_rem p_cub tapctrl Tctrl Kqctrl Kpctrl i_cont usp_up usp_low Voltage Setpoint Voltage Setpoint Active Power Setpoint Active Power Setpoint Active Power Setpoint Reactive Power Setpoint Reactive Power Setpoint Reactive Power Setpoint Control Mode Control Mode Control Mode Controlled Node Controlled Node Controlled Node HV-Side MV-Side LV-Side Remote Control Controlled Node Controlled Branch (Cubicle) Tap Controller Controller Time Constant Controller Sensitivity dv/dQ Controller Sensitivity dv/dP Tap Changer Upper Voltage Bound Lower Voltage Bound p.u. p.u. s %/ Mvar %/ MW x>0 x<0|x>0 x<0|x>0 x=0|x=1 x>=0 x>=0 0.5 0.1 0.1 0 01. Jan 0.99 Description Unit p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. x[0]='V'|x[0]='P '|x[0]='Q x[0]='V'|x[0]='P '|x[0]='Q x[0]='V'|x[0]='P '|x[0]='Q x>=0|x<=3 x>=0|x<=3 x>=0|x<=3 x>0 x>0 x>0 x=0|x=1 Range x>=0 x>=0 Default 1. 1. 0. 0. 0. 0. 0. 0. ' ' ' 0 0 0 1. 1. 1. 0

C-9

DIgSILENT PowerFactory

Elements Reference

Table C.3: ElmTr3 Parameters


Name psp_up psp_low qsp_up qsp_low ignd_h ignd_m ignd_l i_auto_hl iintgnd i_cont_h i_cont_m i_cont_l re0h re0m re0l xe0h xe0m xe0l ifc sernum constr doc_id desc pStoch iperfect i_tapopt_l i_tapopt_h i_tapopt_ m i_tapoptCo nt_l Description Upper Active Power Bound Lower Active Power Bound Upper Reactive Power Bound Lower Reactive Power Bound Star Point Star Point Star Point Auto Transformer External Star Point Tap Changer Tap Changer Tap Changer Re Re Re Xe Xe Xe Forced Cooling Enabled Serial Number Year of Construction Additional Data Description Element model Ideal component Tap Position LV-Side Tap Position HV-Side Tap Position MV-Side Control Mode LV-Side x=0|x=1 x=0|x=1 x=0|x=1 x=0|x=1 0 0 0 0 0 0 Ohm Ohm Ohm Ohm Ohm Ohm x=1|x=0 Unit MW MW Mvar Mvar x>=0|x<=2 x>=0|x<=2 x>=0|x<=2 x=0|x=1|x=2 x=0|x=1 x=0|x=1 x=0|x=1 x=0|x=1 Range Default 0. 0. 0. 0. 0 0 0 0 0 0 0 0 0. 0. 0. 0. 0. 0. 0

C - 10

DIgSILENT PowerFactory

Elements Reference

Table C.3: ElmTr3 Parameters


Name i_tapoptCo nt_h i_tapoptCo nt_m maxload iOPFCload ildc pldc i_tapini_h i_tapini_m i_tapini_l iIntTapCtrl iTaps iMeasTap iMeasLoc mTaps dpl1 dpl2 dpl3 dpl4 dpl5 Description Control Mode HV-Side Control Mode MV-Side Max. Loading Max. Loading Line Drop Compensation (LDC) External LDC Estimate Tap Position HV-Side Estimate Tap Position MV-Side Estimate Tap Position LV-Side Use Integrated Tap Controller According to Measurement Report for Tap at Measured at Measurement Report dpl1 dpl2 dpl3 dpl4 dpl5 0. 0. 0. 0. 0. x=0|x=1 x=0|x=1 x>=0&x<=2 x>=0&x<=2 0 0 0 0 0 0 0 % Unit Range x=0|x=1 x=0|x=1 x>=0 x=0|x=1 x>=0&x<=1 Default 0 0 100. 0 0

C.3

Asynchronous Machine (ElmAsm)

Object used to represent asynchronous machine models, requires a reference to a TypAsmo or TypAsm (obsolete) object. Input parameters Table C.4 shows the input parameters of the ElmAsm object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab).

C - 11

DIgSILENT PowerFactory

Elements Reference

The description of the asynchronous machine model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.4: ElmAsm Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id monof ngnum pgini qgini bustp i_mot mdmex mdmlp tstart iconfed i_rem p_cub i_pset sernum Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Operation Mode parallel Machines Active Power Reactive Power Bus Type Generator/Motor Exponent Proportional Factor Starting Time Static converter-fed drive Remote Control Controlled Branch (Cubicle) Estimate Active Power Serial Number x=0|x=1 0 p.u. s x>=0 x>=0&x<=100 x>=0 x=0|x=1 x=0|x=1 0 2. 1. 0. 0 0 MW Mvar x=0|x=1 x>0&x<100 x>=0 0 0 0. 0. x>=0&x<=1 0 ForKeyValid Description Unit Range NameValid Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C - 12

DIgSILENT PowerFactory

Elements Reference

Table C.4: ElmAsm Parameters


Name constr doc_id desc iAstabint ignd iintgnd Xe Re iUseStart iStartMethod Tyd mdTradd idfig dpl1 dpl2 dpl3 dpl4 dpl5 Description Year of Construction Additional Data Description A-stable integration algorithm Star Point External Star Point Xearth Rearth Use Motor Starting Method Motor Starting Method Switch to 'D' after Variable Rotor Resistance Doubly Fed Induction Machine dpl1 dpl2 dpl3 dpl4 dpl5 x=0|x=1 0 0. 0. 0. 0. 0. s Ohm Ohm x=0|x=1 x=0|x=2 x=0|x=1 x>=0 x>=0 x=0|x=1 x>=0&x<=2 x>=0 0 0 0 0. 0. 0 0 0.5 Unit Range Default 0

C.4

Booster Transformer (ElmTrb)

Object used to represent booster transformers (3-phase), requires a reference to a TypTrb object. Input parameters Table C.5 shows the input parameters for the ElmTrb object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the booster transformers, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

C - 13

DIgSILENT PowerFactory

Elements Reference

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.5: ElmTrb Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id iZoneBus sernum constr doc_id desc ntnum re0tr_l xe0tr_l Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Zone Serial Number Year of Construction Additional Data Description parallel Transformers Re Xe Ohm Ohm x>=0 x>0&x<100 0 0. 0. 0 0 x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

C.5

Cable System (ElmCabsys)

Object used to represent a system of electromagneticaly coupled cables. Input parameters

C - 14

DIgSILENT PowerFactory

Elements Reference

Table C.6 shows the input parameters for the ElmCabsys object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the cable system, presenting the relations among the input parameters and the required types is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.6: ElmCabsys Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id desc plines dpolar i_dist c_dist c_lumped tmat pzs pa pTa ftau Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Cable Definition Description Circuit Polarity Line Model Distributed Parameter Lumped Parameter (PI) Transformation Matrix Tv Surge Impedance Wave Propagation Travel Time Frequency for Parameter Approximation s Hz x>0 100000 . Ohm x=0|x=1 0 0 0 ElmLne,ElmLneroute x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C - 15

DIgSILENT PowerFactory

Elements Reference

C.6

Common Impedance (ElmZpu)

The Common Impedance is a per unit impedance model including an ideal transformer. The main usage is for branches used for network reduction. Input parameters Table C.7 shows the input parameters for the ElmZpu object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the common impedance model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.. Note: The name of the parameter is displayed in the object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue

Table C.7:ElmZpu Parameters


Name name root_id fold_id charact chr_name for_name dat_src outserv iZoneBus Sn nphases iequalz iz2eqz1 r_pu Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Zone Nominal Power Phases Use equal Impedances (zij = zji) Use Impedance z2 = z1 Real Part p.u. MVA x>=0 x=1|x=3 x=0|x=1 x=0|x=1 x>=0&x<=1 0 0 1. 0 0 0 0. _ForKeyValid Description Unit Range _NameValid Default

C - 16

DIgSILENT PowerFactory

Elements Reference

Table C.7:ElmZpu Parameters


Name x_pu r_pu_ji x_pu_ji r0_pu x0_pu r0_pu_ji x0_pu_ji r2_pu x2_pu r2_pu_ji x2_pu_ji iZshc rs_pu xs_pu rs_pu_ji xs_pu_ji r0s_pu x0s_pu r0s_pu_ji x0s_pu_ji r2s_pu x2s_pu r2s_pu_ji x2s_pu_ji sernum manuf constr doc_id desc dpl1 Imaginary Part Real Part Imaginary Part Real Part Imaginary Part Real Part Imaginary Part Real Part Imaginary Part Real Part Imaginary Part Use same impedance as for loadflow Real Part Imaginary Part Real Part Imaginary Part Real Part Imaginary Part Real Part Imaginary Part Real Part Imaginary Part Real Part Imaginary Part Serial Number Manufacturer Year of Construction Additional Data Description dpl1 0. 0 p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. Description Unit p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. x=0|x=1 Range Default 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.

C - 17

DIgSILENT PowerFactory

Elements Reference

Table C.7:ElmZpu Parameters


Name dpl2 dpl3 dpl4 dpl5 dpl2 dpl3 dpl4 dpl5 Description Unit Range Default 0. 0. 0. 0.

C.7

Doubly Fed Induction Machine (ElmAsmsc)

Object used to represent doubly fed induction generators, requires a reference to a TypAsmo object. Input parameters Table C.8 shows the input parameters of the ElmAsm object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the double feed asynchronous machine model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.8: ElmAsmsc Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source ForKeyValid Description Unit Range NameValid Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C - 18

DIgSILENT PowerFactory

Elements Reference

Table C.8: ElmAsmsc Parameters


Name outserv typ_id monof ngnum pgini qgini i_mot mdmex mdmlp tstart sernum constr doc_id desc slipset Urot rcrow xcrow i_conv i_ctrl i_feedback cv Pmmax Kd Kq Td Tq p_pctrl iAstabint ignd Out of Service Type Operation Mode parallel Machines Active Power Reactive Power Generator/Motor Exponent Proportional Factor Starting Time Serial Number Year of Construction Additional Data Description Slip Rated Slip Ring Voltage Crow-Bar Resistance Crow-Bar Reactance Use Integrated PWM Converter Use Built-In Current Controller Rotor Flux Feed-Back Cv Max Pulse Width Modulation Index Kd Kq Td Tq Controlled Flow A-stable integration algorithm Star Point x=0|x=1 x=0|x=2 0 0 s s % V p.u. p.u. x>-100&x<100 x>0 x>=0 x>=0 x=0|x=1 x=0|x=1 x=0|x=1 x>=0 x>0 0.5 1. 0. 0. 0 0 0 0. 1. 0.1 0.1 0.01 0.01 0 p.u. s x>=0 x>=0&x<=100 x>=0 MW Mvar x=0|x=1 x>0&x<100 x>=0 0 0 0. 0. 0 2. 1. 0. Description Unit Range x>=0&x<=1 Default 0

C - 19

DIgSILENT PowerFactory

Elements Reference

Table C.8: ElmAsmsc Parameters


Name Xe Re Xearth Rearth Description Unit Ohm Ohm Range x>=0 x>=0 Default 0. 0.

C.8

External Network (ElmXnet)

Object used to represent external networks. Input parameters Table C.9 shows the input parameters for the ElmXnet object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the external network model, presenting the relations among the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.9: ElmXnet Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv bustp pgini Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Bus Type Active Power MW 0. x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

C - 20

DIgSILENT PowerFactory

Elements Reference

Table C.9: ElmXnet Parameters


Name qgini sgini cosgini snss rntxn xntrn cmax cmin cused z2tz1 z0tz1 x0tx1 r0tx0 iintgnd ignd Re Xe fdsymr fdsyml usetp ip_ctrl iv_mode phiini tag K desc snssmin rntxnmin xntrnmin z2tz1min Description Reactive Power Apparent Power Power Factor Short-Circuit Power Sk''max R/X Ratio (max.) X/R Ratio (max.) c-Factor (max.) c-Factor (min.) Use for calculation Z2/Z1 max. Z0/Z1 max. X0/X1 max. R0/X0 max. External Star Point Star Point Grounding Resistance Grounding Reactance Resistance R=R(freq) [A-Z] Reactance L=L(freq) [A-Z] Voltage Setpoint Secondary Controller (Slack) Voltage Controller Mode Angle Acceleration Time Constant Secondary Frequency Bias Description Short-Circuit Power Sk''min R/X Ratio (min.) X/R Ratio (min.) Z2/Z1 min. MVA x>0 x>=0 x>=0 x>=0 8000. 0.1 10. 1. deg s MW/Hz p.u. Ohm Ohm _FrqDepValid _FrqDepValid x>=0 x=0|x=1 x=0|x=1 x>=-180&x<=180 x>0 x>=0 1. 0 0 0. 99. 0. MVA Unit Mvar MVA x>=0 x>=-1&x<=1 x>0 x>=0 x>=0 x>0 x>0 x=0|x=1 x>=0 x>=0 x>=0 x>=0 x=0|x=1 x>=0|x<=2 Range Default 0. 0. 0. 10000. 0.1 10. 01. Jan 1. 0 1. 1. 1. 0.1 0 0 0. 0.

C - 21

DIgSILENT PowerFactory

Elements Reference

Table C.9: ElmXnet Parameters


Name z0tz1min x0tx1min r0tx0min MaxS ecost p_uctrl cmonth cpower ccost ictpg ictqg iOPFCPmi n iOPFCPm ax iOPFCQmi n iOPFCQm ax q_min q_max Pmin_uc round Kpf dpl1 dpl2 dpl3 dpl4 dpl5 Pctrl i_prty Z0/Z1 min. X0/X1 min. R0/X0 min. Max. Power Energy Cost Reference Busbar No load costs (monthly) From Costs Active Power Reactive Power Min. Max. Min. Max. Min. Max. Minimum Power Smoothing of Cost Function Primary Frequency Bias dpl1 dpl2 dpl3 dpl4 dpl5 Active power steps Priority x>=0 Mvar Mvar MW % MW/Hz x>=0.0&x<=100.0 $/M MW $/MWh x=0|x=1 x=0|x=1 x=0|x=1 x=0|x=1 x=0|x=1 x=0|x=1 0 0 0 0 0 0 0. 100. 0. 5. 0. 0. 0. 0. 0. 0. 0 0 0. MW $/kWh Description Unit Range x>=0 x>=0 x>=0 x>=0 x>0 Default 1. 1. 0.1 100000 . 0.05

C - 22

DIgSILENT PowerFactory

Elements Reference

Table C.9: ElmXnet Parameters


Name mode_inp Input Mode Description Unit Range Default

C.9

Load General (ElmLod)

Object used to represent load models. Requires a reference to a TypLod object for general loads and a TypLodind object for complex loads. Input parameters Table C.10 shows the input parameters of the ElmLod object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the general load model, presenting the relations among the input parameters, is given in the attached Technical Reference Paper of TypLod. The description of the complex load model is given in the Technical Reference Paper of TypLodind.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.10: ElmLod Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type x>=0&x<=1 0 ForKeyValid Description Unit Range NameValid Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C - 23

DIgSILENT PowerFactory

Elements Reference

Table C.10: ElmLod Parameters


Name plini qlini plinir qlinir plinis qlinis plinit qlinit scale0 i_sym mode_inp sernum constr doc_id desc u0 phmc pSCDF fSCDF OptCost NrCust i_prty shed trans pTrans i_scale i_pini i_qini i_rem p_cub Active Power Reactive Power Active Power Reactive Power Active Power Reactive Power Active Power Reactive Power Scaling Factor Balanced/Unbalanced Input Mode Serial Number Year of Construction Additional Data Description Voltage Harmonic Currents Time dependent rate Scaling factor Unit Number of connected customers Load priority Shedding steps Transferable Alternative Supply (Load) Adjusted by Feeder Load Scaling Estimate Active Power Estimate Reactive Power Remote Control Controlled Branch (Cubicle) x=0|x=1 x=0|x=1 x=0|x=1 x=0|x=1 0 0 0 0 % x>=0.0&x<=100.0 x>0 1. 0 0 0 0 0. p.u. x>0 1. 0 x=0|x=1 Description Unit MW Mvar MW Mvar MW Mvar MW Mvar Range Default 0. 0. 0. 0. 0. 0. 0. 0. 1. 0

C - 24

DIgSILENT PowerFactory

Elements Reference

Table C.10: ElmLod Parameters


Name i_scaleini iShedding shedcost shedmax shedmin dpl1 dpl2 dpl3 dpl4 dpl5 Description Estimate Scaling Factor Allow load shedding Costs for load shedding Max. load shedding Min. load shedding dpl1 dpl2 dpl3 dpl4 dpl5 $/MVA % % x>=0.0&x<=100.0 x>=0.0&x<=100.0 Unit Range x=0|x=1 x=0|x=1 Default 0 0 1. 100. 0. 0. 0. 0. 0. 0.

C.10

Load Low Voltage (ElmLodlv)

Object used to represent loads at low voltage level. Input parameters Table C.11 shows the input parameters for the ElmLodlv object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the low voltage load model, presenting the relations among the input parameters and the required types is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.11: ElmLodlv Parameters


Name loc_name root_id Name Original Location Description Unit Range _NameValid Default

C - 25

DIgSILENT PowerFactory

Elements Reference

Table C.11: ElmLodlv Parameters


Name fold_id charact chr_name for_name dat_src outserv typ_id lodparts plini slini coslini ulini ilini pf_recap pnight NrCust iopt_inp scale0 i_scale nphase iintgnd sernum constr doc_id desc pSCDF fSCDF OptCost i_prty shed In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Add. Loads Active Power, P Apparent Power, S Power Factor, cos(phi) Voltage, U(L-L) Current, I Power Factor P Number of Customers Load Type Scaling Factor Adjusted by Load Scaling No. of Phases External Star Point Serial Number Year of Construction Additional Data Description Time dependent rate Scaling factor Unit Load priority Shedding steps 1. 0 0 0 0 x=0|x=1 x>=1|x<=3 x=0|x=1 kW kV A kW kVA x>=0 x>=0 x>=0&x<=1 x>0 x>=0 x=0|x=1 x>=0 x>=0 x>=0&x<=3 0. 0. 0. 0.4 0. 0 0. 0 0 1. 0 0 0 x>=0&x<=1 0 _ForKeyValid Description Unit Range Default

C - 26

DIgSILENT PowerFactory

Elements Reference

Table C.11: ElmLodlv Parameters


Name trans pTrans dpl1 dpl2 dpl3 dpl4 dpl5 Transferable Alternative Supply (Load) dpl1 dpl2 dpl3 dpl4 dpl5 0. 0. 0. 0. 0. Description Unit % Range x>=0.0&x<=100.0 Default 0.

C.11

Load Partial (ElmLodlvp)

Object used to represent partial loads. Input parameters Table C.12 shows the input parameters for the ElmLodlvp object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the partial load model, presenting the relations among the input parameters and the required types is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.12: ElmLodlvp


Name loc_name root_id fold_id charact chr_name Name Original Location In Folder Charact. Characteristic Name Description Unit Range _NameValid Default

C - 27

DIgSILENT PowerFactory

Elements Reference

Table C.12: ElmLodlvp


Name for_name dat_src outserv typ_id plini slini coslini ulini ilini pf_recap pnight NrCust iopt_inp lnepos sernum constr doc_id desc Foreign Key Data source Out of Service Type Active Power, P Apparent Power, S Power Factor, cos(phi) Voltage, U Current, I Power Factor P Number of Customers Load Type Position on Line Serial Number Year of Construction Additional Data Description 0 % kW kV A kW kVA x>=0 x>=0 x>=0&x<=1 x>0 x>=0 x=0|x=1 x>=0 x>=0 x>=0&x<=3 x>=0&x<=100 0. 0. 0. 0.4 0. 0 0. 0 0 50. x>=0&x<=1 0 Description Unit Range _ForKeyValid Default

C.12

Line Route (ElmLneroute)

Object used to represent routes in both lines and cables. It can refer to any of the types defined for transmission lines or cables (TypLne, TypTow, TypGeo). Input parameters Table C.13 shows the input parameters for the ElmLneroute object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the line route model, presenting the relations among the input parameters and the required types is given in the attached Technical Reference Paper.

C - 28

DIgSILENT PowerFactory

Elements Reference

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.13: ElmLneroute


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id iZoneBus sections dline fline Top inAir index ishclne fshcloc sernum constr doc_id desc NrCust i_ldlv pStoch Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Zone Sections Length Derating Factor Operating Temperature Laying Index Available Short-Circuit Location Serial Number Year of Construction Additional Data Description Number of connected customers Line Load Element model x>0 x=0|x=1 0 0 0 % x=0|x=1 x>=0&x<=100 degC x=0|x=1 km x>=0 x>=0 0. 1. 20. 0 0. 0 50. 0 x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

C - 29

DIgSILENT PowerFactory

Elements Reference

Table C.13: ElmLneroute


Name iperfect pCondCir pCondGnd pCondN sagCir sagGnd ktrto rearth maxload iOPFCload dpl1 dpl2 dpl3 dpl4 dpl5 Ideal component Type of Phase Conductors Type of Earth Conductors Type of Neutral Conductors Max.Sag, Phase Conductors Max.Sag, Ground Wires Transposition Earth Resistivity Max. Loading Max. Loading dpl1 dpl2 dpl3 dpl4 dpl5 Ohmm % m m x>=0 x>=0 x=0|x=1 x>=0 x>=0 x=0|x=1 0. 0. 0 100. 100. 0 0. 0. 0. 0. 0. Description Unit Range Default 0

C.13

Line Sub-Section (ElmLnesec)

Object used to represent sections of lines or cables. It can refer to any of the types defined for transmission lines or cables (TypLne, TypTow, TypGeo). Input parameters Table C.14 shows the input parameters for the ElmLnesec object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the line route model, presenting the relations among the input parameters and the required types is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C - 30

DIgSILENT PowerFactory

Elements Reference

(iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.14:ElmLnesec
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id dline fline inAir index sernum constr doc_id desc pStoch iperfect Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Length Derating Factor Laying Index Serial Number Year of Construction Additional Data Description Element model Ideal component 0 0 km x>=0 x>=0 x=0|x=1 0. 1. 0 0. x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

C.14

Motor Driven Machine (ElmMdm__X )

Objects used to represent motor driven machines. Three types of driven machine models are defined in PowerFactory: ElmMdm__1 (Type 1), ElmMdm__3 (Type 3) and ElmMdm__5 (Type 5). All types of motor driven machine models may be used in connection with a synchronous or an asynchronous motor.

C - 31

DIgSILENT PowerFactory

Elements Reference

Input parameters Tables C.15, C.16 and C.17 show the input parameters for the defined motor driven machine types. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the motor driven machine models, presenting the relations among the parameters and the connection to a motor, are given in the attached Technical Reference Paper..

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue
Table C.15:ElmMdm__1 Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id mdmex mdmlp Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type mdmex;Exponential factor mdmlp;Proportional factor p.u. 0. 0. x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

Table C.16: ElmMdm__3 Parameters


Name loc_name root_id Name Original Location Description Unit Range _NameValid Default

C - 32

DIgSILENT PowerFactory

Elements Reference

Table C.16: ElmMdm__3 Parameters


Name fold_id charact chr_name for_name dat_src outserv typ_id alf1 slipm exp1 alf2 exp2 xkmm In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type alf1;Torque at synchronous speed slipm;Slip at min. torque exp1;Exponent of first polynom. function alf2;Torque at standstill exp2;Exponent of second polynom. function xkmm;Torque at slip = Slipm (min. torque) p.u. p.u. p.u. p.u. 0. 0. 0. 0. 0. 0. x>=0&x<=1 0. _ForKeyValid Description Unit Range Default

Table C.17: ElmMdm__5 Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id speed torque load Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Speed Torque Load p.u. p.u. p.u. x>=0 1. x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

C - 33

DIgSILENT PowerFactory

Elements Reference

Table C.17: ElmMdm__5 Parameters


Name nkoor x1 y1 x2 y2 x3 y3 x4 y4 x5 y5 x6 y6 x7 y7 x8 y8 x9 y9 x10 y10 x11 y11 x12 y12 x13 y13 x14 y14 x15 Description nkoor;Number of used coordinates (speed) x1;X-axis coordinates (speed) y1;Y-axis coordinates (torque) x2;X-axis coordinates (speed) y2;Y-axis coordinates (torque) x3;X-axis coordinates (speed) y3;Y-axis coordinates (torque) x4;X-axis coordinates (speed) y4;Y-axis coordinates (torque) x5;X-axis coordinates (speed) y5;Y-axis coordinates (torque) x6;X-axis coordinates (speed) y6;Y-axis coordinates (torque) x7;X-axis coordinates (speed) y7;Y-axis coordinates (torque) x8;X-axis coordinates (speed) y8;Y-axis coordinates (torque) x9;X-axis coordinates (speed) y9;Y-axis coordinates (torque) x10;X-axis coordinates (speed) y10;Y-axis coordinates (torque) x11;X-axis coordinates (speed) y11;Y-axis coordinates (torque) x12;X-axis coordinates (speed) y12;Y-axis coordinates (torque) x13;X-axis coordinates (speed) y13;Y-axis coordinates (torque) x14;X-axis coordinates (speed) y14;Y-axis coordinates (torque) x15;X-axis coordinates (speed) p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. p.u. Unit Range Default 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.

C - 34

DIgSILENT PowerFactory

Elements Reference

Table C.17: ElmMdm__5 Parameters


Name y15 Description y15;Y-axis coordinates (torque) Unit p.u. Range Default 0.

C.15

Neutral Earthing Element (ElmNec)

The NEC/NER (Neutral Earthing Conductor/Neutral Earthing Reactor) is the grounding element in PowerFactory, does not require any type. Input parameters Table C.18 shows the input parameters for the ElmNec object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the NEC/NER model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.18: ElmNec Parameters
DisplayN ame loc_name root_id fold_id charact chr_name for_name dat_src outserv Unom Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Rated Voltage kV x>=0&x<=1 x>0 0 1. _ForKeyValid Description Unit Range _NameValid Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C - 35

DIgSILENT PowerFactory

Elements Reference

Table C.18: ElmNec Parameters


DisplayN ame Curn Ithlim Tkr ignd R0 X0 Re Xe fcharR0 fcharL0 fcharRe fcharLe sernum manuf constr doc_id desc Description Rated Current (Ie=3*I0) Rated Short-Time Thermal Current (3*I0) Rated Short-Circuit Duration Star Point Zero Sequence Resistance Zero Sequence Reactance Grounding Resistance Grounding Reactance Frequency Dependency R0 Frequency Dependency L0 Frequency Dependency Re Frequency Dependency Le Serial Number Manufacturer Year of Construction Additional Data Description 0 Ohm Ohm Ohm Ohm Unit kA kA s Range x>0 x>0 x>0 x>=0|x<=1 Default 0.1 1. 1. 0 0. 0. 0. 0.

C.16

PWM AC/DC Converter - 1 DC Connection (ElmVscmono)

Object used for a PWM converter model. Represents a self-commutated, voltage sourced AC/DC converter (capacitive DCcircuit). Input parameters Table C.19 shows the input parameters of the ElmVscmono object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the PWM converter model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.
C - 36

DIgSILENT PowerFactory

Elements Reference

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue

Table C.19: ElmVscmono Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv Unom Unomdc Snom usetp usetpdc phisetp psetp qsetp p_phictrl p_uctrl p_uctrldc p_pctrl p_qctrl i_acdc pmsetp pmd_max pmd_min Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Rated AC-Voltage Rated DC-Voltage (DC) Rated Power AC Voltage Setpoint DC Voltage Setpoint Phase Setpoint Active Power Setpoint Reactive Power Setpoint Controlled Node Controlled Node (AC) Controlled Node (DC) Controlled Flow Controlled Flow Control Mode PWM Factor Upper Limit of Pmd Lower Limit of Pmd p.u. p.u. p.u. x>=0&x<=6 0<=x 0<=x&x<=1 0<=x&x<=1 0 1. 1. 0. kV kV MVA p.u. p.u. deg MW Mvar x>=0&x<=1 x>0 x>0 x>0 x>0.0 x>0.0 0 1. 1. 1. 1. 1. 0. 0. 0. ForKeyValid Description Unit Range NameValid Default

C - 37

DIgSILENT PowerFactory

Elements Reference

Table C.19: ElmVscmono Parameters


Name pmq_max pmq_min phmc i_mod fmod Ron Goff Cvalve Gvalve i_det i_ctrl uk Pcu Pnold Cdc Kd Kq Td Tq q_max q_min sernum manuf constr doc_id desc iconfed ictrltp iAstabint Description Upper Limit of Pmq Lower Limit of Pmq Harmonic Injections Modulation Modulation Frequency Transistor/Diode On-Resistance Transistor/Diode Off-Conductance Snubber Capacitance Snubber Conductance Model Use Integrated Current Controller Short Circuit Impedance Copper Losses No-Load Losses DC-Capacitance (not in use) Kd Kq Td Tq Max. Min. Serial Number Manufacturer Year of Construction Additional Data Description Static converter-fed drive Model A-stable integration algorithm x=0|x=1 x>=0&x<=2 x=0|x=1 0 0 0 0 s s p.u. p.u. % kW kW uF Hz Ohm uS uF S x>0 x>=0 x>0 x>=0 x=0|x=1 x=0|x=1 x>=0 x>=0 x>=0 x>=0 x=0|x=1|x=2 0 10000. 0.0001 0.001 0.1 0. 0 0 0. 0. 0. 0. 0.1 0.1 0.01 0.01 1. -1. Unit p.u. p.u. Range 0<=x&x<=1 0<=x&x<=1 Default 1. 0.

C - 38

DIgSILENT PowerFactory

Elements Reference

C.17

PWM AC/DC Converter - 2 DC Connections (ElmVsc)

Object used for a PWM converter model. Voltage sourced AC/DC converter with 2-DC connections. Input parameters Table C.20 shows the input parameters of the ElmVsc object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the converter model, presenting the relations among the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.20: ElmVsc Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv Unom Unomdc Snom usetp phisetp Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Nominal Voltage (AC) Nominal Voltage (DC) Nominal Power Voltage Setpoint Phase Setpoint kV kV MVA p.u. deg x>=0&x<=1 x>0 x>0 x>0 x>0.0 0 1. 1. 1. 1. 0. _ForKeyValid Description Unit Range _NameValid Default

C - 39

DIgSILENT PowerFactory

Elements Reference

Table C.20: ElmVsc Parameters


Name psetp qsetp p_phictrl p_uctrl p_pctrl p_qctrl i_acdc pmsetp pmd_max pmd_min pmq_max pmq_min phmc i_mod fmod Ron Goff i_det sernum manuf constr doc_id desc iconfed ictrltp iAstabint Description Active Power Setpoint Reactive Power Setpoint Controlled Node Controlled Node Controlled Flow Controlled Flow Control Mode PWM Factor Upper Limit of Pmd Lower Limit of Pmd Upper Limit of Pmq Lower Limit of Pmq Harmonic Voltages Modulation Modulation Frequency Transistor/Diode On-Resistance Transistor/Diode Off-Conductance Model Serial Number Manufacturer Year of Construction Additional Data Description Static converter-fed drive Model A-stable integration algorithm x=0|x=1 x>=0&x<=2 x=0|x=1 0 0 0 0 Ohm myS x>0 x>=0 x=0|x=1 x=0|x=1|x=2 0 10000. 0.0001 0.001 0 p.u. p.u. p.u. p.u. p.u. x>=0&x<=5 0<=x 0<=x&x<=1 0<=x&x<=1 0<=x&x<=1 0<=x&x<=1 0 1. 1. 0. 1. 0. Unit MW Mvar Range Default 0. 0.

C - 40

DIgSILENT PowerFactory

Elements Reference

C.18

Rectifier/Inverter 1-DC Connection (ElmRecmono)

Rectifier model with a sigle DC connection, requires a reference to a TypRec object. Input parameters Table C.21 shows the input parameters for the ElmRecmono object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the rectifier model, presenting the relations among the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.21:ElmRecmono Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id sernum constr doc_id desc uset pset Pset Qset Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Serial Number Year of Construction Additional Data Description Voltage Setpoint Power-Setpoint Power-Setpoint Reactive Power-Setpoint p.u. p.u. MW Mvar 1. 1. 1. 1. 0 x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

C - 41

DIgSILENT PowerFactory

Elements Reference

Table C.21:ElmRecmono Parameters


Name Iset Xd mode bstp alpha_set gamma_set ntrcn nntap alphacn pctrl phmc i_int maxorder i_cv alphamin alphamax gammamin gammamax nt2ag iAstabint iconfed Description Current Setpoint Commutation Reactance Orientation (Rectifier/Inverter) Control-Characteristic Actual Firing-Angle Extinction Angle (gamma) Setpoint Tap-Changer Actual Winding Ratio Automatic Firing Angle Control Controller Harmonic Currents Ideal Rectifier Maximum Harmonic Order Current/Voltage-Source Converter Minimum Firing Angle Maximum Firing Angle Minimum Extinction Angle Maximum Extinction Angle Phase Shift A-stable integration algorithm Static converter-fed drive deg deg deg deg *30d eg x=0|x=1 x>0 x=0|x=1 0<=x&x<=180 0<=x&x<=180 0<=x&x<=180 0<=x&x<=180 x>=0&x<12 x=0|x=1 x=0|x=1 0 0 0 0. 180. 0. 180. 0 0 0 p.u. deg deg Unit kA Ohm Range x>0 x>=0 *x='R'|*x='I *x='V'|*x='I'|*x='P'|*x='Q'|*x='E' |*x='G 0<=x&x<=180 0<=x&x<=180 x=0|x=1|x=2 x>0 x=0|x=1 Default 1. 0. ' ' 15. 15. 0 1. 0

C.19

Rectifier/Inverter 2-DC Connection (ElmRec)

Rectifier model with 2-DC connections, requires a reference to a TypRec object. Input parameters

C - 42

DIgSILENT PowerFactory

Elements Reference

Table C.22 shows the input parameters for the ElmRec object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the rectifier model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.22: ElmRec Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id sernum constr doc_id desc uset pset Pset Qset Iset Xd mode bstp alpha_set Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Serial Number Year of Construction Additional Data Description Voltage Setpoint Power-Setpoint Power-Setpoint Reactive Power-Setpoint Current Setpoint Commutation Reactance Orientation (Rectifier/Inverter) Control-Characteristic Actual Firing-Angle deg 15. p.u. p.u. MW Mvar kA Ohm 1. 1. 1. 1. 1. 0. 0 0 Description Unit Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C - 43

DIgSILENT PowerFactory

Elements Reference

Table C.22: ElmRec Parameters


Name gamma_set ntrcn nntap alphacn pctrl phmc i_int maxorder i_cv alphamin alphamax gammamin gammamax nt2ag iAstabint iconfed Description Extinction Angle (gamma) Setpoint Tap-Changer Actual Winding Ratio Automatic Firing Angle Control Controller Harmonic Currents Ideal Rectifier Maximum Harmonic Order Current/Voltage-Source Converter Minimum Firing Angle Maximum Firing Angle Minimum Extinction Angle Maximum Extinction Angle Phase Shift A-stable integration algorithm Static converter-fed drive deg deg deg deg *30deg 0 0 0 0. 180. 0. 180. 0 0 0 p.u. Unit deg Default 15. 0 1. 0

C.20

Series Capacitances (ElmScap)

The ElmScap object represents series capacitances in PowerFactory. It can be used for various applications, e.g. Series compensation of transmission lines Filter capacitance Input parameters Table C.23 shows the input parameters of the ElmScap object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the Series Capacitance model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

C - 44

DIgSILENT PowerFactory

Elements Reference

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue

Table C.23: ElmScap Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv iZoneBus ucn nphases xcap bcap ccap Imov1 Vmov1 Imov2 Vmov2 Curn Sn i_enter Im Vm sernum manuf Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Zone Rated Voltage Phases Reactance 1/B Susceptance, B Capacitance, C MOV Current 1 MOV Voltage 1 MOV Current 2 MOV Voltage 2 Rated Current Rated Power Metal Oxid Varistor Current Voltage Serial Number Manufacturer kA kV Ohm S F kA kV kA kV kA MVA kV x>=0 x=1|x=3 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>0 x>0 x=0|x=1 x>=0&x<=1 0 0 1. 0 0. 0. 0. 0. 0. 0. 0. 1. 173.205 0 ForKeyValid Description Unit Range NameValid Default

C - 45

DIgSILENT PowerFactory

Elements Reference

Table C.23: ElmScap Parameters


Name constr doc_id desc systp iAstabint iInterPol smoothfac Description Year of Construction Additional Data Description System Type A-stable integration algorithm Interpolation Smoothing Factor % x=0|x=1 x=0|x=1 x=0|x=1 x>=0.0&x<=1 00.0 0 0 0 10. Unit Range Default 0

C.21

Series Reactance (ElmSind)

The ElmSind object represents series reactances in PowerFactory. Input parameters Table C.24 shows the input parameters for the ElmSind object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the series reactance model, presenting the relations among the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.24: ElmSind Parameters


Name loc_name root_id fold_id charact Name Original Location In Folder Charact. Description Unit Range _NameValid Default

C - 46

DIgSILENT PowerFactory

Elements Reference

Table C.24: ElmSind Parameters


Name chr_name for_name dat_src outserv iZoneBus ucn nphases Curn Sn uk ukr Pcu Zd xrea lrea rrea sernum manuf constr doc_id desc systp iAstabint Description Characteristic Name Foreign Key Data source Out of Service Zone Rated Voltage Phases Rated Current Rated Power Short-Circuit Voltage uk Short-Circuit Voltage (Re(uk)) ukr Copper Losses Impedance (absolute) Zd Reactance, X Inductance, L Resistance, R Serial Number Manufacturer Year of Construction Additional Data Description System Type A-stable integration algorithm x=0|x=1 x=0|x=1 0 0 0 kA MVA % % kW Ohm Ohm mH Ohm kV x>0 x=1|x=3 x>0 x>0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0&x<=1 0 0 6. 0 0.096225 1. 0. 0. 0. 0. 0. 0. 0. _ForKeyValid Unit Range Default

C.22

Shunt/Filter Element (ElmShnt)

The ElmShnt object is used to represent different shunt connection types.

C - 47

DIgSILENT PowerFactory

Elements Reference

Input parameters Table C.25 shows the input parameters for the ElmShnt object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the shunt/filter model, presenting the relations among the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.25: ElmShnt Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv ushnm nshph iintgnd ignd nbsph imldc ilcph iQorient ncapx ncapa shtype capsa qcapn Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Nominal Voltage Phases External Star Point Star Point of Phase Control Mode Phase Orientation Max. No. of Steps Act.No. of Step Shunt Type Vector Group Rated Reactive Power, C Mvar x>=0 0.96 x[0]='V'|x[0]='Q'|x[0]='P x>=0&x<=6 x=0|x=1 x>0 x>=0 x=0|x=1|x=2|x=3|x=4 ' 0,00 0,00 0,00 0,00 0,00 kV x>=0&x<=1 x>0 x>=1&x<=3 x=0|x=1 x>=0|x<=2 0,00 6. 0,00 0,00 0,00 _ForKeyValid Description Unit Range _NameValid Default

C - 48

DIgSILENT PowerFactory

Elements Reference

Table C.25: ElmShnt Parameters


Name qtotn cucap cutot bcap ccap c1 c2 pgrad fres nres qrean curea xrea rlrea grea greaf0 rrea rpara tandc gparac fcharL fcharR fcharC shuz0 i_opt i_optCont systp Bg Xe Description Rated Reactive Power, L-C Rated Current, C Rated Current, L-C Susceptance Capacitance Capacitance C1 Capacitance C2 Degree Resonance Frequency Tuning Order Rated Reactive Power, L Rated Current, L Reactance Inductance Quality Factor (at fn) Quality Factor (at fr) Resistance Parallel Resistance Loss Factor, tan(delta) Parallel Conductance L(f) R(f) C(f) Z0/Z1 Use Controller for OPF optimization Control Mode System Type Susceptance to Ground Reactance, Xe nS Ohm x>=0 x=0|x=1 x=0|x=1 x=0|x=1 x>=0 x>=0 0. 0,00 0,00 0,00 0. 0. uS Ohm Ohm Mvar A Ohm mH Unit Mvar A A uS uF uF uF % Hz Range x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0&x<=100 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 Default 1. 0. 96224998,00 26666699219,00 84882599,00 0. 84882599,00 4. 250. 5. 24. 2309399902,00 39203,00 477465,00 0. 0. 0. 0. 0. 0.

C - 49

DIgSILENT PowerFactory

Elements Reference

Table C.25: ElmShnt Parameters


Name Re acost iswitch sernum manuf constr doc_id desc i_rem p_rem p_cub Tctrl Kctrl usetp_mx usetp_mn qsetp_mx qsetp_mn pfsetp_mx pfsetp_mn pf_recap_ mx pf_recap_ mn iIntTapCtrl mode_inp Description Resistance, Re Annual Cost Switchable Serial Number Manufacturer Year of Construction Additional Data Description Remote Control Controlled Node Controlled Branch (Cubicle) Controller Time Constant Controller Sensitivity dq/dv Upper Voltage Limit Lower Voltage Limit Upper Reactive Power Limit Lower Reactive Power Limit Upper Power Factor Limit Lower Power Factor Limit Power Factor Power Factor Use Integrated Tap Controller Input Mode s p.u./ % p.u. p.u. Mvar Mvar x<=1&x>=-1 x<=1&x>=-1 x=0|x=1 x=0|x=1 x=0|x=1 x>0 x>0&x<1 x>0 x>0 0.5 0.1 39203,00 0.95 0. 0. 1. 0.95 0,00 0,00 0,00 x=0|x=1 0,00 0,00 Unit Ohm $/ year Range x>=0 x>=0 x>=0&x<=1 Default 0. 0. 0,00

C - 50

DIgSILENT PowerFactory

Elements Reference

C.23

Soft Starter (ElmVar)

The ElmVar object is used to represent voltage control, soft starter devises for induction motors. The ElmVar does not require a type object. Input parameters Table C.26 shows the input parameters for the ElmVar object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the soft starter model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.26: ElmVar Parameters
DisplayN ame loc_name root_id fold_id charact chr_name for_name dat_src outserv iZoneBus Unom Inom K i_onoff sernum manuf constr Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Zone Nominal Voltage Nominal Current Amplification Bypass Serial Number Manufacturer Year of Construction 0 kV kA x>0 x>0 x>=0&x<=1 x=0|x=1 x>=0&x<=1 0 0 6. 1. 0. 0 _ForKeyValid Description Unit Range _NameValid Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C - 51

DIgSILENT PowerFactory

Elements Reference

Table C.26: ElmVar Parameters


DisplayN ame doc_id desc Additional Data Description Description Unit Range Default

C - 52

DIgSILENT PowerFactory

Elements Reference

C.24

Static Generator (ElmGenstat)

The Static Generator (ElmGenstat, ) is an easy to use model of any kind of generator, which is not rotating but static. Applications are: Photovoltaic Generators Fuel Cells Storage devices HVDC Terminals Reactive Power Compensations Wind generators, which are connected with a full-size converter to the grid, can be modelled as a static generator as well, because the behaviour of the plant (from the view of the grid side) is determined by the converter: Wind Generators

C.24.1

Basic Data

On the basic date tab of the Static Generator you can choose the category of the element, enter the number of parallel generators and the ratings of one generator.

Fig. C.1:

Static Generator - Basic Data

C - 53

DIgSILENT PowerFactory

Elements Reference

C.24.2

Load Flow Data

On the load flow tab you can define the power output: active and reactive power, or active power and voltage magnitude, or even a droop. Additionally you can specify a capability curve, which may be the whole range of the converter or a curve with the shape of a V for a min. and max. power factor for example. U Un Droop [ % ] = ------------------ 100 % Q Qn

Fig. C.2:

Static Generator - Load Flow Data

C - 54

DIgSILENT PowerFactory

Elements Reference

C.24.3

VDE/IEC Short-Circuit Data

For short circuit analysis according to IEC 60909 (VDE 0102), you can specify, whether the Static Generator shall have a contribution to the short circuit or not. In order to let the Static Generators fed into the short circuit, enable the option 'Static converter-fed drive'. With this option enabled, a Static Generator will have a contribution like a Static converter-fed drive according to IEC 60909: It has a contribution to I''k and to ip. It has no contribution to Ib or Ik. In IEC 60909 the contribution of a Static converter-fed drive to I''k is defined by: U rM U rM 1 1 - = ------------------- ------------------ -------- Z = ------------------I LR I rM S rM I LR I rM 3 I
rM 2

X = 0.995 Z R/X = 0.1 with I LR I rM = 3 The index 'rM' specifies the rating of the static converter transformer on the network side, or the rating of the static converter, if no transformer is present.

C.24.4

Full Short-Circuit Data

If you want to define a user-specific level for the subtransient and a transient short circuit, you can do so using the Complete Method. For short circuit calculations by the Complete Method you can enter a subtransient and a transient short circuit level, either as short circuit power or as short circuit current, and the R/X ratio (alternatively the X/R ratio). Additionally it is possible to enter values for the zero sequence impedance, for example if the Static Generator includes a transformer with earthed star point.

C.24.5

Optimization Data

On the optimization tab you can add the Static Generator to a Virtual Power Plant.

C.24.6

RMS- / EMT-Simulation Data

In time-domain-simulations the Static Generator acts similar to a PWM converter

C - 55

DIgSILENT PowerFactory

Elements Reference

C.25

Static Var System (ElmSvs)

The static var compensator system (ElmSvc) is a combination of a shunt capacitor bank and a thyristor controlled shunt reactance. Input parameters Table C.27 shows the input parameters for the ElmSvs object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the static var compensator, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.27:ElmSvs Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv nxcap nncap qmax qmin tcrmax ibvco usetp tcrqact Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Max. Number of Capacitors Act. Number of Capacitors Q Reactance (>0) Q per Capacitor Unit (<0) TCR, Max. Limit Remote Bus Voltage Setpoint Act. Value of TCR p.u. Mvar x>0 x>=0 1. 0. Mvar Mvar Mvar x>=0&x<=1 x>=0 x>=0 x>=0 x<=0 x>=0 0 0 0 0. 0. 0. _ForKeyValid Description Unit Range _NameValid Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C - 56

DIgSILENT PowerFactory

Elements Reference

Table C.27:ElmSvs Parameters


Name qsetp ictsv ivcop i_ctrl i_sctrl i_rem p_rem p_cub iconn pcu i_det q0 Re Xe R0 X0 sernum manuf constr doc_id desc phmc i_int maxorder iAstabint i_qini Q Setpoint Use for OPF Control Controlled Phase Load Flow Control Balanced/Unbalanced Control Remote Control Controlled Node Controlled Branch (Cubicle) Connection mode of Capacitors Maximum Copper Losses TCR Model Reactive Power Resistance, Re Reactance, Xe Resistance, R0 Reactance, X0 Serial Number Manufacturer Year of Construction Additional Data Description Harmonic Currents (TCR) Ideal SVS Maximum Harmonic Order A-stable integration algorithm Estimate Reactive Power x=0|x=1 x>0 x=0|x=1 x=0|x=1 0 0 0 0 0 Mvar Ohm Ohm Ohm Ohm kW x=0|x=1|x=2 x>=0 x=0|x=1 0 0. 0 0. 0. 0. 0. 0. Description Unit Mvar x=0|x=1 x>=0&x<=4 x>=0&x<=2 x=0|x=1 x=0|x=1 Range Default 0. 0 0 0 0 0

C - 57

DIgSILENT PowerFactory

Elements Reference

C.26

Synchronous Machine (ElmSym)

Object used to represent synchronous machine models, requires a reference to a TypSym object. Input parameters Table C.28 shows the input parameters of the ElmSym object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the synchronous machine model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.28: ElmSym Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id ngnum pgini qgini sgini cosgini ictpg ictqg Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type parallel Machines Active Power Reactive Power Apparent Power Power Factor Active Power Reactive Power x=0|x=1 x=0|x=1 MW Mvar MVA x>=0 x>0 0 0. 0. 0. 0. 0 0 x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C - 58

DIgSILENT PowerFactory

Elements Reference

Table C.28: ElmSym Parameters


Name costp iestp iestq bustp usetp i_mot xesy resy ip_ctrl iv_mode i_spin phiini sernum constr doc_id desc pStoch Pctrl i_prty iOPFCPmin iOPFCPmax Pmax_uc Pmin_uc tmin_up tmin_down cost_up cost_down cpower ccost Costs per MW Estimate Active Power Estimate Reactive Power Corresponding Bus Type Voltage Generator/Motor Xearth Rearth Reference Machine Mode of Local Voltage Controller Spinning in isolated operation Angle Serial Number Year of Construction Additional Data Description Stochastic model Active power steps Priority Min. Max. Max. Min. Minimum up-time Minimum down-time Startup Shutdown Power Costs MW MW h h $ $ MW $/h x>=0 x=0|x=1 x=0|x=1 0 0 0 0 0.8 0. 0. 0. 0. 0. 0 deg Ohm Ohm x>=0 x>=0 x=0|x=1 x=0|x=1 x=0|x=1 x>=180&x<=180 p.u. x>0 1. 0 0. 0. 0 0 0 0. Description Unit $/MW x=0|x=1 x=0|x=1 Range Default 0. 0 0

C - 59

DIgSILENT PowerFactory

Elements Reference

Table C.28: ElmSym Parameters


Name dsecres iqtype iOPFCQmin iOPFCQmax q_min q_max i_cap cap_P cap_Qmn cap_Qmx iunitcom t_on t_off P_min pmaxratf pG Kpf ignd iintgnd iAstabint mode_inp dpl1 dpl2 dpl3 dpl4 dpl5 Reserve Use limits specified in type Min. Max. Min. Max. User defined Capability Curve Act.Power Min. Max. Optimized in unit commitment Initial Condition Initial Condition Min. Rating Factor Range of Voltage Regulation (+/-) Prim. Frequency Bias Star Point External Star Point A-stable integration algorithm Input Mode dpl1 dpl2 dpl3 dpl4 dpl5 0. 0. 0. 0. 0. % MW/Hz h h MW x>=0 x>=0&x<=100 x>=0 x=0|x=2 x=0|x=1 x=0|x=1 MW Mvar Mvar 0 0. 0. 0. 1. 0. 0. 0 0 0 p.u. p.u. x=0|x=1 x=0|x=1 Description Unit Range Default 0. 0 0 0 -1. 1. 0

C - 60

DIgSILENT PowerFactory

Elements Reference

C.27

Tower Line Coupling (ElmTow)

The ElmTow is used to represent electromagnetic coupling between transmission lines. In order to define the line coupling, a TypTow/TypGeo object determining the geometrical characteristics and the conductor type of the structure where the coupled lines are located, is required. Input parameters Table C.29 shows the input parameters for the ElmTow object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the line coupling model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table C.29: ElmTow Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id desc line1 line2 line3 line4 line5 Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Tower Type Description Circuit 1 Circuit 2 Circuit 3 Circuit 4 Circuit 5 x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

C - 61

DIgSILENT PowerFactory

Elements Reference

Table C.29: ElmTow Parameters


Name line6 rearth pGeo towdist pCon_e sag_e plines dpolar pCon_c sag_c transp dtow iusecoup pos1 pos2 couplen i_dist c_dist c_lumped tmat pzs pa pTa ftau Circuit 6 Earth Resistivity Type Distance Type Max.Sag Circuit Polarity Type Max.Sag Transposition Length Use Coupling Length Position 1 Position 2 Coupling Length Line Model Distributed Parameter Lumped Parameter (PI) Transformation Matrix Tv Surge Impedance Wave Propagation Travel Time Frequency for Parameter Approximation s Hz x>0 100000. Ohm km km km x=0|x=1 0 0 0 x=0|x=1 0. 0 TypCon m Ohmm TypTow,TypGeo m TypCon m ElmLne,ElmLnero ute x>0 100. Description Unit Range Default

C.28

Transmission Lines (ElmLne)

The ElmLne is used to represent transmission lines/cables, it requires a reference to a

C - 62

DIgSILENT PowerFactory

Elements Reference

TypLne or a TypTow object. The ElmLne can contain line sections as presented in Section 10.1.9 (Defining and Working with Transmission Lines). Input parameters Table C.30 shows the input parameters for the ElmLne object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the line model, presenting the relations among the input parameters and the posible types is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Note: The name of the parameter is displayed in the Object edit dialogue, by placing the

Table C.30: ElmLne Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id iZoneBus nlnum dline fline Top inAir nlsim ishclne Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Zone parallel Lines Length of Line Derating Factor Operating Temperature Laying Enable for Contingency Analysis Available degC x=0|x=1 x=0|x=1 x=0|x=1 km x>=1 x>=0 x>=0 0 0 1. 1. 20. 0 0 0 x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

C - 63

DIgSILENT PowerFactory

Elements Reference

Table C.30: ElmLne Parameters


Name fshcloc lodln lprot slin1 i_dist pCondCir pCondGnd pCondN sagCir sagGnd ktrto rearth i_model kz1 pz1 zz1 kz0 pz0 zz0 kz2 pz2 zz2 ka1 a1dc Ta1 pa1 za1 ka0 a0dc Ta0 Description Short-Circuit Location Type of Load Protection Devices Load Current/Nom.Current Line Model Type of Phase Conductors Type of Earth Conductors Type of Neutral Conductors Max.Sag, Phase Conductors Max.Sag, Ground Wires Transposition Earth Resistivity Line Model Surge Impedance, HF, Mode 1. Poles,Mode 1 Zeros, Z1 Surge Impedance, HF, Mode 0 Poles, Mode 0 Zeros, Zl0 Surge Impedance, HF, Mode 2. Poles,Mode 2 Zeros, Z2 Wave Propagation Constant. Wave Propagation, DC, Mode 1 Travel Time, Mode 1 Poles, A1 Zeros, A1 Wave Propagation Constant Wave Propagation, DC, Mode 0 Travel Time, Mode 0 Ohm Hz Hz Ohm Hz Hz Ohm Hz Hz p.u. p.u. s Hz Hz p.u. p.u. s x>0 x>0 x>0 1. 1. 0.001 x>0 x>0 x>0 1. 1. 0.001 x>0 50. x>0 50. Ohmm m m x>=0 x>=0 x=0|x=1 x>=0 x=0|x=1 x>0 0. 0. 0 100. 0 50. p.u. x>=0 x=0|x=1 0. 0 Unit % Range x>=0&x<=100 Default 50.

C - 64

DIgSILENT PowerFactory

Elements Reference

Table C.30: ElmLne Parameters


Name pa0 za0 ka2 a2dc Ta2 pa2 za2 fmin fmax ftau tolBode tmat cubsecs sernum constr doc_id desc NrCust i_ldlv pStoch iperfect maxload iOPFCload dpl1 dpl2 dpl3 dpl4 dpl5 Poles, A0 Zeros, A0 Wave Propagation Constant. Wave Propagation, DC, Mode 2 Travel Time, Mode 2 Poles, A2 Zeros, A2 Min. Frequency of Parameter Fitting Max. Frequency of Parameter Fitting Frequency for Travel-Time Estimation Tolerance for Bode Approximation Transformation Matrix Routes/Cubicles/Sections Serial Number Year of Construction Additional Data Description Number of connected customers Line Load Element model Ideal component Max. Loading Max. Loading dpl1 dpl2 dpl3 dpl4 dpl5 % x>=0 x=0|x=1 0 100. 0 0. 0. 0. 0. 0. x>=0 x=0|x=1 0 0 0 Description Unit Hz Hz p.u. p.u. s Hz Hz Hz Hz Hz % x>0 x>0 x>0 x>0 0.001 1000000. 100000. 5. x>0 x>0 x>0 1. 1. 0.001 Range Default

C - 65

DIgSILENT PowerFactory

Elements Reference

C.29

Voltage Source (ElmVac)

The ElmVac is used to represent AC Voltage sources (single phase or three phase). Input parameters Table C.31 shows the input parameters for the ElmVac object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the AC voltage source model, presenting the relations among the input parameters and the posible types is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.31: ElmVac Parameters


Name loc_name Name Description Unit Range _NameValid Default

Under preparation...

C - 66

DIgSILENT PowerFactory

Elements Reference

C.30

Voltage Source (ElmVdc)

The ElmVdc is used to represent DC Voltage sources (single phase or three phase). Input parameters Table C.32 shows the input parameters for the ElmVdc object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the AC voltage source model, presenting the relations among the input parameters and the posible types is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.32: ElmVdc Parameters


Name loc_name Name Description Unit Range _NameValid Default

Under preparation...

C - 67

DIgSILENT PowerFactory

Elements Reference

C.31

Digital Clock (ElmClock)

Object used to represent clock inputs. Input parameters Table C.33 shows the input parameters of the ElmClock object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the clock model, presenting the relations among the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue

Table C.33:ElmClock Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id Tp tonTp iopt_meas ctrlsim Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Period Ratio Ton/Tp Use Measurement Frequency Control Simulation Step Size ms x>0 x>0&x<1 x=0|x=1 x=0|x=1 1. 0.5 0 0 x>=0&x<=1 0 ForKeyValid Description Unit Range NameValid Default

C - 68

DIgSILENT PowerFactory

Elements Reference

C.32

Fast Fourier Transform (ElmFft)

Object used to represent fast Fourier transforms. Input parameters Table C.34 shows the input parameters of the ElmFft object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the fast Fourier transform model, presenting the relations among the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Object edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue

Table C.34: ElmFft Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id nsamp nphase i_win Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Number of Points No. of Phases Window x>0 x=1|x=3 x>=0 256. 0 0 x>=0&x<=1 0 _ForKeyValid Description Unit Range _NameValid Default

C - 69

DIgSILENT PowerFactory

Elements Reference

C.33

File Object (ElmFile)

Object used to read data from a file during calculations. Input parameters Table C.35 shows the input parameters of the ElmFile object. Parameters are presented in the same order of the object dialogue (starting from the 'Basic Data' tab). The description of the measurement file element, presenting the functionality of the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Element edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table C.35: ElmFile Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv iopt_imp f_name icol afac bfac prim tini desc Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Import from Filename Column j Factor a Factor b P or S Time Index Description 0. 0 1. 0. x>=0&x<=1 x>=0&x<=1 0 0 ForKeyValid Description Unit Range NameValid Default

C - 70

DIgSILENT PowerFactory

Elements Reference

C.34

Fourier Source (ElmFsrc)

Fourier source element, used to generate periodical signals in the frequency domain. Input parameters Table C.36 shows the input parameters of the ElmFsrc object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The description of the Fourier source model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue
Table C.36: ElmFscr Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv dc_com f_min delta_f overspl ampl_ phase_ rb_proc Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service DC Component Minimum Frequency Frequency Step Oversampling Factor Amplitude Phase Calculate with deg Hz Hz x>0 x>0 x>=10 x>=0&x<=1 0 0. 10. 10. 10. ForKeyValid Description Unit Range NameValid Default

Note: The name of the parameter is displayed in the Element edit dialogue, by placing

C - 71

DIgSILENT PowerFactory

Elements Reference

C.35

Digital Register (ElmReg)

The Register (ElmReg) model in PowerFactory is a digital shifting register. With every rising edge of the clock signal the values are shifted by one, then the output is set and the input is read and stored in the register. Input parameters Table C.37 shows the input parameters of the ElmReg object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Bata' tab). The complete description of the Register model is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Element edit dialogue, by placing

the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue
Table C.37: ElmReg Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id nsamp nphase Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type Size No. of Phases x>0 x=1|x=3 0 0 x>=0&x<=1 0 ForKeyValid Description Unit Range NameValid Default

C - 72

DIgSILENT PowerFactory

Elements Reference

C.36

Sample and Hold Model (ElmSamp)

The Sample and Hold model of PowerFactory (ElmSamp) samples a signal, setting the output at the rising edge of a clock. The output value is constant up to the next clock pulse. Input parameters Table C.38 shows the input parameters of the ElmSamp object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The complete description of the Sample and Hold model is given in the attached Technical Reference Paper.

the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue
Table C.38: ElmSamp Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id nphase Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type No. of Phases x=1|x=3 0 x>=0&x<=1 0 ForKeyValid Description Unit Range NameValid Default

Note: The name of the parameter is displayed in the Element edit dialogue, by placing

C.37

Trigger Model (ElmTrigger)

The trigger model (ElmTrigger) is used to monitor the value of a signal. If certain trigger

C - 73

DIgSILENT PowerFactory

Elements Reference

conditions are met the model will start a trigger event. Input parameters Table C.39 shows the input parameters of the ElmTrigger object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The complete description of the Trigger model is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Element edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue

Table C.39:ElmTrigger Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src outserv typ_id nphase i_max i_min i_grd valmax valmin valgrd npickmax npickmin npickgrd Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Out of Service Type No. of Phases On On On Threshold Threshold Threshold Set after... Set after... Set after... 1/s x=1|x=3 x=0|x=1 x=0|x=1 x=0|x=1 0 0 0 0 1. -1. 1. 0 0 0 x>=0&x<=1 0 ForKeyValid Description Unit Range NameValid Default

C - 74

DIgSILENT PowerFactory

Elements Reference

Table C.39:ElmTrigger Parameters


Name ndropmax ndropmin ndropgrd npts sleep res iopt_res iopt_sys Reset after... Reset after... Reset after... Number of Points for Calculation of Gradient Number of measured values after Start until Trigger gets active Acquire Data Writing of RMS Results Trigger Type x>=0 x>=0 x=0|x=1 Description Unit Range Default 0 0 0 0 0 0 0 0

C - 75

DIgSILENT PowerFactory

Elements Reference

C - 76

DIgSILENT PowerFactory

Types Reference

Appendix D Types Reference

D.1

2-Winding Transformer Type (TypTr2)

Type used to define two winding transformers/autotransformers (ElmTr2 and ElmTr2n). Input parameters Table D.1 shows the input parameters for the TypTr2 object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The description of the 2-winding transformer model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table D.1: TypTr2 Parameters
Name Description Unit Range _NameValid Default

Note: The name of the parameter is displayed in the Element edit dialogue, by placing

loc_name root_id fold_id charact chr_name for_name dat_src strn

Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Rated Power
MVA

_ForKeyValid

x>0

1.

D-1

DIgSILENT PowerFactory

Types Reference

Table D.1: TypTr2 Parameters


Name Description Unit kV kV % kW % % deg x>=0 Range x>0 x>0 Default 6. 6. 3. 0. 0. 0. 0. 0 0 0

utrn_h utrn_l uktr pcutr curmg dutap phitr ntpmx ntpmn nntap0 fdtr2r fdtr2l uk0tr ur0tr tr2cn_h tr2cn_l nt2ag nt2ph itrdl itrdr itrmt it0mt cknee psi0 xmlin xmair ksat iLimb iInterPol

HV-Side LV-Side Short-Circuit Voltage uk Copper Losses No Load Current Additional Voltage per Tap Phase of du Maximum Position Minimum Position Neutral Position Resistance R=R(freq) [A-Z] Reactance L=L(freq) [A-Z] Absolute uk0 Resistive Part ukr0 HV-Side LV-Side Phase Shift Technology x,Pos.Seq. HV-Side r,Pos.Seq. HV-Side Type Type Knee Current Knee Flux Linear Reactance Saturated Reactance Saturation Exponent Core Interpolation

% % _IsVecGrpValid _IsVecGrpValid *30deg x>=0&x<=12 x=1|x=2|x=3 x>=0&x<=1 x>=0&x<=1

3. 0.

0 0 0.5 0.5 0 0

p.u. p.u. p.u. p.u. x>=0 x>=0 x>=0 x>1 x=3|x=5 x=0|x=1

0. 01. Jan 0. 0. 0 0 0

D-2

DIgSILENT PowerFactory

Types Reference

Table D.1: TypTr2 Parameters


Name Description Unit % Range x>=0.0&x<=100.0 x>=0&x<=1 x>=0 p.u. s p.u. s Default 10. 0.9 100. 0. 0. 0. 0.

smoothfac zx0hl_h zx0hl_n pict2 pitt2 twct2 twtt2 ansiclass tap_side frnom pfe strnfc oltc itapzdep uktmn pcutmn uktmx pcutmx uk0tmn uk0rtmn uk0tmx uk0rtmx manuf doc_id desc pStoch satcur satflux

Smoothing Factor z, Zero Sequ. HV-Side Mag. reac. / uk0 Ratio Ip/In Max. Time Ratio It/In Max. Time Class at Side Nominal Frequency No Load Losses Rated Power (forced cooling) On-load Tap Changer Tap dependent impedance uk (min. tap) Pcu (min. tap) uk (max. tap) Pcu (max. tap) uk0 (min. tap) Re(uk0) (min. tap) uk0 (max. tap) Re(uk0) (max. tap) Manufacturer Additional Data Description Stochastic model Current (peak) Flux (peak)

x=0|x=1 Hz kW MVA x>=0 x>=0 x>=0 x=0|x=1 x=0|x=1 % kW % kW % % % %

0 50. 0. 0. 0 0 0. 0. 0. 0. 0. 0. 0. 0.

p.u. p.u.

D-3

DIgSILENT PowerFactory

Types Reference

D.2

3-Winding Transformer Type (TypTr3)

Type used to define three winding transformers/autotransformers (ElmTr3). Input parameters Table D.2 shows the input parameters for the TypTr3 object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The description of the 3-winding transformer model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table D.2: TypTr3 Parameters
Name Description Unit Range _NameValid Default

Note: The name of the parameter is displayed in the Element edit dialogue, by placing

loc_name root_id fold_id charact chr_name for_name dat_src strn3_h strn3_m strn3_l utrn3_h utrn3_m utrn3_l

Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source HV-Side MV-Side LV-Side HV-Side MV-Side LV-Side
MVA MVA MVA kV kV kV

_ForKeyValid

x>0 x>0 x>0 x>=0 x>=0 x>=0

1. 1. 1. 0. 0. 0.

D-4

DIgSILENT PowerFactory

Types Reference

Table D.2: TypTr3 Parameters


Name Description Unit % % % kW kW kW % % Range x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 Default 3. 3. 3. 0. 0. 0. 0. 0. 0 0 0 0 0 0 0 0 0 % % % deg deg deg % % % % % % x>=0 x>=0 x>=0 x>=0&x<=360 x>=0&x<=360 x>=0&x<=360 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 0. 0. 0. 0. 0. 0. 3. 3. 3. 0. 0. 0.

uktr3_h uktr3_m uktr3_l pcut3_h pcut3_m pcut3_l curm3 cr0m3 n3tmn_h n3tmn_m n3tmn_l n3tmx_h n3tmx_m n3tmx_l n3tp0_h n3tp0_m n3tp0_l du3tp_h du3tp_m du3tp_l ph3tr_h ph3tr_m ph3tr_l uk0hm uk0ml uk0hl ur0hm ur0ml ur0hl

HV-MV MV-LV LV-HV HV-MV MV-LV LV-HV No Load Current No Load Current Min. Position Min. Position Min. Position Max. Position Max. Position Max. Position Neutral Position Neutral Position Neutral Position Add. Voltage per Tap Add. Voltage per Tap Add. Voltage per Tap Phase of du Phase of du Phase of du HV-MV MV-LV LV-HV HV-MV MV-LV LV-HV

D-5

DIgSILENT PowerFactory

Types Reference

Table D.2: TypTr3 Parameters


Name Description Unit Range _FrqDepValid _FrqDepValid _IsVecGrpValid _IsVecGrpValid _IsVecGrpValid *30deg *30deg x>=0&x<=12 x>=0&x<=12 0 0 0 0 0 0 p.u. p.u. p.u. p.u. 0. 01. Jan 0. 0. 0. s 0. 0. s kW x>=0 0. 0. Default

fdtr3r fdtr3l tr3cn_h tr3cn_m tr3cn_l nt3ag_h nt3ag_m i3loc i30lc itrmt it0mt c3nee psi0 x3lin x3air pict3 pitt3 twct3 twtt3 pfe t3nam bname1 bname2 bname3 elemnm

Resistance R=R(freq) [A-Z] Reactance L=L(freq) [A-Z] HV-Side MV-Side LV-Side Phase Shift Phase Shift Position Position Type Type Zero Sequence Knee Current Saturation Flux Linear Part Saturated Ratio Ip/In Max. Time Ratio It/In Max. Time No Load Losses transformer name (only for compatib.) bus name 1 (only for compatib.) bus name 2 (only for compatib.) bus name 3 (only for compatib.) Element Name (only for compatib.)

D-6

DIgSILENT PowerFactory

Types Reference

Table D.2: TypTr3 Parameters


Name Description Unit Range Default

ansiclass nt3ag_l itapos snfc_h snfc_m snfc_l oltc_h oltc_m oltc_l itapzdep itapzside uktr3mn_h uktr3mn_m uktr3mn_l pcut3mn_h pcut3mn_m pcut3mn_l uktr3mx_h uktr3mx_m uktr3mx_l pcut3mx_h pcut3mx_m pcut3mx_l uk0mnhm uk0mnml uk0mnhl ur0mnhm ur0mnml ur0mnhl

Class Phase Shift Tap Modeled at HV-Side MV-Side LV-Side HV-Side MV-Side LV-Side Tap dependent impedance for Tap at uk(HV-MV)(min. tap) uk(MV-LV)(min. tap) uk(LV-HV)(min. tap) Pcu(HV-MV)(min. tap) Pcu(MV-LV)(min. tap) Pcu(LV-HV)(min. tap) uk(HV-MV)(max. tap) uk(MV-LV)(max. tap) uk(LV-HV)(max. tap) Pcu(HV-MV)(max. tap) Pcu(MV-LV)(max. tap) Pcu(LV-HV)(max. tap) uk0(HV-MV)(min. tap) uk0(MV-LV)(min. tap) uk0(LV-HV)(min. tap) Re(uk0)(HV-MV)(min. tap) Re(uk0)(MV-LV)(min. tap) Re(uk0)(LV-HV)(min. tap)
% % % kW kW kW % % % kW kW kW % % % % % % MVA MVA MVA *30deg x>=0&x<=12 x=0|x=1 x>=0 x>=0 x>=0 x=0|x=1 x=0|x=1 x=0|x=1 x=0|x=1 x>=0&x<=2 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 0 0 0. 0. 0. 0 0 0 0 0 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. 0.

D-7

DIgSILENT PowerFactory

Types Reference

Table D.2: TypTr3 Parameters


Name Description Unit % % % % % % Range x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 Default 0. 0. 0. 0. 0. 0.

uk0mxhm uk0mxml uk0mxhl ur0mxhm ur0mxml ur0mxhl manuf doc_id desc pStoch

uk0(HV-MV)(max. tap) uk0(MV-LV)(max. tap) uk0(LV-HV)(max. tap) Re(uk0)(HV-MV)(max. tap) Re(uk0)(MV-LV)(max. tap) Re(uk0)(LV-HV)(max. tap) Manufacturer Additional Data Description Stochastic model

D.3

Asynchronous Machine (TypAsmo)

Type object defined for asynchronous machine elements (ElmAsm) and double feed induction machines (ElmAsmsc).

Input parameters Table D.3 shows the input parameters of the TypAsmo object. Parameters are presented in the same order of the Type dialogue (starting from the 'Basic Data' tab). The description of the asynchronous machine model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Note: The name of the parameter is displayed in the Type edit dialogue, by placing the

D-8

DIgSILENT PowerFactory

Types Reference

Table D.3: TypAsmo Parameters


Name loc_name root_id fold_id charact chr_name for_name dat_src sgn ugn cosn nppol aiazn tag xm rtox rstr rrtrA rrtrB xstr xrtrA xrtrB xmrtr frequ istt nslty pgn anend aslkp asstl Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Rated Apparent Power Rated Voltage Rated Power Factor No of Pole Pairs Locked Rotor Current (Ilr/In) Acceleration Time Constant Mag. Reactance Xm R/X Locked Rotor Stator Resistance Rs Rotor Resistance RrA Rotor Resistance RrB Stator Reactance Xs Rotor Reactance XrA Rotor Reactance XrB Rotor Leakage Reac. Xrm Nominal Frequency Status of ESB Calculation Connection Rated Mechanical Power Nominal Speed Slip at Stalling Point Slip at Saddle Point kW rpm x>=0 x>=0 x>=0 x>=0 p.u. p.u. p.u. p.u. p.u. p.u. p.u. Hz x>=0 x>0 p.u. s p.u. kVA kV x>0 x>0 x>0&x<=1 x>0 x>0 x>0 x>0 x>=0 x>=0 x>0 x>0 x>=0 x>0 500. 6. 0.8 0 5. 2. 4. 0.1 0. 0.01 0.1 0.01 0.1 0.1 0. 50. 0 0 400. 0. 0. 0. ForKeyValid Description Unit Range NameValid Default

D-9

DIgSILENT PowerFactory

Types Reference

Table D.3: TypAsmo Parameters


Name amazn amkzn amstl coazn slp mslp islp fdasmr fdasml i_mode effic i_trans fcharrstr fcharlss iinrush Tinrush Tcold Thot i_cdisp n_cdisp rrsn xrsn rrs1 xrs1 rrtrA0 xrtrA0 r0 x0 r1 Description Locked Rotor Torque Torque at Stalling Point Torque at Saddle Point cos(phi) Locked Rotor Slip Torque Current Resistance R=R(freq) [A-Z] Reactance L=L(freq) [A-Z] Input Mode Efficiency at nominal Operation Consider Transient Parameter Stator Resistance Rs(f) Inductance L''(f) Ratio Ip/In Max. Time Cold Hot Consider Current Displacement (Squirrel Cage Rotor) Order of R-L Approximation Slip dependent part of RrA at nominal slip Slip dependent part of XrA at nominal slip Slip dependent part of RrA at slip=1 Slip dependent part of XrA at slip=1 Slip indep. Resistance RrA0 Slip indep. Reactance XrA0 Resistance RrA1 Reactance XrA1 Resistance RrA2 p.u. s s s x>0 x>0 x>0 x>0 x=0|x=1 10. 0.02 20. 10. 0 0 0. 0. 0. 0. 0. 0. 0.1 0.1 0.1 % Unit p.u. p.u. p.u. p.u. % p.u. p.u. Range x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 x>=0 FrqDepValid FrqDepValid x=0|x=1 0 100. 0 Default 0. 0. 0. 0. 0. 0. 0.

D - 10

DIgSILENT PowerFactory

Types Reference

Table D.3: TypAsmo Parameters


Name x1 i_cage i_optpn rtoxshc aiaznshc xtorshc xdssshc iansitp manuf doc_id desc J rzero xzero Reactance XrA2 Rotor Power Rating R/X Locked Rotor Locked Rotor Current (Ilr/In) X/R Locked Rotor Locked Rotor Reactance ANSI Type Manufacturer Additional Data Description Inertia Resistance Reactance kgm^2 p.u. p.u. x>0 08. Feb 0.01 0.1 p.u. p.u. x>=0 x>0 x>=0 x>0 x>=0&x<=6 Description Unit Range Default 0.1 0 0 0.1 5. 10. 0.199007 0

D.4

Booster Transformer Type (TypTrb)

Type used to define booster transformers (ElmTrb).

Input parameters Table D.4 shows the input parameters for the TypTrb object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The description of the booster transformer model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Note: The name of the parameter is displayed in the Element edit dialogue, by placing

D - 11

DIgSILENT PowerFactory

Types Reference

Table D.4: TypTrb Parameters


DisplayNam e Description Unit Range _NameValid Default

loc_name root_id fold_id charact chr_name for_name dat_src manuf doc_id desc strn utrn_h utrn_l uktr pcutr curmg uk0tr ur0tr tr2cn_l nt2ag itrdz itrdz_lv zx0hl_h zx0hl_l zx0hl_n

Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Manufacturer Additional Data Description Rated Power HV-Side LV-Side Short-Circuit Voltage uk Copper Losses No Load Current Absolute uk0 Resistive Part ukr0 LV-Side Phase Shift z,Pos.Seq. HV-Side z,Pos.Seq. LV-Side z, Zero Sequ. HV-Side z, Zero Sequ. LV-Side Mag. reac. / uk0
*30deg MVA kV kV % kW % % %

_ForKeyValid

x>0 x>0 x>0 x>=0 x>=0 x>=0&x<=100 x>=0&x<=100 x>=0&x<=100 _IsVecGrpValidB x>=0&x<=12 x>=0&x<=1 x>=0&x<=1

1. 6. 6. 3. 0. 0. 3. 0.

0 0.5 0.5 0.9 0.1

x>=0

100.

D - 12

DIgSILENT PowerFactory

Types Reference

D.5

Cable Type (TypCab)

Type used to define cable objects. Input parameters Table D.5 shows the input parameters for the TypCab object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The description of the cable type model, presenting the relations among the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Element edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table D.5: TypCab Parameters


Name Description Unit Range _NameValid Default

loc_name root_id fold_id charact chr_name for_name dat_src typCon diaTube diaCon thSht thArm thIns rho my epsr

Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Shape Inner Diameter Outer Diameter Thickness of Sheath Thickness Armour Thickness Resistivity Relative Permeability Relative Permittivity
mm mm mm mm mm uOhm*cm

_ForKeyValid

x>=0 x>=0 x>=0 x>=0 x>=0 x>0

0. 5. 1. 1. 1. Jan 68 1. 3.

D - 13

DIgSILENT PowerFactory

Types Reference

Table D.5: TypCab Parameters


Name Description Unit Range Default 0.02 x=0|x=1 x=0|x=1 x=0|x=1 x=0|x=1 0 0 0 0

tand has_ins3 has_ins2 has_arm has_sht manuf doc_id desc uline rtemp Ithr

Dielectric Loss Factor Has Insulation 3 (Serving) Has Insulation 2 (Over Sheath) Has Armour Has Sheath Manufacturer Additional Data Description Rated Voltage Max. End Temperature Rated Short-Time (1s) Current
kV degC kA x>=0 x>0 x>=0

0. 80. 0.

D.6

Conductor Type (TypCon)

Type used to define conductor objects. A reference to a conductor type is required in the tower types: TypTow/TypGeo, to define the conductors of the transmission line. Input parameters Table D.6 shows the input parameters for the TypCon object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The description of the conductor type model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Note: The name of the parameter is displayed in the Element edit dialogue, by placing

D - 14

DIgSILENT PowerFactory

Types Reference

Table D.6: TypCon Parameters


Name Description Unit Range _NameValid Default

loc_name root_id fold_id charact chr_name for_name dat_src ncsub dsubc diaco radco erpha Lint my_r iskin gline rpha uline sline rtemp Ithr manuf doc_id desc

Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Number of Subconductors Bundle Spacing Diameter Radius GMR (Equivalent Radius) Internal Inductance Relative Permeability Skin effect Line Conductivity DC-Resistance Nominal Voltage Nominal Current Max. End Temperature Rated Short-Time (1s) Current Manufacturer Additional Data Description
uS/km Ohm/km kV kA degC kA m mm mm mm mH/km

_ForKeyValid

x>0&x<100

0 0.1

x>0 x>0 x>0 x>0 x>0 x=0|x=1 x>=0 x>0 x>0 x>=0 x>0 x>=0

30. 15. 11.682 0.05 1. 0 0. 0.05 6. 1. 80. 0.

D - 15

DIgSILENT PowerFactory

Types Reference

D.7

General Load (TypLod)

Type object defined for general load elements (ElmLod). Input parameters Table D.7 shows the input parameters of the TypLod object. Parameters are presented in the same order of the Type dialogue (starting from the 'Basic Data' tab). The description of the general load model, presenting the relations among the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Type edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue. Table D.7:TypLod Parameters
Name loc_name root_id fold_id charact chr_name for_name dat_src lodst loddy lodsp kpf kpu tpf tpu kqf kqu tqf Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Static (const Z) Dynamic Special Frequ. Dependence on P Volt. Dependence on P Transient Frequency Dependence Transient Voltage Dependence Frequ. Dependence on Q Volt. Dependence on Q Transient Frequency Dependence s x>=0 s s x>=0 x>=0 % % % x>=0&x<=100 x>=0&x<=100 x>=0&x<=100 0 0 0 0. 01. Jun 0. 0. 0. 01. Aug 0. ForKeyValid Description Unit Range NameValid Default

D - 16

DIgSILENT PowerFactory

Types Reference

Table D.7:TypLod Parameters


Name tqu t1 pgrd qcq cnm spfilnm fdlodr fdlodl systp nlnph iintgnd manuf doc_id desc i_nln i_pure i_csrc udmax udmin Prp xt Description Transient Voltage Dependence Dynamic Load Time Constant QL/QC QC/Q Connection Measurement File Resistance R=R(freq) [A-Z] Reactance L=L(freq) [A-Z] System Type Phases External Star Point Manufacturer Additional Data Description Nonlinear Model Load model Current Source/Impedance Upper Voltage Limit Lower Voltage Limit Power of parallel Resistance/Total Active Power Transformer Short Circuit Reactance p.u. p.u. % % x=1|x=0 x=0|x=1 x=0|x=1 x>1 x<1&x>0 x>=0&x<=100 x>=0 0 0 0 01. Feb 0.8 0. 0. FrqDepValid FrqDepValid x=0|x=1 x>=1&x<=3 x=0|x=1 0 0 0 Unit s s % % (*x)='Y'|(*x)='D Range x>=0 x>=0 x>=0 Default 0. 0.1 200. 100. '

D.8

Line Type (TypLne)

Type used to define transmission lines/cables (ElmLne), whose line impedances have been already calculated (no electromagnetic coupling between conductors is calculated in this type). Input parameters

D - 17

DIgSILENT PowerFactory

Types Reference

Table D.8 shows the input parameters for the TypLne object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The description of the line type model, presenting the relations among the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Element edit dialogue, by placing the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Table D.8: TypLne Parameters


Name Description Unit Range _NameValid Default

loc_name root_id fold_id charact chr_name for_name dat_src nlnph uline sline slin1 slin2 lodln picln pitln twcln twtln rline xline rlin1 xlin1

Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Phases Rated Voltage Rated Current Rated Current (1.) Load Current (*In) Type of Load Ratio Ip/In Maximum Time Ratio It/In Maximum Time Resistance R Reactance X Loop Resistance (sev) Loop Reactance (sev)
p.u. s p.u. s 'Ohm/km 'Ohm/km Ohm/km Ohm/km kV kA kA *In

_ForKeyValid

x>=1&x<=3 x>=0 x>=0 x>=0 x>=0

0 0. 1. 0. 0.

0. 0. 0. 0. x>=0 0. 0. x>=0 x>=0 0. 0.

D - 18

DIgSILENT PowerFactory

Types Reference

Table D.8: TypLne Parameters


Name Description Unit degC 'uS/km 'mH/km 'uF/km 'uS/km x>=0 Range x>0 Default 80. 0. 0. 0. 0. 0. _FrqDepValid _FrqDepValid _FrqDepValid 'Ohm/km 'Ohm/km 'mH/km 'uS/km 'uF/km 'uS/km x>=0 x>=0 x>=0 0. 0. 0. 0. 0. 0. 0. A/km 0.

rtemp bline lline cline gline tline fdlinr fdlinl fdlinc rline0 xline0 lline0 bline0 cline0 gline0 tline0 Ices miso mlei qurs bett crosect systp aohl_ InomAir Ithr rtheta

Max. End Temperature Susceptance B Inductance L Capacitance C Conductance G Ins. Factor Resistance R=R(freq) [A-Z] Reactance L=L(freq) [A-Z] Capacitance C=C(freq) [AZ] Resistance R0 Reactance X0 Inductance L0 Susceptance B0 Capacitance C0 Conductance G0 Ins. Factor Earth-Fault Current Insulation Material Conductor Material Nominal Cross Section Operating Temp. Cross Section System Type Cable / OHL Rated Current (in air) Rated Short-Time (1s) Current (Conductor) Resistance R'(theta)

mm*2 degC

0. 0.

x=0|x=1 _AohlValid kA kA Ohm/km x>=0 x>=0 x>=0

1. 0. 0.

D - 19

DIgSILENT PowerFactory

Types Reference

Table D.8: TypLne Parameters


Name Description Unit degC Range x!=20 Default 0.

theta manuf doc_id desc frnom fcharL1 fcharR1 fcharC1 fcharL0 fcharR0 fcharC0 pStoch cabdiam ncond iopt_cnd iopt_ord cmeth iopt_dir lcost nneutral rnline xnline bnline rpnline xpnline bpnline

Temperature theta Manufacturer Additional Data Description Nominal Frequency L1'(f) R1'(f) C1'(f) L0'(f) R0'(f) C0'(f) Stochastic model Outer Diameter No. of Conductors Cable is Conductors Installation Method (IEC 364) Arrangement Line Cost No. of Neutrals Resistance Rn Reactance Xn Susceptance Bn Resistance Rpn Reactance Xpn Susceptance Bpn

Hz

x>=0

50.

mm

0. 3.

$/km

x>=0 x=0|x=1

0. 0 0. 0. 0. 0. 0. 0.

'Ohm/km 'Ohm/km 'uS/km 'Ohm/km 'Ohm/km 'uS/km

x>=0 x>=0 x>=0 x>=0 x>=0 x>=0

D - 20

DIgSILENT PowerFactory

Types Reference

D.9

Rectifier Type (TypRec)

Type used to define a 6 pulse bridge rectifier/inverter elements (ElmRecmono and ElmRec). Input parameters Table D.9 shows the input parameters for the TypRec object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The description of the rectifier model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.
Table D.9:TypRec Parameters
DisplayNam e Description Unit Range _NameValid Default

Note: The name of the parameter is displayed in the Element edit dialogue, by placing

loc_name root_id fold_id charact chr_name for_name dat_src manuf doc_id desc Unom Pnom Rthy alphamin alphamax

Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Manufacturer Additional Data Description Rated AC Voltage Rated Active Power Thyristor-Resistance (at On) Minimum Firing Angle Maximum Firing Angle
kV MW Ohm deg deg

_ForKeyValid

x>0 x>0 x>0

1. 1. 0.0001 0. 180.

D - 21

DIgSILENT PowerFactory

Types Reference

Table D.9:TypRec Parameters


DisplayNam e Description Unit deg deg kA kV p.u. p.u. x>0 x>0 x>0.5|x<1.5 x>0.5|x<1.5 x=0|x=1 S S uF x>=0 x>=0 x>0 x=0|x=1 deg x>0 Range Default 0. 180. 1. 1. 0.9 01. Jan 0 0. 0. 0.1 0 15. 1.

gammamin gammamax Imax Unomdc tapmin tapmax i_diode Goff Gs Cs i_trf alphanom tapnom

Minimum Extinction Angle Maximum Extinction Angle Rated DC-Current Rated DC-Voltage (DC) Minimum Turns-Ratio Maximum Turns-Ratio Diode-/Thyristor Converter Thyristor-Conductance (at Off) Snubber-Conductance Snubber-Capacity Built-In Transformer Nominal Firing Angle Nominal Turns-Ratio (t2/t1)

D.10

Synchronous Machine Type (TypSym)

Type used to define synchronous machine elements (ElmSym)

Input parameters Table D.10 shows the input parameters for the TypSym object. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The description of the synchronous machine model, presenting the relations among the input parameters is given in the attached Technical Reference Paper.

the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue.

Note: The name of the parameter is displayed in the Element edit dialogue, by placing

D - 22

DIgSILENT PowerFactory

Types Reference

Table D.10: TypSym Parameters


Name Description Unit Range _NameValid Default

loc_name root_id fold_id charact chr_name for_name dat_src sgn ugn cosn tag tds tqs tdss tqss xd xds xdss xq xqs xqss xdsat xdsss xtor rstr xpot sg10

Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Nominal Apparent Power Nominal Voltage Power Factor Acceleration Time Const. (rated to Pgn) Td Tq Td Tq xd xd xd xq xq xq short-circuit ratio saturated value xd''sat Ratio X/R rstr Potier reactance 1.0
p.u. p.u. p.u. s 's 's ''s ''s p.u. 'p.u. ''p.u. p.u. 'p.u. ''p.u. p.u. p.u. MVA kV

_ForKeyValid

x>0 x>0 x>0&x<=1 x>0 x>0 x>=0 x>0 x>0 x>0 x>0 x>0 x>0 x>=0 x>0 x>=0 x>0 x>=0

1. 6. 0.8 10. 1. 1. 0.05 0.05 2. 0.3 0.2 2. 0.3 0.2 01. Feb 0.2 10000000. 0.

x>=0 x>=0

0. 0.

D - 23

DIgSILENT PowerFactory

Types Reference

Table D.10: TypSym Parameters


Name Description Unit p.u. p.u. p.u. p.u. p.u. Range x>=0 x>0 x>=0 x>=0 x>=0 x=0|x=1 x=0|x=1 x>=0&x<=3 _FrqDepValid _FrqDepValid Default 0. 0.2 0. 0.1 0. 0 0 0

sg12 x2sy r2sy x0sy r0sy iamort iusesat satur fdsymr fdsyml bname q_min q_max Q_min Q_max iturbo isat iuseXdk curk curk1p curk2p nslty tags h tds0 tqs0 tdss0

01. Feb Reactance x2 Resistance r2 Reactance x0 Resistance r0 with amortisseur windings Use saturated value Machine Type IEC909 Resistance R=R(freq) [A-Z] Reactance L=L(freq) [A-Z] bus name (only for compatib.) Minimum Value Maximum Value Minimum Value Maximum Value Rotor Type Main Flux Saturation Ik instead of Reactances 3-Phase Ik3p 1-Phase Ik1p 2-Phase Ik2p Connection Acceleration Time Const. (rated to Sgn) Inertia Time Constant (rated to Sgn) H Td0 Tq0 Td0

p.u. p.u. Mvar Mvar x=0|x=1 x=0|x=1 x=0|x=1 kA kA kA x>=0 x>=0 x>=0 x>=0&x<=2 s s 's 's ''s x>0 x>0 x>0 x>=0 x>0

-1. 1. -1. 1. 0 0 0 0. 0. 0. 0 8. 4. 666.667 666.667 0.075

D - 24

DIgSILENT PowerFactory

Types Reference

Table D.10: TypSym Parameters


Name Description Unit ''s ''p.u. Range x>0 x>0 x=0|x=1 Default 0.075 0.2 0

tqss0 lss i_trans fcharrstr fcharlss i_v12 xl xrl kcanay manuf doc_id desc dpu hpn

Tq0 l Consider Transient Parameter rs(f) l''(f) Model xl xrl Canay Factor Manufacturer Additional Data Description Mechanical Damping Inertia Time Constant (rated to Pgn) H

x=0|x=1 p.u. p.u. p.u. x>=0 x>=0 x>=0

0 0.1 0. 0.

p.u. s

x>=0 x>=0

0. 5.

D.11

Tower Types (TypTow/TypGeo)

Both types are used to define the tower structure of a transmission line. If TypTow or TypGeo are referred in an ElmLne, the coupling impedances of the line are calculated according to the given geometrical distribution of the conductors. The tower types require a reference to conductors types (TypCon). Input parameters Tables D.11 and D.12 show the input parameters for the TypTow and TypGeo objects. Parameters are presented in the same order of the element dialogue (starting from the 'Basic Data' tab). The description of the tower models, presenting the relations among the input parameters is given in the attached Technical Reference Paper. Note: The name of the parameter is displayed in the Element edit dialogue, by placing

D - 25

DIgSILENT PowerFactory

Types Reference

the cursor in the input field of the parameter. Certain parameters are relevant to more than one calculation, therefore they can be found and edited in different tabs. The availability of some parameters is conditioned to the current value of the selection parameters (iopt_...); therefore not all the listed parameters would be visualized at once in a dialogue
Table D.11: TypTow Parameters
Name Description Unit Range _NameValid Default

loc_name root_id fold_id charact chr_name for_name dat_src nlcir nlear gearth rearth ktrto nphas pcond_e pcond_c xy_e xy_c ktrto_c1 ktrto_c2 ktrto_c3 ktrto_c4 ktrto_c5 ktrto_c6 nphas_1

Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Number of Line Circuits Number of Earth Wires Earth Conductivity Earth Resistivity Transposition Num. of Phases Conductor Types Conductor Types Coordinate of Earth Conductors Coordinate of Line Circuits t t t t t t
TypCon TypCon m m uS/cm Ohmm

_ForKeyValid

x>=1 x>=0 x>0 x>0

0 0 100. 100.

x=0|x=1 x=0|x=1 x=0|x=1 x=0|x=1 x=0|x=1 x=0|x=1 x=1|x=2|x=3

0 0 0 0 0 0 0

D - 26

DIgSILENT PowerFactory

Types Reference

Table D.11: TypTow Parameters


Name Description Unit Range x=1|x=2|x=3 x=1|x=2|x=3 x=1|x=2|x=3 x=1|x=2|x=3 x=1|x=2|x=3 Default 0 0 0 0 0

nphas_2 nphas_3 nphas_4 nphas_5 nphas_6 cond_e1 cond_e2 cond_c1 cond_c2 cond_c3 cond_c4 cond_c5 cond_c6 xy_e1 xy_e2 xy_c1 xy_c2 xy_c3 xy_c4 xy_c5 xy_c6 R_c X_c R_c0 X_c0 R_c1 1 2 1 2 3 4 5 6 1 2 1 2 3 4 5 6 Matrix of Resistances R_ij Matrix of Reactances X_ij Matrix of 0-SequenceResistances R_ij_0 Matrix of 0-SequenceReactances X_ij_0 Matrix of 1-SequenceResistances R_ij_1
m m m m m m m m Ohm/km Ohm/km Ohm/km Ohm/km Ohm/km

0. 0. 0. 0. 0. 0. 0. 0.

D - 27

DIgSILENT PowerFactory

Types Reference

Table D.11: TypTow Parameters


Name Description Unit Ohm/km Hz H/km H/km H/km uS/km uS/km uS/km uS/km uS/km uS/km uF/km uF/km uF/km kA x>=0 x=0|x=1 x=0|x=1 1. 0 0 50. Range Default

X_c1 frnom L_c L_c0 L_c1 G_c B_c G_c0 B_c0 G_c1 B_c1 C_c C_c0 C_c1 sline systp i_mode manuf doc_id desc pStoch

Matrix of 1-SequenceReactances X_ij_1 Nominal Frequency Matrix of Inductances L_ij Matrix of 0-SequenceInductances L_ij_0 Matrix of 1-SequenceInductances L_ij_1 Matrix of Conductances G_ij Matrix of Susceptances B_ij Matrix of 0-SequenceConductances G_ij_0 Matrix of 0-SequenceSusceptances B_ij_0 Matrix of 1-SequenceConductances G_ij_1 Matrix of 1-SequenceSusceptances B_ij_1 Matrix of Capacitances C_ij Matrix of 0-SequenceCapacitances C_ij_0 Matrix of 1-SequenceCapacitances C_ij_1 Nominal Current System Type Input Mode Manufacturer Additional Data Description Stochastic model

D - 28

DIgSILENT PowerFactory

Types Reference

Table D.12: TypGeo Parameters


Name Description Unit Range _NameValid Default

loc_name root_id fold_id charact chr_name for_name dat_src xy_e xy_c manuf doc_id desc

Name Original Location In Folder Charact. Characteristic Name Foreign Key Data source Coordinates Earth Wires Coordinates Phase Circuits Manufacturer Additional Data Description
m m

_ForKeyValid

D - 29

DIgSILENT PowerFactory

Types Reference

D - 30

DIgSILENT PowerFactory

Reference to the use of Symbols in PowerFactory

Appendix E Reference to the use of Symbols in PowerFactory

The symbols used in the graphic windows of PowerFactory are defined by the so called 'Symbol' objects (IntSym). DIgSILENT provides a complete set of symbols to represent any of the defined network components; additionally the users have the possibility to define their own symbols and use them in the graphical windows of their projects. In the proceeding sections the variables used to define symbol objects are presented.

E.1

The Symbol General Definitions

The general definitions of the symbols are given in the 'General' page of the object's dialogue. Symbol Description The description of a symbol is shown in the list of symbols when "Show Layer..." is used and a symbol has to be selected on the page "Configuration" Object Type Class name of the element which shall be represented.

Type of Representation Branch or node object ID The icon ID of the icons from the graphic toolbar. If this value is set the symbol will be used when a new element is inserted. In case of '0' the symbol will not be used as default. The width and height is defines the range of the fang. The marking of an element in the graphic makes this range visible. Visibility of the symbol Defines if the symbol can be mirror (right mouse button entry)

Width/Height

Visible Mirror

E-1

DIgSILENT PowerFactory

Reference to the use of Symbols in PowerFactory

Allow Moving

Allows moving in graphic

Show Connection Attributes Shows the square (resulting state of composite switches) at the end of connection lines Insertion Reference Defines the insertion point of an element (e.g. rectangular terminal = 4 -> top left).The following matrix describes the relation between the insertion points and the insertion numbers: 432 501 678 Additional Attributes Only used for elements whose representation shall be able to alter via specific changes of the element parameters (e.g. shunts, couplers) Connection Points Defines the position on the symbol where the connection lines start. The number of connection points is defined by the number of lines unequal (-9999,-9999). The points should be located on the grid, i.e. they should be a multiple of 4.375 (mm) Contents Containing objects of type "SetVitxt" defining the layout of the text boxes. The names must be unique. Labels beginning with "Label..." and result boxes beginning with "Res...". The name of symbol must also be part of the name of the SetVitxt.

E.2

Geometrical Description

The geometrical description of the symbol is given in the 'Geometry' page of the dialogue. The geometry can be specified by means of geometrical primitives in the 'Geometrical Components and Attributes' field or can be defined using an external bit map or WMF file.

E.2.1

Geometrical Primitives

Circle (C,iStyle,rWidth,iFill,iColor,iRsz,nPts,rMx,rMy,rPx,rPy) Defines a Circle by the center (rMx, rMy) and a point on the edge (rPx,rPy). Parameter nPts must be 2. Arc (A,iStyle,rWidth,iFill,iColor,iRsz,nPts,rMx,rMy,rPx1,rPy1,rPx2,rPy2) Defines an arc by the center (rMx,rMy) and 2 points (rPx1,rPy1) (rPx2,rPy2) on the edge, drawn clockwise. nPts must be set to 3.

E-2

DIgSILENT PowerFactory

Reference to the use of Symbols in PowerFactory

Polyline (L, iStyle,rWidth,iFill,iColor,iRsz,iRot,nPts,rPx,rPy) Defines an open polygonal line with nPts points. rPx andrPy are the coordinates of peg points. iRot can be defined as: n -> random y -> only rotatable to the bottom and the right (used in symbols) Polygon (G, iStyle,rWidth,iFill,iColor,iRsz,nPts {,rPx,rPy}) Defines a closed polygonal line with nPts points. rPx and rPy are coordinates of peg points Text (T, iColor,iRsz,iFont,iAlign,rHeight,iOri,iRot,sString,rPx,rPy) Defines a text with the following attributes: iFont iAlign rHeight iOri iRot sString rPx,rPy iRsz font number ( > 0) insertion point (0 = left top, 2 = center) height ( > 0 ) orientation ( 0 = horizontal , 1 = vertical ) rotate text with object ( 0 = no, 1 = yes, 2 = vert./horiz.,3 = only to the bottom and right, -- used in symbols only --) text (max. 80 characters) coordinates of insertion point resize_Mode (0=not possible, 1=shift only, 2=keep ratio,3=any (RS_NONE,RS_SHIFTONLY,RS_KEEPXY, RS_FREE)

All geometrical elements have the following attributes in common: iStyle (Line style) 1= 2= 3= 4= iFill (Fill style) normal line dotted dashed dotted and dashed

rWidth (Line widht in mm ( > 0)) 0 1 2 3 4 5 6 7 8 9 = = = = = = = = = = not filled filled 100% horiz. stripes vertical stripes horizontal and vertical stripes diagonal from left bottom to right top diagonal from right bottom to left top diagonal grid of stripes filled 25% filled 50%10 = filled 75%

iColor (Colour)

-1 = colour of object
E-3

DIgSILENT PowerFactory

Reference to the use of Symbols in PowerFactory

0 = white 1 = black 2 = bright red 3 = bright blue 4 = bright green 5 = yellow 6 = cyan 7 = magenta 8 = dark grey 9 = grey 10 = red 11 = dark rot 12 = dark green 13 = green 14 = dark blue 15 = blue 16 = white 17 = bright grey iRsz (Resize mode) 0 = not resizable 1 = shift only 2 = keep ratio 3 = resizable in any direction In version 13.0 additional parameters were added: iSB No. of area (1..32, can only be used if set in source code, e.g. vector groups No. of graphic layer Connection number (0..4) Object is used for calculation of intersections (=1 only for node objects) Offset used when object is inserted (optional)

iLay iSN iIP xOff, yOff

E.2.2

Showing self defined pictures in symbols

WMF and bitmaps can be selected as "Symbol File". The definitions of the geometrical primitives are not used if a "Symbol File" is defined.The picture will be adapted to the size of symbol in the single line diagram.After selection of a WMF file in the top entry field for the Symbol File (not rotated) a button "Create all other files" appears which allows to cre-

E-4

DIgSILENT PowerFactory

Reference to the use of Symbols in PowerFactory

ate automatically WMF files in the same folder with a rotation of 90, 180 and 270 degrees. Additionally pictures for open devices with the same angles can be entered in the bottom lines.

E-5

DIgSILENT PowerFactory

Reference to the use of Symbols in PowerFactory

E-6

DIgSILENT PowerFactory

Interfaces with Other Programs

Appendix F Interfaces with Other Programs

F.1

DGS Interface

With its DGS interface DIgSILENT PowerFactory offers sophisticated data import and export possibilities for the use of other programs and for dynamic data exchange. For example the DGS interface can be used for the conversion of system data from SCADA (Supervisory Control And Data Acquisition) and GIS (Graphical Information System). The dialogue of this interface is opened by selecting Import... -> DGS Format... or Export... > DGS Format... resp. in the main File menu. DGS files can be either in ASCII format, in Access format, or in Excel format. The GIS conversion uses millimeter units with respect to the bottom-left origin and a limit up A0 paper format (1188 x 840 mm). It could therefore be necessary to transform the GIS coordinates before creation of the ".DGS'' file. For more detailed information, please contact the DIgSILENT Support team.

F.2

Converting PSS/E Files

The import function for PSS/E files is an integrated command of PowerFactory . It supports versions of PSS/E from 23 to 29 and can be found in the main menu under File > Import... > PSS/E . Both import of PSS/E files as a PowerFactory project and export of PowerFactory -projects as PSS/E files are supported. To export a project in PSS/E format select File > Export... > PSS/E from the main menu.

F.2.1

Importing PSS/E Steady-State Data

PowerFactory is able to convert both steady-state data (for load-flow and short-circuit

analyses) and dynamic data files. It is good practise to first import the steady-state data (described in this section), then to add the dynamic models (described in Section F.2.2 (Import of PSS/E file (Dynamic Data)).

Before starting the next steps for importing a PSS/E file, all projects should be deactivated. Then please select from the main menu File -> Import... -> PSS/E. Afterwards the window of the import command will pop-up, asking the user to specify various options.

F-1

DIgSILENT PowerFactory

Interfaces with Other Programs

General Settings Tab Page

Fig. F.1:

PSS/E Import - General Settings

Nominal Frequency Nominal frequency of the file to be Converted/Imported. PSS/E Raw data Location on the hard disk of the PSS/E raw data file. By default the program searches for *.raw extensions. The user may consider all types of files by typing *.*. Add Graphic Files Location of the PSS/E drw files on the file system. Again by default the programs searches for files with extension *.drw. The user may consider all types of files by typing *.*.

Note

After the Conversion/Importing has finished, the resulting project will contain a graphics folder where all of the PSS/E drw converted graphics will be stored. The user must therefore relocate each one of them to the corresponding grids.

Save converted data in: Project in Sequence Data The project name that will be assigned to the converted/imported file. Location in the data manager tree where the imported file will be stored. Location of the PSS/E sequence data file. By default the program

F-2

DIgSILENT PowerFactory

Interfaces with Other Programs

searches for *.seq extensions. The user may consider all types of files by typing *.*. The following topics Dyn Models Data Parameter Mapping Composite Frame Path DSL - Model Path are not used for the import of steady-state data and will be explained in the dynamic import Section F.2.2.

Import Options Tab Page

Fig. F.2:

PSS/E Import - Options

Convert only sequence data file With this option enabled, the converter will only add the sequence data to an existing project. Convert only dynamic models file With this option enabled, the converter will only add the dynamic data file to an existing project (only for dynamic data import). Convert only graphic file With this option enabled, the converter will add only a single-line diagram to an existing project. Only convert file (no DB action) Internal option used for syntax check and error messages during conversion. Normally this box should be left unchecked.
F-3

DIgSILENT PowerFactory

Interfaces with Other Programs

Output only used dynamic models Displays a list of used dynamic models (only for dynamic data import). Unit of 'LEN' for lines in miles instead of km With this option enabled, all lengths will be interpreted in miles in the PSS/E raw files. Consider transformer phase shift With this option enabled, transformer phase shifts will be considered. This option is recommended and activated by default. Convert Induction Machines (P<0) With this option enabled, all generators in the raw data file that have negative active power will be converted to asynchronous machines. For transmission grids the option should be disabled for proper modeling of phase shift generators. Automatic 3-W. Transformer detection/conversion The older versions of PSS/E do not know 3-winding transformers. Therefore the converter will try to detect the existence of three 2Winding Transformers connected to a busbar. If any candidates are available, PowerFactory will replace them by a 3-Winding Transformer. The detection is using the impedances and the voltage control of the transformers. Convert capacitive line shunts to line susceptance B' If a line has line shunts the converter adds automatically the line shunt capacitance to the C1' (B1') in the PowerFactory line type. Convert Common Impedance as Transformer The Common Impedance in PSS/E may be converted to a PowerFactory common impedance or to a transformer. This is selected here. Convert Series Capacitance as Common Impedance Older versions of PSS/E do not know series capacitances as a dedicated model. These elements therefore are represented by lines with negative reactances. During the conversion PowerFactory detects these branches and converts them to series capacitances (by default) or to common impedances (when this option is active). Convert off-nominal turn ratio to transformer tap Transformer ratios different from the rated ratio are automatically converted to a transformer type using taps, including the correct tap position. Busbar naming: 'PSSE_NAME' With this option enabled, the busbars are named similar to the PSS/E raw data file (without bus number). Branch naming: 'BUSNAME1_BUSNAME2_ID' With this option enabled, the branches are named as the name of the busbars + ID.

F-4

DIgSILENT PowerFactory

Interfaces with Other Programs

Import Graphical Options Tab Page

Fig. F.3:

PSS/E Import - Graphical Options

Rotate with respect to busbar The converter will rotate the graphical layout in case of the majority of busbars being in vertical or horizontal position. Snap coordinates to grid The converter will snap to grid all objects in the single line graphics. Transformer Symbol according to IEC This options lets the user to choose the transformer symbol as IEEE (default) or IEC representation. Scaling factor The graphic files are scaled according to the scaling factor shown.

F.2.2

Import of PSS/E file (Dynamic Data)

As explained in Section F.2.1 it is good practise first to import the steady-state data and then to add the dynamic model data. Before converting dynamic data, it is recommended to copy the IEEE library folder located in the global library into the user directory. The IEEE dynamic data library folder can be found under Library\Models\IEEE . This folder has the structure as shown in Figure F.4.

F-5

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.4:

IEEE Library

The following subdirectories are of importance in the conversion/importing. Frames Macros This folder contains the composite frames which are basically wired diagrams. All models are described in the DIgSILENT simulation language DSL. These DSL models may use functional primitives, the so-called DSL macros. The standard macros are stored in this folder. This folder contains the models for most typical models, e.g. automatic voltage regulators (AVRs), power system stabilizers (PSS), primary controllers (PCO) and others. The models are described in DIgSILENT Simulation Language (DSL). The folders also may contain user-defined models.

Models

An important condition for successful file conversion is that all DSL models used during the conversion process should be stored in the same model library folder. By default, this is the case in the global PowerFactory library. If the original library should use specific folders for the different types of controllers (AVR,PCO,PSS,..), the user should copy all of the models into the same library folder. After the conversion, the user may re-arrange the models. The procedure to start the import of dynamic network data is very similar to the import of steady-state data. Some parameter adjustments have to be made.

General Settings Tab Page - Dynamic Model Import


In the dialogue of General Settings in Figure F.1 the following topics have to be specified: Dyn Models Data Location of the PSS/E Dynamic Models data file. By default the program
F-6

DIgSILENT PowerFactory

Interfaces with Other Programs

searches for *.dyn and *dyr extensions. The user may consider all types of files by typing *.*. Parameter Mapping Location of the PowerFactory mapping file. This is an option that normally will not have to be touched by the user. By default PowerFactory will automatically set up its own internal mapping file. This file defines how to translate the PSS/E internal models into PowerFactory models, including the mapping of controller parameters. For automated conversion of user-defined PSS/E controllers the mapping file may be customized. Please contact our support if you wish to do so. Composite Frame Path Location in the PowerFactory data base where the composite frames are stored (IEEE/Frames...). DSL - Model Path Location in the PowerFactory data base where the DSL models are stored (IEEE/Models....).

Import Options Tab Page - Dynamic Model Import


In the dialogue of Import Options in Figure F.1 the following options should be considered: Convert only dynamic models file With this option enabled, the converter will only add the dynamic data file to an existing project. Output only used dynamic models Displays a list of used dynamic models.

F.2.3

Exporting a project to a PSS/E file

This function allows the export of the network model in PSS/E format. The export comprises both steady-state and dynamic data sets. The correct conversion of dynamic models is only possible for the standard IEEE models. Models which the user implemented in PowerFactory DSL can not automatically be translated but must be modeled as userdefined controller types separately in PSS/E. To export a project in PSS/E format select File > Export... > PSS/E from the main menu.

F-7

DIgSILENT PowerFactory

Interfaces with Other Programs

Export General Settings Tab Page

Fig. F.5:

PSS/E Export - General settings

RAW Conversion File Path and file name for the PSS/E RAW file, containing the symmetrical description of the model. SEQ Conversion File Path and file name for the PSS/E SEQ file, containing the additional description of the model necessary for unbalanced conditions. DYN Conversion File Path and file name for the PSS/E DYN file, containing the dynamic models of the project.

Export Options Tab Page

Fig. F.6:

PSS/E Export - Options

Convert Motors to Generators if P<0 With this option enabled, all asynchronous machines in generator mode will be converted to synchronous machines.

F-8

DIgSILENT PowerFactory

Interfaces with Other Programs

Base Apparent Power Base for the power values given in per-unit system. Min (Zero) Impedance Branch Minimum impedance for ideal connections. PSS/E Version Version of PSS/E target files.

The section of developers' options contains additional options used for debugging. Please use these options only when requested to do so by the PowerFactory support. Extra PrecisionActivates the output of values in extended precision.

F.3

StationWare Interface

This chapter describes the StationWare interface. An introduction into StationWares general philosophy is given in Section F.3.1. The following two sections describe the overall StationWare architecture (Section F.3.2) and the conceptual differences between PowerFactory and StationWare (Section F.3.3). Both PowerFactory and StationWare have to be configured before they can be used together (Section F.3.4). The Getting Started section (Section F.3.5) provides a gentle introduction into the most important features. The complete documentation can be found in the Reference section (Section F.3.6). The final Technical Reference (Section F.3.7) provides some deeper knowledge how PowerFactory data is converted to StationWare data and vice versa. The terms StationWare and PSMS are used as synonyms throughout the whole chapter. PSMS stands for Protection Settings Management System, and stresses the more internal and technical part of StationWare.

F.3.1

About StationWare

DIgSILENT StationWare provides a reliable central protection settings database and management system for the complete power system substation data, both to manage the various control parameters and to centrally store substation related information and data, based on latest .NET technology.

StationWare stores and records all settings in a central database, allows modeling of all

relevant work flow sequences, provides quick access to relay manuals, interfaces with manufacturer specific relay settings software, and integrates with PowerFactory software, allowing for powerful and easy-to-use settings co-ordination studies. Modern numerical relays have a large number of settings that are determined, stored and communicated by proprietary software solutions (these may even be suitable for only a particular manufacturer or even a series or type of relay). This results in a fragmented and distributed settings database. DIgSILENT StationWare provides a single system that incorporates all such different device protocols, thereby providing one manageable software data storage system, based on modern IT techniques, facilitating data interfacing and exchange in a transparent and hassle free manner.
F-9

DIgSILENT PowerFactory

Interfaces with Other Programs

PowerFactorys data exchange facility allows it to access the settings stored inStationWare, such that these may be used as input for the powerful PowerFactory system simulation and protection setting tools. Settings that are calculated by using these tools may then be transferred back to StationWare.

F.3.2

Component Architecture

DIgSILENT StationWare is a so-called Client-Server Application: the functionality is distributed on at least two computers: client and server. Figure F.7 gives an overview on the components.

Client 1

Client 2

Web Browser

Power Factory

HTML/HTTP

SOAP/HTTP

HTML Front End

Web Service Front End

StationWare Kernel

StationWare Server

Fig. F.7:

Architecture overview

Usually there are several clients. One main advantage of this architecture is the fact that the data is stored in one central database on the server. One client connects to the server and fetches the data from there, modifies them, and afterward stores them back to the server. On other clients these changes are visible. DIgSILENT StationWare server provides two interfaces to access from client machines: Visualization by means of a standard web browser. The HTML interface can be used with an usual web browser (e.g. Microsoft Internet Explorer or Mozilla Firefox) as shown in Figure F.8. The browser displays HTML pages which are created by StationWares HTML front end. The HTML pages are transferred using the HTTP protocol on top of the TCP/IP internet protocol. HTML allows to present all kind of data e.g. plain text, tables or images. Additionally HTML provides concepts to achieve interactivity: by submitting HTML

F - 10

DIgSILENT PowerFactory

Interfaces with Other Programs

forms or pressing on hyperlinks data is sent to the server. The server interpretssuch requests and creates new HTML pages which are displayed by the browser again. The web service interface, similar to the HTML interface uses the HTTP protocol to communicate with the web service frontend, though no HTML pages are transferred but lower-level data (SOAP/XML encoded). The web service client application is responsible to present this data conveniently. PowerFactory is able to play the role of a web service client. It integrates parts of StationWares data and concepts smoothly into its own world. The functionality of the HTML interface is covered in the StationWare manual. The remainder of this chapter focuses on PowerFactory as client.

Fig. F.8:

HTML interface

F.3.3

Fundamental Concepts

Though both in StationWare and in PowerFactory the settings and data associated with protective devices, such as relays, CTs, VTs and circuit breakers are stored, the systems provide a different set of concepts how to deal with this data. In StationWare it is possible to model a location hierarchy and associate the devices to nodes in this hierarchy (e.g. substations). This has no equivalent on the PowerFactory side where the devices are stored inside the parent grid (ElmNet) object. On the other side PowerFactory allows to create a topological representation of
F - 11

DIgSILENT PowerFactory

Interfaces with Other Programs

networks which is not supported in StationWare. This section describes the concept mismatch between PowerFactory and StationWare. In order to use the StationWare interface its important to know about the differences between both applications.

Location
In StationWare each device belongs to exactly one location. There are different location types e.g. Region, Area, Substation, or Bay. The locations are organized in a hierarchy tree as shown in Figure F.9.

Fig. F.9:

StationWare locations

In PowerFactory the data is organized in projects (IntPrj). A project may have one or more grids (ElmNet) which in turn contain net elements e.g. terminals, cubicles, and relays (ElmRelay). See Figure F.10 for a typical PowerFactory project.

F - 12

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.10:

PowerFactory project

StationWares location concept and PowerFactorys pr oject/grid concept hardly fit together. Thats the reason why the data mapping between PowerFactory and StationWare begins at the device level which is the subject of the next sections.

Device
StationWare manages a set of devices e.g. relays, CTs, VTs, or Circuit breakers. Each device is associated to a device type e.g. ABB DPU2000R or SEL421 003. Additionally each device has an unique ID: the device ID.
In PowerFactory a relay is represented by an ElmRelay object which references exactly one TypRelay object. The ElmRelay object contains several sub-components e.g. the I> component (a RelToc object), the Logic component (RelLogic), or the Ios component (RelMeasure). See Figure F.11 for an example. The device ID is used to link one StationWare device to one PowerFactory device. The PowerFactory device e.g. an ElmRelay object stores the StationWare device ID as foreign key.

F - 13

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.11:

PowerFactory relay

Device State
A devices state is in StationWare called setting. A setting is a list of attributes, and describes the state of one device completely. An attribute is a tuple of attribute name, attribute type which can be an arbitrary integer or floating point number, optionally with a range restriction, or a string, or a enumeration type., a default value, an optional unit. A complex relay may have thousands of attributes. In StationWare the setting attributes are organized in so-called setting groups. A setting group groups the attributes together which belong somehow together. Its often defined by the device manufacturer. Each attribute belongs to exactly one setting group. Inside a group the attribute name is unique. The device type defines which attributes and groups characterize a device. Table F.1 shows an example of a possible device type. There are two setting groups G and H. Group G has the attributes a, b, and c, group H has the attributes d and e.

Group Name G a b c d e

Type integer in [0,10] float float in [0.03,1.65] string enum yes,no,maybe

Default 0 -0.32 1.0 DEFAULT yes

Unit A I/s

F - 14

DIgSILENT PowerFactory

Interfaces with Other Programs

Table F.1:

Settings Definition

According to this attribute definition a device can have settings as shown in tables F.2 or F.3.

Group, Name G,a G,b G,c H,d H,e Table F.2:

Value 7 23.43 1.1 abc maybe

Settings Example 1

Group, Name G,a G,b G,c H,d H,e Table F.3:

Value 8 0 1.1 abcdef yes

Settings Example 2

On the PowerFactory side there are neither setting nor group nor attribute. There is the ElmRelay object and its sub-objects. These objects can have parameters. See table F.4 for a definition and table F.5 for an example. The TypRelay type defines components and parameters. versa. How this actually is accomplished, is described in Section F.3.7 (Technical Reference). The mapping is non-trivial since only a small subset of the attributes (the calculation-relevant data) is modeled in PowerFactory and vice versa. Additionally there is no one-to-one relationship between attributes, and parameters and a parameter could get calculated out of several attributes. . Component i> Logic Ios Parameter o p q r s Type integer string enum enabled,disabled float float

StationWare attributes are somehow mapped to PowerFactory parameters and vice

Table F.4:

Parameter Definition
F - 15

DIgSILENT PowerFactory

Interfaces with Other Programs

Some relays support multiple setting groups (MSG) also called parameter sets. Such relays have the same group many times (c.f. table F.5). The groups H1, H 2, and H 3 have the same set of attributes (c and d). Some relay models in PowerFactory do not support this concept fully. Instead of modeling all MSGs, only one instance of the H groups is provided. In this case a group index parameter defines which of the MSGs actually is transferred from StationWare to PowerFactory.

Life Cycle Phase


In StationWare each setting has one life cycle phase e.g. Planning or Applied. At each point in time a device can have a set of settings e.g. three Planning settings, one Applied setting and 12 Historic settings.

Component Parameter i>:o Logic:p Logic:q Ios:r Ios:s Table F.5: . Group Name G H1 H2 H3 a b c d c d c d Type

Value 8 HIGH enabled 18.5 19.5

Parameter Example

Default 0 -0.32 DEFAULT 1.0 DEFAULT 1.0 DEFAULT 1.0

Unit A I/s

integer in [0,10] float string float in [0.03,1.65] string float in [0.03,1.65] string float in [0.03,1.65]

Table F.6:

Multiple Setting Group Definition

In PowerFactory a device has exactly one state (or setting). Therefore when data is transferred between PowerFactory and StationWare, always a concrete device setting in StationWare must be specified. For PowerFactory purposes a special PowerFactory planning phase is introduced. The transfer directions are specified as follows: Imports from StationWare into PowerFactory are restricted to Applied and PowerFactory settings. Applied denotes the current applied setting (Applied) or a previous applied (Historic) setting.
F - 16

DIgSILENT PowerFactory

Interfaces with Other Programs

Exports from PowerFactory to StationWare are restricted to the PowerFactory setting. (Applied and Historic settings are read-only and can never be changed). (Actually PowerFactorys sophisticated variant management is similar to the phase concept, but there is no obvious way how to bring them together.)

F.3.4

Configuration

In order to transfer data between PowerFactory and StationWare both systems must be configured.

StationWare Server
An arbitrary StationWare user account can be used for the StationWare interface in PowerFactory. The user must have enough access rights to perform operations e.g. for the export from PowerFactory to StationWare write-rights must be granted. The bi-directional transfer of settings is restricted to lifecycle phases with 1 2 status PLANNING or REVIEW and with a cardinality constraint of 1 i.e. there may exist one or no such setting for one device.

Please ensure that at least one phase fullfills these requirements, and there exists a setting of this phase.

PowerFactory Client
The client operating system must allow connections to the server (network and firewall settings etc.). Nothing has to be done in the PowerFactory configuration itself. The TypRelays in the Library must of course support StationWare/PowerFactory mapping.

F.3.5

Getting Started

This section is a simple walkthrough and covers the most essential StationWare interface functionality. By using a simple PowerFactory project and simple StationWare substation, it describes 1 2 3 4 how relays in StationWare and PowerFactory are created, how these relays are linked, how settings can be exported from PowerFactory to StationWare, how settings can be imported again into PowerFactory.

All (especially the more advanced) options and features are described in the reference section (see Section F.3.6 (Reference)).

Prepare substation in StationWare


We begin with the StationWare side. We create a substation and two relays within:  start the web browser,
F - 17

DIgSILENT PowerFactory

Interfaces with Other Programs

 log on to the StationWare system,  create a new substation titled Getting Started,  create two relays named Getting Started Relay 1 and Getting Started Relay 2 in the Getting Started substation In the HTML interface the station detail page should look as shown in Figure F.12.  Go to the detail page of the Getting Started Relay 1 (Figure F.13). Since we have just created the device it has no settings, yet. Later it will contain a PowerFactory setting which reflects the relay state on the PowerFactory side.

Fig. F.12:

Substation

Fig. F.13:
F - 18

Device

DIgSILENT PowerFactory

Interfaces with Other Programs

Prepare project in PowerFactory


Create a new PowerFactory project and create a simple grid within  start PowerFactory,  create a new project titled GettingStarted,  draw a simple grid with two terminals (ElmTerm) connected by a line (ElmLne) as shown in Figure F.14.

Fig. F.14:

Grid

Now add a relay to the upper terminal  right-click the cubicle quadrangle with the mouse. A context menu pops up.  select New Devices.../Relay Model... as shown in Figure F.15. A dialogue pops up that allows you to specify the settings of the new relay (ElmRelay).  insert Getting Started Relay 1 as Name  select an appropriate Relay Type which supports StationWare import/export (see Figure F.16).  press OK  in the same way add a relay Getting Started Relay 2 to the second terminal.

PowerFactorys object filter mechanism gives an overview over all devices inside the
current project.

F - 19

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.15:

Cubicle context menu (Edit Relevant Objects for calculation) in the toolbar and select (ElmRelay) to filter out all non-relay objects as shown in Figure F.17.

 Press the icon the icon

All calculation relevant relays (actually there only the two we created above) are displayed in a table (see Figure F.18).

Link Relays and establish a Connection


Now the PowerFactory relays must get linked to the StationWare relays.  mark both relay icons with the mouse,

 press the right mouse button. A context menu pops up as shown in Figure F.19.  select the StationWare menu item,  select the Select Device ID item. A Log on to StationWare server dialogue pops up. Since this is the first time PowerFactory connects to the StationWare server some connection settings must be entered.

F - 20

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.16:

Relay dialogue

Fig. F.17:

Relay object filter

 enter the Server Endpoint URL of the StationWare server. The URL should have a format similar to http://192.168.1.53/psmsws/psmsws.asmx  enter Username and Password of a valid StationWare user account.

F - 21

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.18:

Relay display

Fig. F.19:

Device context menu

Figure F.20 shows the dialogue settings.

Fig. F.20:  press OK.

Log on dialogue

The connection procedure may take some seconds. If the server could be accessed and
F - 22

DIgSILENT PowerFactory

Interfaces with Other Programs

the user could be authenticated a success message is printed into the output window DIgSI/info - Established connection to StationWare server http://192.168.1.53/psmsws/psmsws.asmx as userpf00002 Otherwise an error dialogue pops up. Correct the connection settings until the connection is successfully created. The reference section (Section 1.6.2) explains the connection options in detail. Having established a connection to the server, a browser dialogue pops up which displays the location hierarchy as known from the StationWare HTML interface. The dialogue is shown in Figure F.21.  navigate to the Getting Started substation,  select the Getting Started Relay 1 device,  press OK.

Fig. F.21:

Browser dialogue

Now the PowerFactory relay is connected to the StationWare device.  in the same way select Getting Started Relay 2 for the second PowerFactory relay.

Export and Import Settings


Having linked PowerFactory to StationWare devices, the transfer between both systems can be started.  mark the relays with the mouse and right-click to get the relay context menu as shown in Figure F.19.  select the Export... item in the StationWare menu entry. A ComStationware dialogue is shown which allows to specify the export options (c.f. Fig. 1.16). See Section (Export and Import Settings) in the Reference section for all export options.

F - 23

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.22:

ComStationware dialogue

 select PowerFactory as Life cycle Phase,  press Execute. After a few seconds the relay settings are transferred to the server, and the output window contains the message DIgSI/info - Exported 2 of 2 device settings successfully The result can now be observed in the StationWare HTML interface.

Fig. F.23:

Device detail page

 navigate to the relay detail view of the Getting Started Relay 1 relay (c.f. Fig. F.23)
F - 24

DIgSILENT PowerFactory

Interfaces with Other Programs

Observe the new created PF setting. The phase of this setting is PowerFactory.  switch to the settings detail page of the new PF setting (c.f.Fig. F.24).

Fig. F.24:

Setting detail page

The setting values should correspond to the relay state in PowerFactory. In the same way the Getting Started Relay 2 relay has a new PF setting. Now try the opposite direction and import a setting from StationWare into PowerFactory.  modify the PF settings in StationWare by entering some other values  in PowerFactory mark the relays with the mouse and right-click to get the relay context menu as shown in Figure F.19.  select the Import... item in the StationWare menu entry. Again the ComStationware dialogue (see Figure F.22) pops up as known from the export.  leave the default settings,  press Execute. Again the result of the settings transfer is reflected in the output window: DIgSI/info - Imported 2 of 2 device settings successfully  find ElmRelay object parameters changed according to the changes on the StationWare side All import options are described in detail in the reference section (Export and Import Settings).

F.3.6

Reference

This section describes all options and features concerning the StationWare interface.

F - 25

DIgSILENT PowerFactory

Interfaces with Other Programs

The Device Context Menu


Almost all functionality can be accessed by the device context menu. Mark one ore more objects which supports the StationWare transfer e.g. ElmRelay in the object filter (Figure F.19) in the data manager as shown in Figure F.25.

Fig. F.25:

Device context menu

The StationWare submenu contains the entries as follows: Import... opens the ComStationware dialogue and sets the device selection according to the above selected device objects. The ComStationware dialogue settings are explained in detail in section (The ComStationware Object). does the same for the export direction.

Export...

Select Device ID... starts the Browser dialogue (Figure F.29) to link this device to a StationWare device. The dialogue is subject of section (The Browser Dialogue). Reset Device ID resets the device ID. Connect... terminates the current StationWare session if its already existing. Shows a Log On dialogue. The connection settings are covered by Section 1.6.2. This may be useful when you are using several StationWare accounts and want to switch between them. terminates the StationWare session

Disconnect

F - 26

DIgSILENT PowerFactory

Interfaces with Other Programs

Connection
Similar to the HTML interface the StationWare interface in PowerFactory is sessionoriented: when a user logs on to the system by specifying a valid StationWare account (username and password) a new session is created. Only inside such a session StationWare can be used. The account privileges restrict the application functionality e.g. an administrator account is more powerful than a usual user account.

Fig. F.26:

Log on dialogue

Working with PowerFactory the first time the StationWare server is required the Logon dialogue is shown as shown in Figure F.26. The StationWare connection options are stored in the user settings (Figure F.27). After each successful logon the user settings are updated.

Fig. F.27:

User settings

As mentioned in the Architecture section (Section 1.2) StationWare is a client-server application. The StationWare server component is located on a server machine in the internet. The client component is the PowerFactory application which is running on a client machine. The technology PowerFactory and StationWare use to communicate is called web services and is standardized like many other internet technologies (HTML, HTTP). The server computer (or more exactly the StationWare service application on the server computer) has a name by which it can be accessed. This name is called service endpoint and resembles a web page URL: http://the.server.name/psmsws/psmsws.asmx or http://192.168.1.53/psmsws/psmsws.asmx http denotes the protocol, the.server.name is the computer name (or DNS) of the server computer and psmsws/psmsws.asmx is the name of the StationWare application. The connection options are as follows: Service Endpoint The Service Endpoint denotes the StationWare server name as described above
F - 27

DIgSILENT PowerFactory

Interfaces with Other Programs

Username/Password Username and Password have to be valid user account in StationWare. A StationWare user account has nothing to do with the PowerFactory user account. The very same StationWare account can be used by two different PowerFactory users. The privileges of the StationWare account actually restrict the functionality. For device import the user requires read-access rights. For exporting additionally write-access rights are required.

The Browser Dialogue


As mentioned in the Concept description (see Section (Device)) the StationWare device ID is stored as Foreign Key in the ElmRelay object dialogue (Description page) as shown in Figure F.28.

Fig. F.28:

ElmRelay dialogue

A more convenient way is to use the Browser dialogue shown in Figure F.29. The dialogue allows to browse through the StationWare location hierarchy and select a device. The hierarchy data is cached to minimize network accesses. Due this caching its possible that there may exist newly created locations or devices which are not displayed in the browser dialogue. The Refresh button empties the cache and enforces PowerFactory to refetch the correct data from the server.

The ComStationware Object


In PowerFactory almost everything is an object: relays are ElmRelay objects, users are IntUser objects, and grids are ElmNet objects. What may be on the first sight confusing is the fact that actions are objects as well: for a short-circuit calculation a ComShc object is created. The calculation can be performed with several options e.g. 3-Phase, single phase, or 3 Phase to Neutral.

F - 28

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.29:

Browser dialogue

You can even specify the fault location. All these calculation options are stored in the ComShc object. Every action object has an Execute button which starts the action. In fact there is a large number of parametrized actions like load flow calculation (ComLdf ), simulation (ComSim), there is even a ComExit object that shuts down PowerFactory. All objects which can do something have the Com prefix. Since the StationWare interface is actually doing something (it does import data, it does export data) it is implemented as a ComStationware object. The ComStationware object is used both for the import (Section 1.6.4.1) and the export (Section 1.6.4.2). It is located in the projects study case according to PowerFactory conventions. The actual Getting Started project (Section 1.5) is shown in Figure F.30. By default the study case of a new project contains no ComStationWare object. It is automatically created when it is first needed, as well as the ComShc object is instantiated at the time when the first short-circuit calculation is performed.

Import Options
The ComStationware dialogue provides import options as follows (Figure F.31): Transfer Mode select Import from StationWare as Transfer Mode

Check only Plausibility if the Check only Plausibility flag is enabled the import is only simulated but not really executed. Life cycle Phase/Time stamp A list of available life cycle phases is shown.

F - 29

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.30:

Project study case

Fig. F.31:

ComStationware import options

PowerFactory selects the current setting with PowerFactory phase as source setting. if Applied is selected the current Applied setting is transferred. If additionally a Timestamp value is entered the setting that was applied at this time is transferred which may either be Applied or Historic. The Timestamp format is in ISO format: e.g. 2005-02-28 22:27:16 The time part may be omitted. Then 00:00:00 AM is assumed. All Devices If All Devices is enabled, all calculation-relevant devices are imported. Devices not supported by StationWare are ignored.

Device Selection Unless All Devices is enabled, the Device Selection provides a more

F - 30

DIgSILENT PowerFactory

Interfaces with Other Programs

subtle way to specify which devices are to be transferred. The Device Selection parameter can be an ElmRelay object: this and only this relay is imported a SetSelect object: a SetSelect is a container that may hold several objects. All of them are transferred, except the ones not supported by StationWare a SetFilt object: the SetFilt is the most flexible way to specify the device selection e.g. you can select all devices in the project of type ElmRelay and whose name begin with PW.... Devices outside the activated project are ignored. The Device Selection is automatically set if the Device Context Menu mechanism (Section (The Device Context Menu)) is used. All Settings Groups/Group Index This parameter specifies how multiple settings groups (MSG) are handled (c.f. Section 1.3). If the relay in StationWare has MSGs and the PowerFactory relay model supports MSGs and All Settings Groups is enabled: then all groups are transfered. All Settings Groups is disabled: then only the Group Index -th group is transferred. If the relay in StationWare has MSGs and the PowerFactory relay model doesnt support MSGs: then the Group Index-th group is imported. These parameters are ignored completely if the relay has no MSGs. The import transfer is started by pressing Execute.

Fig. F.32:

ComStationware export options

Export Options
The export options are almost identical to the import options (Figure F.32):
F - 31

DIgSILENT PowerFactory

Interfaces with Other Programs

Transfer Mode Life cycle Phase

Select Export as Transfer Mode A list of possible life cycle targets is shown. Please have in mind that a setting of the life cycle is available. Applied settings can never be changed.

Click Execute to start the data transfer. Then the PowerFactory -relevant parameters are copied upon the existing target setting.

F.3.7

Technical Reference

The purpose of this section is to describe what happens internally inside PowerFactory when device settings are exported or imported. This section also explains how new device types are integrated. PowerFactory is delivered with a library of relay models. This library cannot contain all relays of all manufacturers. A way how to enhance the library for new device types is shown in this section as well. The StationWare interface is heavily based on DPL (DIgSILENT Programming Language) which is documented in a separate DPL Manual.

Overview
For each device type (TypRelay) and each transfer direction a separate DPL script is required. The import DPL script takes the StationWare attributes and a ElmRelay object as input and fills somehow the ElmRelay objects and its subobjects parameters. The export DPL script takes a ElmRelay object as input parameter and calculates some output parameters which are the StationWare attributes.

Note:

DPLs most important benefit is: you can do everything. Thats exactly DPLs most important disadvantage as well. Be sure that your DPL scripts do what they should do and not more. An import script should only set the parameters in the ElmRelay object and its subcomponents. An export script shouldnt change anything at all (at least within PowerFactory).

The scripts have to be named PsmsImport.ComDpl and PsmsExport.ComDpl and must be located in the same folder as the TypRelay object. Type data like TypRelay objects should be located in a library folder e.g. in the project library. If it is referenced from several projects, it belongs into a global library. See Figure F.33 for an example database structure.

Import Scripts
The algorithm used for the import from StationWare to PowerFactory is as follows. Let d be the device whose setting is to be imported: 1 let t be ds device type

F - 32

DIgSILENT PowerFactory

Interfaces with Other Programs

2 3 4 5

let dpl be the PsmsImport.ComDpl object near t initialize dpls input parameter with the device attributes from StationWare initialize dpls external object parameter Relay with d execute dpl

Fig. F.33:

Database structure

The execution step actually sets the relay parameters. We use the StationWare device type example shown in table F.1 from the Concept section (Section 1.3) and the PowerFactory device type as shown in table F.3. The StationWare attributes are G.a, G.b, G.c, H.d, and H.e, the PowerFactory parameters are I>:o, Logic:p, Logic:q, Ios:r, and Ios:s. Only the attributes G.a, G.c, and H.d and the parameters I>:o, Logic:p, and Ios:r are mapped. The others are ignored since there is no equivalent concept on the other system. Figure F.34 shows the Basic options. The PsmsImport.ComDpl must meet the requirements as follows: Name must be PsmsImport General Selection must be empty Input Parameters this table holds the StationWare attributes. The Name has the format [group name]__[attribute name] The Type may either be int (for integer numbers), double (for floating point numbers), or string (for string and enum values). The Value field must be empty. The attribute unit has to inserted in the Unit field if appropriate. A Description may be inserted, too. External Object this table contains exactly one entry: an object with the Name Relay. The object column must be empty.

F - 33

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.34:

DPL import script: Basic options

The Input parameters get initialized with the StationWare attribute values and the External Object with the current relay. The second page of the ComDpl script holds the output parameters. They have the meaning as follows (Figure F.35 shows the Advanced options). Remote Script this parameter must be unset Result Parameters the table must have one entry with Name Result of Type String. The DPL script should set this parameter to OK if the import procedure was successful. Otherwise it may hold an error message which is displayed in the output window. Figure F.36 shows the Script page which contains the DPL code. The code must be a valid DPL program. It should set the relay parameters according to the input parameters.

F - 34

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.35:

DPL import script: Advanced options

Fig. F.36:

DPL import script: Script

Export Scripts
The export direction is almost symmetric to the import process. Be d the device whose setting is to exported: 1 let t be ds device type
F - 35

DIgSILENT PowerFactory

Interfaces with Other Programs

2 3 4 5

let dpl be the PsmsExport.ComDpl object near t initialize dpls external object parameter Relay with d execute dpl transfer dpls output parameter to the setting in StationWare

The export DPL script must also meet some requirements: Figure F.37 shows the Basic options.

Fig. F.37:

DPL export script: Basic options

Name ComDpl.Name must be PsmsExport. General Selection must be empty Input Parameters this table must be empty External Object this table contains exactly one entry: an object with the Name Relay. The object column must be empty. The second page of the ComDpl script holds the output parameters. They have the meaning as follows (Figure F.38 shows the Advanced options). Remote Script this parameter must be unset Result Parameters the table must have the first entry with Name Result of Type String. The DPL script should set this parameter to OK if the import procedure was successful. Otherwise it may hold an error message which is displayed in the output window. Below the Result parameter are the StationWare attributes. Figure F.39 shows the Script page which contains the DPL code. The code must be a valid DPL program. It should not change the database.

F - 36

DIgSILENT PowerFactory

Interfaces with Other Programs

Fig. F.38:

DPL export script: Advanced options

Fig. F.39:

DPL export script: Script

How to create a new Device Type conversion


This section gives some practical guidelines how to create the conversion scripts for new types. First create a test environment:

F - 37

DIgSILENT PowerFactory

Interfaces with Other Programs

 create in StationWare a new substation with one device of the desired device type. Create a default PowerFactory setting for this device.  create a simple PowerFactory project which contains a device of the desired type  link the PowerFactory device to the StationWare device by setting the foreign key to the device ID. Then write the import script:  create an empty PsmsImport.ComDpl near the TypRelay object.  define the input and output parameters of the ComDpl object  write the DPL code  test the script by importing the PowerFactory setting Iterate these steps until there are no error messages. Change the setting in StationWare and re-try the import. In quite the same way create and verify a PsmsExport.ComDpl script.

F - 38

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

Appendix G The DIgSILENT Programming Language - DPL

The DIgSILENT Programming Language DPL serves the purpose of offering an interface for automating tasks in the PowerFactory program. The DPL method distinguishes itself from the command batch method in several aspects: DPL offers decision and flow commands DPL offers the definition and use of user-defined variables DPL has a flexible interface for input-output and for accessing objects DPL offers mathematical expressions The DPL adds a new dimension to the DIgSILENT PowerFactory program by allowing the creation of new calculation functions. Such user-defined calculation commands can be used in all areas of power system analysis, such as Network optimizing Cable-sizing Protection coordination Stability analysis Parametric sweep analysis Contingency analysis etc. Such new calculation functions are written as program scripts which may use Flow commands like 'if-then-else and 'do-while' PowerFactory commands (i.e. load-flow or short-circuit commands) Input and output routines Mathematical expressions PowerFactory object procedure calls Subroutine calls

G.1

The Principle Structure of a DPL Command

The principle Structure of a DPL script is shown in Figure G.1.

G-1

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

Fig. G.1:

Principle of a DPL command

The DPL command object ComDpl is the central element, which is connecting different parameter, variables or objects to various functions or internal elements and then puts out results or changes parameters. As the input to the script can be predefined input parameters, single objects from the single line diagram or the database or a set of objects/elements, which are then stored inside a so called "General Selection''. These input information can then be evaluated using functions and internal variables inside the script. Also internal objects can be used and executed, like a calculation command, i.e. ComLdf, ComSim, etc., especially defined with certain calculation options subscripts also released in DPL filter sets, which can be executed during the operation of the script Thus the DPL script will run a series of operation and start calculation or other function inside the script. It will always communicate with the database and will store changed settings, parameters or results directly in the database objects. There is nearly no object inside the active project, which can not be accessed or altered. During or at the end of the execution of the DPL script, the results can be outputted or parameters of elements my be changed. There is the possibility to execute a predefined output command ComSh or to define own outputs with the DPL commands available.

G.2

The DPL Command Object

The DPL command object ComDpl holds a reference to a remote DPL command when it is not a root command. The example depicted in Figure G.2 is apparently a referring command, since its "DPL script'' reference is set to the remote command \ Library\ DPL Commands\ CheckVLoading.

G-2

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

Fig. G.2:

A DPL command

A root command has its own script on the "script'' page of the dialogue. A referring command uses the script of the remote DPL command.

G.2.1

Creating a new DPL Command

A DPL Command ComDpl can be created by using the "New Object'' ( ) icon in the toolbar of the data manager and selecting DPL Command and more. Then press OK and a new DPL command is created. The dialogue is now shown and the parameters, objects and the script can now be specified. This dialogue is also opened by double-clicking a DPL script, by selecting Edit from the context sensitive menu or by selecting the script from the list when pressing the icon .

G.2.2

Defining a DPL Commands Set

The DPL command holds a reference to a selection of objects (General Selection). At first this general selection is empty, but there are several ways to define a special set of object used in the DPL command. This "DPL Commands Set'' (SetSelect) can be specified through:
G-3

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

Select one or more elements in the single line diagram. Then right-click the selection (one of the selected elements) and choose the option Define...> DPL Commands Set... from the context sensitive menu. It is also possible to select several elements in the data manager. Right-click the selection and choose the option Define...> DPL Commands Set... from the context sensitive menu.

G.2.3

Executing a DPL Command

To execute a DPL command or to access the dialogue of a script, the icon can be activated. This will pop up a list of available DPL scripts from the global and local library. The easiest way to start a DPL command AND define a selection for it is To select one or more elements in the single line diagram or in the data manager and then right-click the selection. Choose the option Execute DPL Scripts from the context sensitive menu. Then select a DPL script from the list. This list will show DPL scripts from the global as well as from the local library. Select a DPL script, insert/change the variables and then press the button

Execute
In this way the selection is combined into a DPL Commands Set and the set is automatically selected for the script chosen. Only one single DPL command set is valid at a time for all DPL scripts. This means that setting the DPL command set in one DPL command dialogue, will change the DPL command set for all DPL commands in the database.

Note

To choose different sets for various DPL scripts you can either use different selection object SetSelect like the "General Set''. Or new DPL command sets can be created and selected inside the active study case. This is done by pressing , selecting "other'' and the element "Set (SetSelect)'' and then selecting the set type.

The interface section Input Parameters is used to define variables that are accessible from outside the DPL command itself. DPL commands that call other DPL commands as subroutines, may use and change the values of the interface variables of these DPL subroutines. The list of External Objects is used to execute the DPL command for specific objects. A DPL command that, for example, searches the set of lines for which a short-circuit causes too deep a voltage dip at a specific busbar, would access that specific busbar as an external object. Performing the same command for another busbar would then only require setting the external object to the other busbar.

G.2.4

DPL Advanced Options

On the Advanced Options page a Remote script can be selected, which is then used by
G-4

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

this script instead of a local defined script on the next page Script. This is a so called "referring command''. The "root command'' as described above in the example uses the local defined script. Also there can be Result parameters defined. These parameters are results from the script and they are stored inside the result object. Hence it is possible to access them through the variable monitor and display them in a plot.

G.2.5

DPL Script Page

The most important part of a DPL root command is of course the actual DPL program script. That script is written on the Script page of a DPL root command dialogue, if no Remote script is selected. On this page the DPL code of a already defined script is shown and/or new command lines can be inserted for modifying this script or writing a new script. The available commands and the DPL language are described in the following sections. The edited program code also features a highlighting specially suited for handling DPL scripts.

G.3

The DPL Script Editor

There is also an own editor available for conveniently writing a DPL script. To activate this editor press the icon on the bottom side of the Script page of a DPL command dialogue. Now a new window will be opened in PowerFactory. Here the script can be written in a very convenient way similar to the programming language C++. The highlighting will be activated automatically. There are several tools which can be used in this editor: With this icon "Edit Object'' the edit dialogue of the script is opened and the user can Check the modified script for errors or one can Execute it. The script inside the editor and in the dialogue are synchronized each time the script is saved or edited in the dialogue. If this "Disconnect'' icon is pressed, the scripts will not be synchronized anymore. With the "search'' icon the user can activate a Find, a Replace or also a Go To function inside the editor. With the "search next'' icon find/replace/go to the next matching word. With the "search previous'' icon find/replace/go to the previous matching word. With the these icons bookmarks can be set in the editor. Also jump from one bookmark to the next or previous as well as clear all bookmarks. When finished editing, press the icon and the script will be synchronized with the
G-5

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

dow > Graphic... from the main menu.

main dialogue. One can also jump to the main graphics board by selecting the option Win-

G.4

The DPL Script Language

The DPL script language uses a syntax quite similar to the C++ programming language. This type of language is intuitive, easy to read, and easy to learn. The basic command set has been kept as small as possible. The syntax can be divided into the following parts: variable definitions assignments and expressions program flow instructions method calls The statements in a DPL script are separated by semicolons. Statements are grouped together by braces. Example:
statement1; statement2; if (condition) { groupstatement1; groupstatement2; }

G.4.1

Variable Definitions

DPL uses the following internal parameter types double, a 15 digits real number int, an integer number string, a string object, a reference to a PowerFactory object set, a container of objects Vectors and Matrices are available as external objects. The syntax for defining variables is as follows:
[VARDEF] = [TYPE] varname, varname, ..., varname; [TYPE] = double | int | object | set

All parameter declarations must be given together in the top first lines of the DPL script. The semicolon is obligatory. Examples:
G-6

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

double int string object set

Losses, Length, Pgen; NrOfBreakers, i, j; txt1, nm1, nm2; O1, O2, BestSwitchToOpen; AllSwitches, AllBars;

G.4.2

Constant parameters

DPL uses constant parameters which cannot be changed. It is therefore not accepted to assign a value to these variables. Doing so will lead to an error message. The following constants variables are defined in the DPL syntax: SEL NULL this is the general DPL selection is the 'null' object is the DPL command itself

Besides these global constants, all internal and external objects are constant too.

G.4.3

Assignments and Expressions

The following syntax is used to assign a value to a variable:


variable = expression variable += expression variable -= expression

The add-assignment "+='' adds the right side value to the variable and the subtract-assignment "-='' subtracts the right-side value. Examples:
double x,y;x = 0.5*pi(); ! x now y = sin(x); ! y now x += y; ! x now y -= x; ! y now equals equals equals equals 1.5708 1.0 2.5708 -1.5708

G.4.4

Standard Functions

The following operators and functions are available: Arithmetic operators: +, -, *, / Standard functions ( all trigonometric functions based on radians (RAD)):

function

description

example

G-7

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

sin(x) cos(x) tan(x) asin(x) acos(x) atan(x) sinh(x) cosh(x) tanh(x) exp(x) ln(x) log(x) sqrt(x) sqr(x) pow (x,y) abs(x) min(x,y) max(x,y) modulo(x,y) trunc(x) frac(x) round(x) ceil(x) floor(x)

sine cosine tangent arcsine arccosine arctangent hyperbolic sine hyperbolic cosine hyperbolic tangent exponential value natural logarithm log10 square root power of 2 power of y absolute value smaller value larger value remainder of x/y integral part fractional part closest integer smallest larger integer largest smaller integer

sin(1.2)=0.93203 cos(1.2)=0.36236 tan(1.2)=2.57215 asin(0.93203)=1.2 acos(0.36236)=1.2 atan(2.57215)=1.2 sinh(1.5708)=2.3013 cosh(1.5708)=2.5092 tanh(0.7616)=1.0000 exp(1.0)=2.718281 ln(2.718281)=1.0 log(100)=2 sqrt(9.5)=3.0822 sqr(3.0822)=9.5 pow(2.5, 3.4)=22.5422 abs(-2.34)=2.34 min(6.4, 1.5)=1.5 max(6.4, 1.5)=6.4 modulo(15.6,3.4)=2 trunc(-4.58823)=4.0000 frac(-4.58823)=0.58823 round(1.65)=2.000 ceil(1.15)=2.000 floor(1.78)=1.000

Table. G.1: Constants:

DPL Standard Functions

pi() twopi() e()

pi 2 pi e

Table. G.2:

DPL Internal Constants

G-8

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

G.4.5

Program Flow Instructions

The following flow commands are available.


if ( [boolexpr] ) [statlist] if ( [boolexpr] ) [statlist] else [statlist] do [statlist] while ( [boolexpr] ) while ( [boolexpr] ) [statlist] for ( statement ; [boolexpr] ; statement ) [statlist]

in which
[boolexpr] = expression [boolcomp] expression [boolcomp] = "<" | ">" | "=" | ">=" | ">=" | "<>" [statlist] = statement; | { statement; [statlist] }

Unary operators: ".not." Binary operators: ".and." | ".or." | ".nand." | ".nor." | ".eor." Parentheses: {logical expression} Examples:
if (a<3) { b = a*2; } else { b = a/2; } while (sin(a)>=b*c) { a = O:dline; c = c + delta; } if ({.not.a}.and.{b<>3}) { err = Ldf.Execute(); if (err) { Ldf:iopt_lev = 1; err = Ldf.Execute(); Ldf:iopt_lev = 0; } } for (i = 0; i < 10; i = i+1){ x = x + i; } for (o=s.First(); o; o=s.Next()) { o.ShowFullName(); }

Break and Continue


The loop statements 'do-while' and 'while-do' may contain 'break' and 'continue' commands. The 'break' and 'continue' commands may not appear outside a loop statement.
G-9

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

The 'break' command terminates the smallest enclosing 'do-while' or 'while-do' statement. The execution of the DPL script will continue with the first command following the loop statement. The 'continue' command skips the execution of the following statements in the smallest enclosing 'do-while' or 'while-do' statement. The execution of the DPL script is continued with the evaluation of the boolean expression of the loop statement. The loop statement list will be executed again when the expression evaluates to TRUE. Otherwise the loop statement is ended and the execution will continue with the first command following the loop statement. Example:
O1 = S1.First(); while (O1) { O1.Open(); err = Ldf.Execute(); if (err) { ! skip this one O1 = S1.Next; continue; } O2 = S2.First(); AllOk = 1; DoReport(0); !reset while (O2) { err = Ldf.Execute(); if (err) { ! do not continue AllOk = 0; break; } else { DoReport(1); ! add } O2 = S2.Next(); } if (AllOk) { DoReport(2); ! report } O1 = S1.Next();}

G.4.6

Input and Output

The "input'' command asks the user to enter a value.


input(var, string);

The input command will pop up a window with the string and an input line on which the user may enter a value. The value will be assigned to the variable "var''. The "output'' command writes a line of text to the output window.
output(string);

The string may contain "=''-signs, followed by a variable name. The variable name will then be replaced by the variable's value. Example:
G - 10

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

input(diameter, 'enter diameter'); output('the entered value=diameter');

The example results in the pop up of a window as depicted in Figure G.3.

Fig. G.3:

The input window

The following text will appear in the output window:


DIgSI/dpl - the entered value=12.3400

The output command is considered obsolete and has been replaced by the more versatile "printf'' and "sprintf'' functions. Please see the DPL reference for detailed information.

G.5

Access to Other Objects

With the syntax for the parameter definitions, program flow and the input and output, it is already possible to create a small program. However, such a script would not be able to use or manipulate variables of 'external' objects. It would not be possible, for instance, to write a script that replaces a specific line by possibly better alternatives, in order to select the best line type. Such a script must be able to access specific objects (the specific line) and specific sets of objects (the set of alternative line types). The DPL language has several methods with which the database objects and their parameters become available in the DPL script: The most direct method is to create an object, or a reference to an object, in the DPL command folder itself. Such an object is directly available as "object'' variable in the script. The variable name is the name of the object in the database. The DPL command set may be used. This method is only useful when the order in which the objects are accessed is not important. The DPL command set is automatically filled when a selection of elements is right-clicked in either the single line graphic or the data manager and the option Execute DPL Script is selected. The list of external objects is mainly used when a script should be executed for specific objects or selections. The list of external objects is nothing more than a list of 'aliases'. The external object list is used to select specific objects for each alias, prior to the execution of the script.

G - 11

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

G.5.1

Object Variables and Methods

If a database object is known to the DPL command, then all its methods may be called, and all its variables are available. For example, if we want to change a load-flow command in order to force an asymmetrical load-flow calculation, we may alter the parameter "iopt_net''. This is done by using an assignment:
Ldf:iopt_net = 1; ! force unbalanced

In this example, the load-flow objects is known as the objects variable "Ldf''. The general syntax for a parameter of a database object is
objectname:parametername

In the same way, it is possible to get a value from a database object, for instance a result from the load-flow calculations. One of such a result is the loading of a line object, which is stored in the variable "c:loading''. The following example performs the unbalanced loadflow and reports the line loading. Example
00. 01. 02. 03. 04. 05. 06. 07. 08. 09. int error; double loading; Ldf:iopt_net = 1; ! force unbalanced error = Ldf.Execute(); ! execute load-flow if (error) { exit(); } else { loading = Line:c:loading; ! get line loading output('loading=loading'); ! report line loading }

This examples is very primitive but it shows the basic methods for accessing database objects and their parameters.

G.6

Access to Locally Stored Objects

Locally stored objects (also called 'internal objects') can be accessed directly. They are known in the DPL script under their own name, which therefore must be a valid DPL variable name. It will not be possible to access an internal object which name is "My Loadflow\~{}1*'', for instance. Internal objects may also be references to objects which are stored elsewhere. The DPL command des not distinguish between internal objects and internal references to objects. An example is shown in Figure G.4, where a DPL script is shown on the left which has a load-flow command and a reference to a line in its contents folder on the right.

G - 12

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

Fig. G.4:

DPL contents

The example DPL script may now access these objects directly, as the objects "Ldf'' and "Line''. In the following example, the object "Ldf'', which is a load-flow command, is used in line 01 to perform a load-flow.
00. 01. 02. 03. 04. 05. int error; error = Ldf.Execute(); if (error) { output('Load-flow command returns an error'); exit(); }

In line 01, a load-flow is calculated by calling the method "Execute()'' of the load-flow command. The details of the load-flow command, such as the choice between a balanced single phase or an unbalanced three phase load-flow calculation, is made by editing the object "Ldf'' in the database. Many other objects in the database have methods which can be called from a DPL script. The DPL contents are also used to include DPL scripts into other scripts and thus to create DPL "subroutines''.

G.7

Accessing the General Selection

Accessing database objects by storing them or a reference to them in the DPL command would create a problem if many objects have to be accessed, for instance if the line with the highest loading is to be found. It would be impractical to create a reference to each and every line. A more elegant way would be to use the DPL global selection and fill it with all lines. The data manager offers several ways in which to fill this object DPL Command Set with little effort. The selection may then be used to access each line indirectly by a DPL "object'' variable. In this way, a loop is created which is performing the search for the highest loading. This is shown in the following example. Example
00. 01. 02. 03. 04. 05. 06. 07. 08. 09. 10. 11. int error; double max; object O, Omax; set S; error = Ldf.Execute(); if (error) exit(); S = SEL.AllLines(); Omax = S.First(); if (Omax) { max = Omax:c:loading; ! execute a load-flow ! exit on error ! get all selected lines ! get first line ! initialize maximum G - 13

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25.

} else { output('No lines found in exit(); ! } O = S.Next(); ! while (O) { ! if (O:c:loading>max) { max = O:c:loading; ! Omax = O; ! } O = S.Next(); } output('max loading=max for Omax.ShowFullName();

selection'); no lines: exit get next line while more lines update maximum update max loaded line

line'); !output results

The object SEL used in line 08 is the reserved object variable which equals the General Selection in the DPL command dialogue. The SEL object is available in all DPL scripts at all times and only one single "General Selection'' object is valid at a time for all DPL scripts. This means that setting the General Selection in the one DPL command dialogue, will change it for all other DPL commands too. The method "AllLines()'' in line 08 will return a set of all lines found in the general selection. This set is assigned to the variable "S''. The lines are now accessed one by one by using the set methods "First()'' and "Next()'' in line 09, 16 and 22. The line with the highest loading is kept in the variable "Omax''. The name and database location of this line is written to the output window at the end of the script by calling "ShowFullName()''.

G.8

Accessing External Objects

The DPL contents make it possible to access external object in the DPL script. The special general selection object ("SEL'') is used to give all DPL functions and their subroutines access to a central selection of objects. i.e. the DPL Command Set. Although flexible, this method would create problems if more than one specific object should be accessed in the script. By creating references to those objects in the DPL command itself, the DPL command would become specific to the current calculation case. Gathering the objects in the general selection would create the problem of selecting the correct object. To prevent the creation of calculation-specific DPL commands, it is recommended practice to reserve the DPL contents for all objects that really 'belong' to the DPL script and which are thus independent on where and how the script is used. Good examples are load-flow and short-circuit commands, or the vector and matrix objects that the DPL command uses for its computations. If a DPL script must access a database object dependent on where and how the DPL script is used, an "External Object'' must be added to the external object list in the DPL root command. Such an external object is a named reference to an external database object. The external object is referred to by that name. Changing the object is then a matter of selecting another object. In Figure G.5, an example of an external object is given. This external object may be referred to in the DPL script by the name "Bar1'', as is shown in the example.

G - 14

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

Fig. G.5: Example:

DPL external object table

sagdepth = Bar1:u;

G.9

Remote Scripts and DPL Command Libraries

To understand the DPL philosophy and the resulting hierarchical structure of DPL scripts, the following is important to understand: A DPL command either executes its own script or the script of another, remote, DPL command. In the first case, the DPL command is called a 'root command' and the script is called a 'local script'. In the second case, the DPL command is called a 'referring' command and the script is called a 'remote script'. A root command may define interface variables that are accessible from outside the script and which are used to define default values. Each root command may define one or more external objects. External object are used to make a DPL command run with specific power system objects, selections, commands, etc. A referring command may overrule all default interface values and all selected external objects of the remote command. Each DPL command can be called as a subroutine by other DPL commands. The use of remote scripts, external objects and interface variables makes it possible to create generic DPL commands, which may be used with different settings in many different projects and study cases. The easiest way to develop a new DPL command is to create a new ComDpl in the currently active study case and to write the script directly in that DPL object. In such a way, a DPL "root command'' is made. If this root command needs DPL subroutines, then one or more DPL command objects may be created in its contents. Each of these subroutines will normally also be written as root functions. The newly written DPL command with its subroutines may be tested and used in the currently active study case. However, it cannot be executed when another study case is active. In order to use the DPL command in other study cases, or even in other projects, one would have to copy the DPL command and its contents. This, however, would make it impossible to alter the DPL command without having to alter all its copies. The solution is in the use of 'remote scripts'. The procedure to create and use remote scripts is described as follows.
G - 15

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

Suppose a new DPL command has been created and tested in the currently active study case. This DPL command can now be stored in a save place making it possible to use it in other study cases and projects. This is done by the following steps: Copy the DPL command to a library folder. This will also copy the contents of the DPL command, i.e. with all it's DPL subroutines and other locally stored objects. "Generalize'' the copied DPL command by resetting all project specific external objects. Set all interface variable values to their default values. To avoid deleting a part of the DPL command, make sure that if any of the DPL (sub)commands refers to a remote script, all those remote scripts are also stored in the library folder. Activate another study case. Create a new DPL command object (ComDPL) in the active study case. Set the "DPL script'' reference to the copied DPL command. Select the required external objects. Optionally change the default values of the interface variables Press the Check button to check the DPL script The Check or Execute button will copy all parts of the remote script in the library that are needed for execution. This includes all subroutines, which will also refer to remote scripts, all command objects, and all other objects. Some classes objects are copied as reference, other classes are copied completely. The new DPL command does not contain a script, but executes the remote script. For the execution itself, this does not make a change. However, more than one DPL command may now refer to the same remote script. Changing the remote script, or any of its local objects or sub-commands, will now change the execution of all DPL commands that refer to it.

G.9.1

Subroutines and Calling Conventions

A DPL command object may be included in the contents of another DPL command. In that case, the included DPL "subroutine'' may be called in the script of the enclosing DPL command. In principle, this is not different from calling, for example, a load-flow command from a DPL script. As with most other command objects, the DPL command only has one method: int Execute() ; executes the DPL script.

The difference is that each DPL subroutine has different interface parameters, which may be changed by the calling command. These interface parameters can also be set directly at calling time, by providing one or more calling arguments. These calling arguments are assigned to the interface parameters in order of appearance. The following example illustrates this. Suppose we have a DPL sub-command "Sub1'' with the interface section as depicted in Figure G.6.

G - 16

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

Fig. G.6:

Interface section of subroutine

The calling command may then use, for example:


! set the parameters: Sub1:step = 5.0; Sub1:Line = MyLine; Sub1:Outages = MySelection; ! execute the subroutine: error = Sub1.Execute();

However, using calling arguments, we may also write:


! execute the subroutine: error = Sub1.Execute(5.0, MyLine, MySelection);

G.10

DPL Functions and Subroutines

The DPL syntax is very small because it mainly serves the purpose of basic operations like simple calculations, if-then-else selections, do-while loops, etc.. The strength of the DPL language is the possibility to call functions and to create subroutines. A function which can be called by a DPL command is called a "method''. Four types of methods are distinguished: Internal methods These are the build-in methods of the DPL command. They can always be called. Set methods These methods are available for the DPL 'set' variables. Object methods These methods are available for the DPL 'object' variables. External methods These are the methods which are available for certain external PowerFactory objects, such as the load-flow command, the line object, the asynchronous machine, etc. Please see the DPL Reference for a description of these functions including implementation examples.

G - 17

DIgSILENT PowerFactory

The DIgSILENT Programming Language - DPL

G - 18

DIgSILENT PowerFactory

DPL Reference

Appendix H DPL Reference

H.1
Exe

DPL Internal Methods


Executes a command. Returns all calculation relevant objects. Clears the output window. Deletes the object. Terminates a DPL script immediately. Uses same format string for all syntax. Outputs a formatted string. Returns a formatted string. Outputs a formatted string to a file. Writes a report. Outputs a formatted error. Outputs a formatted warning. Outputs a formatted information. Re-activates the user interface Freezes (de-activates) the user-interface. Prevents "EchoOn()'' at end of execution. Searches for a substring in a string. Copies a substring from a string. Compares two strings. Substitutes a sub-string in a string. Returns the length of a string. Finds a token in a string. Creates a formatted time string. Assigns fields in string and returns number of fields. Assigns fields in file and returns number of fields.
H-1

The DPL program language has a small set of DPL-specific internal commands: AllRelevant ClearOutput Delete exit printf sprintf fprintf Write Error Warn Info EchoOn EchoOff NoFinalUpdate strstr strcpy strcmp strchg strlen strtok strftime sscanf fscanf

ClearCommands Clears the command pipe.

Format String Syntax

DIgSILENT PowerFactory

DPL Reference

fscanfsep ActiveCase SummaryGrid ActiveProject validLDF validRMS validSHC validSIM SetLineFeed GetPageLen GetCaseObject

Assigns fields in file and returns number of fields. Considers separation character and stops after max. number of positions given. Returns the active calculation case. Returns the summary grid. Returns the active project. Checks for a valid load-flow result. Checks for a valid simulation result. Checks for a valid short-circuit result. Checks for a valid simulation result. Sets the automatic line feed for "printf()''. Returns the number of lines per page. Returns the found class object from current case. Returns default command objects.

GetCaseCommand GetTime GetLanguage GetLocalLib GetGlobalLib PostCommand ResIndex GetResData ResNval ResNvars LoadResData fopen fclose Random SetRandSeed fRand ddeOpen ddeClose ddeExe ddePoke ddeRequest

GetGraphBoard Returns the currently active Graphics Board. Returns current processor time. Returns the current language. Returns a local library folder. Returns a global library folder. Adds a command to the command pipe. Returns column number of variable in result object. Returns a value from a certain result curve. Returns number of values stored in certain result curve. Returns the number of variables (columns) in result file. Loads the data of a result file in memory. Opens a file from a path. Closes an open file. Returns a random number. Initializes the random number generator. Returns stochastic numbers according to a probability distribution. Establishes a DDE connection to a topic of an application. Closes the DDE link. Starts command in the current dde opened topic. Sends data to an item in the currently opened DDE topic. Receives data from an item in a previously opened DDE topic.

ResetCalculation Resets the calculations.

H-2

DIgSILENT PowerFactory

DPL Reference

Exe
void Exe (string Command) DPL Internal Methods Immediately executes the command, bypassing the command pipe in the input window. The DPL command will continue after the command has been executed. The 'Exe' command is provided for compatibility and testing purposes only and should only be used by experienced users. Arguments:

string Command (obligatory): The command string


Return value: void (no return value) Example: The following command connects two terminals via an existing coupler 'NameBreaker'.
while (Obj) { NameBreaker = ...; NameTerm1 = ...; NameTerm2 = ...; ObjTerm = SEL.First(); if (ObjTerm) { printf('Connect to Terminal: %s',NameTerm2); sExec = sprintf('connect obj=%s b1=%s b2=%s', NameBreaker,NameTerm1,NameTerm2); Exe(sExec); Obj = SelGrids.Next(); }

AllRelevant
Set AllRelevant (string S |int i) DPL Internal Methods Returns a set with calculation relevant objects, i.e. the objects which are used by the calculations. The set of calculation relevant objects is determined by the currently active study case and the currently active grids. Objects which are out-of-service are ignored when i=0, but are included when i=1 or when i is omitted. A wildcard argument can be given, and only objects whose name and class-name satisfy this wildcard will be returned. Arguments:

string S (optional) : Classname(s) with wildcards int i (optional) : flag to include out of service objects
Return value: The set of all calculation relevant objects, according to the given class-name wildcards Example 1: The following example writes the names of calculation relevant objects for various settings.

H-3

DIgSILENT PowerFactory

DPL Reference

set S; object O; printf('all objects, including out-of-service:'); S = AllRelevant(); for (O=S.First(); O; O=S.Next()) { O.ShowFullName(); } printf('all objects, excluding out-of-service:'); S = AllRelevant(0); for (O=S.First(); O; O=S.Next()) { O.ShowFullName(); } printf('all busbars and terminals,'); printf('including out-of-service:'); S = AllRelevant('*.StaBar,*.ElmTerm'); for (O=S.First(); O; O=S.Next()) { O.ShowFullName(); } printf('all lines, excluding out-of-service:'); S = AllRelevant('*.ElmLne',0); for (O=S.First(); O; O=S.Next()) { O.ShowFullName(); }

Example 2: The following example writes the full name of all relevant busbars and terminals in the output window.
set S; object O; S = AllRelevant('*.StaBar,*.ElmTerm'); for (O=S.First(); O; O=S.Next()) { O.ShowFullName(); }

! includes out-of-service objects

ClearCommands
void ClearCommands () DPL Internal Methods Clears the command pipe of the input window. Arguments: none Return value: void (no return value) Example: The following command clears the input window.
ClearCommands();

ClearOutput
void ClearOutput ()
H-4

DIgSILENT PowerFactory

DPL Reference

DPL Internal Methods Clears the output window. Arguments: none Return value: void (no return value) Example: The following command clears the output window.
ClearOutput();

Delete
void Delete (object O | set S) DPL Internal Methods Deletes an object or a set of objects from the database. The objects are not destroyed but are moved to the recycle bin. Arguments:

object O (optional): The object to delete set S (optional): The set of objects to delete
Return value: void Example: The following example removes all "Dummy" fuses from the network. The 'DummyType' variable is a local variable in the DPL script. A set of objects-to-delete is created first and then that set is deleted. This has the advantage that one single entry in the recycle bin is created which contains all deleted fuses. Manually restoring ('undelete') the deleted fuses, in case of a mistake, can then be done by a single restore command.
object O; set S, Del; S = AllRelevant(); O = S.Firstmatch('RelFuse'); while (O) { if (O:typ_id=DummyType) { Del.Add(O); } O = S.Nextmatch(); } Delete(Del);

exit
exit () DPL Internal Methods The exit() command terminates a DPL script immediately. If called within a subscript, only the subscript itself will be terminated. In this case, execution will continue in the calling
H-5

DIgSILENT PowerFactory

DPL Reference

parent script. Arguments: The exit() command has no arguments. Return value: The exit() command has no return value. Example:
int in; int sum; !sums up all entered numbers while(1){ input(in, 'Enter a number please (<0 to stop)'); if (in < 0){ !negative number entered, so calc sum and stop printf('Sum: %d', sum); exit(); !terminate script here } sum += in; }

Format String Syntax


The string printing commands "printf'' , "sprintf'' , "fprintf'' as well as "Write'' , "Error'' , "Warn'' and "Info'' all use the same format string syntax. The format string must contain a valid place holder for every given argument. The placeholder format is
[flags] [width] [.precision] type

Where "type'' is one of the following specifiers: 'd' or 'i' 'e' For an integer value. For a double value. The printed format is "[ ]d.dddd e [sign]ddd'' where d is a single decimal digit, "'dddd'' is one or more decimal digits, "ddd'' is exactly three decimal digits, and "[sign]'' is "+'' or "''. Identical to the e format except that "E'' in stead of "e'' is used. For a double value. Printed format is "[ ]dddd.dddd'', where "dddd'' is one or more decimal digits. The number of digits before the decimal point depends on the magnitude of the number, and the number of digits after the decimal point depends on the requested precision. For a double value. Printed format is the "f'' or "e'' format, whichever is more compact for the given value and precision. The e format is used only when the exponent of the value is less than 4 or greater than or equal to the precision argument. Trailing zeros are truncated, and the decimal point appears only if one or more digits follow it. Identical to the "g'' format, except that "E'' in stead of "e'', is used (where appropriate). For a string.

'E' 'f'

'g'

'G' 's'

The optional "flag'' can be one of the following specifiers:


H-6

DIgSILENT PowerFactory

DPL Reference

'-' '+'

Left align the result within the given field width. Prefix the output value with a sign (+ or )

The optional "width'' specifies the number of characters to be printed and the optional ".precision'' specifies the number of decimals printed. Example: The following examples shows various placeholder definitions.
double x; int i; string s; x = 123456789.987654321; i = 2468; s = 'hello dpl'; printf('%f|%15.3f|%E|%.2e|%+f|', x,x,x,x,x); printf('%d|%6d|%-6d|', i,i,i); printf('%s|%-20s|%20s|',s,s,s); ! string concat is possible: s = 'this'; s = sprintf('%s %s', s, 'DPL script'); ! print and assign in one action: s = printf('%s %s "%s"', s, 'is called', this:loc_name); printf('%s (again)',s); ! print again:

In addition to placeholders, the printed string may also contain "escape''-sequences for line feeds, tabs, form feeds and color. The following escape-sequences can be used: "\n'' inserts a line feed "\t'' inserts a horizontal tab "\f'' inserts a form feed, for printing purposes "\\'' writes a backslash, even when the next character is a n,t,f or c "%%'' writes a percent sign "\cx'' inserts a color change, where "x'' is a color, according to the following table, i.e. #"\ce'' switches to blue Table H.1:
a b c d e f g h black black red green blue brown cyan magenta i j k l m n o p gray light gray bordeaux dark red dark green light green marine dark blue

Example:
printf('The \cfbrown\ca fox jumped\nover\tthe\nlazy\tcat'); printf('result written to c:\\documents\\pf\\res.txt'); printf('%% = %%%6.2f%% %%', 123.34);

H-7

DIgSILENT PowerFactory

DPL Reference

printf
void printf (String Format, String T | double X | int I, ...) DPL Internal Methods Outputs a formatted string. The printf() command uses the C++ printf() formatting syntax. Arguments:

String Format (obligatory): The format string String T (optional): string argument double X (optional): double argument int I (optional): int argument
Return value: void Example: See the format string syntax for examples and more information. The output format is defined by the format string. The passed arguments and the passed format string must match. An error message will be produced when, for instance, a format string for two strings is used together with three doubles. The 'printf' will automatically insert a line-break after printing by default. This means that the next 'printf' will start on the next line. The automatic line-break can be disabled by using the "SetLineFeed''-function. See "SetLineFeed'' for more information. Also see "sprintf'' . Also see "fprintf'' . Also see "Error'' . Also see "Warn'' . Also see "Info'' . Also see "Write'' .

sprintf
string sprintf (String Format, String T | double X | int I, ...) DPL Internal Methods Returns a formatted string. The sprintf() command uses the C++ printf() formatting syntax. Arguments:

String Format (obligatory): The format string String T (optional): string argument double X (optional): double argument int I (optional): int argument
H-8

DIgSILENT PowerFactory

DPL Reference

Return value: The formatted string Example: See the format string syntax for examples and more information. The following example redirects the output to a file. The filename is formatted from a path and the name of the current calculation case. "Redirect'' is an ComOp and "StopRedirect'' is an ComCl object in the DPL command
Redirect:f = sprintf('%s%s.out', 'c:\\MyDocuments\\results0813\\', O:loc_name); Redirect.Execute(); Form.WriteOut(Lines); ! write a report StopRedirect.Execute(); ! stop redirection

Since version 13.1 there is an easier way of writing an string to a file by using "fprintf'' . The output format is defined by the format string. The passed arguments and the passed format string must match. An error message will be produced when, for instance, a format string for two strings is used together with three doubles. See the format string syntax for more information. Also see "printf'' . Also see "fprintf'' . Also see "Error'' . Also see "Warn'' . Also see "Info'' . Also see "Write'' .

fprintf
void fprintf (int iFH, string Format, string T | double X | int I, ...) DPL Internal Methods Writes a formatted string to a file. The fprintf() command uses the C++ printf() formatting syntax. Arguments:

int iFH (obligatory): Number of file handler (0,1,...,9)


the fields are assigned

string Format (obligatory): Defines a format of variable types (int/string/double) to which string T (optional): Return of the result string double X (optional): Return of the result double int I (optional): Return of the result integer
Return value: A return value of 0 indicates that no fields were assigned. The return value is -1 for an error or if the end of the string is reached before the first conversion. Example: See the format string syntax for examples and more information. The following example outputs a defined string to a file.
H-9

DIgSILENT PowerFactory

DPL Reference

double x; int i; string s; fopen('d:\tmp\test.txt','r',0); x = 123456789.987654321; i = 2468; s = 'hello dpl'; fprintf(0,'string:%s int=%d double=%f', s,i,x); fclose(0);

The output format is defined by the format string. The passed arguments and the passed format string must match. An error message will be produced when, for instance, a format string for two strings is used together with three doubles. See the format string syntax for more information. Also see "printf'' . Also see "sprintf'' . Also see "Error'' . Also see "Warn'' . Also see "Info'' . Also see "Write'' .

fWrite
The command "fWrite'' is obsolete and has been replaced by the "printf'' command. See "printf'' for more information.

ToStr
The command "ToStr'' is obsolete and has been replaced by the "sprintf'' command. See "sprintf'' for more information.

Write
int Write (string Format, [object aObj | set aSet], ...) DPL Internal Methods Writes out a line of formatted text, using the DIgSILENT output language. Arguments:

string Format (obligatory): The format string object aObj (optional): An object which is used to get data from set aSet (optional): A set which is used to get objects from
Return value: 0 on success, 1 on error The "Write'' command is used to quickly output a line of formatted output, using the same formatting language as is used for defining reports and result-boxes. See Section 20.2.3 for more information. Because data or parameters of more than object is often written out, the DIgSILENT output language has the special macro "ACC(x)'' to distinguish between these objects. PriH - 10

DIgSILENT PowerFactory

DPL Reference

or to execution, all given objects and all objects in the given sets are listed together in a single list. The "ACC(x)'' macro returns the object with the index "x'' in that list. The ACC ("acc''="access'') macro can be used more than once for the same object. Interface variables of the DPL script can also be used in the format string by the "DEF'' macro. If the DPL script has "ResX'' as an interface double, then "DEF:ResX'' will access that variable. Example: In the following example, two lines of output are written out. The first line only contains normal text. The second line writes the name and loading of two lines. In this example, "ACC(1)'' refers to the object "LineA', and "ACC(2)'' to "LineB''
Write('The following results are found'); Write('# : #.## # , # : #.## # $N, ACC(1):loc_name,ACC(1):c:loading,[ACC(1):c:loading, ACC(2):loc_name,ACC(2):c:loading,[ACC(2):c:loading', LineA, LineB);

Also see "printf'' . Also see "sprintf'' . Also see "fprintf'' . Also see "Error'' . Also see "Warn'' . Also see "Info'' .

Error
string Error (String Format,String T | double X | int I, ...) DPL Internal Methods Writes a formatted string as error message to the output window. The DPL execution will continue, but a pop-up error message box will appear at the end of execution. Arguments:

String Format (obligatory): The format string String T (optional): string argument double X (optional): double argument int I (optional): int argument
Return value: The formatted string Example: The following example writes an error to the output window.
Error('Index could not be calculated.');

The output format is defined by the format string. The passed arguments and the passed format string must match. An error message will be produced when, for instance, a format string for two strings is used together with three doubles. See the format string syntax for more information. Also see "printf'' .

H - 11

DIgSILENT PowerFactory

DPL Reference

Also see "sprintf'' . Also see "fprintf'' . Also see "Warn'' . Also see "Info'' . Also see "Write'' .

Warn
string Warn(String Format, String T | double X | int I, ...) DPL Internal Methods Writes a formatted string as warning to the output window. Arguments:

String Format (obligatory): The format string String T (optional): string argument double X (optional): double argument int I (optional): int argument
Return value: The formatted string Example: The following example writes a warning message to the output window.
Warn('No loads attached: using approximation.');

The output format is defined by the format string. The passed arguments and the passed format string must match. An error message will be produced when, for instance, a format string for two strings is used together with three doubles. See the format string syntax for more information. Also see "printf'' . Also see "sprintf'' . Also see "fprintf'' . Also see "Error'' . Also see "Info'' . Also see "Write'' .

Info
string Info (String Format, String T | double X | int I, ...) DPL Internal Methods Writes a formatted string as information message to the output window. Arguments:

String Format (obligatory) : The format string String T (optional) : string argument
H - 12

DIgSILENT PowerFactory

DPL Reference

double X (optional) : double argument int I (optional) : int argument


Return value: The formatted string Example: The following example writes an info message to the output window.
Info('Trying to calculate first index...');

The output format is defined by the format string. The passed arguments and the passed format string must match. An error message will be produced when, for instance, a format string for two strings is used together with three doubles. See the format string syntax for more information. Also see "printf'' . Also see "sprintf'' . Also see "fprintf'' . Also see "Error'' . Also see "Warn'' . Also see "Write'' .

EchoOn
void EchoOn () DPL Internal Methods Re-activates the user interface. Arguments: none Return value: void Example: The following example de-activates the user-interface to speed up the calculations, after which the user-interface is re-activated again.
EchoOff(); .. do some calculation ... EchoOn();

Also see "EchoOff()'' . Also see "NoFinalUpdate()'' .

EchoOff
void EchoOff () DPL Internal Methods Freezes (de-activates) the user-interface. For each EchoOff(), an EchoOn() should be called. An EchoOn() is automatically executed at the end of a DPL execution, except for when "NoFinalUpdate()'' has been called.
H - 13

DIgSILENT PowerFactory

DPL Reference

Arguments: none Return value: void Example: The following example de-activates the user-interface to speed up the calculations, after which the user-interface is re-activated again.
EchoOff(); .. do some calculation ... EchoOn();

Also see "EchoOn()'' . Also see "NoFinalUpdate()'' .

NoFinalUpdate
void NoFinalUpdate () DPL Internal Methods Prevents the automatic "EchoOn()'' at end of execution. Arguments: none Return value: void Example:
EchoOff(); .. do some calculation ... NoFinalUpdate();

Also see "EchoOff()'' . Also see "EchoOn()'' .

strstr
int strstr (string S1, string S2) DPL Internal Methods Searches for a substring in a string and returns the position of the first letter of substring S2 in string S1. Arguments:

string S1 (obligatory) : The string string S2 (obligatory) : The substring


Return value: The first position in S1 where S2 was found, or -1 when S2 was not found. Example: The following example searches for string 'brown' in string S1
H - 14

DIgSILENT PowerFactory

DPL Reference

string S1, S2; int i; S1 = 'The brown fox'; i = strstr(S1, 'brown'); ! i now equals 4

strcpy
String strcpy (string S, int start, int count) DPL Internal Methods Copies a substring from a string. Arguments:

string S (obligatory) : The string int start (obligatory) : The start position in S int count (optional) : Number of characters to copy
Return value: The copied substring Example:
string S1, S2; S1 = 'The brown fox'; S2 = strcpy(S1, 4, 5); ! S2 now equals 'brown'

strcmp
int strcmp (string S1, string S2, int count) DPL Internal Methods Compares two strings. Arguments:

string S1 (obligatory) : The first string string S1 (obligatory) : The second string int count (optional) : Number of characters to compare
Return value: -1 0 1 when S1 < S2, for up to count characters S1 = S2, for up to count characters when S1 > S2, for up to count characters

strchg
int strchg(string sStr, string sFind, string sNew) DPL Internal Methods Searches in the string sStr for the sub-string sFind and substitutes it by the sub-string sNew.
H - 15

DIgSILENT PowerFactory

DPL Reference

Arguments:

string sStr (obligatory): string to be scanned and modified. string sFind (obligatory): sub-string to be found. string sNew (obligatory): sub-string to be inserted instead of sFind.
Return value: The first position in sStr where sFind was found (index of the first letter, index begins with 0); -1 if substring was not found. Example:
int iRet; string sStr, sFind, sNew; sStr = 'This is just a test'; sFind = 'just a'; sNew = 'a very important'; iRet = strchg(sStr,sFind,sNew); if (iRet = -1){ printf('String could not be found!'); } else{ printf('%s',sStr); }

strlen
int strlen (string S) DPL Internal Methods Returns the length of a string. Arguments:

string S (obligatory) : The string

strtok
string strtok (string Source, string Delimiter, int Pos, int Num) DPL Internal Methods Splits the string Source into tokens separated by the characters defined in the Delimiter. The function returns the token between separator (Num-1) and (Num) as a string and the position of the token in the Source. Arguments:

string Source (obligatory) : String containing token(s) string Delimiter (obligatory) : Set of delimiter characters int Pos (obligatory) : Returns the position of token in Source (beginning with 0) int Num (optional) : Number of the token to be read (default = 1)
Return value:
H - 16

DIgSILENT PowerFactory

DPL Reference

Token read. If nothing is read, the token is empty and Pos = -1 Example: The following example searches for different tokens in sStr
string sRes, sStr, sDel; int iPos; sStr = 'Das, ist nur, ein Test mit Nr. (555); weiter nichts'; sDel = ',;()'; sRes = strtok(sStr,sDel,iPos); printf('Token: %s iPos = %d',sRes,iPos); sRes = strtok(sStr,sDel,iPos,2); printf('Token: %s iPos = %d',sRes,iPos); sRes = strtok(sStr,sDel,iPos,4); printf('Token: %s iPos = %d',sRes,iPos);

Output of the script above:


Token: Das Token: ist nur Token: 555 iPos = 0 iPos = 4 iPos = 32

strftime
string strftime (String Format) DPL Internal Methods Creates a formatted time string. Arguments:

String Format (obligatory) : The format string


The following formatting codes are recognized in the format string. Table H.2:
%a %A %b %B %c %d %H %I %j %m %M %p %S Abbreviated weekday name Full weekday name Abbreviated month name Full month name Date and time representation appropriate for locale Day of month as decimal number (01..31) Hour in 24-hour format (00..23) Hour in 12-hour format (01..12) Day of year as decimal number (001..366) Month as decimal number (01..12) Minute as decimal number (00..59) Current locales A.M./P.M. indicator for 12-hour clock Second as decimal number (00..59)

H - 17

DIgSILENT PowerFactory

DPL Reference

Table H.2:
%U %w %W %x %X %y %Y %z, %Z %% Week of year as decimal number, Sunday as first day of week (00..53) Weekday as decimal number (0..6; Sunday is 0) Week of year as decimal number, Monday as first day of week (00..53) Date representation for current locale Time representation for current locale Year without century, as decimal number (00..99) Year with century, as decimal number Time-zone name or abbreviation; no characters if zone is unknown Percent sign

Return value: The formatted time string Example: The following example shows the date.
str = strftime('Today is %A, day %d of %B in the year %Y.'); printf('%s', str);

Output:
Today is Wednesday, day 30 of April in the year 2003.

sscanf
int sscanf (string Source, string Format, string T | double X | int I, ...) DPL Internal Methods Returns the number of fields successfully converted and assigned; the return value does not include fields that were read but not assigned. Arguments:

string Source (obligatory) : The string string Format (obligatory) : Defines a format of variable types (int/string/double) to which
the fields are assigned

string T (optional) : Return of the result string double X (optional) : Return of the result double int I (optional) : Return of the result integer
Return value: A return value of 0 indicates that no fields were assigned. The return value is -1 for an error or if the end of the string is reached before the first conversion. Example: The following example assignes the first two fields of string sStr to the string sRes and
H - 18

DIgSILENT PowerFactory

DPL Reference

the double rVal


iPos = 0; sStr = 'Test 23'; iRet = sscanf(sStr,'%s %d',sRes,iPos); printf('%s %d iRet = %d',sRes,iPos,iRet);

Output of the script above:


Test 23 iRet = 0

fscanf
int fscanf (int iFH, string Format, string T | double X | int I, ...) DPL Internal Methods Returns the number of fields successfully converted and assigned; the return value does not include fields that were read but not assigned. Arguments:

int iFH (obligatory) : Number of file handler (0,1,...,9)


the fields are assigned

string Format (obligatory) : Defines a format of variable types (int/string/double) to which string T (optional) : Return of the result string double X (optional) : Return of the result double int I (optional) : Return of the result integer
Return value: A return value of 0 indicates that no fields were assigned. The return value is -1 for an error or if the end of the string is reached before the first conversion. Example: The following example assignes the first to fields of the text file 'test.txt' (contents: 'Name 12.333') to the string sRes and the double rVal
fopen('d:\tmp\test.txt','r',0); iRet = fscanf(0,'%s %d',sRes,rVal); printf('%s %.1f iRet = %d',sRes,rVal,iRet); fclose(0);

Output of the script above:


Name 12.3 iRet = 0

fscanfsep
int fscanfsep(int iFH, string Ft, string T | double X | int I, ..., string sSep, int iLine) DPL Internal Methods Functionality like fscanf. Returns the number of fields successfully converted and assigned; the return value does not include fields that were read but not assigned. This function additionally considers a special character to separate the values, instead of the standard separators like blanks and tabs. It also can be instructed to stop after the line read. Arguments:

int iFH (obligatory) : Number of file handler (0,1,...,9)


H - 19

DIgSILENT PowerFactory

DPL Reference

string Ft (obligatory) : Defines a format of variable types (int/string/double) to which the


fields are assigned

string T (optional) : Return of the result string double X (optional) : Return of the result double int I (optional) : Return of the result integer string sSep : separator character
line. 0 for continued interpretation. Return value: A return value of 0 indicates that no fields were assigned. The return value is -1 for an error or if the end of the string is reached before the first conversion. Example:
int iRet; string sRes; fopen('c:\test1.txt','r',0); SetLineFeed(0); while (iRet > -1){ iRet = fscanfsep(0,'%s',sRes,';',1); if (iRet = -1){ break; } printf('%s\n',sRes); } fclose(0);

int iLine (obligatory) : 1 if the interpretation of the line will be stopped after the current

ActiveCase
Object ActiveCase () DPL Internal Methods Returns the currently active Study Case. Arguments: none Return value A "IntCase'' object Example: The following example writes the name of the active study case to the output window.
object aCase; aCase = ActiveCase(); aCase.ShowFullName();

SummaryGrid
Object SummaryGrid ()
H - 20

DIgSILENT PowerFactory

DPL Reference

DPL Internal Methods Returns the summary grid in the currently active Study Case. The summary grid is the combination of all active grids in the study case. Arguments: none Return value: A ElmNet object, or a 'NULL' object when no grids are active Example: The following example performs a load-flow and returns the total grid active power losses.
object SumGrid; SumGrid = SummaryGrid(); if (SumGrid) { Ldf.Execute(); output('Active Power Losses=SumGrid:c:LossP'); }

ActiveProject
Object ActiveProject () DPL Internal Methods Returns the currently active project. Arguments: none Return value: A "IntPrj'' object Example: The following example prints the name of the active project to the output window.
object Prj; Prj = ActiveProject(); Prj.ShowFullName();

validLDF
int validLDF () DPL Internal Methods Checks to see if the last load-flow results are still valid and available. Arguments: none Return value: 0 if no load-flow results are available Example: The following example checks if a load-flow is available, and performs one when not.
int valid; H - 21

DIgSILENT PowerFactory

DPL Reference

valid = validLDF(); if (.not.valid) { Ldf.Execute(); }

validRMS
int validRMS () DPL Internal Methods Checks to see if the last RMS simulation results are still valid and available. Arguments: none Return value: 0 if no RMS simulation results are available Example: The following example checks if a RMS simulation is available, and performs one when not.
int valid; valid = validRMS(); if (.not.valid) { Rms.Execute(); }

validSHC
int validSHC () DPL Internal Methods Checks to see if the last short-circuit results are still valid and available. Arguments: none Return value: 0 if no short-circuit results are available Example: The following example checks if a short-circuit result is available, and performs one when not.
int valid; valid = validSHC(); if (.not.valid) { Shc.Execute(); }

validSIM
int validSIM () DPL Internal Methods Checks to see if the last simulation results are still valid and available.
H - 22

DIgSILENT PowerFactory

DPL Reference

Arguments: none Return value: 0 if no simulation results are available Example: The following example checks if a simulation result is available.
int valid; valid = validSIM(); if (.not.valid) { output('No simulation result available'); }

SetLineFeed
void SetLineFeed (int i) DPL Internal Methods Sets or resets the automatic line feed for printf(). Arguments:

int i (obligatory) : use '0' to disable the automatic line feed, use '1' to enable it again.
Return value: void Example: The following example disables the automatic line feed prior to printing a matrix of numbers. The special character '\n' is used to force a line feed.
int i,j; SetLineFeed(0); ! disable line-feed for (i=0; i<3; i+=1) { printf('%2d', i); for (j=1; j<5; j+=1) { printf('\t%2d', i+j); } printf('\n'); ! insert a line-feed }

Also see "printf'' .

GetPageLen
int GetPageLen (int orientation) DPL Internal Methods Returns the number of lines per page according to the currently selected printer and paper size. Arguments:

int orientation (optional) : Paper orientation: 0: landscape, 1: portrait ; default: landscape


Return value: The maximum number of lines that can be printed on a single sheet of paper.
H - 23

DIgSILENT PowerFactory

DPL Reference

GetCaseObject
object GetCaseObject (string ClassName) DPL Internal Methods Returns the first found object of class "ClassName'' from the currently active calculation case. The object is created when no object of the given name and/or class was found. Returns the default command object of class "ClassName'' from the currently active calculation case. Initializes newly created commands according to the project settings. The icons on the main menu for load-flow, short-circuit, transient simulation, etc. also open the corresponding default command from the currently active study case. Using "GetCaseCommand()" in a DPL script will return the same command. Arguments:

string ClassName (optional) : Class name of the object ("Class''), optionally preceded by
an object name without wildcards and a dot ("Name.Class''). Return value: The found or created object. Example: The following example uses the default SetTime object to change the calculation time, and then executes the load-flow command with the name 'Unbalanced'.
object time, com; time = GetCaseObject('SetTime'); time:hourofyear = 1234; com = GetCaseObject('Unbalanced.ComLdf'); com.Execute();

GetCaseCommand
object GetCaseCommand (string ClassName) DPL Internal Methods This command is obsolete. Please use the more versatile "GetCaseObject'' in stead. Please refer to "GetCaseObject()'' .

GetGraphBoard
SetDeskTop GetGraphBoard () DPL Internal Methods Returns the currently active Graphics Board. Arguments: none Return value: The graphics board object Example: The following example looks for an opened Graphics Board and sets its default results to
H - 24

DIgSILENT PowerFactory

DPL Reference

the results object named 'Results'.


object aGrf;! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Set default results object aGrf.SetResults(Results); }

Also see SetDeskTop.GetPage SetDeskTop.SetResults SetDeskTop.SetXVar SetDeskTop.SetScaleX SetDeskTop.SetAutoScaleX SetDeskTop.SetAdaptX

GetTime
int GetTime (int iN) DPL Internal Methods Returns current processor time. Arguments:

int iN (obligatory) : precision after decimal point


Return value: Current processor time in seconds

GetLanguage
int GetLanguage () DPL Internal Methods Returns the current program language setting. Arguments: none Return value: 0 = English, 1 = German Example: The following example displays a different message, depending on the language.
int err, lng; lng = GetLanguage(); err = Ldf.Execute(); if (err) { if (lng) { output('Load-flow command returned an error'); } else { output('Fehler im Lastfluss Kommando'); } exit(); } H - 25

DIgSILENT PowerFactory

DPL Reference

GetLocalLib
object GetLocalLib ([string ClassName]) DPL Internal Methods Returns the local library for object-types of class "ClassName''. ClassName may be omitted, in which case the complete local library folder is returned. Arguments:

string ClassName (optional) : The classname of the objects for which the library folder is
sought Return value: The library folder Example: The following example shows the contents of the local library for line types.
object Lib, O; set S; Lib = GetLocalLib('TypLne'); S = Lib.GetContents(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

Also see "GetGlobalLib'' .

GetGlobalLib
object GetGlobalLib ([string ClassName]) DPL Internal Methods Returns the global library for object-types of class "ClassName''. ClassName may be omitted, in which case the complete global library folder is returned. Arguments:

string ClassName (optional) : The classname of the objects for which the library folder is
sought Return value: The library folder Example: The following example shows the contents of the global library for line types.
object Lib, O; set S; Lib = GetGlobalLib('TypLne'); S = lib.GetContents(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

Also see "GetLocalLib'' .


H - 26

DIgSILENT PowerFactory

DPL Reference

PostCommand
void PostCommand (string Command) DPL Internal Methods Adds a command to the command pipe in the input window. The posted commands will be executed after the DPL command has finished. Arguments:

string Command (obligatory) : The command string


Return value: void (no return value) Example: The following command causes the PowerFactory program to end after the DPL script has finished.
PostCommand('exit');

ResIndex
int ResIndex (object res, object O, string vnm) DPL Internal Methods Returns the column number of the variable 'vnm' of object 'O' in the result object 'res'. An error is produced when 'res' is not a ElmRes object, when 'O' is not in the result file. Arguments:

object res (obligatory) : the result file object O (obligatory) : The monitored object string vnm (obligatory) : the name of the monitored variable of object 'O'
Return value: The index of the variable. This index can be used in "GetResData'' to retrieve the value. A negative index is returned when 'vnm' is not in the result file. Example:
object obj, res; double x, x1, x2; int n, ix, i1, i2; int Nval; obj = GetCaseCommand('ComInc'); res = obj:p_resvar; LoadResData(res); Nval = ResNval(res,0); obj = res.GetObject(1); i1 = ResIndex(res, obj, 'm:I1:bus1'); i2 = ResIndex(res, obj, 'm:U1:bus1'); if (i1<0.or.i2<0) exit(); ix = 0; while (ix<Nval) { GetResData(x, res, ix); GetResData(x1, res, ix, i1); GetResData(x2, res, ix, i2); printf('%8.5f %8.5f %8.5f', x, x1, x2); ix += 1; H - 27

DIgSILENT PowerFactory

DPL Reference

Also see "LoadResData()'' "GetResData()'' "GetObject'' .

GetResData
int GetResData (double d, object O, int iX, int iCrv) DPL Internal Methods Returns a value from a result object for row iX of curve iCrv. An error is produced when O is not a ElmRes object. Arguments:

double d (obligatory) : the returned value object O (obligatory) : The result file object int iX (obligatory) : the row index int iCrv (optional) : The curve number, which equals the variable or column number, first column value (time,index, etc.) is returned when omitted.
Return value: 0 1 2 3 when ok when iX out of bound when iCrv out of bound when invalid value is returned ('INFINITY', 'DUMMY', etc.)

Also see "LoadResData()'' .

ResNval
int ResNval (object O, int iCrv) DPL Internal Methods Returns the number of values stored in result object for curve iCrv. An error is produced when O is not a ElmRes object. Arguments: object O (obligatory) : The result file object int iCrv (obligatory) : The curve number, which equals the variable or column number. Also see "LoadResData()'' .

ResNvars
int ResNvars (object O) DPL Internal Methods Returns the number of variables (columns) in result file. An error is produced when O is
H - 28

DIgSILENT PowerFactory

DPL Reference

not a ElmRes object. Arguments:

object O (obligatory) : The result file object


Also see "LoadResData()'' .

LoadResData
void LoadResData (object O) DPL Internal Methods Loads the data of a result file (ElmRes) in memory. An error is produced when O is not a ElmRes object. Arguments:

object O (obligatory) : The result file object


Return value: void Example:
object obj, res; double x; int Nvar, Nval, n, ix,iy; string str; obj = GetCaseCommand('ComInc'); res = obj:p_resvar; LoadResData(res); Nvar = ResNvars(res); Nval = ResNval(res,0); printf('Nvar=%d Nval=%d', Nvar, Nval); ix = 0; while (ix<Nval) { iy = 0; GetResData(x, res, ix); str = sprintf('%f :', x); while (iy<Nvar) { GetResData(x, res,ix,iy); str = sprintf('%s %8.5f ', str, x); iy += 1; } printf('%s', str); ix += 1; }

An example (depending of the results in the result object) of the output for this script :
Nvar=3 Nval=11 -0.050000 -0.040000 -0.030000 -0.020000 -0.010000 -0.000000 0.010000 0.020000 0.030000 0.040000 : : : : : : : : : : 0.12676 0.12676 0.12676 0.12676 0.12676 0.12676 0.12676 0.12676 0.12676 0.12676 30.73286 30.73286 30.73286 30.73286 30.73286 30.73286 30.73286 30.73286 30.73286 30.73286 12.91360 12.91360 12.91360 12.91360 12.91360 12.91360 12.91360 12.91360 12.91360 12.91360 H - 29

DIgSILENT PowerFactory

DPL Reference

0.050000 :

0.12676

30.73286

12.91360

ResetCalculation
void ResetCalculation () DPL Internal Methods Resets all calculations and destroys all volatile calculation results. Arguments: none Return value: void (no return value) Results that have been written to result objects (for display in graphs) will not be destroyed. All results that are visible in the single line diagrams, however, will be destroyed. Example: The following example resets all calculations
ResetCalculation();

fopen
int fopen (string Path, string Mode, int iFH, int iRet) DPL Internal Methods Opens file with attribute Mode and assigns an ID iFH of the file handler to the open file. Arguments:

string Path (obligatory): Path of file to open. Path must exist. File could be created depending on the Mode

string Mode (obligatory): The attribute for opening the file (r,w,a,r+,w+,a+,b,t) int iFH (obligatory): Number of file handler (0,1,...,9)
value. If different that 0, value is returned Return value: 0 on success, 1 on error Example: The following example opens a file and closes it again.
fopen('d:\tmp\test.txt','r',0); iRet = fscanf(0,'%s %d',sRes,rVal); printf('%s %.1f iRet = %d',sRes,rVal,iRet); fclose(0);

int iRet (optional): If it is set to 0 or no value is given, the function does not return any

fclose
void fclose (int iFH) DPL Internal Methods
H - 30

DIgSILENT PowerFactory

DPL Reference

Closes file with the ID iFH of the file handler (between 0 and 9). Arguments:

int iFH (obligatory) : Number of file handler (0,1,...,9)


Return value: void Example: The following example opens a file and closes it again.
fopen('d:\tmp\test.txt','r',0); iRet = fscanf(0,'%s %d',sRes,rVal); printf('%s %.1f iRet = %d',sRes,rVal,iRet); fclose(0);

Random
double Random ([double x1 [,double x2]]) DPL Internal Methods Returns a pseudo random value. If x1 and x2 are omitted, a value in the range of [0 ... 1] is returned. If only x1 is given, the possible range is [0 ... x1] and with both x1 and x2, [x1 ... x2]. Arguments:

double x1 (optional) : upper/lower limit double x2 (optional) : upper limit


Return value: A pseudo-random number Example: The following example sets a load to a random active power prior to calculating a loadflow.
double P; Load:plini = Random(1.2, 2.3); Ldf.Execute();

SetRandSeed
void SetRandSeed (int N) DPL Internal Methods Initializes the random number generator. One out of 10 predefined initialization seeds can be selected. Arguments:

int N (obligatory) : seed 0..10


Example: See fRand()

H - 31

DIgSILENT PowerFactory

DPL Reference

fRand
double fRand (int mode | double p1 | double p2) DPL Internal Methods Returns a stochastic number according to a specific probability distribution. Arguments:

int mode (obligatory) :


Table H.3:
0: 1: 2: else: uniform distribution normal distribution weibull distribution returns 0.0

double p1 (obligatory) : double p1 (obligatory) :


Table H.4:
uniform p1 p2 min max normal mean stdvar weibull shape scale

Return value: void Example: The following example prints random numbers for the following distributions:
uni0 : an uniform distribution in [0..1] uni1 : an uniform distribution in [0..50] uni2 : an uniform distribution in [-8, 21]; norm : a normal distribution with mean=30 and standard variance=5 weib : a Weibull distribution with lambda=5 and beta=30 int n; double uni0,uni1,uni2,norm,weib; SetRandSeed(2); for (n=0; n<10; n+=1) { uni0 = fRand(0); uni1 = fRand(0, 50); uni2 = fRand(0, -8, 21); norm = fRand(1, 30, 5); weib = fRand(2, 5, 30); printf('%f %f %f %f %f', uni0, uni1, uni2, norm, weib);}

Results Output:
0.232422 0.877555 0.901226 0.598748 0.588662 0.474393 H - 32 20.225048 31.371372 15.313008 17.908476 35.265549 44.846884 20.364702 11.501229 14.782988 -6.831869 6.403110 20.024787 32.294429 28.380458 23.883499 28.314934 25.233148 35.297444 15.165993 26.404837 34.911052 20.706127 16.437912 22.190684

DIgSILENT PowerFactory

DPL Reference

0.122955 0.554570 0.920789 0.609307

24.725714 -6.099016 28.535867 27.149573 17.020344 13.658290 32.858903 30.625329 47.127992 0.749566 28.616229 21.187893 11.819403 -6.716297 37.955694 29.645523

ddeOpen
int ddeOpen(string sPath, string sAppName, string sTopic) DPL Internal Methods Establishes a DDE connection to a topic of an application. Arguments:

string sPath (obligatory) :Path to application to start. If empty ('') the application must be
started manually by the user. If path is given, ddeOpen will start the application if it not already running.

string sAppName (obligatory) : Application name.


of a open document or the special topic "System". A document can be either a regular document in the application, a template, or a macro Return value: 0 on success, != 0 on errors Example: The following example establishes a DDE connection to topic System of Excel and closes the connection if successfully established.
int ierr; ! open a DDE connection to Excel : ierr = ddeOpen(s, 'Excel', 'System'); if (.not.ierr) { ! ok, excel can be opened. ! ... ddeClose(); }

string sTopic (obligatory) : Topic; The topic of a DDE conversation can be either the name

Also see ddeClose

ddeClose
void ddeClose() DPL Internal Methods Closes the DDE link. Arguments: none Return value: none Example: The following example establishes a DDE link to topic named 'System' of Excel and closes
H - 33

DIgSILENT PowerFactory

DPL Reference

the connection if successfully established.


int ierr; ! open a DDE connection to Excel : ierr = ddeOpen(s, 'Excel', 'System'); if (.not.ierr) { ! ok, excel can be opened. ! ... ddeClose(); }

Also see ddeOpen

ddeExe
int ddeExe (string sCmd) DPL Internal Methods Starts command in the currently opened topic. A command can be a visual basic command, too. Commands are usually sent to the topic named 'System'. Arguments:

string sCmd (obligatory): Command to execute


Return value: <0 if the dde connection was not established before calling ddeExe, =0 if ddeExe successfully executed, >0 if ddeExe failed Example: The following example looks for a sheet named 'Sheet1'. A new sheet is created if Sheet1 was not found. Then the DDE link to the page is established.
int ierr; ierr = ddeOpen('', 'Excel', 'System'); if (.not.ierr) { ! excel can be opened. Now close and connect to a specific sheet ddeClose(); ierr = ddeOpen('', 'Excel', 'Sheet1'); if (ierr) { Info('No Sheet1 yet, creating one...'); ierr = ddeOpen('', 'Excel', 'System'); if (ierr) { printf('Cannot open DDE to Excel'); } else { ! create a new sheet ddeExe('[New(1)]'); ddeClose(); ierr = ddeOpen('', 'Excel', 'Sheet1'); } } } if (ierr) { Error('Could not open DDE connection'); exit(); }

H - 34

DIgSILENT PowerFactory

DPL Reference

ddePoke
int ddePoke (string sItem, string sData) DPL Internal Methods Sends data to an item in the currently opened DDE topic. Arguments: named bookmark in word. Return value: <0 if the dde connection was not established before calling ddePoke, =0 if the ddePoke was successfully executed, >0: if the ddePoke failed. Example: The following example writes data to some cells on the worksheet named 'Sheet1' in Excel. It is assumed that Excel is already running when starting the dpl command.
int ierr, i; double x,y,z; string s,s1,s2; Warn('This example assumes an English Excel'); Warn('Other languages should translate the Excel commands'); Warn('like "concatenate"'); ! open a DDE connection to Sheet1 : ierr = ddeOpen('', 'Excel', 'System'); if (.not.ierr) { ! excel can be opened. Now close and connect to a specific sheet ddeClose(); ierr = ddeOpen('', 'Excel', 'Sheet1'); if (ierr) { Info('No Sheet1 yet, creating one...'); ierr = ddeOpen('', 'Excel', 'System'); if (ierr) { printf('Cannot open DDE to Excel'); } else { ! create a new sheet ddeExe('[New(1)]'); ddeClose(); ierr = ddeOpen('', 'Excel', 'Sheet1'); } } } if (ierr) { Error('Could not open DDE connection'); exit(); } ! write some numbers x = 3; while (x<7) { y = 5; while (y<14) { z = x+y/100; s1 = sprintf('R%dC%d',x,y); H - 35

string sItem: the item receiving the data. Examples for an item are a cell in excel or a string sData: the data to send.

DIgSILENT PowerFactory

DPL Reference

s2 = sprintf('%f',z); ddePoke(s1,s2); ! poke the numbers in the sheet y+=1; } x+=1; }

Also see ddeRequest

ddeRequest
int ddeRequest (string sItem, string sStringData, double dNumVal) DPL Internal Methods Receives data from an item in a previously opened DDE topic Arguments: word

string sItem: The item. Examples for an item are a cell in excel or a named bookmark in string sStringData:The data received from the topic as string (return value=2)

double dNumVal:The data received from the topic as a number (if sStringData is a number, return value=2)
Return value: <0 if the dde connection was not established before calling ddeRequest, =0 if the ddeRequest failed, =1 if value is a number, =2 if value is a string. Example: The following is a small code fragment where data is read from an Excel sheet. The code fragment runs fine, in case that the currently opened DDE topic is an Excel sheet.
i = ddeRequest('R12C2',s,x); ! get the contents of a cel if (i=1) printf('%f', x); ! i=1 means a number i = ddeRequest('R5C2',s,x); if (i=2) printf('%s', s); ! i=2 means a string

Also see ddePoke

H.2
H.2.1

DPL External General Types


DPL Set Methods

Set methods are functions for the set type parameters. set . [SETMETHOD] ( arguments) ; The following [SETMETHOD] methods are available: Add Remove Clear First Next
H - 36

Adds an object. Removes an object. Removes all objects from the set. Returns the first objects. Returns the next object.

DIgSILENT PowerFactory

DPL Reference

Firstmatch Nextmatch FirstFilt NextFilt IsIn Count Obj SortToVar SortToClass SortToName

Returns the first matching object. Returns the next matching object. Returns the first matching object. Returns the next matching object. Searches for an object in the set. Returns the number of stored objects. Returns the object at index i. Sorts the objects to a variable value. Sorts the objects to their class. Sorts the objects to their names.

MarkInGraphics Marks the objects in the graphic.

Set.Add
int Set.Add ([object O | set S]) Adds an object or all objects from a set to the set. Arguments: One of the following two parameter has to be given

object O (optional) : an object set S (optional) : a set of objects


Return value: 0 on success Example: The following example collects all loads and lines and the first breaker from the general DPL selection
set S, Sbig; object O; Sbig = SEL.AllLines(); S = SEL.AllLoads(); Sbig.Add(S); S = SEL.AllBreakers(); O = S.First(); Sbig.Add(O);

Set.Remove
int Set.Remove (object O) Removes an object from the set. Arguments:

object O (obligatory) : the object to remove


Return value: 0 on success
H - 37

DIgSILENT PowerFactory

DPL Reference

Example: The following example removes al short lines from a set


set S; object O; double l; S = SEL.AllLines(); O = S.First(); while (O) { l = O:dline; if (l<1) { S.Remove(O); } O = S.Next(); }

Set.Clear
void Set.Clear() Clears the set. Arguments: none Return value: void Example: The following example clears a set
set Sbig; Sbig = SEL.AllLines(); ... Sbig.Clear();

Set.First
Object Set.First() Returns the first object in the set. Arguments: none Return value: The first object or 0 when the set is empty Example: The following example writes the full names of all line in the general selection to the output window.
set S; object O; S = SEL.AllLines(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); } H - 38

DIgSILENT PowerFactory

DPL Reference

Also see "Next'' .

Set.Next
Object Set.Next () Returns the next object in the set. Arguments: none Return value: The next object or 0 when the last object has been reached Example: The following example writes the full names of all line in the general selection to the output window.
set S; object O S = SEL.AllLines(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

Also see "First'' .

Set.Firstmatch
Object Set.Firstmatch (String WildCard) Set.Firstmatch (string) is obsolete. Use Set.FirstFilt (string) instead.

Set.Nextmatch
int Set.Nextmatch () Set.Nextmatch () is obsolete. Use Set.NextFilt () instead.

Set.FirstFilt
Object Set.FirstFilt (String WildCard) Returns the first object from the set which name matches the wildcard. The wildcard may contain (parts of the) name and classname. Arguments:

String WildCard (obligatory) : class name, possibly containing '*' and '?' characters
Return value: The first matching object, or NULL when no first object exists.
H - 39

DIgSILENT PowerFactory

DPL Reference

Example: The following example writes all two and three winding transformers whose name start with a "T'' to the output window
set S; object O; S = AllRelevant(); O = S.FirstFilt('T*.ElmTr?'); while (O) { O.ShowFullName(); O = S.NextFilt(); }

Also see "NextFilt'' .

Set.NextFilt
int Set.NextFilt () Returns the next object from the set which name matches the wildcard. Arguments: none Return value: The next object, or NULL when no next object exists. Example: The following example writes all two and three winding transformers to the output window
set S; object O; S = AllRelevant(); O = S.FirstFilt('T*.ElmTr?'); while (O) { O.ShowFullName(); O = S.NextFilt(); }

Also see "FirstFilt'' .

Set.IsIn
int Set.IsIn (object O) Checks if the set contains object 'O'. Arguments:

object O (obligatory) : an object


Return value: 1 if the O is in the set. Example: The following example collects all not selected lines.
set Ssel, Srel, Snsel; object lne; int i; H - 40

DIgSILENT PowerFactory

DPL Reference

Ssel = SEL.AllLines(); Srel = AllRelevant(); lne = Srel.Firstmatch('ElmLne'); while (lne) { i = Ssel.IsIn(lne); if (i=0) Snsel.Add(lne); lne = Srel.Nextmatch(); }

Set.Count
int Set.Count () Returns the number of objects in the set. Arguments: none Return value: The number of objects in the set. Example: The following example terminates the DPL script when the general selection is found to contain no lines.
set S; int n; S = SEL.AllLines(); n = S.Count(); if (n=0) { exit(); }

Set.Obj
int Set.Obj (int Index) Returns the object at the given index in the set. Arguments:

int Index (obligatory) : the index of the object.


Return value: The object at the given index in the set, when "Index'' is in range, NULL otherwise.

Set.SortToVar
int Set.SortToVar (int R, string V1, ..., string V5) Sorts the objects in the set to the variable names. Sorts the objects to the values for V1. Within the sorting for V1, a sub-sorting for V2, subsub-sorting for V3, etc., until V5 can be performed. The sorting is from higher values to lower when R==1, and reverse when R==0. Arguments:

int R (obligatory) : sorting direction string V1 (obligatory) : first variable name


H - 41

DIgSILENT PowerFactory

DPL Reference

string V2 (optional) : , ..., string V5 (optional) : 2nd..5th variable names


Return value: 0 on success Example: The following example writes all lines to the output window, sorted to derating factor and length.
set S; object O; S = AllRelevant('*.ElmLne,*.ElmLneRoute'); S.SortToVar(0, 'fline', 'dline'); O = S.First(); while (O) { printf('%10s %f %f',O:loc_name,O:fline,O:dline); O = S.Next(); }

Set.SortToClass
int Set.SortToClass (int R) Sorts the objects in the set to their class name. The sorting is from A..Z when R=0 and reverse when R=1. Arguments:

int R (obligatory) : sorting direction


Return value: 0 on success Example: The following example writes all objects to the output window, sorted to classes.
set S; object O; S = AllRelevant(); S.SortToClass(0); O = S.First(); S.Next(); }

while (O) {

O.ShowFullName();

O =

Set.SortToName
int Set.SortToName (int R) Sorts the objects in the set to their name. Sorts the objects in the set to their name. The sorting is from A..Z when R=0 and reverse when R=1. Arguments: int R (obligatory) : sorting direction Return value: 0 on success Example: The following example writes all objects to the output window, sorted to names.
set S; object O; H - 42

DIgSILENT PowerFactory

DPL Reference

S = AllRelevant(); S.SortToName(0); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

Set.MarkInGraphics
void Set.MarkInGraphics () Marks all objects in the set in the currently visible graphic by hatch crossing them. Arguments: none Return value: void Example: The following example will try to mark a set of lines in the single line graphic.
set S; object O; S = SEL.AllLines(); S.MarkInGraphics();

H.2.2

DPL Object Methods

The object methods are specific for each type of object class. A result file object (ElmRes), for instance, has a "Write'' method, which would not make sense for a loadflow command object. The general syntax for an object method equals that of the set method:
object . [OBJMETHOD] ( arguments) ;

The following overview lists all the non-specific [OBJMETHOD] methods which are available for all classes. CreateObject Creates a new object. ShowFullName Prints the full database path and name. GetFullName Returns the full database path and name. GetContents Returns the stored objects. GetClass Returns the class name of an object. IsClass Checks for a certain class. GetParent Returns the parent folder. GetNode Returns the node(s) connected to an object. IsNode Checks if the object is a busbar or terminal. GetCubicle Returns the object's cubicle. HasResults Returns if the object has result parameters. GetConnectedElms Returns the set of connected elements.
H - 43

DIgSILENT PowerFactory

DPL Reference

GetConnectionCount Returns the number of electrical connections. Edit Opens the object dialogue. Move Moves an objects to this folder. AddCopy Adds a copy of an object. IsRelevant Returns if the object is used for calculations. IsOutOfService Returns if the object is out of service. IsInFeeder Returns if the object belongs to the feeder. VarExists Checks a variable name. GetNet Returns the grid in which the object is located. GetSize Get the size of a vector or matrix variable. GetVal Returns the value of a parameter. lnm Returns the long name of a variable. snm Returns the short name of a variable. unm Returns the unit of a variable. Unom Returns the nominal voltage. Inom Returns the nominal current. MarkInGraphics Marks the object in the graphic. StochEvt Returns the first or the next state of a stochastic object.

Object.CreateObject
object Object.CreateObject (string ClassNm [, string | int NM1, ...]) Creates a new object of class 'ClassNm' in the target object. The target object must be able to receive an object of the given class. A fatal DPL error will occur when this is not the case, causing the running DPL command to exit. "Fold.CreateObject(aClass, nm1, nm2, ...)'' will create a new object of class aClass and names it to the result of the concatenation of 'nm1', 'nm2', etc. Arguments:

string ClassNm (obligatory) : The class name of the object to create string | int NM1 (optional) : The first part of the object name string | int NM2 (optional) : The next part of the object name
... Return value: The created object, or NULL when no object was created Example: The following example creates a fuse in a set of cubicles. The new fuses will be named "Fuse Nr.0'', "Fuse Nr.1'', etc.
object target; set Cubs; int n; Cubs = SEL.GetAll('StaCubic'); H - 44

DIgSILENT PowerFactory

DPL Reference

target = Cubs.First(); n = 0; while (target) { target.CreateObject('RelFuse', 'Fuse Nr', n); target = Cubs.Next(); n+=1; }

Object.ShowFullName
void Object.ShowFullName () Writes the complete path and name to the output window. Arguments: none Return value: void Because the complete database path is written to the output window, the written names can be right-clicked in the output window to edit the objects. This procedure is therefore useful for selecting objects which should be inspected or edited after the DPL script has finished. Example: The following example will write all overloaded lines from the selection to the output window.
set S; object O; S = SEL.AllLines(); O = S.First(); while (O) { if (O:c:loading>100.0) { O.ShowFullName(); } O = S.Next(); }

Object.GetFullName
string Object.GetFullName () Returns the complete path and name as a string. Arguments: none Return value: The full name of the object Example: The following example will write all overloaded lines from the selection to the output window.
set S; object O; string objname; H - 45

DIgSILENT PowerFactory

DPL Reference

S = SEL.AllLines(); O = S.First(); objname = O.GetFullName(); printf('Name of object: %s',objname);

Object.GetContents
set Object.GetContents (string WildCard, int Contents) Returns the set of objects that are stored in the object and which name matches the wildcard. Returns an empty set, if the object's container is empty or if the object is not capable of storing objects. The wildcard may contain (parts of the) name and classname. Arguments:

string WildCard (optional) : class name, possibly containing '*' and '?' characters
folders. If Contents = 0 (Default), the DPL command will only search object o. Return value: The set of objects Example: The following example collects all lines that are stored in line objects.
set Grids, Lines; object pLne, pGrd; Grids = AllRelevant('*.ElmNet'); ! get all grids pGrd = Grids.First(); while (pGrd) { printf('Lines in Grid %s',pGrd:loc_name); ! get all objects of class ElmLne* (ElmLne, ElmLneroute) ! in all pGrd and it's subfolders of pGrd Lines = pGrd.GetContents('*.ElmLne*',1); pLne = Lines.First(); while (pLne) { pLne.ShowFullName(); pLne = Lines.Next(); } pGrd = Grids.Next(); }

int Contents (optional) : if Contents = 1, the DPL command will additionally search all sub-

Object.GetClass
string Object.GetClass () Returns the class name of the object. Arguments: none Return value: The class name of the object Example: The following example checks to see if two sets start with the same class.
object O1, O2; H - 46

DIgSILENT PowerFactory

DPL Reference

O1 = S1.First(); O2 = S2.First(); i = O1.IsClass(O2.GetClass()); if (i) { output('Both sets start with the same class'); }

Object.IsClass
int Object.IsClass (string ClassName) Checks to see if the object is of a certain class. Arguments:

string ClassName (obligatory) : The name of the class.


Return value: 1 when the object is of the given class, 0 otherwise Example: The following example write all overloaded lines and transformers to the output window, where a different maximum loading is used for lines or transformers.
set S; object O; int i; S = AllRelevant(); O = S.First(); while (O) { i = O.IsClass('ElmLne'); if (i) { if (O:c:loading>0.85) O.ShowFullName(); } else { i = O.IsClass('ElmTr2'); if (i) { if (O:c:loading>0.95) O.ShowFullName(); } } O = S.Next(); }

Object.GetParent
object Object.GetParent () Returns the parent folder. Arguments: none Return value: The parent folder object. Example: The following example returns the folder in which a line is stored. The function "GetBestLine()'' is an example DPL script which returns a line.
object Lne, Fold; Lne = GetBestLine(); H - 47

DIgSILENT PowerFactory

DPL Reference

Fold = Lne.GetParent(); ...

Also see "GetContents'' .

Object.GetNode
string Object.GetNode (int iBusNo, int iSw) Returns the node(s) connected to the object. Arguments:

int iBusNo (obligatory) : Bus number (0,1) int iSw (obligatory) : Considering configuration of switches (0,1), Default=0
Return value: Connected node object

Object.IsNode
int Object.IsNode () Returns 1 if object is a node (terminal or busbar). Arguments: none Return value: 1 if object is s node, 0 otherwise

Object.GetCubicle
object Object.GetCubicle (int N) Returns the cubicle of an object at the connection with index n, or NULL if there is no cubicle inside the object. Arguments:

int N (obligatory) : The connection number.


Return value: The cubicle object or NULL.

Object.HasResults
void Object.HasResults () Returns 'true' when the object has calculated result parameters. Arguments: none Return value: 'true' (1) or 'false' (0)

H - 48

DIgSILENT PowerFactory

DPL Reference

Object.GetConnectedElms
set Object.GetConnectedElms ([int rBrk[,int rDis[,int rOut]]]) Returns the set of connected elements. Only electrically connected elements are returned when the conditions of all switches are regarded. Possible connections will also be returned when rBrk and/or rDis is zero, in case of open breakers and/or disconnectors. The default values are (0,0,0). Arguments:

int rBrk (optional) : if true, regards position of breakers int rDis (optional) : if true, regards position of disconnectors int rOut (optional) : if true, regards in-service or out-of-service status
Return value: The set of connected elements

Object.GetConnectionCount
int Object.GetConnectionCount () Returns the number of electrical connections. Arguments: none Return value: The number of connections. Example:
set aSet; int iCount,iCub; object pObj,pCub,pBus; ! list all nodes where a 3-winding transformer is connected aSet = AllRelevant('*.ElmTr3'); for (pObj=aSet.First(); pObj; pObj=aSet.Next()) { iCount = pObj.GetConnectionCount(); for (iCub=0; iCub<iCount; iCub=iCub+1) { pCub=pObj.GetCubicle(iCub); if (pCub) { pBus = pCub:cBusBar; if (pBus) { pBus.ShowFullName(); } } } }

Object.Edit
void Object.Edit () Opens the edit dialogue of the object. Command objects (like the ComLdf ) will have their Execute button disabled. The execution of the running DPL script will be halted until the edit dialogue is closed again. Editing of DPL command objects ComDPL is not allowed.
H - 49

DIgSILENT PowerFactory

DPL Reference

Arguments: none Return value: void Example: The following example opens a line dialogue, prior to calculating a load-flow.
MyLine.Edit(); Ldf.Execute();

Object.Move
void Object.Move (object O | set S) Moves an object or a set of objects to this folder. Arguments:

object O (optional) : Object to move set S (optional) : Set of objects to move


Return value: 0 on success, 1 on error. Example:
object targetobj,pObj; set AllObjs; ! move pObj to targetobj targetobj.Move(pObj); ! move all objects inside AllObjs to targetobj targetobj.Move(AllObjs);

Object.AddCopy
object Object.AddCopy (set aSet | object aObj [, string | int NM1, ...]) Copies a single object or a set of objects to the target object. "Fold.AddCopy(aObj)'' copies object 'aObj' into the target object 'Fold', "Fold.AddCopy(aSet)'' copies all objects in 'aSet' to "Fold''. "Fold.AddCopy(aObj, nm1, nm2, ...)'' will copy aObj and rename it to the result of the concatenation of 'nm1', 'nm2', etc. The target object must be able to receive a copy of the objects. The function "Fold.AddCopy(aObj,...)'' returns the copy of "aObj'', "Fold.AddCopy(aSet)'' returns "Fold'', when the copy operation was successful. A "NULL'' object is returned otherwise. Copying a set of objects will respect all internal references between those objects. Copying a set of lines and their types, for example, will result in a set of copied lines and line types, where the copied lines will use the copied line types. Arguments:

set aSet (obligatory) : The set of objects to copy


or

object aObj (obligatory) : The object to copy string | int NM1 (optional) : The first part of the new name
H - 50

DIgSILENT PowerFactory

DPL Reference

string | int NM2 (optional) : The next part of the new name
... Return value: Returns the copy that has been created. Example: The following example copies a fuse to a set of cubicles. The copies will be named "Fuse Nr.0'', "Fuse Nr.1'', etc.
object target, copy; set Cubs; Cubs = SEL.GetAll('StaCubic'); target = Cubs.First(); while (target) { copy = target.AddCopy(aFuse, 'Fuse Nr', n); if (copy) copy.ShowFullName(); target = Cubs.Next(); }

Object.IsRelevant
int Object.IsRelevant () Returns 1 if the object is currently used for calculations. Returns 0 otherwise. Arguments: none Return value: 0 when not used Example: The following example checks if a line is used in the calculation.
i = MyLine.IsRelevant(); if (i) { MyLine.ShowFullName(); }

Object.IsOutOfService
int Object.IsOutOfService () Returns 1 if the object is currently out of service. Returns 0 otherwise. Arguments: none Return value: 0 when not out of service Example: The following example checks if a line is out of service.
i = MyLine.IsOutOfService(); if (i) { MyLine.ShowFullName(); } H - 51

DIgSILENT PowerFactory

DPL Reference

Object.IsInFeeder
void Object.IsInFeeder (object Feeder [, double OptNested=0]) Returns if the object belongs to the feeder area defined by "Feeder''. Arguments:

object Feeder (obligatory) : The Feeder definition object double OptNested (optional) : "Nested feeders'' option (1 or 0)
Return value: 1 if "Feeder'' is a feeder definition and the object is in the feeder area, 0 otherwise.

Object.VarExists
int Object.VarExists (string VarName) Checks to see if this object has a currently valid variable called "VarName''. Arguments:

string VarName (obligatory) : The name of the variable.


Return value: 1 when "VarName'' is the name of a currently valid variable for this object. Example: The following example calculates the total length of cables and lines.
double x; int i; set s; object O; s = AllRelevant(); O = s.First(); while (O) { i = O.VarExists('dline'); if (i) { x += O:dline; } O = s.Next(); } printf('Total length = %d', x);

Object.GetNet
object Object.GetNet(void) Returns the grid in which the object is located. Arguments:

none
Return value: The result object or NULL, if the current object is not stored in any grid.

H - 52

DIgSILENT PowerFactory

DPL Reference

Object.GetSize
int Object.GetSize (string VarName,int rows,int cols) Returns the size of the variable "VarName'' when this variable is a vector or a matrix. Arguments:

string VarName (obligatory) : The name of the variable int rows (obligatory) : The number of rows for a vector or matrix int cols (optional) : The number of columns for a matrix
Return value: 0 when "VarName'' is a valid variable name, else 1. Example: The following example prints the matrix resistances from a Tower model with 2 circuits.
int ierr; double x; int r, rows, c, cols; string s; ierr = Tower.GetSize('R_c',rows, cols); if (.not.ierr) { r=0; while (r<rows) { s = ''; c = 0; while (c<cols) { ierr = Tower.GetVal(x, 'R_c', r,c); if (.not.ierr) s = sprintf('%s %f', s, x); c+=1; } printf(s); r+=1; } }

Example Output :
0.067073 0.016701 0.016408 0.016576 0.016516 0.016869 0.016576 0.016516 0.016445 0.016594 0.016594 0.016445 0.016851 0.016408 0.016701 0.016851 0.016408 0.016576 0.016869 0.066738 0.016576 0.016594 0.016372 0.066832 0.016372 0.016701 0.067073 0.016701 0.016869 0.066738 0.016869 0.016372 0.066832 0.016372 0.016594 0.016408

Also see "GetVal'' .

Object.GetVal
int Object.GetVal (object/double X,string VarName,int rows,int cols) Returns the value of the variable "VarName'' when this variable is a vector or a matrix, for the given row and column. Arguments:

double/object X (obligatory) : The variable in which to return the result string VarName (obligatory) : The name of the variable int rows (obligatory) : The row number for a vector or matrix
H - 53

DIgSILENT PowerFactory

DPL Reference

int cols (optional) : The column number for a matrix


Return value: 0 when "VarName'' is a valid variable name and row number and column number are in range, else 1. Example: See "GetSize''

Object.lnm
string Object.lnm (string VarName) Returns the long description of the variable. Arguments:

string VarName (obligatory) : The variable name


Return value: The long variable description. Example: The following example prints information about the length of a line.
string s1,s2,s3; s1 = Line.lnm('dline'); s2 = Line.snm('dline'); s3 = Line.unm('dline'); printf('%s (%s) = %5.3f [%s]',s1, s2, Line:dline, s3);

Example output:
Length of Line (Length) = 0.547 [km]

Also see "snm'' Also see "unm''

Object.snm
string Object.snm (string VarName) Returns the short variable name. By default, the short name equals the long variable name. In some cases, the variable also has a short name which is used to save space in reports or dialogues. Arguments:

string VarName (obligatory) : The variable name


Return value: The short name. Example: See "lnm'' Also see "unm''

H - 54

DIgSILENT PowerFactory

DPL Reference

Object.unm
string Object.unm (string VarName) Returns the unit of the variable. Arguments:

string VarName (obligatory) : The variable name


Return value: The unit name. Example: See "lnm'' Also see "snm''

Object.Unom
double Object.Unom () Returns the nominal voltage of the object. Arguments: none Return value: The nominal voltage Example: The following example collects all high voltage lines. The value VoltageLevel is an input parameter.
set S, Shv; object O; double U; S = SEL.AllLines(); O = S.First(); while (O) { U = O.Unom(); if (U>VoltageLevel) { Shv.Add(O); } O = S.Next(); }

Also see "Inom''

Object.Inom
double Object.Inom () Returns the nominal current of the object. Arguments: none Return value:

H - 55

DIgSILENT PowerFactory

DPL Reference

The nominal current Example: The following example collects all high current lines. The value MinCurrent is an input parameter.
set S, Shv; object O; double U; S = SEL.AllLines(); O = S.First(); while (O) { U = O.Inom(); if (U>MinCurrent) { Shv.Add(O); } O = S.Next(); }

Also see "Unom''

Object.MarkInGraphics
void Object.MarkInGraphics () Marks the object in the currently visible graphic by hatch crossing it. Arguments: none Return value: void When the currently visible single line graphic does not contain the object, nothing will happen. Example: The following example will try to mark a set of lines in the single line graphic.
set S; object O; S = SEL.AllLines(); O = S.First(); while (O) { O.MarkInGraphics(); O = S.Next(); }

Object.StochEvt
int Object.StochEvt (double d | double st) Returns the first or the next state of a stochastic object, when the object has a valid failure model. Draws a first state, using the state probabilities, when "st'' is omitted. Draws the next state, using Monte-Carlo simulation, when "st'' is given. The drawn state is returned. The duration of the drawn state is returned in "d''. Arguments:

double d (obligatory) : duration of the returned state


H - 56

DIgSILENT PowerFactory

DPL Reference

double st (optional) : current state of the object


Return value: void Example: The following example prints the states of a line for a year. This is a small example of a chronological Monte-Carlo simulation.
SetRandSeed(1); st = Line.StochEvt(t); while (t<8760) { printf('%7.2f %d', t, st); st = Line.StochEvt(d, st); t = t + d; }

result:
1172.67 01186.05 15554.87 05560.11 17873.65 07888.94 18260.78 08274.29 1

H.3

Reference of DPL External Specialized Types

The external methods are available for external PowerFactory objects, such as the loadflow command, the line object, the asynchronous machine, etc. as well as additional functions dealing with classes and virtual instruments.

H.3.1

ComOutage Methods

SetObjs Sets the list of objects according to S GetObject Returns the object at position i RemoveEvents Removes events stored inside the comman

ComOutage.SetObjs
int ComOutage.SetObjs (set S) Sets the list of objects according to S. Arguments:

set S (obligatory) : the set of objects


Return value: O on success, 1 on error. See also DPL Internal Methods
H - 57

DIgSILENT PowerFactory

DPL Reference

Set Methods Object Methods Using other objects.

ComOutage.GetObject
object ComOutage.GetObject (int line) Get the element stored in line number line in the table of ComOutage. The line index starts with 0. Arguments:

int line (obligatory):line index, if index exceeds the range NULL is returned
Return value: the element of line line in the table. Example: The following example shows how to access elements in the table of all ComOutage whose names start with "L".
object aCmd, aOutage, aElm; set Outages; int iElements, iElm; aCmd = GetCaseObject('*.ComRel3'); ! get rel. command from study case if (aCmd) { ! get all outages of which the names starts with "L" Outages = aCmd.GetContents('L*.ComOutage'); ! show the elements of all outages for (aOutage=Outages.First(); aOutage; aOutage=Outages.Next()) { aOutage.GetSize('Elms',iElements); ! get size of vector Elms for (iElm=0; iElm<iElements; iElm=iElm+1) { aElm = aOutage.GetObject(iElm); !aOutage.GetVal(aElm,'Elms',iElm); same like GetObject aElm.ShowFullName(); } } }

See also DPL Internal Methods Set Methods Object Methods Using other objects Object.GetVal

ComOutage.RemoveEvents
void ComOutage.RemoveEvents (string type, int info) Removes events stored inside the command.
H - 58

DIgSILENT PowerFactory

DPL Reference

Arguments:

string type (optional):


none 'Lod 'Gen' 'Switch' 1 0 Return value: none Example: The following example shows how to remove events from ComOutage
object aCmd, aOutage; set Outages; aCmd = GetCaseObject('*.ComRel3'); ! get rel. command from study case if (aCmd) { ! get all outages of which the names starts with "L" Outages = aCmd.GetContents('L*.ComOutage'); ! remove the events for (aOutage=Outages.First(); aOutage; aOutage=Outages.Next()) { aOutage.RemoveEvents(0);! delete remaining,suppress info message } }

remove all events stored inside ComOutage remove all EvtLod remove all EvtGen remove all EvtSwitch show info message in output window (default) do not show info message

int info (optional):

H.3.2

ComSimoutage Methods

Reset Resets the intermediate results Execute Executes a ComSimoutage after resetting the results ExecuteCntcy(object O) Executes a ComSimoutage for all outage cases stored in the object O, without resetting results AddCntcy(object O) Executes a ComOutage without resetting results, for the outage cases stored in object O SetLimits Sets the voltage limits to Umn and Umx and the loading limit to Lmx. ReportObjs Returns the objects which are normally given to the reporting command to produce the contingency reports.

ComSimoutage.Reset
int ComSimoutage.Reset () Resets the intermediate results of the outage simulation. Arguments:
H - 59

DIgSILENT PowerFactory

DPL Reference

none Return value: O on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.

ComSimoutage.Execute
int ComSimoutage.Execute () Executes an outage simulation after resetting the results. Arguments: none Return value: O on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.

ComSimoutage.ExecuteCntcy
int ComSimoutage.ExecuteCntcy (object O) Executes an (additional) ComSimoutage, without resetting results. The results of the outage analyses will be added to the intermediate results. Object "O'' must be a ComSimoutage object. Outage definitions in O which have already been analyzed will be ignored. Arguments:

object O (obligatory) : The ComSimoutage object


Return value: O on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.

H - 60

DIgSILENT PowerFactory

DPL Reference

ComSimoutage.AddCntcy
int ComSimoutage.AddCntcy (object O, string name) Executes an (additional) ComOutage, without resetting results. The results of the outage analysis will be added to the intermediate results. Object "O'' must be a ComOutage object. If the outage definition has already been analyzed, it will be ignored. The ComOutage will be renamed to "name'' when "name'' is given. Arguments:

object O (obligatory) : The ComOutage object string name (optional) : A name for the outage
Return value: O on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.

ComSimoutage.SetLimits
int ComSimoutage.SetLimits (double vlmin, double vlmax, double ldmax) Sets the limits for the outage simulation. Arguments:

double vlmin (obligatory) : The minimum voltage double vlmax (obligatory) : The maximum voltage double ldmax (obligatory) : The maximum loading
Return value: 1 always Example: The following example analyses all selected outage definitions and adds the results to the intermediate results.
set s; object o; s = SEL.GetAll('ComOutage'); o = s.First(); while (o) { CA.AddCntcy(o); o = s.Next(); }

See also DPL Internal Methods Set Methods Object Methods


H - 61

DIgSILENT PowerFactory

DPL Reference

Using other objects. returns the objects which are normally given to the reporting command to produce the contingency reports.

ComSimoutage.ReportObjs
set ComSimoutage.ReportObjs (set s, int mode) Returns the objects which are normally given to the reporting command to produce the contigency report. Arguments:

set set (obligatory) : Initial set of objects int mode (obligatory) : Report mode (1..4)
Return value: set of objects for report. See also DPL Internal Methods Set Methods Object Methods Using other objects.

H.3.3

IntPrj Methods

Activate Activates the project Deactivate De-activates the project

IntPrj.Activate
int IntPrj.Activate () Activates the project. Deactivates other projects first. Arguments: none Return value: 0 on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.

H - 62

DIgSILENT PowerFactory

DPL Reference

IntPrj.Deactivate
int IntPrj.Deactivate () De-activates the project. Arguments: none Return value: 0 on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.

H.3.4

IntCase Methods

Activate Activates the study case Deactivate De-activates the study case

IntCase.Activate
int IntCase.Activate () Activates the study case. Deactivates other study cases first. Arguments: none Return value: 0 on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.

IntCase.Deactivate
int IntCase.Deactivate () De-activates the study case. Arguments: none Return value:
H - 63

DIgSILENT PowerFactory

DPL Reference

0 on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.

H.3.5

ElmNet Methods

Activate Adds a grid to the active study case Deactivate Removes a grid from the active study case

ElmNet.Activate
int ElmNet.Activate () Adds a grid to the active study case. Arguments: none Return value: 0 on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.

ElmNet.Deactivate
int ElmNet.Deactivate () Removes a grid from the active study case. Arguments: none Return value: 0 on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.
H - 64

DIgSILENT PowerFactory

DPL Reference

H.3.6

IntVariant Methods

Activate Adds a variant to the active study case Deactivate Removes a variant from the active study case

IntVariant.Activate
int IntVariant.Activate () Adds a variant to the active study case. Arguments: none Return value: 0 on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.

IntVariant.Deactivate
int IntVariant.Deactivate () Removes a variant from the active study case. Arguments: none Return value: 0 on success, 1 on error. See also DPL Internal Methods Set Methods Object Methods Using other objects.

H.3.7

TypAsm Methods

CalcElParams Calculates the electrical parameters

TypAsm.CalcElParams
int TypAsm.CalcElParams () Calculates the electrical parameters from the input data.
H - 65

DIgSILENT PowerFactory

DPL Reference

Arguments: none See also DPL Internal Methods Set Methods Object Methods Using other objects.

H.3.8

TypAsmo Methods

CalcElParams Calculates the electrical parameters

TypAsmo.CalcElParams
int TypAsmo.CalcElParams () Calculates the electrical parameters from the input data. Arguments: none See also DPL Internal Methods Set Methods Object Methods Using other objects.

H.3.9

ElmFeeder Methods

GetAll Returns all objects in this feeder GetBuses Returns all buses in this feeder GetBranches Returns all branch elements in this feeder GetNodesBranches Returns all buses and branches in this feeder GetObjs Returns all objects of class 'ClassName'' in this feeder

ElmFeeder.GetAll
set ElmFeeder.GetAll (int iNested) Returns a set with all objects belonging to this feeder. Arguments:

int iNested (optional) : In case of nested feeders, all elements will be returned when iNested=1, otherwise only the objects up to the next feeder will be returned. Return value:
H - 66

DIgSILENT PowerFactory

DPL Reference

The set of feeder objects. Example:


set aAll,aFeeders; object pPrj,pFeeder,pObj; ! output elements in the feeders pPrj = ActiveProject(); if (pPrj) { aFeeders = pPrj.GetContents('*.ElmFeeder',1); aFeeders.SortToVar(0,'loc_name'); for (pFeeder=aFeeders.First(); pFeeder; pFeeder=aFeeders.Next()){ printf('Elements in feeder %s',pFeeder:loc_name); aAll = pFeeder.GetAll(1); for (pObj=aAll.First(); pObj; pObj=aAll.Next()) { printf(' %s\\%s',pObj:r:fold_id:loc_name,pObj:loc_name); } } }

See also DPL Internal Methods Set Methods Object Methods Using other objects.

ElmFeeder.GetBuses
set ElmFeeder.GetBuses (int iNested) Returns a set with all buses belonging to this feeder. Arguments:

int iNested (optional) : In case of nested feeders, all elements will be returned when iNested=1, otherwise only the objects up to the next feeder will be returned. Return value: The set of bus elements in feeder. Example:
set aNodes,aFeeders; object pPrj,pFeeder,pObj; ! output elements in the feeders pPrj = ActiveProject(); if (pPrj) { aFeeders = pPrj.GetContents('*.ElmFeeder',1); aFeeders.SortToVar(0,'loc_name'); for (pFeeder=aFeeders.First(); pFeeder; pFeeder=aFeeders.Next()){ printf('Buses in feeder %s',pFeeder:loc_name); aNodes = pFeeder.Getbuses(1); for (pObj=aNodes.First(); pObj; pObj=aNodes.Next()) { printf(' %s\\%s',pObj:r:fold_id:loc_name,pObj:loc_name); } } }

See also DPL Internal Methods


H - 67

DIgSILENT PowerFactory

DPL Reference

Set Methods Object Methods Using other objects.

ElmFeeder.GetBranches
set ElmFeeder.GetBranches (int iNested) Returns a set with all branch elements belonging to this feeder. Arguments:

int iNested (optional) : In case of nested feeders, all elements will be returned when iNested=1, otherwise only the objects up to the next feeder will be returned. Return value: The set of branch elements in feeder. Example:
set aBranches,aFeeders; object pPrj,pFeeder,pObj; ! output elements in the feeders pPrj = ActiveProject(); if (pPrj) { aFeeders = pPrj.GetContents('*.ElmFeeder',1); aFeeders.SortToVar(0,'loc_name'); for (pFeeder=aFeeders.First(); pFeeder; pFeeder=aFeeders.Next()){ printf('Branches in feeder %s',pFeeder:loc_name); aBranches = pFeeder.GetBranches(1); for (pObj=aBranches.First(); pObj; pObj=aBranches.Next()) { printf(' %s\\%s',pObj:r:fold_id:loc_name,pObj:loc_name); } } }

See also DPL Internal Methods Set Methods Object Methods Using other objects.

ElmFeeder.GetNodesBranches
set ElmFeeder.GetNodesBranches (int iNested) Returns a set with all buses and branches belonging to this feeder. Arguments:

int iNested (optional) : In case of nested feeders, all elements will be returned when iNested=1, otherwise only the objects up to the next feeder will be returned. Return value: The set of bus and branch elements in feeder. Example:
set aAll,aFeeders; H - 68

DIgSILENT PowerFactory

DPL Reference

object pPrj,pFeeder,pObj; ! output elements in the feeders pPrj = ActiveProject(); if (pPrj) { aFeeders = pPrj.GetContents('*.ElmFeeder',1); aFeeders.SortToVar(0,'loc_name'); for (pFeeder=aFeeders.First(); pFeeder; pFeeder=aFeeders.Next()){ printf('Branches and Nodes in feeder %s',pFeeder:loc_name); aAll = pFeeder.GetNodesBranches(1); for (pObj=aAll.First(); pObj; pObj=aAll.Next()) { printf(' %s\\%s',pObj:r:fold_id:loc_name,pObj:loc_name); } } }

See also DPL Internal Methods Set Methods Object Methods Using other objects.

ElmFeeder.GetObjs
set ElmFeeder.GetObjs (string ClassNameint iNested) Returns a set with all objects of class 'ClassName'' which belong to this feeder. Arguments:

int iNested (optional) : In case of nested feeders, all elements will be returned when iNested=1, otherwise only the objects up to the next feeder will be returned. Return value: The set of feeder objects. Example:
set aAll,aFeeders; object pPrj,pFeeder,pObj; ! output elements in the feeders pPrj = ActiveProject(); if (pPrj) { aFeeders = pPrj.GetContents('*.ElmFeeder',1); aFeeders.SortToVar(0,'loc_name'); for (pFeeder=aFeeders.First(); pFeeder; pFeeder=aFeeders.Next()){ printf('Cubicles in feeder %s',pFeeder:loc_name); aAll = pFeeder.GetObjs('StaCubic'); for (pObj=aAll.First(); pObj; pObj=aAll.Next()) { printf(' %s\\%s',pObj:r:fold_id:loc_name,pObj:loc_name); } } }

See also DPL Internal Methods Set Methods Object Methods


H - 69

DIgSILENT PowerFactory

DPL Reference

Using other objects.

H.3.10

ComNmink Methods

AddRef Adds shortcuts Clear Empties the selection GetAll Returns all objects of class 'ClassName'

ComNmink.AddRef
void ComNmink.AddRef ([object O | set S]) Adds shortcuts to the objects to the existing selection. Arguments: One of the following two parameter has to be given

object O (optional) : an object set S (optional) : a set of objects


Return value: void Example: The following prepares and executes an outage simulation for all high loaded lines.
PrepOut.Clear(); S = AllRelevant(); O = S.Firstmatch('ElmLne'); while (O) { if (O:c:loading>75) { PrepOut.AddRef(O); } O = S.Nextmatch(); } PrepOut.Execute();

See also DPL Internal Methods Set Methods Object Methods Using other objects

ComNmink.Clear
void ComNmink.Clear () Empties the selection. Arguments: none Return value: void
H - 70

DIgSILENT PowerFactory

DPL Reference

Example: The following example creates a selection of all loads.


PrepOut.Clear(); S = AllRelevant(); O = S.Firstmatch('ElmLne'); while (O) { if (O:c:loading>75) { PrepOut.AddRef(O); } O = S.Nextmatch(); } PrepOut.Execute();

See also DPL Internal Methods Set Methods Object Methods Using other objects

ComNmink.GetAll
Set ComNmink.GetAll (String ClassName) Returns all objects which are of the class 'ClassName'. Arguments:

String ClassName (obligatory) : The object class name.


Return value: The set of objects Example: The following example writes all three winding transformers in the preparation command to the output window.
set S; object O; S = Prep.GetAll('ElmTr3'); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.11

ElmComp Methods

Slotupd Performs a slot update


H - 71

DIgSILENT PowerFactory

DPL Reference

ElmComp.Slotupd
int ElmComp.Slotupd () Performs a slot update for the composite model, to automatically select available models for the slots. Arguments: none Return value: void See also DPL Internal Methods Set Methods Object Methods Using other objects.

H.3.12

ComRes Methods

ExportFullRange Exports the whole data range FileNmResNm Sets the filename for the data export

ComRes.ExportFullRange
int ComRes.ExportFullRange () Executes the export command for the whole data range. Arguments: none Return value: 0 Example: The following example exports a range of results
object O; set S; S = SEL.GetAll('ElmRes'); O = S.First(); while (O) { Export:pResult = O; Export.ExportFullRange(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods


H - 72

DIgSILENT PowerFactory

DPL Reference

Using other objects.

ComRes.FileNmResNm
int ComRes.FileNmResNm () Sets the filename for the data export. Arguments: none Return value: 1 See also DPL Internal Methods Set Methods Object Methods Using other objects.

H.3.13

ComEcho Methods

On Turns on the user interface Off Turns off the user interface

ComEcho.On
int ComEcho.On () Turns on the user interface. ComEcho.On() is obsolete. Use the internal command EchoOn() instead. Arguments: none Return value: 0 on success Example: The following example turns off the user interface, calls a subroutine and turns it back on again.
aEcho.Off(); PerformCalculation(); aEcho.On();

See also DPL Internal Methods Set Methods Object Methods Using other objects
H - 73

DIgSILENT PowerFactory

DPL Reference

ComEcho.Off
int ComEcho.Off () Turns off the user interface. ComEcho.Off() is obsolete. Use the internal command EchoOff() instead. Arguments: none Return value: 0 on success Example: The following example turns off the user interface, calls a subroutine and turns it back on again.
aEcho.Off(); PerformCalculation(); aEcho.On();

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.14

SetTime Methods

SetTime Sets the time Date Sets the date at actual Time Sets the time at actual

SetTime.SetTime
void SetTime.SetTime (double H,double M,double S) Sets the time in the current year. There is no restriction to the values for H, M and S, except for the fact that negative values are interpreted as zero. Values higher than 24 or 60 will be processed normally by adding the hours, minutes and seconds into an absolute time, from which a new hour-of-year, hour-of-day, minutes and seconds are calculated. Arguments:

double H (obligatory) : The hours double M (optional) : The minutes double S (optional) : The seconds
Return value: none Example:
H - 74

DIgSILENT PowerFactory

DPL Reference

The following sets the time to 1134.45 hours, 91.2 minutes and 675.3 seconds, which results in the time 08:09:27 on the 48'th day of the year.
object Time, Com; Time = GetCaseObject('SetTime'); Time.SetTime(1134.45, 91.2, 675.3);

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetTime.Date
void SetTime.Date () Sets the current date. Arguments: none Return value: none Example: The following example executes a load-flow for 14:30 at the current day (the computer's system date).
object Time, Com; Time = GetCaseObject('SetTime'); Com = GetCaseCommand('ComLdf'); Time.Date(); Time:hour = 14; Time:min = 30; Com.Execute();

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetTime.Time
void SetTime.Time () Sets the current time. Arguments: none Return value: none
H - 75

DIgSILENT PowerFactory

DPL Reference

Example: The following example executes a load-flow for the current time and date (the computer's system time).
object Time, Com; Time = GetCaseObject('SetTime'); Com = GetCaseCommand('ComLdf'); Time.Date(); Time.Time(); Com.Execute();

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.15

IntMon Methods

PrintVal Prints the values of the selected variables PrintAllVal Prints a description for all variables NVars returns the number of selected variables GetVar Returns the n'th selected variable name RemoveVar De-selects a variable ClearVars Clears the selected variable names AddVar Selects a variable name

IntMon.PrintVal
void IntMon.PrintVal () Prints the values of the selected variables to the output window. Arguments: none Return value: none See also DPL Internal Methods Set Methods Object Methods Using other objects

IntMon.PrintAllVal
void IntMon.PrintAllVal ()
H - 76

DIgSILENT PowerFactory

DPL Reference

Prints a description for all available variables to the output window. Arguments: none Return value: none See also DPL Internal Methods Set Methods Object Methods Using other objects

IntMon.NVars
int IntMon.NVars () Returns the number of selected variables or, more exact, the number of lines in the variable selection text on the second page of the IntMon dialogue, which should contain one variable name per line. Arguments: none Return value: The number of selected variables. See also DPL Internal Methods Set Methods Object Methods Using other objects

IntMon.GetVar
string IntMon.GetVar (int row) Returns the variable name on the given row of the variable selection text on the second page of the IntMon dialogue, which should contain one variable name per line. Arguments: none Return value: The variable name. See also DPL Internal Methods Set Methods Object Methods
H - 77

DIgSILENT PowerFactory

DPL Reference

Using other objects

IntMon.RemoveVar
int IntMon.RemoveVar (string name) Removes the variable "name'' from the list of selected variable names. Arguments: The variable name. Return value: 1 when the variable name was not found, 0 otherwise. See also DPL Internal Methods Set Methods Object Methods Using other objects

IntMon.ClearVars
int IntMon.ClearVars () Clears the list of selected variable names. Arguments: none Return value: none See also DPL Internal Methods Set Methods Object Methods Using other objects

IntMon.AddVar
int IntMon.AddVar (string name) Appends the variable "name'' to the list of selected variable names. Arguments: The variable name. Return value: none See also DPL Internal Methods
H - 78

DIgSILENT PowerFactory

DPL Reference

Set Methods Object Methods Using other objects

H.3.16

SetFilt Methods

Get Returns a container with the filtered objects

SetFilt.Get
Set SetFilt.Get () Returns a container with the filtered objects. Arguments: none Return value: The set of filtered objects Example: The following example shows the names of objects filtered by the FiltLongLines.SetFilt filter
set S; object O; S = FiltLongLines.Get(); O = S.First(); while (O) { O.ShowFullName(); O=S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.17

ComDpl Methods

Execute Executes an external DPL script as a subroutine

ComDpl.Execute
int ComDpl.Execute (user defined arguments) Executes an external DPL script as a subroutine. Arguments: user defined arguments
H - 79

DIgSILENT PowerFactory

DPL Reference

Return value: 0 on success Example: The following example performs a load-flow and calls the DPL subroutine "CheckVoltages'' to check the voltage conditions.
int err; err = Ldf.Execute(); if (.not.err) err = CheckVoltages(0.94, 1.05); if (err) printf('Voltage conditions are violated');

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.18

IntMat Methods

Get Returns the (row, col) value Set Set the value at position (row,col) Init Initializes the matrix Resize Resizes the matrix NRow Returns the number of rows in the matrix NCol Returns the number of columns in the matrix RowLbl Sets the label of the R'th row ColLbl Sets the label of the C'th column

IntMat.Get
double IntMat.Get (int row, int col) Returns the (row, col) value from the matrix. An run-time error will occur when 'row' or 'col' are out of range. Arguments:

int row (obligatory) : row in matrix: 1..NRow() int col (obligatory) : column in matrix: 1..NCol()
Return value: Value in matrix. Example: The following example multiplies two matrices
int r,c,z,s,s1r,s2c; double v1,v2,v; s = M1.NCol(); r = M2.NRow(); H - 80

DIgSILENT PowerFactory

DPL Reference

if (s<>r) {exit();} s1r = M1.NRow(); s2c = M2.NCol(); M3.Init(s1r,s2c); r=1; while (r<=s1r) { c=1; while (c<=s2c) { z=1; v=0.0; while (z<=s) { v1=M1.Get(r,z); v2=M2.Get(z,c); v+=v1*v2; z+=1; } M3.Set(r,c,v); c+=1; } r+=1; }

See also DPL Internal Methods Set Methods Object Methods Using other objects

IntMat.Set
int IntMat.Set (int row, int col, double V) Set the value at position (row,col) in the matrix to V. The matrix is automatically resized if necessary. Arguments:

int row (obligatory) : row number: 1..NRows() int col (obligatory) : col number: 1..NCols() double Vj (obligatory) : value
Return value: 0 on success Example: See IntMat.Get for an example

IntMat.Init
int IntMat.Init (int NRows, int NCols) Initializes the matrix. The size is set to (NRows, NCols), all values are set to 0. Arguments:

int NRows (obligatory) : number of rows int NCols (obligatory) : number of columns
H - 81

DIgSILENT PowerFactory

DPL Reference

Return value: 0 on success Example: See IntMat.Get for an example

IntMat.Resize
int IntMat.Resize (int NRows, int NCols) Resizes the matrix. Existing values will not be changed. Added values will be set to 0. Arguments:

int NRows (obligatory) : number of rows int NCols (obligatory) : number of columns
Return value: 0 on success Example: The following example gets a value from the matrix, possibly resizing it first.
int Nc,Nr,x,y; Nr = Mat.NRows(); Nc = Mat.NCols(); x=5;y=3; if ({x>Nr}.or.{y>Nc}) { Mat.Resize(x,y); } v = Mat.Get(x,y);

See also DPL Internal Methods Set Methods Object Methods Using other objects

IntMat.NRow
int IntMat.NRow () Returns the number of rows in the matrix. The function "NRow()'' replaces the obsolete function "SizeX()''. Arguments: none Return value: The number of rows Example: See IntMat.Get for an example

H - 82

DIgSILENT PowerFactory

DPL Reference

IntMat.NCol
int IntMat.NCol () Returns the number of columns in the matrix. The function "NCol()'' replaces the obsolete function "SizeY()''. Arguments: none Return value: The number of columns Example: See IntMat.Get for an example

IntMat.RowLbl
string IntMat.RowLbl (String S, int R) Sets or reads the label of the R'th row. Arguments:

String S (optional) : Labelstring, required to set the label int R (obligatory) : Number of the row
Return value: Assigned or read labelstring Example: The following example labels some rows.
Mat.RowLbl('overloaded',1); Mat.RowLbl('overvoltage',2); Mat.RowLbl('undervoltage',3);

The following example assigns the label of the first row to the string aLabel
string aLabel; aLabel = Mat.RowLbl(1);

See also DPL Internal Methods Set Methods Object Methods Using other objects

IntMat.ColLbl
string IntMat.ColLbl (String S, int C) Sets or reads the label of the C'th column. Arguments:

String S (optional) : Labelstring int C (obligatory) : Number of the column


H - 83

DIgSILENT PowerFactory

DPL Reference

Return value: Assigned or read labelstring Example: The following example labels some columns.
Mat.ColLbl('transformers',1); Mat.ColLbl('lines',2); Mat.ColLbl('busbars',3);

The following example assigns the label of the first column to the string aLabel
string aLabel; aLabel = Mat.ColLbl(1);

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.19

IntVec Methods

Get Returns the value at index i Set Sets the value at index i Init Initializes the vector Resize Resizes the vector Size Returns the size of the vector

IntVec.Get
double IntVec.Get (int i) Returns the value at index i. Arguments:

int i (obligatory) : Vector index.


Return value: Value at index i. Example: The following example adds two vectors.
int i,j; double v1,v2; i = Vec1.Size(); j = Vec2.Size(); if (i<>j) { output('invalid operation'); exit(); } Vec3.Init(i); i=1; while (i<=j) { H - 84

DIgSILENT PowerFactory

DPL Reference

v1 = Vec1.Get(i); v2 = Vec2.Get(i); Vec3.Set(i,v1+v2); i+=1; }

See also DPL Internal Methods Set Methods Object Methods Using other objects

IntVec.Set
double IntVec.Set (int i, double V) Sets the value at index i to V. Valid indexes are in [1, IntVec.Size()]. Arguments:

int i (obligatory) : Vector index. double V (obligatory) : The value to set.


Return value: 0 on success Example: See IntVec.Get for an example

IntVec.Init
int IntVec.Init (int Size) Initializes the vector. Sets the length to Size and all values to 0. Arguments:

int Size (obligatory) : The initial size.


Return value: 0 on success Example: See IntVec.Get for an example

IntVec.Resize
int IntVec.Resize (int Size) Resizes the vector. Added values are set to 0.0. Arguments: none Return value:
H - 85

DIgSILENT PowerFactory

DPL Reference

0 on success Example: The following example adds a value to a dynamically scaled vector.
int i,s; i = 5; s = Vec.Size(); if (i>s) { Vec.Resize(i); } Vec.Set(i,V);

See also DPL Internal Methods Set Methods Object Methods Using other objects

IntVec.Size
int IntVec.Size () Returns the size of the vector. Arguments: none Return value: The size of the vector Example: See IntVec.Get for an example

H.3.20

ElmCoup Methods

Close Closes the buscoupler Open Opens the buscoupler IsOpen Returns 1 when the coupler is open IsClosed Returns 1 when the coupler is closed

ElmCoup.Close
int ElmCoup.Close () Closes the buscoupler. Arguments: none Return value: 0 on success
H - 86

DIgSILENT PowerFactory

DPL Reference

Example: The following example gathers all open couplers before closing them.
int opn; set S, So; object O; S = Couplers.AllElm(); O = S.First(); while (O) { opn = O.IsOpen(); if (opn) { O.Close(); So.Add(O); }; }

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmCoup.Open
int ElmCoup.Open () Opens the buscoupler. Arguments: none Return value: 0 on success Example: The following example gathers all closed couplers before opening them.
int cl; set S, Sc; object O; S = Couplers.AllElm(); O = S.First(); while (O) { cl = O.IsClosed(); if (opn) { O.Open(); Sc.Add(O); }; }

See also DPL Internal Methods Set Methods Object Methods Using other objects
H - 87

DIgSILENT PowerFactory

DPL Reference

ElmCoup.IsOpen
int ElmCoup.IsOpen () Returns 1 when the coupler is open. Arguments: none Return value: 1 when open, 0 when closed Example: See ElmCoup.Close for an example

ElmCoup.IsClosed
int ElmCoup.IsClosed () Returns 1 when the coupler is closed. Arguments: none Return value: 1 when closed, 0 when open Example: See ElmCoup.Open for an example

H.3.21

ElmLne Methods

HasRoutes Returns if the line is subdivided into routes HasRoutesOrSec Returns if the line is subdivided into routes or sections GetType Returns the line type object IsCable Returns if this is a cable IsNetCoupling Returns if the line connects two grids SetCorr Sets the correction factor of the line CreateFeederWithRoutes Splits the line in 2 routes

ElmLne.HasRoutes
int ElmLne.HasRoutes () Returns if the line is subdivided into routes. Arguments: none Return value: 0 when the line is a single line, 1 when it is subdivided into routes.
H - 88

DIgSILENT PowerFactory

DPL Reference

Example: The following example reports all lines with routes.


set S; object O; int i; S = AllRelevant(); O = S.Firstmatch('ElmLne'); while (O) { i = O.HasRoutes(); if (i) O.ShowFullName(); O = S.Nextmatch(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmLne.HasRoutesOrSec
int ElmLne.HasRoutesOrSec () Returns if the line is subdivided into routes or sections. Arguments: none Return value: 0 when the line is a single line, 1 when it is subdivided into routes, 2 when into sections. Example: The following example reports all lines with sections.
set S; object O; int i; S = AllRelevant(); O = S.Firstmatch('ElmLne'); while (O) { i = O.HasRoutesOrSec(); if (i=2) O.ShowFullName(); O = S.Nextmatch(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmLne.GetType
int ElmLne.GetType ()
H - 89

DIgSILENT PowerFactory

DPL Reference

Returns the line type object. Arguments: none Return value: The TypLne object Example: The following example reports all 'untyped' lines
set S; object O, T; S = AllRelevant(); O = S.Firstmatch('ElmLne'); while (O) { T = O.GetType(); if (T=0) { O.ShowFullName(); } O = S.Nextmatch(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmLne.IsCable
int ElmLne.IsCable () Returns if this is a cable. Arguments: none Return value: 1 when the line is a cable, otherwise 0. Example: The following example reports the loading of all cables.
set S; object O; int i; S = AllRelevant(); O = S.Firstmatch('ElmLne'); while (O) { i = O.IsCable(); if (i) { Write('# : #.## $N, @ACC(1):loc_name, @ACC(1):c:loading, O); } O = S.Nextmatch(); }

H - 90

DIgSILENT PowerFactory

DPL Reference

ElmLne.IsNetCoupling
int ElmLne.IsNetCoupling () Returns if the line connects two grids. Arguments: none Return value: 1 when the line is a coupler, otherwise 0. Example: The following example reports all the loading of all couplers
set S; object O; int i; S = AllRelevant(); O = S.Firstmatch('ElmLne'); while (O) { i = O.IsNetCoupling(); if (i) { Write('# : #.## $N, @ACC(1):loc_name, @ACC(1):c:loading, O); } O = S.Nextmatch(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmLne.SetCorr
int ElmLne.SetCorr () Sets the correction factor of the line, according to IEC364-5-523. Arguments: none Return value: 0 on success, 1 on error; Example: The following example sets a correction factor.
BuriedLine.SetCorr();

See also DPL Internal Methods Set Methods Object Methods Using other objects
H - 91

DIgSILENT PowerFactory

DPL Reference

ElmLne.CreateFeederWithRoutes
int ElmLne.CreateFeederWithRoutes (double dis,double rem,object O[int sw0,int sw1]) Creates a new feeder in the line by splitting the line in 2 routes and inserting a terminal. Arguments:

double dis (obligatory) : double rem (obligatory) : object O (obligatory) : A branch object that is to be connected at the inserted terminal. int sw0 (optional) : when true, a switch is inserted on the one side int sw1 (optional) : when true, a switch is inserted on the other side
Return value: 0 on success, 1 on error; See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.22

ElmLneroute Methods

IsCable Returns if the route is a cable HasSections Returns if the line route is subdivided into sections

ElmLneroute.IsCable
int ElmLneroute.IsCable () Returns if the route is a cable. Arguments: none Return value: 1 when a cable, otherwise 0. Example: The following example reports all cable routes.
set S; object O; int i; S = AllRelevant(); O = S.Firstmatch('ElmLneroute'); while (O) { i = O.IsCable(); if (i) O.ShowFullName(); O = S.Nextmatch(); H - 92

DIgSILENT PowerFactory

DPL Reference

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmLneroute.HasSections
int ElmLneroute.HasSections () Returns if the line route is subdivided into sections. Arguments: none Return value: 1 when subdivided sections, 0 otherwise Example: The following example reports all lines routes with sections.
set S; object O; int i; S = AllRelevant(); O = S.Firstmatch('ElmLneroute'); while (O) { i = O.HasSections(); if (i) O.ShowFullName(); O = S.Nextmatch(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.23

TypLne Methods

IsCable Returns if the line type is a cable type SetNomCurr Sets the nominal current of the line type

TypLne.IsCable
int TypLne.IsCable () Returns if the line type is a cable type. Arguments:
H - 93

DIgSILENT PowerFactory

DPL Reference

none Return value: 1 when the line type is a cable type, otherwise 0. Example: The following example reports all cable types.
set S; object O; int i; S = AllRelevant(); O = S.Firstmatch('TypLne'); while (O) { i = O.IsCable(); if (i) O.ShowFullName(); O = S.Nextmatch(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

TypLne.SetNomCurr
int TypLne.SetNomCurr () Sets the nominal current of the line type, according to IEC364-5-523. Arguments: none Return value: 0 on success, 1 on error. Example: The following example sets the correction factor.
BuriedLineType.SetNomCurr();

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.24

ElmRes Methods

Init Initializes the result object Clear Clears the result object Write Writes the current results
H - 94

DIgSILENT PowerFactory

DPL Reference

Draw Updates all relevant plots WriteDraw Writes results and updates all plots SetAsDefault Sets this as default results AddVars Adds to the list of monitored variables GetObj Returns objects used in the result file

ElmRes.Init
int ElmRes.Init () Initializes the result object. This is required for all result files that are not stored in the DPL command object. Arguments: none Return value: 0 on success Example: The following example initializes the result object.
Res.Init();

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmRes.Clear
int ElmRes.Clear () Clears the result object. Arguments: none Return value: 0 on success Example: The following example clears the result object.
Res.Clear();

See also DPL Internal Methods Set Methods Object Methods Using other objects
H - 95

DIgSILENT PowerFactory

DPL Reference

ElmRes.Write
int ElmRes.Write () Writes the current results to the result object. Arguments: none Return value: 0 on success Example: The following example performs load-flows for a number of load levels and writes the results to the result object
double P; double i; P = LoadMin; i = 1; while ({P<LoadMax}.and.{i}) { i = Ldf.Execute(); if (i) { Res.Write(); P += LoadStep; } }

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmRes.Draw
int ElmRes.Draw () Updates all plots that display values from the result object. Arguments: none Return value: 0 on success Example: The following example updates the graphics every 10 steps to save time and yet follow the results while calculating
double i,n; Ld:pini = LoadMin; i = 1; n = 0; while ({Ld:pini<LoadMax}.and.{i}) { i = Ldf.Execute(); if (i) { Res.Write(); H - 96

DIgSILENT PowerFactory

DPL Reference

n += 1; Ld:pini += LoadStep; } if (n>9) { Res.Write(); n = 0; } }

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmRes.WriteDraw
int ElmRes.WriteDraw () Writes current results to the result objects and updates all plots that display values from the result object. Arguments: none Return value: 0 on success Example: The following example performs load-flows for a number of load levels and writes the results to the result object
double P; double i; P = LoadMin; i = 1; while ({P<LoadMax}.and.{i}) { i = Ldf.Execute(); if (i) { Res.WriteDraw(); P += LoadStep; } }

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmRes.SetAsDefault
void ElmRes.SetAsDefault () Sets this results object as the default results object.
H - 97

DIgSILENT PowerFactory

DPL Reference

Arguments: none Return value: none See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmRes.AddVars
void ElmRes.AddVars (object O, string v1 [,string v2,...]) Adds variables to the list of monitored variables for the Result object. Arguments:

object O (obligatory) : an object. string v1 (obligatory) : variable name for object O. string v2..v9 (optional) : optional further variables names for object O.
Return value: none Example:
object Res; Res = MyResults(); Res.AddVars(MyLine,'m:Ikss:busshc','m:I:busshc');

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmRes.GetObj
object ElmRes.GetObj (int index) Returns the objects used in the result file. Positive index means objects for which parameters are being monitored (i.e. column objects). Negative index means objects which occur in written result rows as values. Arguments:

int index (obligatory) : index of the object.


Return value: the object, when found.

H - 98

DIgSILENT PowerFactory

DPL Reference

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.25

ElmZone Methods

GetAll Returns all objects in this zone GetBuses Returns all buses in this zone GetNodes Returns all nodes in this zone GetBranches Returns all branches and buses in this zone GetObjs Returns all objects of the given class in this zone

ElmZone.GetAll
set ElmZone.GetAll () Returns all objects which belong to this zone. Arguments: none Return value: The set of objects Example:
set aAll,aZones; object pPrj,pZone,pObj; ! output elements in the zone pPrj = ActiveProject(); if (pPrj) { aZones = pPrj.GetContents('*.ElmZone',1); aZones.SortToVar(0,'loc_name'); for (pZone=aZones.First(); pZone; pZone=aZones.Next()) { printf('Elements in zone %s',pZone:loc_name); aAll = pZone.GetAll(); for (pObj=aAll.First(); pObj; pObj=aAll.Next()) { printf(' %s\\%s',pObj:r:fold_id:loc_name,pObj:loc_name); } } }

See also DPL Internal Methods Set Methods Object Methods Using other objects

H - 99

DIgSILENT PowerFactory

DPL Reference

ElmZone.GetBuses
set ElmZone.GetBuses () Returns all buses which belong to this zone. Arguments: none Return value: The set of objects See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmZone.GetNodes
set ElmZone.GetNodes () Returns all nodes which belong to this zone. Arguments: none Return value: The set of objects Example:
set aAll,aZones; object pPrj,pZone,pObj; ! output elements in the zone pPrj = ActiveProject(); if (pPrj) { aZones = pPrj.GetContents('*.ElmZone',1); aZones.SortToVar(0,'loc_name'); for (pZone=aZones.First(); pZone; pZone=aZones.Next()) { printf('Nodes in zone %s',pZone:loc_name); aAll = pZone.GetBuses(); for (pObj=aAll.First(); pObj; pObj=aAll.Next()) { printf(' %s\\%s',pObj:r:fold_id:loc_name,pObj:loc_name); } } }

See also DPL Internal Methods Set Methods Object Methods Using other objects

H - 100

DIgSILENT PowerFactory

DPL Reference

ElmZone.GetBranches
set ElmZone.GetBranches () Returns all branches which belong to this zone. Arguments: none Return value: The set of objects Example:
set aAll,aZones; object pPrj,pZone,pObj; ! output elements in the zone pPrj = ActiveProject(); if (pPrj) { aZones = pPrj.GetContents('*.ElmZone',1); aZones.SortToVar(0,'loc_name'); for (pZone=aZones.First(); pZone; pZone=aZones.Next()) { printf('Branches in zone %s',pZone:loc_name); aAll = pZone.GetBranches(); for (pObj=aAll.First(); pObj; pObj=aAll.Next()) { printf(' %s\\%s',pObj:r:fold_id:loc_name,pObj:loc_name); } } }

See also DPL Internal Methods Set Methods Object Methods Using other objects

ElmZone.GetObjs
set ElmZone.GetObjs (string classname) Returns all objects of the given class which belong to this zone. Arguments:

string classname (obligatory) : name of the class.


Return value: The set of objects Example:
set aAll,aZones; object pPrj,pZone,pObj; ! output cubicles in the zone pPrj = ActiveProject(); if (pPrj) { aZones = pPrj.GetContents('*.ElmZone',1); aZones.SortToVar(0,'loc_name'); for (pZone=aZones.First(); pZone; pZone=aZones.Next()) { printf('Cubicles in zone %s',pZone:loc_name); H - 101

DIgSILENT PowerFactory

DPL Reference

aAll = pZone.GetObjs('StaCubic'); for (pObj=aAll.First(); pObj; pObj=aAll.Next()) { printf(' %s\\%s',pObj:r:fold_id:loc_name,pObj:loc_name); } } }

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.26

ComRel3 Methods

Execute Executes the command RemoveOutages Removes contingency definitions RemoveEvents Removes events stored in contingencies AnalyseElmRes Evaluates results object created in last calculation

ComRel3.Execute
int ComRel3.Execute () Executes the Level 3 reliability assessment calculations. Arguments: none Return value: 0 on success Example: The following example executes a ComRel3 Command named 'Rel3'
Rel3.Execute();

ComRel3.RemoveOutages
void ComRel3.RemoveOutages () Removes all contingency definitions (*.ComOutage) stored inside the command. This is exactly the same like pressing the button named "Delete Contingencies" in the dialogue box of the command. Arguments:

int msg (optional) :


1 0 show info message in output window (taken by default), do not show a message

Return value:
H - 102

DIgSILENT PowerFactory

DPL Reference

none Example: The following example removes all ComOutage objects stored inside the ComRel command in the study case.
object aCmd; aCmd = GetCaseObject('*.ComRel3'); ! get the command from study case if (aCmd) { aCmd.RemoveOutages(0); ! suppress info message }

ComRel3.RemoveEvents
void ComRel3.RemoveEvents (string type, int info) Removes events stored inside the contingencies (*.ComOutage) inside the command. Arguments:

string type (optional):


none 'Lod' 'Gen' 'Switch' 1 0 Return value: none Example: The following example shows how to remove events from the ComOutage commands stored inside ComRel3:
object aCmd; aCmd = GetCaseObject('*.ComRel3'); ! if (aCmd) { aCmd.RemoveOutages('Lod');! delete aCmd.RemoveOutages('Gen');! remove aCmd.RemoveOutages(0); ! delete } get the command from study case all EvtLod all EvtGen remaining, suppress info message

remove all events stored inside the ComOutages inside ComRel3 remove all EvtLod remove all EvtGen' remove all EvtSwitch' show info message in output window (default) do not show info message

int info (optional):

ComRel3.AnalyseElmRes
int ComRel3.AnalyseElmRes (int error) Evaluate the results object created by the last calculation. Performs exactly the same like pressing the button 'Perform Evaluation of Result File' in the dialogue box of the command. Arguments:

H - 103

DIgSILENT PowerFactory

DPL Reference

int error (optional):


0 1 Return value: 0 on success, !=0 on error. Example: The following example shows how to call the evaluation of the results.
object aCmd, aResFile; int iError; aCmd = GetCaseObject('*.ComRel3'); ! get the command from study case if (aCmd) { iError=aCmd.AnalyseElmRes(0); ! hide error message if (iError) { ! display my own error message aResFile = aCmd:p_resenum; if (aResFile) { Error('Evaluation of results %s failed', aResFile:loc_name); } } }

do not display an error message (default) display error messages in case of errors

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.27

ComInc Methods

Execute Executes the command

ComInc.Execute
int ComInc.Execute () Executes a calculation of initial values. Arguments: none Return value: 0 on success Example: The following example executes the ComInc command named 'Inc'
Inc.Execute();

See also DPL Internal Methods


H - 104

DIgSILENT PowerFactory

DPL Reference

Set Methods Object Methods Using other objects

H.3.28

ComLdf Methods

Execute Executes the command

ComLdf.Execute
int ComLdf.Execute () Execute a load-flow calculation. Arguments: none Return value: 0 on success Example: The following example executes the ComLdf command name 'Ldf'
Ldf.Execute();

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.29

ComShc Methods

Execute Executes the command

ComShc.Execute
int ComShc.Execute () Executes a short-circuit calculation. Arguments: none Return value: 0 on success Example: The following example execute the ComShc command named 'Shc'
Shc.Execute();

See also
H - 105

DIgSILENT PowerFactory

DPL Reference

DPL Internal Methods Set Methods Object Methods Using other objects

H.3.30

StaSwitch Methods

Close Closes the switch Open Opens the switch IsOpen Returns if the switch is open IsClosed Returns if the switch is closed

StaSwitch.Close
int StaSwitch.Close () Closes the switch. Arguments: none Return value: 0 on success Example: The following example gathers all open switches before closing them.
int opn; set S, So; object O; S = Switches.AllElm(); O = S.First(); while (O) { opn = O.IsOpen(); if (opn) { O.Close(); So.Add(O); }; }

See also DPL Internal Methods Set Methods Object Methods Using other objects

StaSwitch.Open
int StaSwitch.Open () Opens the switch.
H - 106

DIgSILENT PowerFactory

DPL Reference

Arguments: none Return value: 0 on success Example: The following example gathers all closed switches before opening them.
int cl; set S, Sc; object O; S = Couplers.AllElm(); O = S.First(); while (O) { cl = O.IsClosed(); if (opn) { O.Open(); Sc.Add(O); }; }

See also DPL Internal Methods Set Methods Object Methods Using other objects

StaSwitch.IsOpen
int StaSwitch.IsOpen () Checks if the switch is open. Arguments: none Return value: 1 when open, 0 when closed Example: See StaSwitch.Close for an example

StaSwitch.IsClosed
int StaSwitch.IsClosed () Checks if the switch is closed. Arguments: none Return value: 1 when closed, 0 when open

H - 107

DIgSILENT PowerFactory

DPL Reference

Example: See StaSwitch.Open for an example

H.3.31

SetFeeder Methods

GetAll Returns all objects in the feeder GetBuses Returns all nodes in the feeder GetBranches Returns all branches in the feeder

SetFeeder.GetAll
Set SetFeeder.GetAll () Returns all objects in the feeder. Arguments: none Return value: The set with all objects Example: The following example gets all feeder objects.
set S; S = Feeder1.GetAll();

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetFeeder.GetBuses
Set SetFeeder.GetBuses () Returns all busbars and terminals in the feeder. Arguments: none Return value: The set with all busbars and terminals Example: The following example gets all feeder bars.
set S; S = Feeder1.GetBuses();

See also DPL Internal Methods


H - 108

DIgSILENT PowerFactory

DPL Reference

Set Methods Object Methods Using other objects

SetFeeder.GetBranches
Set SetFeeder.GetBranches () Returns all branches in a feeder. Arguments: none Return value: The set with all branches Example: The following example gets all feeder branches
set S; S = Feeder1.GetBranches();

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.32

SetPath Methods

GetAll Returns all objects in the path GetBusses Returns all nodes in the path GetBranches Returns all branches in the path AllBreakers Returns all breakers in the path AllClosedBreakers Returns all closed breakers in the path AllOpenBreakers Returns all open breakers in the path

SetPath.GetAll
Set SetPath.GetAll () Returns all objects in the path definition. Arguments: none Return value: The set of objects Example:
H - 109

DIgSILENT PowerFactory

DPL Reference

The following example writes all objects in the path definition to the output window.
set S; object O; S = aPath.GetAll(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetPath.GetBusses
Set SetPath.GetBusses () Returns all busbars and terminals in the path definition. Arguments: none Return value: The set of objects Example: The following example writes all busbars and terminals in the path definition to the output window.
set S; object O; S = aPath.GetBusses(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetPath.GetBranches
Set SetPath.GetBranches () Returns all branches in the path definition. Arguments:
H - 110

DIgSILENT PowerFactory

DPL Reference

none Return value: The set of objects Example: The following example writes all branches in the path definition to the output window.
set S; object O; S = aPath.GetBranches(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetPath.AllBreakers
Set SetPath.AllBreakers () Returns all breakers in the path definition. Arguments: none Return value: The set of objects Example: The following example writes all breakers in the path definition to the output window.
set S; object O; S = aPath.AllBreakers(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

H - 111

DIgSILENT PowerFactory

DPL Reference

SetPath.AllClosedBreakers
Set SetPath.AllClosedBreakers () Returns all closed breakers in the path definition. Arguments: none Return value: The set of objects Example: The following example writes all closed breakers in the path definition to the output window.
set S; object O; S = aPath.AllClosedBreakers(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetPath.AllOpenBreakers
Set SetPath.AllOpenBreakers () Returns all open breakers in the path definition. Arguments: none Return value: The set of objects Example: The following example writes all open breakers in the path definition to the output window.
set S; object O; S = aPath.AllOpenBreakers(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also
H - 112

DIgSILENT PowerFactory

DPL Reference

DPL Internal Methods Set Methods Object Methods Using other objects

H.3.33

SetSelect Methods

All Returns all objects GetAll Returns all of the given class AddRef Add references Clear Empties the selection AllElm Returns all elements AllLines Returns all lines AllBars Returns all busbars and terminals AllLoads Returns all loads AllAsm Returns all asynchronous machines AllSym Returns all synchronous machines AllTypLne Returns all line types AllBreakers Returns all breakers AllClosedBreakers returns all closed breakers AllOpenBreakers returns all open breakers

SetSelect.AddRef
void SetSelect.AddRef ([object O | set S]) Adds a reference to the objects to the existing selection. Arguments: One of the following two parameter has to be given

object O (optional) : an object set S (optional) : a set of objects


Return value: void Example: The following example adds all loads and lines from the general DPL selection to the selection "MySelection''.
set S; S = SEL.AllLines(); MySelection.AddRef(S); S = SEL.AllLoads(); MySelection.AddRef(S);

See also
H - 113

DIgSILENT PowerFactory

DPL Reference

DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.Clear
void SetSelect.Clear () Empties the selection. Arguments: none Return value: void Example: The following example creates a selection of all loads in the general DPL selection.
set S; S = SEL.AllLines(); MySelection.Clear(); MySelection.AddRef(S);

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.AllElm
Set SetSelect.AllElm () Returns all elements (Elm*) in the selection. Arguments: none Return value: The set of objects Example: The following example writes all objects in the general DPL selection to the output window.
set S; object O; S = SEL.AllElm(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); } H - 114

DIgSILENT PowerFactory

DPL Reference

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.AllLines
Set SetSelect.AllLines () Returns all lines and line routes in the selection. Arguments: none Return value: The set of objects Example: The following example writes all lines and line routes in the general DPL selection to the output window.
set S; object O; O.ShowFullName(); S = SEL.AllLines(); O = S.Next(); } O = S.First(); while (O) {

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.AllBars
Set SetSelect.AllBars () Returns all busbars and terminals in the selection. Arguments: none Return value: The set of objects Example: The following example writes all bars in the general DPL selection to the output window.
set S; object O; S = SEL.AllBars(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); } H - 115

DIgSILENT PowerFactory

DPL Reference

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.AllLoads
Set SetSelect.AllLoads () Returns all loads in the selection. Arguments: none Return value: The set of objects Example: The following example writes all loads in the general DPL selection to the output window.
set S; object O; S = SEL.AllLoads(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.AllAsm
Set SetSelect.AllAsm () Returns all asynchronous machines in the selection. Arguments: none Return value: The set of objects Example: The following example writes all asynchronous machines in the general DPL selection to the output window.
set S; object O; H - 116

DIgSILENT PowerFactory

DPL Reference

S = SEL.AllAsm(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.AllSym
Set SetSelect.AllSym () Returns all synchronous machines in the selection. Arguments: none Return value: The set of objects Example: The following example writes all synchronous machines in the general DPL selection to the output window.
set S; object O; S = SEL.AllSym(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.AllTypLne
Set SetSelect.AllTypLne () Returns all line types in the selection. Arguments: none Return value:
H - 117

DIgSILENT PowerFactory

DPL Reference

The set of objects Example: The following example writes all line types in the general DPL selection to the output window.
set S; object O; S = SEL.AllTypLne(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.All
Set SetSelect.All () Returns all objects in the selection. Arguments: none Return value: The set of objects Example: The following example writes objects in the general DPL selection to the output window.
set S; object O; S = SEL.All(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.GetAll
Set SetSelect.GetAll (String ClassName)
H - 118

DIgSILENT PowerFactory

DPL Reference

Returns all objects in the selection which are of the class 'ClassName'. Arguments:

String ClassName (obligatory) : The object class name.


Return value: The set of objects Example: The following example writes all three winding transformers in the general DPL selection to the output window.
set S; object O; S = SEL.GetAll('ElmTr3'); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.AllBreakers
Set SetSelect.AllBreakers () Returns all breakers in the selection. Arguments: none Return value: The set of objects Example: The following example writes all breakers in the general DPL selection to the output window.
set S; object O; S = SEL.AllBreakers(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods


H - 119

DIgSILENT PowerFactory

DPL Reference

Using other objects

SetSelect.AllClosedBreakers
Set SetSelect.AllClosedBreakers () Returns all closed breakers in the selection. Arguments: none Return value: The set of objects Example: The following example writes all closed breakers in the general DPL selection to the output window.
set S; object O; S = SEL.AllClosedBreakers(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); }

See also DPL Internal Methods Set Methods Object Methods Using other objects

SetSelect.AllOpenBreakers
Set SetSelect.AllOpenBreakers () Returns all open breakers in the selection. Arguments: none Return value: The set of objects Example: The following example writes all open breakers in the general DPL selection to the output window.
set S; object O; S = SEL.AllOpenBreakers(); O = S.First(); while (O) { O.ShowFullName(); O = S.Next(); } H - 120

DIgSILENT PowerFactory

DPL Reference

See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.34

IntForm Methods

SetText Sets the format text WriteOut Write the report to the output window

IntForm.SetText
int IntForm.SetText (String Text) Sets the format text of a report form. Arguments:

String Text (obligatory) : The format text string


Return value: 0 on success Example: The following example sets a format string and writes the report for two sets
set SLines,SLoads; ... fill SLines and SLoads ... OvlReport.SetText(' | Loading of lines: |$H $LOOP,_EXTERNAL |# #.# |$N,loc_name,loading $END '); OvlReport.WriteOut(SLines, SLoads);

See also IntForm.WriteOut See also DPL Internal Methods Set Methods Object Methods Using other objects

IntForm.WriteOut
int IntForm.WriteOut (set ListSet, set PoolSet, int Landscape) Write the report to the output window. The report form object will write a report to the output window, based on the format text, for the objects in the ListSet and the PoolSet. The ListSet is used in the _EXTERNAL macro. All format lines between the $LOOP,_EXTERNAL and the $END macro's will be written
H - 121

DIgSILENT PowerFactory

DPL Reference

for each object in the Listset, which is therefore called the 'sequential set'. In the format text itself, objects from the PoolSet may be referenced directly by the "ACC(x)'' macro, which is replaced by the x'th object in the PoolSet. The PoolSet is therefore called the 'random access set'. The ListSet or PoolSet may be empty. The command object that is normally reached by the macro "DEF'' in report forms will always return the main DPL command that is running at the moment, even when the 'WriteOut' call is made in a DPL subscript. Arguments: Set ListSet (obligatory) : The sequential set of objects

Set PoolSet (optional) : The random access set of objects int Landscape (optional) : Sets the page orientation used to calculate the number of lines
fitting on a printed page Return value: 0 on success Example: The following example reports the loading of a list of objects for a certain load condition. The objects for the loading are sequentially listed. The load conditions are reported for a special set of loads, which are given as a pool of objects.
set SLines,SLoads; ... fill SLines and SLoads ... OvlReport.WriteOut(SLines, SLoads);

0 = Portrait, 1 = Landscape; default: Landscape

If OvlReport has the following format string:


---------------------$H, | command : # |$H,DEF:loc_name | Load settings: |$H| # #.# |$H,ACC(2):loc_name,ACC(2):plini | # #.# |$H,ACC(3):loc_name,ACC(3):plini ---------------------$H, | Loading of lines: |$H $LOOP,_EXTERNAL |# #.# |$N,loc_name,loading $END ---------------------$F,

the following report could be the result:


---------------------| command : FindWL | | Load settings: | | Ld12a 3.43 | | Ld14b 2.52 | --------------------| Loading of lines: | | Ln1 95.6 | | Ln2 92.1 | | Ln3 90.4 | | Ln4 85.3 | | Ln5 84.7 | | Ln6 84.2 | | Ln7 82.6 | | Ln8 62.5 | ---------------------

H - 122

DIgSILENT PowerFactory

DPL Reference

See also IntForm.SetText See also DPL Internal Methods Set Methods Object Methods Using other objects

H.3.35
Show WriteWMF GetPage SetResults SetXVar SetScaleX

SetDesktop Methods

DoAutoScaleX SetAutoScaleX SetAdaptX

SetDesktop.Show
int SetDesktop.Show ([string name|object O]) Shows the page with the same name as 'O'' or the page with name "name'' in the Graphics Board. The object "O'' is typically a ViPage object but, as only its name is used, it may be any other type of object. Arguments:

string name (obligatory) : Name of graphics page. object O (optional) : An object.


Return value: 0 on success, 1 on error. Example: The following example activates all pages in the graphics board one by one and exports them as WMF figures.
object GrBrd,Pg; set Pgs; int n; string FileName; GrBrd = GetGraphBoard(); if (GrBrd) { Pgs = GrBrd.GetContents(); Pg = Pgs.First(); while (Pg) { GrBrd.Show(Pg); FileName = sprintf('c:\\mydoc\\%s%d', n, Pg:loc_name); H - 123

DIgSILENT PowerFactory

DPL Reference

GrBrd.WriteWMF(FileName); Pg = Pgs.Next(); } }

Also see Using other objects

SetDesktop.WriteWMF
void SetDesktop.WriteWMF (string filename) Exports the currently open graphic in the graphics board to a WMF figure. Arguments:

string name (obligatory) : Filename without extension.


Return value: none Example: See SetDeskTop.Show() Also see Using other objects

SetDesktop.GetPage
object SetDesktop.GetPage (string name, int create) Searches, activates and returns a graphics page in the currently open Graphics Board. If "create'' is true, then a new ViPage will be created added to the graphics board when no page with the name was found. Arguments:

string name (obligatory) : Name of the page. int create=1 (optional) : create > 0 --> create panel if not exists.
Return value: Virtual Instrument Panel (SetVipage) Example: The following example looks for the Virtual Instrument Panels named Voltage, Current and Power in the Graphics Board currently opened. The pages are created if they do not exist.
object aGrf; object aPageV; object aPageC; object aPageP; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Search or create Virtual Instrument Panels aPageV=aGrf.GetPage('Voltage',1); aPageC=aGrf.GetPage('Current',1); aPageP=aGrf.GetPage('Power',1); }

Also see Using other objects


H - 124

DIgSILENT PowerFactory

DPL Reference

SetDesktop.SetResults
void SetDesktop.SetResults (object res) Sets default Results (ElmRes) of Graphics Board. Arguments:

object res (obligatory) : Results to set (ElmRes) or NULL to reset.


Return value: none Example: The following example looks for an opened Graphics Board and sets its default results to the results object named 'Results'.
object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Set default results object aGrf.SetResults(Results); }

Also see Using other objects

SetDesktop.SetXVar
void SetDesktop.SetXVar (object obj, string varname) Sets x-axis variable. If obj and varname are empty the default x-axis variable (time) is set. Arguments:

object obj (optional) : x-axis object string varname (optional) : variable of obj
Return value: none Example: The following examples look for an opened Graphics Board and set its x-axis variable. The first example sets an user defined x-axis variable. The second one sets the default x-axis (time).
object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Set user defined x-axis variable aGrf.SetXVar(line,'m:U1:bus1'); } object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Set default x-axis variable (time) aGrf.SetXVar(); }

Also see Using other objects


H - 125

DIgSILENT PowerFactory

DPL Reference

SetDesktop.SetScaleX
void SetDesktop.SetScaleX (double min, double max, int log) Sets scale of x-axis. Invalid arguments like neg. limits for log. scale are not set. No arguments --> automatic scaling. Arguments:

double min (optional) : Minimum of x-scale. double max (optional) : Maximum of x-scale. int log (optional) : > 0 --> x-scale is logarithmic.
Return value: none Example: The following examples look for an opened Graphics Board and set its x-axis scale. There are three different examples. 1. Example: Scale x-axis automatically 2. Example: Set minimum to 0 and maximum to 20. 3. Example: Set minimum to 1 and maximum to 1000. Changes to a log. scale
! Scale x-axis automatically object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Scale automatically aGrf.SetScaleX(); } ! Set minimum and maximum without changing map mode object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Set minimum and maximum aGrf.SetScaleX(2,10); } ! Set minimum and maximum, change to log. scaleobject aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Set minimum and maximum aGrf.SetScaleX(1,1000,1); }

Also see Using other objects

SetDesktop.DoAutoScaleX
int SetDesktop.DoAutoScaleX () Scales the x-axes of all plots in the graphics board which use the x-axis scale defined in the graphics board. The same can be achieved by pressing the Scale button on the xAxis page of the graphics board. Arguments: none
H - 126

DIgSILENT PowerFactory

DPL Reference

Return value: none Example: The following example looks for a page named voltage and performs an automatic scaling of the x-axes.
! perform autoscale of x-scales of all plots ! using the x-scale definition of the graphics board. object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { aGrf.DoAutoScaleX(); }

Also see VisFft Methods VisPlot Methods and SetViPage Methods

SetDesktop.SetAutoScaleX
void SetDesktop.SetAutoScaleX (int mode) Sets the automatic scaling mode of the x-scale. Arguments:

int mode (obligatory) : Possible values: 0 never, 1 after simulation, 2 during simulation
Return value: none Example: The following example looks for an opened Graphics Board and sets its auto scale mode to off.
! Set autoscale mode to offobject aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Turn off automatic scaling of x-scale aGrf.SetAutoScaleX(0); }

Also see Using other objects

SetDesktop.SetAdaptX
void SetDesktop.SetAdaptX (int mode, double trigger) Sets the adapt scale option of the x-scale. Arguments:

int mode (obligatory) : Possible values: 0 off, 1 on double trigger (optional) : Trigger value, unused if mode is off or empty.
Return value:
H - 127

DIgSILENT PowerFactory

DPL Reference

none Example: The following example looks for an opened Graphics Board and sets its adapt scale option.
object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Turn on adapt scale, use a trigger value of 3 aGrf.SetAdaptX(1,3); ! Turn off adapt scale aGrf.SetAdaptX(0,3); ! Turn on adapt scale again, do not change the trigger value aGrf.SetAdaptX(1); }

Also see Using other objects

H.3.36
GetVI SetStyle SetTile SetResults SetXVar SetScaleX SetDefScaleX

SetVipage Methods

DoAutoScaleX DoAutoScaleY SetAutoScaleX SetAdaptX GetScaleObjX

SetVipage.GetVI
object SetVipage.GetVI (string name, string class, int create) Searches for a virtual instruments on the Virtual Instrument Panel. Arguments:

string name (obligatory) : Name of Virtual Instrument string class='VisPlot' (optional) : classname of Virtual Instrument. int create=1 (optional) : create >0 --> create panel if not exists.
Return value: Virtual Instrument Example: The following example looks for a Plot (VisPlot) named RST on a Virtual Instrument Panel.
H - 128

DIgSILENT PowerFactory

DPL Reference

The plot is created if it was not found.


object aGrf; object aPage; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get plot named RST. Create the plot if not exists aPlot=aPage.GetVI('RST','VisPlot',1); } }

Also see Using other objects

SetVipage.SetStyle
void SetVipage.SetStyle (string name) Sets style folder of Virtual Instrument Panel. Arguments:

string name (obligatory) : Name of style.


Return value: none Example: The following example looks for a Virtual Instrument Panel named Voltage and sets its style to 'Paper'.
object aGrf; object aPage; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Set style named Paper aPage.SetStyle('Paper'); } }

Also see Using other objects

SetVipage.SetTile
void SetVipage.SetTile (int tile) Rearranges the Virtual Instruments. Arguments:

int tile=1 (optional) : tile > 0 --> tile Virtual Instruments, tile =0 --> arrange them horizontally. Return value:
H - 129

DIgSILENT PowerFactory

DPL Reference

none Example: The following example looks for a Virtual Instrument Panel named Voltage and rearranges the Virtual Instrument.
object aGrf;object aPage; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Arrange the VIs horizontally aPage.SetTile(0); ! Tile VIs (default input parameter is 1) aPage.SetTile(); } }

Also see Using other objects

SetVipage.SetResults
void SetVipage.SetResults (object res) Sets default Results (ElmRes) of Virtual Instrument Panel. Arguments:

object res (obligatory) : Results to set (ElmRes) or NULL to reset.


Return value: none Example: The following example looks for a Virtual Instrument Panel named Voltage and resets its default results.
object aGrf; object aPage; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Set default results on page aPage.SetResults(NULL); } }

Also see Using other objects

SetVipage.SetXVar
void SetVipage.SetXVar (object obj, string varname) Sets x-axis variable. If obj and varname are empty the default x-axis variable (time) is set. Arguments:
H - 130

DIgSILENT PowerFactory

DPL Reference

object obj (optional) : x-axis object string varname (optional) : variable of obj
Return value: none Example: The following examples look for a Virtual Instrument Panel named Voltage and set the xaxis variable. The first example sets an user defined x-axis variable of the Virtual Instrument Panel. The second one sets the default x-axis (time).
object aGrf; object aPage; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Set x-scale from 100 to 120 aPage.SetScaleX(100,120); ! Set x-scale variable aPage.SetXVar(line,'m:U1:bus1'); } } object aGrf; object aPage; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Set x-scale from 100 to 120 aPage.SetScaleX(100,120); ! Set default x-scale variable (time) aPage.SetXVar(); } }

Also see Using other objects

SetVipage.SetScaleX
void SetVipage.SetScaleX (double min, double max, int log) Sets scale of x-axis. Invalid arguments like negative limits for logarithmic scale are not set. No input arguments --> automatic scaling. Arguments:

double min (optional) : Minimum of x-scale. double max (optional) : Maximum of x-scale. int log (optional) : > 0 --> x-scale is logarithmic.
Return value: none Example:
H - 131

DIgSILENT PowerFactory

DPL Reference

The following examples look for a Virtual Instrument Panel named Voltage and set its xaxis scale. There are three different examples. 1. Example: Scale x-scale automatically. 2. Example: Set minimum to 0 and maximum to 20. 3. Example: Set minimum to 1 and maximum to 1000. Changes to a log. scale
! Scale x-scale automatically. object aPage; object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Automatic scaling aPage.SetScaleX(); } } ! Set minimum and maximum without changing map modeobject aPage; object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Set minimum and maximum aPage.SetScaleX(0,20); } } ! Set minimum and maximum, set map mode to log. object aPage; object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Set minimum and maximum, change to log. scale aPage.SetScaleX(1,1000,1); } }

Also see Using other objects

SetVipage.SetDefScaleX
void SetVipage.SetDefScaleX () Sets default scale of x-axis (SetDesktop). Arguments: none Return value: none Example:
H - 132

DIgSILENT PowerFactory

DPL Reference

The following example looks for a Virtual Instrument Panel named Voltage and resets the option 'Use local x-Axis' to 0. After that the x-scale used is the Graphics Board (SetDesktop).
! Set default x-scale object aPage; object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Reset option 'Use local x-Axis' aPage.SetDefScaleX(); } }

Also see Using other objects

SetVipage.DoAutoScaleX
int SetVipage.DoAutoScaleX () Scales the x-axes of all plots on the virtual instrument panel automatically. The same can be achieved by pressing the icon Arguments: none Return value: none Example: The following example looks for a page named voltage and performs an automatic scaling of the x-axes.
! perform autoscale of x-axis of all plots on page object aPage; object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { aPage.DoAutoScaleX(); } }

in the toolbar of the graphic.

Also see VisFft Methods VisPlot Methods SetDesktop Methods

SetVipage.DoAutoScaleY
int SetVipage.DoAutoScaleY () Scales the y-axes of all plots on the virtual instrument panel automatically. The same can
H - 133

DIgSILENT PowerFactory

DPL Reference

be achieved by pressing the icon Arguments: none Return value: none Example:

in the toolbar of the graphic.

The following example looks for a page named voltage and performs an automatic scaling of the y-axes.
! perform autoscale of y-axis of all plots on page object aPage; object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { aPage.DoAutoScaleY(); } }

Also see VisPlot Methods

SetVipage.SetAutoScaleX
void SetVipage.SetAutoScaleX (int mode) Sets automatic scaling mode of the x-scale for local scales. Arguments:

int mode (obligatory) : Possible values: 0 never, 1 after simulation, 2 during simulation
Return value: none Example: The following examples look for a Virtual Instrument Panel named Voltage and change its auto scale mode. The first example works fine, the second one generates an error message because the x-scale is unused.
! Set autoscale mode Off object aGrf; object aPage; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Set limits to change x-scale of page to used scale aPage.SetScaleX(0,10); ! Turn off automatic scaling of x-scale aPage.SetAutoScaleX(0); } } H - 134

DIgSILENT PowerFactory

DPL Reference

! Try to set autoscale mode to online object aGrf; object aPage; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Reset option 'Use local x-Axis' of Virtual Instrument Panel aPage.SetDefScaleX(); ! Try to set automatic scaling of x-scale to Online aPage.SetAutoScaleX(2); } }

Also see Using other objects

SetVipage.SetAdaptX
void SetVipage.SetAdaptX (int mode, double trigger) Sets the adapt scale option of the x-scale for local scales. Arguments:

int mode (obligatory) : Possible values: 0 off, 1 on double trigger (optional) : Trigger value, unused if mode is off or empty
Return value: none Example: The following examples look for a Virtual Instrument Panel named Voltage and sets its adapt scale option. The first example works fine, the second one generates an error message because the x-scale is unused.
! Modify adapt scale option of Virtual Instrument Panel object aPage; object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Set x-scale limits to set option 'Use local x-Axis' aPage.SetScaleX(0,20); ! Turn on adapt scale, use a trigger value of 3 aPage.SetAdaptX(1,3); ! Turn off adapt scale aPage.SetAdaptX(0,3); ! Turn on adapt scale again, do not change the trigger value aPage.SetAdaptX(1); } } ! Try to turn on adapt scale object aPage; object aGrf; ! Look for opened graphics board. aGrf=GetGraphBoard(); H - 135

DIgSILENT PowerFactory

DPL Reference

if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Reset option 'Use local x-Axis' of Virtual Instrument Panel aPage.SetDefScaleX(); ! Try to turn on adapt scale, use a trigger value of 3 ! Leads to error message because scale is not local aPage.SetAdaptX(1,3); } }

Also see Using other objects

SetVipage.GetScaleObjX
object SetVipage.GetScaleObjX () Returns used object defining x-scale. The returned object is either the Virtual Instrument Panel itself or the Graphics Board. Arguments: none Return value: Object defining the x-scale. Example: The following examples look for a Virtual Instrument Panel named Voltage and get the used x-scale object. GetScaleObjX of the first example gets the Graphics Board, in the second one the Virtual Instrument Panel itself is returned.
! Used scale is Graphics Board object aPage; object aGrf; object aScale; ! Look for opened graphics board.aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Reset option 'Use local x-Axis' of Virtual Instrument Panel aPage.SetDefScaleX(); ! Get object defining scale aScale=aPage.GetScaleObjX(); if (aPage=aScale) { output('The scale used is the Virtual Instrument Panel itself.'); } else if (aGrf=aScale) { output('The scale used is the Graphics Board.'); } else { output('The scale used was not found.'); } } } ! Used scale is Virtual Instrument Panel itself object aPage; object aGrf; object aScale; ! Look for opened graphics board. H - 136

DIgSILENT PowerFactory

DPL Reference

aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Set x-scale to change it to local aPage.SetScaleX(1,100); ! Get object defining scale aScale=aPage.GetScaleObjX(); if (aPage=aScale) output('The scale used is the Virtual Instrument Panel itself.'); else if (aGrf=aScale) output('The scale used is the Graphics Board.'); else output('The scale used was not found.'); } }

Also see Using other objects

H.3.37
AddVars AddResVars Clear SetXVar SetScaleX SetScaleY SetDefScaleX SetDefScaleY

VisPlot/VisPlot2 Methods

DoAutoScaleX DoAutoScaleY DoAutoScaleY2 SetAutoScaleX SetAutoScaleY SetAdaptX SetAdaptY GetScaleObjX GetScaleObjY SetCrvDesc

VisPlot.AddVars
void VisPlot.AddVars (string V, object O1,...,O8) void VisPlot.AddVars (object O, string V1,...V8) Appends variables to the SubPlot. Variables which are already in the plot are not added.
H - 137

DIgSILENT PowerFactory

DPL Reference

Arguments:

object O (obligatory) : Object for which variables V1..V8 are added string V1..V8 (obligatory) : One to eight variables names for object O
or

string V (obligatory) : Variable name which is added for objects O1..O8 object O1..O8 (obligatory) : One to eight objects variable V
Return value: none Using AddVars a single object with different variables or one variable with several objects can be add to the Subplot. To append a list of variables of a single object the first input parameter is an object followed by a list of maximum nine variables. To append the same variable for several objects the first input parameter is the variable name followed by a list of maximum nine objects. Example: The following examples look for a Subplot named RST on Virtual Instrument Panel named Voltage and append a list of variables. 1. Example: Append several variables for one single object. 2. Example: Append one variable for a list of objects.
! Append several variables for one single object. object aPage; object aGrf; object aPlot; object aScale; ! Note: object load is an interface parameter, ! therefore it is not defined here ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Clear variable list aPlot.Clear(); ! Append variables aPlot.AddVars(load, 'm:U1:bus1','m:U1l:bus1','m:phiu1:bus1'); } } } ! Append several objects with one single variable object aPage; object aGrf; object aPlot; object aScale; ! objects load,line and xnet are interface parameters, ! therefore they are not defined here. ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage H - 138

DIgSILENT PowerFactory

DPL Reference

aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Clear variable list aPlot.Clear(); ! Append variables aPlot.AddVars('m:U1:bus1',load, line, xnet); } } }

Also see Using other objects

VisPlot.AddResVars
void VisPlot.AddResVars (object Res, string V, object O1,...,O7) void VisPlot.AddResVars (object Res, object O, string V1,...V7) Appends variables from a specific result file to the SubPlot. Combinations of result file and variables which are already in the plot are not added. Arguments:

object Res (obligatory) : Result object


plus

object O (obligatory) : Object for which variables V1..V8 are added string V1..V8 (obligatory) : One to eight variables names for object O
or

string V (obligatory) : Variable name which is added for objects O1..O8 object O1..O8 (obligatory) : One to eight objects variable V
Return value: none See "AddResVars'' for more information.

VisPlot.Clear
void VisPlot.Clear() Removes all variables from SubPlot. Arguments: none Return value: none Example: The following example looks for a Subplot named RST on Virtual Instrument Panel named Voltage and removes all variables from the plot.
! Remove all variables in Subplot named RST on ! Virtual Instrument Panel named Voltage H - 139

DIgSILENT PowerFactory

DPL Reference

object aPage; object aGrf; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get Subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Remove all variables from Subplot aPlot.Clear(); } } }

Also see Using other objects

VisPlot.SetXVar
void VisPlot.SetXVar (object obj, string varname) Sets x-axis variable. If obj and varname are empty the default x-axis variable (time) is set. Arguments:

object obj (optional) : x-axis object string varname (optional) : variable of obj
Return value: none Example: The following examples look for a Subplot named RST and set its x-axis variable. The first example sets an user defined x-axis variable of the plot. The second one sets the default x-axis variable (time).
! Set user defined x-axis variable object aPage; object aGrf; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get Subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Set x-scale from 100 to 120 aPlot.SetScaleX(100,120); ! Set x-scale variable aPlot.SetXVar(line,'m:U1:bus1'); } } } ! Set default x-axis variable (time) object aPage; H - 140

DIgSILENT PowerFactory

DPL Reference

object aGrf; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get Subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Set x-scale from 100 to 120 aPlot.SetScaleX(100,120); ! Set default x-scale variable (time) aPlot.SetXVar(); } } }

Also see Using other objects

VisPlot.SetScaleX
void VisPlot.SetScaleX (double min, double max, int log) Sets scale of x-axis. Invalid arguments like negative limits for logarithmic scale are not set. No arguments --> automatic scaling. Arguments:

double min (optional) : Minimum of x-scale. double max (optional) : Maximum of x-scale. int log (optional) : > 0 --> x-scale is logarithmic.
Return value: none Example: The following examples look for a Subplot named 'RST' and set its x-scale. There are three different examples. 1. Example: Perform auto scaling on x-axis. 2. Example: Set minimum to 0 and maximum to 20. 3. Example: Set minimum to 1 and maximum to 1000. Changes to a log. scale
! Automatic scaling of x-scale object aPage; object aGrf; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Automatic scaling aPlot.SetScaleX(); } } H - 141

DIgSILENT PowerFactory

DPL Reference

} ! Set minimum and maximum without changing map mode object aPage; object aGrf;object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Set minimum and maximum aPlot.SetScaleX(0,20); } } } ! Set minimum and maximum, set map mode to log. object aPage; object aGrf; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Set minimum and maximum, change to log scale aPlot.SetScaleX(1,1000,1); } } }

Also see Using other objects

VisPlot.SetScaleY
void VisPlot.SetScaleX (double min, double max, int log) Sets scale of y-axis. Invalid arguments like negative limits for logarithmic scale are not set. No arguments --> automatic scaling. Arguments:

double min (optional) : Minimum of y-scale. double max (optional) : Maximum of y-scale. int log (optional) : > 0 --> y-scale is logarithmic.
Return value: none Example: The following examples look for a Subplot named 'RST' and set its y-axis scale. There are three different examples. 1. Example: Perform auto scaling on y-Axis. 2. Example: Set minimum to 0 and maximum to 20. 3. Example: Set minimum to 1 and maximum to 1000.
H - 142

DIgSILENT PowerFactory

DPL Reference

Changes to a log. scale


! Automatic scaling of y-scale object aPage; object aGrf; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Automatic scaling aPlot.SetScaleY(); } } } ! Set minimum and maximum without changing map mode object aPage; object aGrf; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Set minimum and maximum aPlot.SetScaleY(0,20); } } } ! Set minimum and maximum, set map mode to log. object aPage; object aGrf; object aPlot; ! Look for opened graphics board.aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Set minimum and maximum, change to log. scale aPlot.SetScaleY(1,1000,1); } } }

Also see Using other objects

VisPlot.SetDefScaleX
void VisPlot.SetDefScaleX ()
H - 143

DIgSILENT PowerFactory

DPL Reference

Sets default scale of x-axis (SetDesktop or SetVipage). Arguments: none Return value: none Example: The following example looks for a Subplot named 'RST' and sets the option 'Use local xAxis' to 0. After that the x-scale used is the Graphics Board (SetDesktop) or the Virtual Instrument Panel (SetVipage).
! Reset option 'Use local x-Axis' object aPage; object aGrf; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local x-Axis' aPlot.SetDefScaleX(); } } }

Also see Using other objects

VisPlot.SetDefScaleY
void VisPlot.SetDefScaleY () Sets default scale of y-axis (IntPlot). Arguments: none Return value: none Example: The following example looks for a Subplot named 'RST' and sets its option 'Use local yAxis' to 0. After that the y-scale used is the Plot Type (IntPlot).
! Reset option 'Use local y-Axis' object aPage; object aGrf; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { H - 144

DIgSILENT PowerFactory

DPL Reference

! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local y-Axis' aPlot.SetDefScaleY(); } } }

Also see Using other objects

VisPlot.DoAutoScaleX
int VisPlot.DoAutoScaleX () Scales the x-axis of the plot automatically. The function works for local x-scales only. If the x-scale is not local a warning is shown in the output window and 1 is returned by the function. This command works for the plot VisPlot, VisHrm and VisPlot2. Arguments: none Return value: 0 on success, 1 on error. Example: The following example looks for a subplot named 'RST' and performs an automatic scaling.
! perform autoscale of x-axis object aPage; object aGrf; object aPlot; int iFailed; iFailed=1; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! perform automatic scaling now iFailed = aPlot.DoAutoScaleX(); if (iFailed > 0) { ! just to demonstrate the return value. printf('Could not scale x-axis'); } } } }

Also see VisFft Methods SetDesktop Methods and SetViPage Methods

H - 145

DIgSILENT PowerFactory

DPL Reference

VisPlot.DoAutoScaleY
int VisPlot.DoAutoScaleY () Scales the y-axis of the plot automatically. The function works for local y-scales only. If the y-scale is not local a warning is shown in the output window and 1 is returned by the function. This command works for the plot VisPlot, VisHrm, VisFft and VisPlot2. Arguments: none Return value: 0 on success, 1 on error. Example: The following example looks for a subplot named 'RST' and performs an automatic scaling.
! perform autoscale of y-axis object aPage; object aGrf; object aPlot; int iFailed; iFailed=1; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! perform automatic scaling now iFailed = aPlot.DoAutoScaleY(); if (iFailed > 0) { ! just to demonstrate the return value. printf('Could not scale y-axis'); } } } }

Also see SetViPage Methods

VisPlot2.DoAutoScaleY2
int VisPlot2.DoAutoScaleY2 () Scales the second y-axis of the plot automatically. The function works if the y-Axis is enabled and uses the local y-scale settings. In any other case a warning is produced and the function returns 1. Arguments: none Return value: 0 on success, 1 on error.

H - 146

DIgSILENT PowerFactory

DPL Reference

Example: The following example looks for a subplot named 'RST' and performs an automatic scaling.
! perform autoscale of y2-axis object aPage; object aGrf; object aPlot; int iFailed; iFailed=1; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot2',1); if (aPlot) { ! perform automatic scaling now iFailed = aPlot.DoAutoScaleY2(); if (iFailed > 0) { ! just to demonstrate the return value. printf('Could not scale y2-axis'); } } } }

Also see SetViPage Methods

VisPlot.SetAutoScaleX
void VisPlot.SetAutoScaleX (int mode) Sets automatic scaling mode of the x-scale for local scales. Arguments:

int mode (obligatory) : Possible values: 0 never, 1 after simulation, 2 during simulation
Return value: none Example: The following example looks for a Subplot named 'RST' and change its auto scale mode. The first example works fine, the second one generates an error message because the xscale is unused.
! Set autoscale mode of x-scale to off object aPage; object aGrf; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); H - 147

DIgSILENT PowerFactory

DPL Reference

if (aPlot) { ! Set limits to change x-scale of page to used scale aPlot.SetScaleX(0,10); ! Turn off automatic scaling of x-scale aPlot.SetAutoScaleX(0); } } } ! Try to set autoscale mode of x-scale to online object aPage; object aGrf; object aPlot; ! Look for opened Graphics Board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local x-Axis' of Subplot aPlot.SetDefScaleX(); ! Try to set automatic scaling of x-scale to Online aPlot.SetAutoScaleX(2); } } }

Also see Using other objects

VisPlot.SetAutoScaleY
void VisPlot.SetAutoScaleY (int mode) Sets automatic scaling mode of the y-scale for local scales. Arguments:

int mode (obligatory) : Possible values: 0 never, 1 after simulation, 2 during simulation
Return value: none Example: The following example looks for a Subplot named 'RST' and change its auto scale mode. The first example works fine, the second one generates an error message because the yscale is unused.
! Set autoscale mode of y-scale to off object aPage; object aGrf; object aPlot; ! Look for opened graphics board.aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Set limits to change y-scale of page to used scale H - 148

DIgSILENT PowerFactory

DPL Reference

aPlot.SetScaleY(0,10); ! Turn off automatic scaling of y-scale aPlot.SetAutoScaleY(0); } } } ! Try to set autoscale mode of y-scale to online object aPage; object aGrf; object aPlot; ! Look for opened Graphics Board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local y-Axis' of Subplot aPlot.SetDefScaleY(); ! Try to set automatic scaling of y-scale to Online aPlot.SetAutoScaleY(2); } } }

Also see Using other objects

VisPlot.SetAdaptX
void VisPlot.SetAdaptX (int mode, double trigger) Sets the adapt scale option of the x-scale for local scales. Arguments:

int mode (obligatory) : Possible values: 0 off, 1 on double trigger (optional) : Trigger value, unused if mode is off or empty
Return value: none Example: The following examples look for a Subplot named 'RST' and change its adapt scale option. The first example works fine, the second one generates an error message because the xscale is unused.
! Modify adapt scale option of Subplot object aPage; object aGrf; object aPlot; ! Look for opened Graphics Board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { H - 149

DIgSILENT PowerFactory

DPL Reference

! Set x-scale limits to set option 'Use local x-Axis' aPlot.SetScaleX(0,20); ! Turn on adapt scale, use a trigger value of 3 aPlot.SetAdaptX(1,3); ! Turn off adapt scale aPlot.SetAdaptX(0,3); ! Turn on adapt scale again, do not change the trigger value aPlot.SetAdaptX(1); } } } ! Try to turn on adapt scale of x-scale object aPage; object aGrf;object aPlot; ! Look for opened Graphics Board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local x-Axis' of Subplot aPlot.SetDefScaleX(); ! Try to turn on adapt scale, use a trigger value of 3 ! Leads to error message because scale is not local aPlot.SetAdaptX(1,3); } } }

Also see Using other objects

VisPlot.SetAdaptY
void VisPlot.SetAdaptY (int mode, double offset) Sets the adapt scale option of the y-scale for local scales. Arguments:

int mode (obligatory) : Possible values: 0 off, 1 on double trigger (optional) : Offset, unused if mode is off or empty
Return value: none Example: The following examples look for a Subplot named 'RST' and change its adapt scale option of the y scale. The first example works fine, the second one generates an error message because the y-scale is unused.
! Modify adapt scale option of Subplot object aPage; object aGrf; object aPlot; ! Look for opened Graphics Board.aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); H - 150

DIgSILENT PowerFactory

DPL Reference

if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Set y-scale limits to set option 'Use local y-Axis' aPlot.SetScaleY(0,20); ! Turn on adapt scale, use a trigger value of 3 aPlot.SetAdaptY(1,3); ! Turn off adapt scale aPlot.SetAdaptY(0,3); ! Turn on adapt scale again, do not change the trigger value aPlot.SetAdaptY(1); } } } ! Try to turn on adapt scale for y-scale object aPage; object aGrf; object aPlot; ! Look for opened Graphics Board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local y-Axis' of Subplot aPlot.SetDefScaleY(); ! Try to turn on adapt scale, use a trigger value of 3 ! Leads to error message because scale is not local aPlot.SetAdaptY(1,3); } } }

Also see Using other objects

VisPlot.GetScaleObjX
object VisPlot.GetScaleObjX () Returns used object defining x-scale. The returned object is the Subplot itself, the Virtual Instrument Panel or the Graphics Board. Arguments: none Return value: Object defining the x-scale. Example: The following examples look for a Subplot named 'RST' and get the used x-scale object. There are three different examples. 1. Example: Used scale is Graphics Board 2. Example: Used scale is Virtual Instrument Panel 3. Example: Used scale is Subplot itself.

H - 151

DIgSILENT PowerFactory

DPL Reference

! Used scale is Graphics Board object aPage; object aGrf; object aPlot; object aScale; ! Look for opened graphics board.aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Reset option 'Use local x-Axis' of Virtual Instrument Panel aPage.SetDefScaleX(); ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local x-Axis' of Subplot aPlot.SetDefScaleX(); ! Get object defining scale aScale=aPlot.GetScaleObjX(); if (aPlot=aScale) { output('The scale used is the Subplot itself.'); } else if (aPage=aScale) { output('The scale used is the Virtual Instrument Panel.'); } else if (aGrf=aScale) { output('The scale used is the Graphics Board.'); } else { output('The scale used was not found.'); } } } } ! Used Scale is Virtual Instrument Panel object aPage; object aGrf; object aPlot; object aScale; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Set x-scale to change it to local aPage.SetScaleX(1,100); ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local x-Axis' of Subplot aPlot.SetDefScaleX(); ! Get object defining scale aScale=aPlot.GetScaleObjX(); if (aPlot=aScale) { output('The scale used is the Subplot itself.'); } else if (aPage=aScale) { output('The scale used is the Virtual Instrument Panel.'); } else if (aGrf=aScale) { output('The scale used is the Graphics Board.'); } else { output('The scale used was not found.'); } } H - 152

DIgSILENT PowerFactory

DPL Reference

} } ! Used Scale is Subplot itself object aPage; object aGrf; object aPlot; object aScale; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Reset option 'Use local x-Axis' of Virtual Instrument Panel aPage.SetDefScaleX(); ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Set x-scale of Subplot to change it to local aPlot.SetScaleX(1,100); ! Get object defining scale aScale=aPlot.GetScaleObjX(); if (aPlot=aScale) { output('The scale used is the Subplot itself.'); } else if (aPage=aScale) { output('The scale used is the Virtual Instrument Panel.'); } else if (aGrf=aScale) { output('The scale used is the Graphics Board.'); } else { output('The scale used was not found.'); } } } }

Also see Using other objects

VisPlot.GetScaleObjY
object VisPlot.GetScaleObjY () Returns used object defining y-scale. The returned object is either the Subplot itself or the Plot Type (IntPlot). Arguments: none Return value: Object defining the y-scale. Example: The following examples look for a Subplot named 'RST' and get the used y-scale object. There are three different examples. 1. Example: Used scale is Plot Type. 2. Example: Used scale is Subplot itself.
! Used scale is Plot Type object aPage; object aGrf; H - 153

DIgSILENT PowerFactory

DPL Reference

object aPlot; object aScale; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local y-Axis' of Subplot aPlot.SetDefScaleY(); ! Get object defining scale aScale=aPlot.GetScaleObjY(); if (aScale=aPlot) { output('The y-scale used is the Subplot itself.'); } else { output('The y-scale used is the Plot Type.'); } } } } ! Used scale is Subplot itself object aPage; object aGrf; object aPlot; object aScale; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Set x-scale of Subplot to change it to local aPlot.SetScaleY(1,100); ! Get object defining scale aScale=aPlot.GetScaleObjY(); if (aScale=aPlot) { output('The y-scale used is the Subplot itself.'); } else { output('The y-scale used is the Plot Type.'); } } } }

Also see Using other objects

VisPlot.SetCrvDesc
object VisPlot.SetCrvDesc (int index, string desc [, string desc1]...) Sets the description of curves starting at curve number 'index'. A list of descriprions can be set. Arguments:
H - 154

DIgSILENT PowerFactory

DPL Reference

int index (obligatory) : Row of first curve to change the description. string desc (obligatory) : Description to set for curve in row index. string desc1 (optional) : Description to set for curve in row index+1. Object defining the
y-scale. Example: The following examples look for a Subplot named 'RST' sets the description for the curves defined in row two and three. The first variable's description remains unchanged.
! Modify descriptions object aPage; object aGrf; object aPlot; object aScale; ! Note: object load is an interface parameter, ! therefore it is not defined here! Look for opened graphics board.aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Clear variable list aPlot.Clear(); ! Append variables aPlot.AddVars(load, 'm:U1:bus1','m:U1l:bus1','m:phiu1:bus1'); ! Set description of row 2 and 3 aPlot.SetCrvDesc(2,,'Line-Line Voltage','Angle'); } } }

Also see Using other objects

H.3.38

VisFft Methods

DoAutoScaleX

VisFft.DoAutoScaleX
int VisFft.DoAutoScaleX () Scales the x-axis of the fft plot automatically. After scaling the x-axis automatically the xscale minimum is 0. The maximum is nsamples/2 or nsamples/2 x fundamental frequency. Arguments: none Return value: always 0 Example: The following example looks for a FFT-Plot named 'FFT' and performs an automatic scaling.
H - 155

DIgSILENT PowerFactory

DPL Reference

! perform autoscale of x-axis object aPage; object aGrf; object aPlot; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get FFT plot named 'FFT' aPlot=aPage.GetVI('RST','VisFft',1); if (aPlot) { ! perform automatic scaling now aPlot.DoAutoScaleX(); } } }

Also see VisPlot Methods and SetViPage Methods

H.3.39
SetScaleY

IntPlot Methods

SetAutoScaleY SetAdaptY

IntPlot.SetScaleY
void IntPlot.SetScaleY (double min, double max, int log) Sets scale of y-axis. Invalid arguments like negative limits for logarithmic scale are not set. No arguments --> automatic scaling. Arguments:

double min (optional) : Minimum of y-scale. double max (optional) : Maximum of y-scale. int log (optional) : > 0 --> y-scale is logarithmic; 0 --> y-scale is linear.
Return value: none Example: The following example looks for a Subplot named 'RST' and set its y-axis scale. There are three different examples. 1. Example: Perform auto scaling on y-Axis. 2. Example: Set minimum to 0 and maximum to 20. 3. Example: Set minimum to 1 and maximum to 1000. Changes to a log. scale
! Automatic scaling of y-scale object aPage; object aGrf; object aPlot; object aScale; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { H - 156

DIgSILENT PowerFactory

DPL Reference

! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local y-Axis' of subplot aPlot.SetDefScaleY(); ! Get object defining scale (now IntPlot) aScale=aPlot.GetScaleObjY(); if (aScale) { ! Perform auto scaling aScale.SetScaleY(); } } } } ! Set minimum and maximum without changing map mode object aPage; object aGrf; object aPlot; object aScale; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local y-Axis' of subplot aPlot.SetDefScaleY(); ! Get object defining scale (now IntPlot) aScale=aPlot.GetScaleObjY(); if (aScale) { ! Perform auto scaling aScale.SetScaleY(0,20); } } } } ! Set minimum and maximum, set map mode to log. object aPage; object aGrf; object aPlot; object aScale; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local y-Axis' of subplot aPlot.SetDefScaleY(); ! Get object defining scale (now IntPlot) aScale=aPlot.GetScaleObjY(); if (aScale) { H - 157

DIgSILENT PowerFactory

DPL Reference

! Perform auto scaling aScale.SetScaleY(1,1000,1); } } } }

Also see Using other objects

IntPlot.SetAutoScaleY
void IntPlot.SetAutoScaleY (int mode) Sets automatic scaling mode of the y-scale. Arguments:

int mode (obligatory) : Possible values: 0 never, 1 after simulation, 2 during simulation
Return value: none Example: The following example sets the auto scale mode of the Plot Type to On.
! Set autoscale option of Plot Type object aPage; object aGrf; object aPlot; object aScale; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local y-Axis' of subplot aPlot.SetDefScaleY(); ! Get object defining scale (now IntPlot) aScale=aPlot.GetScaleObjY(); if (aScale) { ! Set auto scale option to on aScale.SetAutoScaleY(1); } } } }

Also see Using other objects

IntPlot.SetAdaptY
void IntPlot.SetAdaptY (int mode, double offset) Sets the adapt scale option of the y-scale. Arguments:

int mode (obligatory) : Possible values: 0 off, 1 on


H - 158

DIgSILENT PowerFactory

DPL Reference

double offset (optional) : Offset, unused if mode is off or empty


Return value: none Example: The following examples look for a Subplot named 'RST', gets its Plot Type and changes the adapt scale option of the scale.
! Modify adapt scale option of Plot Type object aPage; object aGrf; object aPlot; object aScale; ! Look for opened graphics board. aGrf=GetGraphBoard(); if (aGrf) { ! Get Virtual Instrument Panel named Voltage aPage=aGrf.GetPage('Voltage',1); if (aPage) { ! Get subplot named 'RST' aPlot=aPage.GetVI('RST','VisPlot',1); if (aPlot) { ! Reset option 'Use local y-Axis' of subplot aPlot.SetDefScaleY(); ! Get object defining scale (now IntPlot) aScale=aPlot.GetScaleObjY(); if (aScale) { ! Set y-scale limits to set option 'Use local y-Axis' aScale.SetScaleY(0,20); ! Turn on adapt scale, use an offset of 3 aScale.SetAdaptY(1,3); ! Turn off adapt scale aScale.SetAdaptY(0,3); ! Turn on adapt scale again, do not change the offset aScale.SetAdaptY(1); } } } }

Also see Using other objects

H - 159

DIgSILENT PowerFactory

DPL Reference

H - 160

DIgSILENT PowerFactory

DSL Reference

Appendix I DSL Reference

I.1

DSL Standard Functions


Table I.1:Standard DSL Functions List
function sin(x) cos(x) tan(x) asin(x) acos(x) atan(x) sinh(x) cosh(x) tanh(x) exp(x) ln(x) log(x) sqrt(x) sqr(x) pow (x,y) abs(x) min(x,y) max(x,y) modulo(x,y) trunc(x) frac(x) round(x) description sine cosine tangent arcsine arccosine arctangent hyperbolic sine hyperbolic cosine hyperbolic tangent exponential value natural logarithm log10 square root power of 2 power of y absolute value smaller value larger value remainder of x/y integral part fractional part closest integer example sin(1.2)=0.93203 cos(1.2)=0.36236 tan(1.2)=2.57215 asin(0.93203)=1.2 acos(0.36236)=1.2 atan(2.57215)=1.2 sinh(1.5708)=2.3013 cosh(1.5708)=2.5092 tanh(0.7616)=1.0000 exp(1.0)=2.718281 ln(2.718281)=1.0 log(100)=2 sqrt(9.5)=3.0822 sqr(3.0822)=9.5 pow(2.5, 3.4)=22.5422 abs(-2.34)=2.34 min(6.4, 1.5)=1.5 max(6.4, 1.5)=6.4 modulo(15.6,3.4)=2 trunc(-4.58823)=4.0000 frac(-4.58823)=0.58823 round(1.65)=2.000

All trigonometric functions use RADIANS.

I-1

DIgSILENT PowerFactory

DSL Reference

Table I.1:Standard DSL Functions List


ceil(x) floor(x) time() pi() twopi() e() smallest larger integer largest smaller integer current simulation time 3.141592... 6.283185... 2,718281... ceil(1.15)=2.000 floor(1.78)=1.000 time()=0.1234 pi()=3.141592... twopi()=6.283185... e()=2,718281...

I.2
lim

DSL Special Functions

lim (x, min, max) Nonlinear limiter function:

limstate
limstate (x1, min, max) Nonlinear limiter function for creating limited integrators. Example:
x1. = xe/Ti; y = limstate(x1,min,max);

This was previously realized by using "select'' and "lim'' functions:


x1. = select( {x1>=max.and.xe>0} & .or.{x1<=min.and.xe<0}, 0, xe/Ti); y = lim(x1,min,max);

delay
delay (x, Tdelay) Delay function. Stores the value x(Tnow) and returns the value x(Tnow-Tdelay). Tdelay in seconds and larger than 0.0. The expression Tdelay must evaluate to a time independent constant and may therefore only consist of constants and parameter variables. The expression x(t) may contain other functions. Example:

I-2

DIgSILENT PowerFactory

DSL Reference

y = delay(xe + delay(x1, 1.0), 2.0)

Resetting a DSL model initializes its delay functions with x(Treset).

select
select (boolexpr, x, y) Returns x if boolexpr is true, else y. Example:
x1.=select(T1>0, xe/T1, 0.0) !to avoid division by zero

time
time () Returns the current simulation time. Example:
t=time() y = sin(t) or y = sin(time())

file
file (ascii-parm, expr)

!OBSOLETE! Please use an ElmFile object in the composite model in stead.

picdro
picdro (boolexpr, Tpick, Tdrop) Logical pick-up-drop-off function useful for relays. Returns the internal logical state: 0 or 1. Return value: The internal state: changes from 0 to 1, if boolexpr=1, for a duration of at least Tpick seconds changes from 1 to 0, if boolexpr=0, after Tdrop seconds remains unaltered in other situations.

flipflop
flipflop (boolset, boolreset) Logical flip-flop function. Returns the internal logical state: 0 or 1. Return value: The internal state:
I-3

DIgSILENT PowerFactory

DSL Reference

changes from 0 to 1, if boolset=1 and boolreset=0 (SET) changes from 1 to 0, if boolset=0 and boolreset=1 (RESET) remains unaltered in other situations. (HOLD) Initial value: boolset. The initial condition boolset=boolreset=1 will cause an error message.

aflipflop
aflipflop (x, boolset, boolreset) 'Analog' flip-flop function. Returns the (old) value for x at SET-time if internal state=1, else returns the current value of x. Return value: The internal state: changes from 0 to 1, if boolset=1 and boolreset=0 (SET) changes from 1 to 0, if boolset=0 and boolreset=1 (RESET) remains unaltered in other situations. (HOLD)

lapprox
lapprox (x, array_iiii) Returns the linear approximation y=f(x), where f is defined by the array_iiii. Please consider that the array has to be sorted in ascending order. Example:
y = lapprox(1.8, array_valve)

invlapprox
invlapprox (y, array_iiii) Inverse lapprox with array.

lapprox2
lapprox2 (xl, xc, matrix_iiii) Returns the linear approximation y=f(xl,xc) of a two-dimensional array, where f is defined by the matrix_iiii. xl represents the line value and xc the column of the matrix. Please consider that the array has to be sorted in ascending order. Example:
y = lapprox2(2.5, 3.7, matrix_cp)

sapprox
sapprox (x, array_iiii)
I-4

DIgSILENT PowerFactory

DSL Reference

Returns the spline approximation y=f(x), where f is defined by the array_iiii. Please consider that the array has to be sorted in ascending order. Example:
y = sapprox(1.8, array_valve)

sapprox2
sapprox2 (xl, xc, matrix_iiii) Returns the spline approximation y=f(xl,xc) of a two-dimensional array, where f is defined by the matrix_iiii . xl represents the line value and xc the column of the matrix. Example:
y = sapprox2(2.5, 3.7, matrix_cp)

event
Option 1: calling a predefined event in the DSL element event( Condition, trigger, 'name=ThisEvent dtime=delay value=val variable=var') Option 2: target specification, no create parameter event( Condition, trigger, 'target=ThisSlot name=ThisEvent dtime=delay value=val variable=var') Option 3: create and target specification event( Condition, trigger, 'create=ThisEvtType target=ThisSlot name=ThisEvent dtime=delay value=val variable=var') This function can create or call any kind of event for the DSL model itself or elements inside the network. The event is executed, if the input signal trigger changes sign from - to + with a time delay of dtime.

Mind: the event command has changed from DSL level 3 to level 4!
Arguments:

int Condition (obligatory)

Boolean expression to activate (=1) or deactivate (=0) the event handling; if Condition is set to 1, the event can be executed, depending on the trigger signal. The trigger signal, which will enable the execution of the event.

double trigger (obligatory)

The string format determines the details of the event call, and which of the three options above applies:

string ThisEvtType (mandatory, only option 3)

Type of event to be created. To specify the type use e.g. EvtParam for paramI-5

DIgSILENT PowerFactory

DSL Reference

eter event or EvtSwitch for switch event, etc.

string ThisSlot (mandatory, only options 2 and 3)

If 'target=this' is defined, the event is applied to a singal of the present DSL model. If any other name is given, the DSL interpreter checks the composite model where the present DSL model (common model) is used and searches for a slot with the given name. The event is then applied to the element assigned to that slot. Name of the event created (option 3) or the external event to be started (option 1/2). The external event must be stored locally in the DSL model. If 'name=this' is set, a parameter event will be created and executed automatically with the DSL element itself as the target.

string ThisEvent (obligatory)

double delay (obligatory) double val (optional)

Delay time of the event after triggering. Value of the parameter event (only when 'name=this' is set or when a parameter event is created). Parameter to which the value is set (only when 'name=this' is set or when a parameter event is created).

double var (optional)

Return value: void (no return value) Remark: If the event()-definition according to options 2/3 is used, the create and target parameters must be the first parameters that are listed. Examples: The example shows a clock made with DSL using event( , ,'name=this ...') which automatically creates and configures a parameter event. The variable named xclock will be reset to value val=0 within dtime=0, if the integrator output xclock is larger than 1. The input signal is a clock signal with the time period Tclock.
inc(xclock)=0 inc(clockout)=0 xclock.=1/Tclock reset_clock=select(xclock>1,1,-1) event(enable,reset_clock,'name=this value=0 variable=xclock') clockout=xclock

The following event calls an external event called OpenBreaker, which is stored and defined inside the DSL element, if yo changes sign from - to +. The delay time is 0.2s.
event(1,yo,'name=OpenBreaker dtime=0.2')

The following event is a simple undervoltage load-shedding relay. The element in the slot Load will be disconnected with a swicth event EvtSwitch, when the signal u-umin becomes positive. The event in the event list will be called TripLoad.
event(1,umin-u,'create=EvtSwitch name=TripLoad target=Load') I-6

DIgSILENT PowerFactory

DSL Reference

I-7

DIgSILENT PowerFactory

DSL Reference

I-8

DIgSILENT PowerFactory

Users Manual

Index

Appendix J Index
Symbols
....................................................... C-66, C-67 (n-1) system .......................................... 29-56 (n-k) system .......................................... 29-56

A
About this Guide ....................................... 3-1 abs DPL ...................................................... G-7 DSL ........................................................I-1 ACCI (Reliability Analysis) ................... 29-16 ACIF (Reliability Analysis) ................... 29-13 ACIT (Reliability Analysis) ................... 29-13 acos DPL ...................................................... G-7 DSL ........................................................I-1 Activate ElmNet (DPL) ................................... H-64 IntCase (DPL) .................................. H-63 IntPrj (DPL) ...................................... H-62 IntVariant (DPL) .............................. H-65 Active Failure ......................................... 29-55 ActiveCase (DPL Internal Method) ..... H-20 ActiveProject (DPL Internal Method) .. H-21 Add Set (DPL) .......................................... H-37 AddCntcy ComSimoutage (DPL) ..................... H-61 AddCopy Object (DPL) .................................... H-50 AddRef ComNmink (DPL) ............................. H-70 SetSelect (DPL) .............................. H-113 AddResVars VisPlot (DPL) .................................. H-139 AddVar IntMon (DPL) ................................... H-78 AddVars ElmRes (DPL) ................................... H-98 VisPlot (DPL) .................................. H-137 Adequacy ............................................... 29-55 Administrator ............................................ 5-6 AENS (Reliability Analysis) .................. 29-16 aflipflop DSL ........................................................I-4 AID (Reliability Analysis) ..................... 29-17 All

SetSelect (DPL) .............................. H-118 AllAsm SetSelect (DPL) .............................. H-116 AllBars SetSelect (DPL) .............................. H-115 AllBreakers SetPath (DPL) ................................ H-111 SetSelect (DPL) .............................. H-119 AllClosedBreakers SetPath (DPL) ................................ H-112 SetSelect (DPL) .............................. H-120 AllElm SetSelect (DPL) .............................. H-114 AllLines SetSelect (DPL) .............................. H-115 AllLoads SetSelect (DPL) .............................. H-116 AllOpenBreakers SetPath (DPL) ................................ H-112 SetSelect (DPL) .............................. H-120 AllRelevant (DPL Internal Method) ....... H-3 AllSym SetSelect (DPL) .............................. H-117 allTypLne SetSelect (DPL) .............................. H-117 Analyses General Information ........................... 8-1 Analysis General Information ........................... 8-1 Appliance .................................................. A-1 Area .......................................................... 12-1 ASAI (Reliability Analysis) ................... 29-14 asin DPL ...................................................... G-7 DSL ........................................................I-1 ASUI (Reliability Analysis) ................... 29-14 Asynchronous Machine Element ............................................. C-11 Type ..................................................... D-8 atan DPL ...................................................... G-7 DSL ........................................................I-1 Availability .............................................. 29-56

B
Base Case ................................................. A-1 Base State .............................................. 29-56 Basic Project Definition ............................ 9-1 Block Definition ........................................ A-1 Block Definition Dialogue (DSL) ......... 25-51 Block Diagram ................... 10-37, 25-36, A-1 Boolean
J-1

DIgSILENT PowerFactory

Users Manual

Index

Expresions .......................................... G-9 Boundary .................................................. 12-4 Branch Elements ...................................... A-1 break DPL ...................................................... G-9 Busbars ..................................................... A-1

C
Cable System, Element .............................. C-14 Type ................................................... D-13 Cable Size Optimization ...... 31-11, 34-1, F-9 Advanced Options .......................... 31-14 Basic Options ................................... 31-12 Objective Function .......................... 31-11 Optimization Procedure ................. 31-12 CAIDI (Reliability Analysis) ................. 29-14 CAIFI (Reliability Analysis) .................. 29-14 CalcElParams TypAsm (DPL) .................................. H-65 TypAsmo (DPL) ................................ H-66 Calculation Compare Results ................................. 8-3 Result ................................................... 8-3 Update Database ................................ 8-5 Calculation Time ..................................... 13-3 CASE DIg Output Language .................... 20-54 ceil DPL ...................................................... G-7 DSL ........................................................I-1 ChaMat ..................................................... 7-31 ChaPol .................................................... 24-12 ChaVec ..................................................... 7-31 ChaVecfile .............................................. 18-10 Circuit ....................................................... 12-6 Class .......................................................... A-2 class ............................................................ 7-1 Classes ....................................................... 7-1 Clear ComNmink (DPL) ............................. H-70 ElmRes (DPL) ................................... H-95 Set (DPL) .......................................... H-38 SetSelect (DPL) .............................. H-114 VisPlot (DPL) .................................. H-139 ClearCommands (DPL Internal Method) H4 ClearOutput (DPL Internal Method) ..... H-4 ClearVars IntMon (DPL) .................................... H-78 Close ElmCoup (DPL) ................................. H-86
J-2

StaSwitch (DPL) ............................. H-106 CMD DIg Output Language ....................20-54 ColLbl IntMat (DPL) ..................................... H-83 Colouring Mode .....................................10-45 ComCabsize .......................... 31-11, 34-1, F-9 ComCapo ..................................................31-1 ComContingency Contingency analysis with multiple time phases ..................................28-12 ComCoord ..............................................32-47 ComDbupd .................................................8-5 ComDiff ......................................................8-4 ComDocu ................................................20-58 ComDpl ...................................................... G-2 ComDpl (DPL) ........................................ H-79 Execute .............................................. H-79 ComEcho (DPL) ...................................... H-73 Off ...................................................... H-74 On ...................................................... H-73 ComEd ....................................................11-22 ComFsweep .............................................24-4 ComHldf ...................................................24-2 ComIdent .................................................27-1 ComInc .....................................................25-4 ComInc (DPL) ....................................... H-104 Execute ............................................ H-104 ComLdf .....................................................22-6 ComLdf (DPL) ....................................... H-105 Execute ............................................ H-105 ComMerge ................................................21-7 ComMod ...................................................26-4 ComModres ............................................26-10 Common Impedance ............................. C-16 Common Model ..........................25-21, 25-32 Structure ..........................................25-32 ComNew .................................................10-21 ComNmink .............................................28-22 ComNmink (DPL) ................................... H-70 AddRef ............................................... H-70 Clear .................................................. H-70 GetAll ................................................. H-71 ComOp ...................................................11-23 ComOpf ....................................................30-1 ComOutage ..............................................28-9 ComOutage (DPL) ................................. H-57 GetObject .......................................... H-58 SetObjs .............................................. H-57 ComPause ..............................................11-23 Composit Frame ....................................25-29 Composite Block Definition .................25-36

DIgSILENT PowerFactory

Users Manual

Index

Composite Block Definitions (DSL) .... 25-50 Composite Frame .................................... A-2 Additional Equations ...................... 25-43 Block Definition ............................... 25-31 Drawing ............................................ 25-37 Multi-Signal Connection ................. 25-41 Signal Connection ........................... 25-41 Signals .............................................. 25-31 Composite Model ...............25-21, 25-26, A-2 Slot Update ...................................... 25-27 Step Response ................................ 25-27 ComPr ..................................................... 11-23 ComRd .................................................... 11-23 ComRed ................................................... 33-1 ComRel3 Contingency analysis with multiple time phases .................................. 28-13 Network reliability assessment ....... 29-6 ComRel3 (DPL) .................................... H-102 Execute ........................................... H-102 ComRes .......................................20-38, 20-46 ComRes (DPL) ........................................ H-72 ExportFullRange .............................. H-72 FileNmResNm ................................... H-73 ComSeteval ............................................. 26-1 ComSh ............................... 20-57, 20-60, 24-6 ComShc .................................................. 23-12 ComShc (DPL) ...................................... H-105 Execute ........................................... H-105 ComShcsweep ....................................... 32-28 ComSim .................................................. 25-20 ComSimoutage ........................................ 28-3 ComSimoutage (DPL) ........................... H-59 AddCntcy ........................................... H-61 ExecuteCntcy ................................... H-60 ReportObjs ....................................... H-62 Reset ................................................. H-59 SetLimits ........................................... H-61 ComSimoutage (DPL)Execute ............. H-60 ComStationware ....................................... F-9 ComStepres ........................................... 25-27 ComStop ................................................ 11-23 ComSys .................................................. 11-23 ComTieopt ............................................... 31-9 ComVsag ................................................ 29-48 ComVstab .............................................. 22-17 ComWr ................................................... 11-23 Conductor Type .................................................. D-14 Contact ....................................................... 2-1 Contingency .......................................... 29-55 Contingency Analysis ............................. 28-1

Contingency Case ............................. 28-9 Preparation ...................................... 28-22 continue DPL ...................................................... G-9 Coordination Wizard ............................. 32-47 cos DPL ...................................................... G-7 DSL ........................................................I-1 cosh DPL ...................................................... G-7 DSL ........................................................I-1 Cost Functions ........................................ 30-2 Count Set (DPL) .......................................... H-41 CreateFeederWithRoutes ElmLne (DPL) ................................... H-92 CreateObject Object (DPL) ..................................... H-44 CSSL (DSL) ............................................ 25-46 CUBIC DIg Output Language .................... 20-53 Cubicle ....................................................... A-2 Curve Input Context-sensitive Menu ................. 20-28 Create Diagram ............................... 20-27

D
DAQ ........................................................... A-2 Data Management .................................. 21-1 Data Manager ......................................... 11-1 Database Browser ............................ 11-1 Database Tree ................................... 11-3 Settings ................................................ 6-4 Data Model ................................................ 7-1 Database Multi-User ............................................ 5-7 Single-User .......................................... 5-7 DataManager ........................................... 11-1 Date SetTime (DPL) .................................. H-75 Deactivate ElmNet (DPL) ................................... H-64 IntCase (DPL) ................................... H-63 IntPrj (DPL) ...................................... H-63 IntVariant (DPL) .............................. H-65 DEF DIg Output Language .................... 20-54 delay DSL ........................................................I-2 Delete (DPL Internal Method) ............... H-5 Demo Account ........................................... 5-8 Device ........................................................ A-2
J-3

DIgSILENT PowerFactory

Users Manual

Index

DGS .............................................................F-1 DGS Interface ............................................F-1 DiaGrfopts .............................................. 10-34 DiaPagetyp ............................................ 10-21 DIg Output Language Filters ................................................ 20-56 Includes ........................................... 20-56 Line Types ....................................... 20-55 Loops ................................................ 20-56 Page Breaks ..................................... 20-55 Text Macros ..................................... 20-56 Digital Clock ............................................ C-68 Digital Register ....................................... C-72 DIgSILENT Output Language ............. 20-50 Format .............................................. 20-51 DIgSILENT Programming Language ..... G-1 Distribution Function ............................ 29-56 do() while{} DPL ...................................................... G-9 DoAutoScaleX SetDesktop (DPL) .......................... H-126 SetVipage (DPL) ............................ H-133 VisFft (DPL) .................................... H-155 VisPlot (DPL) .................................. H-145 DoAutoScaleY SetVipage (DPL) ............................ H-133 VisPlot (DPL) .................................. H-146 DoAutoScaleY2 VisPlot (DPL) .................................. H-146 DPL ....................................................A-3, G-1 Access to Objects ............................ G-11 Assignments ....................................... G-7 break ................................................... G-9 Constant Parameters ........................ G-7 continue .............................................. G-9 External Objects .............................. G-14 Functions & Subroutines ........G-17, H-1 input .................................................. G-10 Local Objects .................................... G-12 Object Variables & Methods ........... G-12 output ................................................ G-10 Standard Functions ........................... G-7 Subroutines ...................................... G-16 Variable Definitions ........................... G-6 DPL (DIgSILENT Programming Language) G-1 DPL Advanced Options ........................... G-4 DPL Command Execute .......................... G-4 DPL Command Libraries ....................... G-15 DPL Command Object ............................. G-2 DPL Command Set .................................. G-3 DPL External Types ............................... H-36
J-4

DPL Internal Methods ...................G-17, H-1 DPL Object Methods .............................. H-43 DPL Reference .......................................... H-1 DPL Script Editor ...................................... G-5 DPL Script Language ............................... G-6 DPL Script Page ....................................... G-5 DPL Special Types ................................. H-57 DPL, Reference ........................................ H-1 Drag and Drop ......................................... A-3 Draw ElmRes (DPL) ................................... H-96 DSL Advanced Features .........................25-50 Defining Models ..............................25-50 Definition Code ...............................25-56 Equation Code .................................25-60 Events ...............................................25-46 Example ............................................25-63 Expression ........................................25-60 General Syntax ................................25-55 inc .....................................................25-57 inc0 ...................................................25-57 incfix .................................................25-57 Initial Conditions .............................25-57 intervalinc ........................................25-58 loopinc ..............................................25-58 Macro Handling ...............................25-61 Macros ..............................................25-61 Model Description ...........................25-49 newtoninc ........................................25-58 Output ..............................................25-46 Reference ..............................................I-1 Standard Functions ......................I-1, I-2 Structure ..........................................25-46 DSL Block Definition .............................25-21 DSL Model Components .......................25-49 DSL Models ............................................25-43 DSL primitive ............................................ A-3 DSL Reference ................................ 25-54, I-1 DSL Structure ........................................25-56 DSL Variables ........................................25-55 Dynamic Model Concept ............................................25-21

E
e DPL ....................................................... G-8 DSL ........................................................I-1 Earthing Neutral Earthing Element ............... C-35 EchoOff (DPL Internal Method) ........... H-13 EchoOn (DPL Internal Method) ........... H-13

DIgSILENT PowerFactory

Users Manual

Index

EDGE DIg Output Language .................... 20-53 Edge Elements ......................................... A-3 Edit Detail Mode ..................................... 11-17 Object (DPL) .................................... H-49 Object Mode .................................... 11-17 Editor Settings ................................................ 6-6 EIC (Reliability Analysis) ..................... 29-16 Eigenvalue Bar Plot ................................ 20-3 Eigenvalue Calculation ........................... 26-1 Eigenvalue Plot ....................................... 20-3 Element ..................................................... A-3 Elements Reference ................................ C-1 ElmArea .................................................... 7-14 ElmAsm ................................................... C-11 ElmAsmsc ............................................... C-18 ElmBmu .................................................... 7-14 ElmBoundary ........................................... 7-14 ElmBranch ............................................... 7-11 ElmCabsys .............................................. C-14 ElmCircuit ................................................. 7-15 ElmClock ................................................. C-68 ElmComp ............................................... 25-26 ElmComp (DPL) ..................................... H-71 Slotupd .............................................. H-72 ElmCompare ............................................ 27-1 ElmCoup (DPL) ...................................... H-86 Close .................................................. H-86 IsClosed ............................................ H-88 IsOpen .............................................. H-88 Open .................................................. H-87 ElmDsl .................................................... 25-32 ElmFeeder ................................................ 7-15 ElmFeeder (DPL) ................................... H-66 GetAll ................................................. H-66 GetBranches ..................................... H-68 GetBuses ........................................... H-67 GetNodesBranches .......................... H-68 GetObjs ............................................. H-69 ElmFft ...................................................... C-69 ElmFile ..................................................... C-70 ElmFsrc ................................................... C-71 ElmGenstat ............................................. C-53 ElmLne .................................................... C-62 ElmLne (DPL) ......................................... H-88 CreateFeederWithRoutes ............... H-92 GetType ............................................ H-89 HasRoutes ........................................ H-88 HasRoutesOrSec .............................. H-89 IsCable .............................................. H-90

IsNetCoupling ................................... H-91 SetCorr .............................................. H-91 ElmLneroute ........................................... C-28 ElmLneroute (DPL) ................................ H-92 HasSections ...................................... H-93 IsCable .............................................. H-92 ElmLnesec ............................................... C-30 ElmLod .................................................... C-23 ElmLodlv ................................................. C-25 ElmLodlvp ............................................... C-27 ElmMdm__1 ............................................ C-31 ElmMdm__3 ............................................ C-31 ElmMdm__5 ............................................ C-31 ElmNet ...................................................... 7-12 ElmNet (DPL) ......................................... H-64 Activate ............................................. H-64 Deactivate ......................................... H-64 ElmOperator ............................................ 7-15 ElmOwner ................................................ 7-16 ElmRec .................................................... C-42 ElmRecmono .......................................... C-41 ElmReg .................................................... C-72 ElmRelay ................................................ 32-16 ElmRes ..........................................13-9, 20-45 ElmRes (DPL) ......................................... H-94 AddVars ............................................. H-98 Clear .................................................. H-95 Draw .................................................. H-96 GetObj ............................................... H-98 Init ..................................................... H-95 SetAsDefault ..................................... H-97 Write .................................................. H-96 WriteDraw ......................................... H-97 ElmRoute ................................................. 7-16 ElmSamp ................................................. C-73 ElmScap .................................................. C-44 ElmShnt ................................................... C-47 ElmSind ................................................... C-46 ElmSite ..................................................... 7-12 ElmStactrl ................................................. 22-5 ElmSubstat ............................................... 7-11 ElmSvs ..................................................... C-56 ElmSym ................................................... C-58 ElmTerm .................................................. 7-10 ElmTow ................................................... C-61 ElmTr2 ....................................................... C-1 ElmTr2n ..................................................... C-1 ElmTr3 ....................................................... C-7 ElmTrb ..................................................... C-13 ElmTrigger .............................................. C-73 ElmVac ........................................... 33-2, C-66 ElmVar ..................................................... C-51
J-5

DIgSILENT PowerFactory

Users Manual

Index

ElmVdc .................................................... C-67 ElmVsc ..................................................... C-39 ElmVscmono ........................................... C-36 ElmXnet ................................................... C-20 ElmZone ................................................... 7-16 ElmZone (DPL) ....................................... H-99 GetAll ................................................. H-99 GetBranches ................................... H-101 GetBuses ......................................... H-100 GetNodes ........................................ H-100 GetObjs ........................................... H-101 ElmZpu ........................................... 33-2, C-16 EMT Simulation ....................................... 25-1 EMT Simulations ..................................... 25-1 ENS (Reliability Analysis) ..................... 29-16 Equipment Type Library ........................ 14-1 Equivalent Network ................................ 33-1 Error (DPL Internal Method) ................ H-11 Event ...................................................... 25-15 Inter-Circuit ..................................... 25-19 Load .................................................. 25-19 Outage ............................................. 25-19 Parameter ........................................ 25-18 Short-Circuit .................................... 25-18 Switching ......................................... 25-18 Synchronous Machine .................... 25-19 Events ..................................................... 25-15 DSL ........................................................I-5 EvtLod Data Model ........................................ 13-7 EvtOutage Data Model ........................................ 13-7 EvtParam Data Model ........................................ 13-7 EvtShc Data Model ........................................ 13-7 EvtShcll Data Model ........................................ 13-7 EvtSym Data Model ........................................ 13-7 Exe (DPL Internal Method) .................... H-3 Execute ComDpl (DPL) .................................. H-79 ComInc (DPL) ................................. H-104 ComLdf (DPL) ................................. H-105 ComRel3 (DPL) .............................. H-102 ComShc (DPL) ................................ H-105 ComSimoutage (DPL) ..................... H-60 ExecuteCntcy ComSimoutage (DPL) ..................... H-60 exp DSL ........................................................I-1
J-6

Expansion Stages ....................................17-1 Export Curve Data .......................................20-38 to Spreadsheet Programs (e. g. MS EXCEL) ......................................11-25 ExportFullRange ComRes (DPL) .................................. H-72 exps DPL ....................................................... G-7 External Network ................................... C-20

F
Failure .....................................................29-55 Failure Effect Analysis ..........................29-42 Failure Models .......................................29-17 Fast Fourier Transform ......................... C-69 fault DSL ...................................................25-62 Fault Clearing (Reliability) ...................29-42 Fault Group ............................................28-21 Fault Isolation (Reliability) ..................29-44 fclose (DPL Internal Method) ............... H-30 FEA (Failure Effect Analysis) ...............29-10 Feeder ......................................................12-6 file DSL ........................................................I-3 File Object ............................................... C-70 FileNmResNm ComRes (DPL) .................................. H-73 First Set (DPL) ........................................... H-38 FirstFilt Set (DPL) ........................................... H-39 Flexible Data Page ................................11-20 flipflop DSL ........................................................I-3 floor DPL ....................................................... G-7 DSL ........................................................I-1 fopen (DPL Internal Method) ............... H-30 for(){} DPL ....................................................... G-9 Forced Outage .......................................29-54 Form Editor ............................................20-48 Format Editor Predefined Variables ......................20-48 Text Editor .......................................20-48 User Selection .................................20-48 Format String Syntax (printf) ................ H-6 Fourier Source ........................................ C-71 fprintf (DPL Internal Method) ................ H-9 frac

D IgSILEN TPowerFactory

Users Manual

Index

GetLanguage (DPL Internal Method) . H-25 GetLocalLib (DPL Internal Method) .... H-26 GetNode Object (DPL) ..................................... H-48 GetNodes ElmZone (DPL) ............................... H-100 GetNodesBranches ElmFeeder (DPL) ............................. H-68 GetObj ElmRes (DPL) ................................... H-98 GetObject ComOutage (DPL) ........................... H-58 G General Selection (DPL) ....................... G-13 GetObjs ElmFeeder (DPL) ............................. H-69 Get ElmZone (DPL) ............................... H-101 IntMat (DPL) .................................... H-80 GetPage IntVec (DPL) ..................................... H-84 SetDesktop (DPL) .......................... H-124 SetFilt (DPL) ..................................... H-79 GetPageLen (DPL Internal Method) ... H-23 GetAll ComNmink (DPL) ............................. H-71 GetParent Object (DPL) ..................................... H-47 ElmFeeder (DPL) ............................. H-66 ElmZone (DPL) ................................. H-99 GetResData (DPL Internal Method) .... H-28 SetFeeder (DPL) ............................ H-108 GetScaleObjX SetVipage (DPL) ............................ H-136 SetPath (DPL) ................................ H-109 VisPlot (DPL) .................................. H-151 SetSelect (DPL) .............................. H-118 GetScaleObjY GetBranches VisPlot (DPL) .................................. H-153 ElmFeeder (DPL) ............................. H-68 ElmZone (DPL) ............................... H-101 GetSize Object (DPL) ........................... H-52, H-53 SetFeeder (DPL) ............................ H-109 SetPath (DPL) ................................ H-110 GetTime (DPL Internal Method) .......... H-25 GetType GetBuses ElmLne (DPL) ................................... H-89 ElmFeeder (DPL) ............................. H-67 GetVal ElmZone (DPL) ............................... H-100 Object (DPL) ..................................... H-53 SetFeeder (DPL) ............................ H-108 GetVar SetPath (DPL) ................................ H-110 IntMon (DPL) ................................... H-77 GetCaseCommand (DPL Internal Method) GetVI H-24 SetVipage (DPL) ............................ H-128 GetCaseObject (DPL Internal Method) H-24 Glossary .................................................... A-1 GetClass Object (DPL) .................................... H-46 Graphic Attributes ......................................... 10-32 GetConnectedElms Balloon Help .................................... 10-47 Object (DPL) .................................... H-49 Colour ............................................... 10-45 GetConnectionCount Edit Result Box ................................ 10-48 Object (DPL) .................................... H-49 Imported Data ................................ 10-27 GetContents Insert ................................................ 10-31 Object (DPL) .................................... H-46 Interconnect ...................................... 10-6 GetCubicle Layers ............................................... 10-41 Object (DPL) .................................... H-48 Legend Block ................................... 10-46 GetFullName Mark Element .................................... 10-5 Object (DPL) .................................... H-45 Options ............................................. 10-34 GetGlobalLib (DPL Internal Method) .. H-26 Predefined Objects ......................... 10-26 GetGraphBoard (DPL Internal Method) . HPrint .................................................. 10-31 24
J-7

DPL ...................................................... G-7 DSL ........................................................I-1 fRand (DPL Internal Method) .............. H-32 Frequency Dependent Parameters .... 24-12 Frequency Sweep ................................... 24-4 Advanced Options ............................ 24-6 Basic Options .................................... 24-5 fscanf (DPL Internal Method) .............. H-19 fscanfsep (DPL Internal Method) ........ H-19 fWrite (DPL Internal Method) .............. H-10

DIgSILENT PowerFactory

Users Manual

Index

Rebuild ............................................. 10-31 Reference Point ............................... 10-48 Remove Page .................................. 10-32 Rename Page .................................. 10-32 Result Box ........................................ 10-47 Result Boxes .................................... 10-34 Title Block ........................................ 10-46 Toolboxes ........................................ 10-23 Zoom ................................................ 10-30 Graphic Window New ................................................... 10-21 Page Tab .......................................... 10-22 Graphic Windows Settings ................................................ 6-2 Graphics Board ...................................... 10-17 Graphics Board Window ......................... A-4 Grid ............................................................ A-4 Grouping Objects .................................... 12-1

I
IEAR (Reliability Analysis) ...................29-17 if(){} DPL ....................................................... G-9 if(){}else{} DPL ....................................................... G-9 Impedance Common, Element ........................... C-16 Import from Spreadsheet Programs (e. g. MS EXCEL) ..................................11-26 inc DSL ...................................................25-57 inc0 DSL ...................................................25-57 incfix DSL ...................................................25-57 Induction Machine Doubly Fed ........................................ C-18 Info (DPL Internal Method) .................. H-12 Init ElmRes (DPL) ................................... H-95 IntMat (DPL) ..................................... H-81 IntVec (DPL) ..................................... H-85 Inom Object (DPL) ..................................... H-55 input DPL ..................................................... G-10 IntCase .....................................................13-1 The Study Case Edit Dialogue ........13-4 IntCase (DPL) ......................................... H-63 Activate ............................................. H-63 Deactivate ......................................... H-63 IntCbrating ...............................................7-21 IntEigen ....................................................26-8 IntEigstate ...............................................26-9 Interconnect ............................................10-6 Interface DGS .......................................................F-1 Interfaces ...................................................F-1 Internal Methods DPL ....................................................... H-1 Interruption ...........................................29-55 intervalinc DSL ...................................................25-58 IntEvt ........................................................7-25 IntEvtshc ................................................23-10 IntFaultgrp ...............................................7-27 IntFltcases ...............................................7-24 IntFltgroups .............................................7-24 IntForm ..................................................20-48 IntForm (DPL) ...................................... H-121

H
Harmonic Filter Analysis .................................... 24-6 Harmonic Analysis .................................. 24-1 Harmonic Calculation Modeling ............................................ 24-8 Plot .................................................... 24-14 Result Variables .............................. 24-15 Harmonic Impedance ............................. 24-4 Harmonic Load-Flow .............................. 24-2 Advanced Options ............................ 24-4 Basic Options ..................................... 24-2 Result Variables ................................ 24-3 Harmonic Source Current ............................................. 24-11 Harmonic Sources .................................. 24-8 Harmonics Analysis ................................ 24-1 HasResults Object (DPL) ..................................... H-48 HasRoutes ElmLne (DPL) ................................... H-88 HasRoutesOrSec ElmLne (DPL) ................................... H-89 HasSections ElmLneroute (DPL) .......................... H-93 Hazard Rate Function .......................... 29-56 Help ............................................................ 3-3 Hidden Failure ....................................... 29-55 HMC .......................................................... 24-1 HmcCur .................................................... 24-8 Hotkeys ..................................................... B-1 Hotkeys References ................................. B-1

J-8

DIgSILENT PowerFactory

Users Manual

Index

SetText ............................................ H-121 WriteOut ......................................... H-121 IntGrf .......................................................... 7-8 IntGrfnet ................................................ 10-32 Options ............................................. 10-32 IntLogon .................................................... 5-1 IntMat (DPL) .......................................... H-80 ColLbl ................................................. H-83 Get ..................................................... H-80 Init ..................................................... H-81 NCol ................................................... H-83 NRow ................................................. H-82 Resize ................................................ H-82 RowLbl .............................................. H-83 Set ..................................................... H-81 IntMon ...........................................13-11, 19-1 IntMon (DPL) ......................................... H-76 AddVar .............................................. H-78 ClearVars .......................................... H-78 GetVar ............................................... H-77 NVars ................................................. H-77 PrintAllVal ......................................... H-76 PrintVal .............................................. H-76 RemoveVar ....................................... H-78 IntMonsel ............................................... 11-20 IntNewobj ................................................ 11-4 IntOutage .......................................7-22, 7-27 Demad Transfer ................................ 7-23 IntPlot (DPL) ........................................ H-156 SetAdaptY ....................................... H-158 SetAutoScaleY ................................ H-158 SetScaleY ........................................ H-156 IntPrj .......................................................... 9-3 IntPrj (DPL) ............................................ H-62 Activate ............................................. H-62 Deactivate ......................................... H-63 IntPrjfolder ................................................ 7-2 IntQlim ..................................................... 7-27 IntRunarrange ......................................... 7-29 IntScenario .............................................. 16-1 IntScheme ............................................... 7-17 IntSscheduler .......................................... 17-6 IntSstage ................................................. 7-17 IntSubset ................................................. 16-2 IntSym .......................................................E-1 IntTemplate ........................................... 10-11 IntThrating .............................................. 7-30 IntVariant (DPL) .................................... H-65 Activate ............................................. H-65 Deactivate ......................................... H-65 IntVec (DPL) ........................................... H-84 Get ..................................................... H-84

Init ..................................................... H-85 Resize ................................................ H-85 Set ...................................................... H-85 Size .................................................... H-86 IntVersion ................................................ 21-1 Inverter 1-DC Connection .............................. C-41 2-DC Connections ............................ C-42 invlapprox DSL ........................................................I-4 IsCable ElmLne (DPL) ................................... H-90 ElmLneroute (DPL) .......................... H-92 TypLne (DPL) ................................... H-93 IsClass Object (DPL) ..................................... H-47 IsClosed ElmCoup (DPL) ................................ H-88 StaSwitch (DPL) ............................. H-107 IsIn Set (DPL) .......................................... H-40 IsInFeeder Object (DPL) ..................................... H-52 IsNetCoupling ElmLne (DPL) ................................... H-91 IsNode Object (DPL) ..................................... H-48 IsOpen ElmCoup (DPL) ................................ H-88 StaSwitch (DPL) ............................. H-107 IsOutOfService Object (DPL) ..................................... H-51 IsRelevant Object (DPL) ..................................... H-51

L
lapprox DSL ........................................................I-4 lapprox2 DSL ........................................................I-4 LCOL DIg Output Language .................... 20-54 lim DSL ........................................................I-2 Limits ...................................................... 30-10 limstate DSL ........................................................I-2 Line Element ............................................. C-62 Element, Route ................................ C-28 Element, Sub-Section ...................... C-30 Type ................................................... D-17
J-9

DIgSILENT PowerFactory

Users Manual

Index

Line Coupling Element ............................................. C-61 ln DPL ...................................................... G-7 DSL ........................................................I-1 lnm Object (DPL) ..................................... H-54 Load Element ............................................. C-23 Element, Low Voltage ..................... C-25 Element, Partial ................................ C-27 Type, General ................................... D-16 Load Flow Analysis ................................. 22-1 Load Shedding (Reliability) ................. 29-47 Load Transfer (Reliability) ................... 29-46 Load-Flow Active Power Control ........................ 22-9 Adv.Simulation Options ................. 22-15 Advanced Options .......................... 22-10 Basic Options ..................................... 22-7 Iteration Control ............................. 22-12 Low-Voltage Analysis ..................... 22-14 Optimizing .......................................... 30-1 Output .............................................. 22-13 Reactive Power Control ................... 22-8 Trouble Shooting ............................ 22-16 Load-Flow Analysis ................................. 22-1 LoadResData (DPL Internal Method) .. H-29 log DPL ...................................................... G-7 DSL ........................................................I-1 Log-on ........................................................ 5-1 Logon Advanced Settings .............................. 5-5 loopinc DSL ................................................... 25-58 Lost load ................................................ 29-54 LPEIC (Reliability Analysis) ................. 29-16 LPENS (Reliability Analysis) ................ 29-15 LPES (Reliability Analysis) ................... 29-15 LPIF (Reliability Analysis) .........29-13, 29-17 LPIT (Reliability Analysis) .........29-14, 29-17

Matlab File .......................................25-69 Model Implementation ...................25-66 max DPL ....................................................... G-7 DSL ........................................................I-1 MDM ......................................................... C-31 min DPL ....................................................... G-7 DSL ........................................................I-1 Modal Analysis .........................................26-1 Data Browser ...................................26-10 Participation Factor ..........................26-1 Plots ...........................................20-3, 26-7 Results ................................................26-5 Start ....................................................26-4 Model Analysis Theory ................................................26-1 Model Parameter Identification ............27-1 Modeling and Simulation Tools ..........25-45 modulo DPL ....................................................... G-7 DSL ........................................................I-1 Motor Driven Machine ........................... C-31 Move Object (DPL) ..................................... H-50

N
NCol IntMat (DPL) ..................................... H-83 NEC .......................................................... C-35 NET DIg Output Language ....................20-53 Network Reduction .................................33-1 Example ..............................................33-1 Handling .............................................33-3 Options ...............................................33-5 Network Variations .................................17-1 newtoninc DSL ...................................................25-58 Next Set (DPL) ........................................... H-39 NextFilt Set (DPL) ........................................... H-40 Node .......................................................... A-4 NoFinalUpdate (DPL Internal Method) H-14 NRow IntMat (DPL) ..................................... H-82 NULL .......................................................... G-7 NVars IntMon (DPL) .................................... H-77

M
Macro DSL ................................................... 25-61 Maintenance .......................................... 29-54 MarkInGraphics Object (DPL) ..................................... H-56 Set (DPL) .......................................... H-43 Matlab Interface Concept ............................................ 25-66
J - 10

DIgSILENT PowerFactory

Users Manual

Index

O
Obj Set (DPL) .......................................... H-41 OBJECT DIg Output Language .................... 20-53 Object ........................................................ A-4 Object (DPL) AddCopy ............................................ H-50 CreateObject .................................... H-44 Edit .................................................... H-49 GetClass ............................................ H-46 GetConnectedElms .......................... H-49 GetConnectionCount ....................... H-49 GetContents ..................................... H-46 GetCubicle ........................................ H-48 GetFullName ..................................... H-45 GetNode ............................................ H-48 GetParent .......................................... H-47 GetSize .................................... H-52, H-53 GetVal ................................................ H-53 HasResults ........................................ H-48 Inom .................................................. H-55 IsClass ............................................... H-47 IsInFeeder ........................................ H-52 IsNode ............................................... H-48 IsOutOfService ................................. H-51 IsRelevant ......................................... H-51 lnm ..................................................... H-54 MarkInGraphics ................................ H-56 Move .................................................. H-50 ShowFullName ................................. H-45 snm .................................................... H-54 StochEvt ............................................ H-56 unm ................................................... H-55 Unom ................................................. H-55 VarExists ........................................... H-52 Objects Edit ................................................... 10-19 Filtering ............................................ 11-13 Search .............................................. 11-12 Sorting .............................................. 11-12 Objects relevant for Calculation ............. 8-2 Off ComEcho (DPL) ............................... H-74 On ComEcho (DPL) ............................... H-73 Open ElmCoup (DPL) ................................ H-87 StaSwitch (DPL) ............................. H-106 Open Tie Optimization ........................... 31-9 Options ............................................. 31-10 Operation Scenario ................................. 16-1

Operation Scenarios ............................... 16-1 Operational Data .................................... 15-1 Operational Library ................................. 15-1 Operator ................................................... 12-8 OPF ........................................................... 30-1 Opt. Capacitor Placement Basic Options ..................................... 31-4 Optimization Procedure ................... 31-3 Sensitivity Analysis ........................... 31-3 Target Function ................................ 31-1 Optimal Capacitor Placement ............... 31-1 Optimal Power Flow ............................... 30-1 Optimal Power-Flow ............................... 30-1 Optimization Procedure ......................... 31-9 Optimization Tools for Distribution Networks ........................................................ 31-1 Outage ................................................... 29-54 output DPL .................................................... G-10 DSL ................................................... 25-62 Output of Device Data ......................... 20-57 Documentation ................................ 20-59 Filter/Annex ..................................... 20-59 Output of Results ................................. 20-60 Output Window Context Sensitive Menu ................... 4-15 Copy ................................................... 4-17 Legend ............................................... 4-16 Settings ................................................ 6-5 Output window ....................................... 4-13 Overload Alleviation (Reliability) ........ 29-46 Owner ....................................................... 12-8

P
Page Tab ................................................... A-4 Parameter Characteristics ..................... 18-1 Parameter Identification ........................ 27-1 Application ......................................... 27-8 Comparison Slot ................................ 27-4 Measurement File ............................. 27-3 Model Creation .................................. 27-4 Performing ......................................... 27-6 Target Function ................................ 27-2 Passive Failure ...................................... 29-55 Path .......................................................... 12-9 pi DPL ...................................................... G-8 DSL ........................................................I-1 picdro DSL ........................................................I-3 PostCommand (DPL Internal Method) H-27 pow
J - 11

DIgSILENT PowerFactory

Users Manual

Index

DPL ...................................................... G-7 DSL ........................................................I-1 Power at Risk ........................................ 29-46 Power Restoration (Reliability) ........... 29-45 PowerFactory Overview ........................... 4-1 Primitive Block Definitions (DSL) ........ 25-51 Print Graphic .......................................... 10-31 PrintAllVal IntMon (DPL) .................................... H-76 printf (DPL Internal Method) ................. H-8 PrintVal IntMon (DPL) .................................... H-76 Probability Density Function ............... 29-56 Program Configuration ............................. 5-1 Program Setting, Logging on and User Accounts ......................................................... 5-1 Program Settings ...................................... 5-1 Project ....................................................... A-4 Basic Defintion .................................... 9-1 Validity Period ..................................... 9-5 Project Settings ......................................... 9-4 Protection ................................................. 32-1 Protection Coordination Wizard .......... 32-47 PSS/E Dyn.Data Import ...........................F-5 General Settings .................................F-6 Import Options ....................................F-7 PSS/E Export .............................................F-7 General Settings .................................F-8 Options .................................................F-8 PSS/E Import .............................................F-1 General Settings .................................F-2 Graphical Options ...............................F-5 Import Options ....................................F-3 PWM Converter 1 DC Connection .............................. C-36 2 DC Connections ............................ C-39

R
Random (DPL Internal Method) .......... H-31 Rectifier 1-DC Connection .............................. C-41 2-DC Connections ............................ C-42 Type ................................................... D-21 Reducing Network .................................. 33-1 Reduction ................................................. 33-1 Redundant Unit ..................................... 29-56 Reference to the use of Symbols ...........E-1 RelDir ...................................................... 32-17 RelFmeas ............................................... 32-19 RelFrq ..................................................... 32-19 RelFuse ................................................... 32-20 Reliability .................................................. 29-1
J - 12

Reliability Analysis ..................................29-1 Advanced Options ...........................29-12 Basic Options .....................................29-7 Calculated Results ..........................29-13 FEA Options .....................................29-10 Glossary ............................................29-54 Options ...............................................29-6 Outputs ..............................................29-9 Probabilistic .......................................29-1 State Enumeration ..........................29-39 Stochastic Models .............................29-3 Theory ................................................29-2 Reliability Assessment ............................29-1 Reliability Model Busbar and Terminal ......................29-18 Common Mode ................................29-32 Interruption Cost ............................29-36 Lines .................................................29-20 Load ..................................................29-34 Load Shedding/Transfer ................29-38 Maintenance ....................................29-31 Plant Model ......................................29-26 Synchronous Machine ....................29-24 Transformer .....................................29-22 Reliability Models ..................................29-17 RelIoc ............................................32-9, 32-21 RelLogic .......................................32-10, 32-22 RelMeasure ...................................32-8, 32-23 RelToc ............................................32-9, 32-24 RelUlim ...................................................32-26 Remote Scripts (DPL) ............................ G-15 Remove Set (DPL) ........................................... H-37 RemoveVar IntMon (DPL) .................................... H-78 Repair .....................................................29-55 Reporting Results ...................................20-1 ReportObjs ComSimoutage (DPL) ...................... H-62 RES DIg Output Language ....................20-54 Reset ComSimoutage (DPL) ...................... H-59 ResetCalculation (DPL Internal Method) H30 ResIndex (DPL Internal Method) ........ H-27 Resize IntMat (DPL) ..................................... H-82 IntVec (DPL) ..................................... H-85 ResNval (DPL Internal Method) ........... H-28 ResNvars (DPL Internal Method) ........ H-28 Result Box

DIgSILENT PowerFactory

Users Manual

Index

Edit ................................................... 10-48 Result Comparison Setup .................................................... 8-4 Result Export ......................................... 20-46 Result Object ................................. 20-45, A-5 Results ..................................................... 20-1 DIgSILENT Output Language ....... 20-50 RMS Simulation ....................................... 25-1 round DPL ...................................................... G-7 DSL ........................................................I-1 RowLbl IntMat (DPL) .................................... H-83

S
SAIDI (Reliability Analysis) ................. 29-14 SAIFI (Reliability Analysis) .................. 29-14 Sample and Hold ................................... C-73 sapprox DSL ........................................................I-4 sapprox2 DSL ........................................................I-5 Scheduled Outage ................................ 29-54 SEAR (Reliability Analysis) .................. 29-16 Security .................................................. 29-56 SEL ............................................................. G-7 select DSL ........................................................I-3 Sensitivity Analysis ............................... 22-17 Series Capacitance ................................ C-44 Series Reactance ................................... C-46 SES (Reliability Analysis) ..................... 29-16 Set IntMat (DPL) .................................... H-81 IntVec (DPL) ..................................... H-85 Set (DPL) Add .................................................... H-37 Clear .................................................. H-38 Count ................................................. H-41 First .................................................... H-38 FirstFilt .............................................. H-39 IsIn .................................................... H-40 MarkInGraphics ................................ H-43 Next ................................................... H-39 NextFilt .............................................. H-40 Obj ..................................................... H-41 Remove ............................................. H-37 SortToClass ...................................... H-42 SortToName ..................................... H-42 SortToVar .......................................... H-41 Set Methods (DPL) ................................ H-36 SetAdaptX

SetDesktop (DPL) .......................... H-127 SetVipage (DPL) ............................ H-135 VisPlot (DPL) .................................. H-149 SetAdaptY IntPlot (DPL) .................................. H-158 VisPlot (DPL) .................................. H-150 SetAsDefault ElmRes (DPL) ................................... H-97 SetAutoScaleX SetDesktop (DPL) .......................... H-127 SetVipage (DPL) ............................ H-134 VisPlot (DPL) .................................. H-147 SetAutoScaleY IntPlot (DPL) .................................. H-158 VisPlot (DPL) .................................. H-148 SetColgr ......................................10-39, 10-45 SetCondmg ............................................ 32-32 SetCorr ElmLne (DPL) ................................... H-91 SetCrvDesc VisPlot (DPL) .................................. H-154 SetCrvfilt ................................................ 20-37 SetCubop ................................................. 10-3 SetDefScaleX SetVipage (DPL) ............................ H-132 VisPlot (DPL) .................................. H-143 SetDefScaleY VisPlot (DPL) .................................. H-144 SetDesktop (DPL) ................................ H-123 DoAutoScaleX ................................. H-126 GetPage ........................................... H-124 SetAdaptX ....................................... H-127 SetAutoScaleX ................................ H-127 SetResults ....................................... H-125 SetScaleX ........................................ H-126 SetXVar ........................................... H-125 Show ................................................ H-123 WriteWMF ....................................... H-124 SetDisplt ................................................. 32-45 SetFeeder (DPL) .................................. H-108 GetAll ............................................... H-108 GetBranches ................................... H-109 GetBuses ......................................... H-108 SetFilt ..................................................... 11-12 SetFilt (DPL) ........................................... H-79 Get ..................................................... H-79 SetGrfpage ............................................. 10-41 SetLevelVis ............................................ 10-41 SetLimits ComSimoutage (DPL) ..................... H-61 SetLineFeed (DPL Internal Method) ... H-23 SetMotorst ............................................. 32-36
J - 13

DIgSILENT PowerFactory

Users Manual

Index

SetNomCurr TypLne (DPL) ................................... H-94 SetObjs ComOutage (DPL) ........................... H-57 SetOcplt .................................................. 32-37 SetPath .............................. 7-16, 32-26, 32-38 SetPath (DPL) ....................................... H-109 AllBreakers ...................................... H-111 AllClosedBreakers .......................... H-112 AllOpenBreakers ............................ H-112 GetAll ............................................... H-109 GetBranches ................................... H-110 GetBuses ......................................... H-110 SetPrj .......................................................... 9-4 SetRandSeed (DPL Internal Method) . H-31 SetResults SetDesktop (DPL) .......................... H-125 SetVipage (DPL) ............................ H-130 SetScaleX SetDesktop (DPL) .......................... H-126 SetVipage (DPL) ............................ H-131 VisPlot (DPL) .................................. H-141 SetScaleY IntPlot (DPL) .................................. H-156 VisPlot (DPL) .................................. H-142 SetSelect (DPL) .................................... H-113 AddRef ............................................. H-113 All ..................................................... H-118 AllAsm .............................................. H-116 AllBars ............................................. H-115 AllBreakers ...................................... H-119 AllClosedBreakers .......................... H-120 AllElm ............................................... H-114 AllLines ............................................ H-115 AllLoads ........................................... H-116 AllOpenBreakers ............................ H-120 AllSym .............................................. H-117 AllTypLne ........................................ H-117 Clear ................................................ H-114 GetAll ............................................... H-118 SetStyle SetVipage (DPL) ............................ H-129 SetText IntForm (DPL) ................................ H-121 SetTile SetVipage (DPL) ............................ H-129 SetTime .................................................... 13-3 SetTime (DPL) .................................. H-74 SetTime (DPL) ........................................ H-74 Date ................................................... H-75 SetTime ............................................. H-74 Time ................................................... H-75
J - 14

Settings Data Manager ......................................6-4 Directories ............................................6-6 Editor ....................................................6-6 Functions ..............................................6-5 General .................................................6-1 Graphic Windows ................................6-2 Output Window ...................................6-5 SetTitm ...................................................10-46 SetTrfdmg ..............................................32-34 SetTrigger .....................................7-32, 13-12 SetUser .......................................................6-1 SetValue .................................................11-17 SetVilytaxis ............................................20-42 SetVilytpage ...........................................20-42 SetVilytplot .............................................20-42 SetViPage .................................................20-3 SetVipage (DPL) ................................... H-128 DoAutoScaleX ................................. H-133 DoAutoScaleY ................................. H-133 GetScaleObjX .................................. H-136 GetVI ............................................... H-128 SetAdaptX ....................................... H-135 SetAutoScaleX ................................ H-134 SetDefScaleX .................................. H-132 SetResults ....................................... H-130 SetScaleX ........................................ H-131 SetStyle ........................................... H-129 SetTile ............................................. H-129 SetXVar ............................................ H-130 SetXVar SetDesktop (DPL) .......................... H-125 SetVipage (DPL) ............................. H-130 VisPlot (DPL) .................................. H-140 Shed load ...............................................29-54 Short-Circuit Adv.Options ANSI ...........................23-22 Adv.Options Complete M. ..............23-25 Advanced Options IEC/VDE ..........23-17 Background ........................................23-1 Basic Options ...................................23-12 Basic Options ANSI .........................23-20 Basic Options Complete M. ...........23-23 Basic Options IEC/VDE ..................23-16 Calculation .........................................23-7 Calculation Method .........................23-12 Calculation Options .........................23-12 Complete Method .............................23-3 Explanation IEC/VDE Method .........23-5 Fault Type ........................................23-13 IEC Correction Factors .....................23-6 Line Faults .........................................23-9

DIgSILENT PowerFactory

Users Manual

Index

Multiple Faults ................................. 23-10 Verification ...................................... 23-15 Short-Circuit Analysis ............................. 23-1 Show SetDesktop (DPL) .......................... H-123 ShowFullName Object (DPL) .................................... H-45 Shunt Element ............................................. C-47 sin DPL ...................................................... G-7 DSL ........................................................I-1 Single Line Graphic ...................10-37, 10-38 sinh DPL ...................................................... G-7 DSL ........................................................I-1 Size IntVec (DPL) ..................................... H-86 Slot ............................................................ A-5 Slotupd ElmComp (DPL) ............................... H-72 snm Object (DPL) .................................... H-54 Soft Starter ............................................. C-51 SortToClass Set (DPL) .......................................... H-42 SortToName Set (DPL) .......................................... H-42 SortToVar Set (DPL) .......................................... H-41 Spare Unit .............................................. 29-55 sprintf (DPL Internal Method) ............... H-8 sqr DPL ...................................................... G-7 DSL ........................................................I-1 sqrt DPL ...................................................... G-7 DSL ........................................................I-1 sscanf (DPL Internal Method) ............. H-18 Stability Analysis Models .............................................. 25-21 Stability and EMT Simulations .............. 25-1 Stability Simulation ................................. 25-1 StaCt ..............................................32-7, 32-10 StaCubic ................................................... 7-10 StaExtpmea ........................................... 34-22 StaExtqmea ........................................... 34-22 StaExtvmea ........................................... 34-22 STALNE DIg Output Language .................... 20-54 StaSwitch ................................................. 7-10 StaSwitch (DPL) ................................... H-106

Close ................................................ H-106 IsClosed .......................................... H-107 IsOpen ............................................. H-107 Open ................................................ H-106 State Enumeration ................................ 29-39 State Estimation ..................................... 34-1 Static Generator ..................................... C-53 Static Var System .................................. C-56 Station Controller .................................... 22-5 StationWare ...............................................F-9 Statistic .................................................. 29-54 StaVt ....................................................... 32-12 StaVtsec ................................................. 32-14 Stochastic .............................................. 29-54 StochEvt Object (DPL) ..................................... H-56 StoCommon ........................................... 29-32 StoMaint ................................................. 29-31 strchg (DPL Internal Method) .............. H-15 strcmp (DPL Internal Method) ............. H-15 strcpy (DPL Internal Method) .............. H-15 strftime (DPL Internal Method) ........... H-17 strlen (DPL Internal Method) ............... H-16 strstr (DPL Internal Method) ............... H-14 strtok (DPL Internal Method) .............. H-16 Study Case .......................................13-1, A-5 Study Time ........................................ 13-3 Study Cases ............................................. 13-1 Study Time .............................................. 13-3 Subplot (VI) ........................................... 20-10 SummaryGrid (DPL Internal Method) . H-20 Support ...................................................... 2-1 Symbols ......................................................E-1 Symbols of Elements Editing and Changing ..................... 10-46 Synchronous Machine Element ............................................. C-58 Type ................................................... D-22 System Stage ........................................... A-5

T
tan DPL ...................................................... G-7 DSL ........................................................I-1 tanh DPL ...................................................... G-7 DSL ........................................................I-1 TechRef ..................................................... C-1 The .............................................................. 5-1 The Graphics Editor ................................ 10-1 this ............................................................. G-7 Time
J - 15

DIgSILENT PowerFactory

Users Manual

Index

SetTime (DPL) .................................. H-75 time DSL ................................................. I-1, I-3 Time Phases .......................................... 28-12 Time-Domain Simulation 3-phase EMT Simulation .................. 25-4 3-phase RMS Simulation .................. 25-3 Advanced Options ............................ 25-9 Balanced RMS Simulation ................ 25-3 Basic Options ..................................... 25-6 Calculation Methods ......................... 25-3 Events ............................................... 25-15 Load Flow ........................................ 25-12 Long-Term Stability ........................ 25-10 Noise Generation ............................ 25-11 Reference System ........................... 25-10 Result Objects ................................. 25-13 Run ................................................... 25-20 Setup .................................................. 25-4 Simulation Results .......................... 25-14 Step-Size Adaption ..................25-7, 25-8 Time-Domain Simulations ..................... 25-1 TITLE DIg Output Language .................... 20-53 Toolbar Definitions ................................... 4-9 ToStr (DPL Internal Method) ............... H-10 Tower Types ................................................. D-25 Trace ...................................................... 28-19 Transformer Element, 2-Winding ........................... C-1 Element, 3-Winding ........................... C-7 Element, Booster ............................. C-13 Type, 2-Winding ................................ D-1 Type, 3-Winding ................................ D-4 Type, Booster ................................... D-11 Transient Analysis .................................. 25-1 Transients electromagnetical ............................. 25-2 electromechanical ............................. 25-2 long-term ........................................... 25-2 Transition rate ....................................... 29-26 TriCont ..................................................... 18-6 TriDisc ...................................................... 18-5 TriFreq ...................................................... 18-7 Trigger Element ............................................. C-73 TriVal ........................................................ 18-2 trunc DPL ...................................................... G-7 DSL ........................................................I-1 TTF (Reliability Analysis) ....................... 29-4
J - 16

TTR (Reliability Analysis) .......................29-4 twopi DPL ....................................................... G-8 DSL ........................................................I-1 TypAsm (DPL) ........................................ H-65 CalcElParams .................................... H-65 TypAsmo ................................................... D-8 TypAsmo (DPL) ...................................... H-66 CalcElParams .................................... H-66 TypCab .................................................... D-13 TypCon .................................................... D-14 TypCt ......................................................32-12 Type ........................................................... A-5 Define element type .........................7-19 Types Reference ...................................... D-1 TypGeo .................................................... D-25 TypHmcCur ..............................................24-8 TypLne ..................................................... D-17 TypLne (DPL) ......................................... H-93 IsCable .............................................. H-93 SetNomCurr ...................................... H-94 TypLod ..................................................... D-16 TypRec .................................................... D-21 TypSym ................................................... D-22 TypTow ................................................... D-25 TypTr2 ....................................................... D-1 TypTr3 ....................................................... D-4 TypTrb ..................................................... D-11 TypVt ......................................................32-15 TypVtsec ................................................32-15

U
unm Object (DPL) ..................................... H-55 Unom Object (DPL) ..................................... H-55 User Interface ...........................................4-6 User Settings .............................................6-1

V
Validity Period ...........................................9-5 validLDF (DPL Internal Method) .......... H-21 validRMS (DPL Internal Method) ......... H-22 validSHC (DPL Internal Method) ......... H-22 validSIM (DPL Internal Method) .......... H-22 VarExists Object (DPL) ..................................... H-52 Variable Sets ............................................19-1 VARIANT DIg Output Language ....................20-53 Variations .................................................17-1

DIgSILENT PowerFactory

Users Manual

Index

Vector Diagram Changing the object ....................... 20-21 Changing the Variables ................. 20-22 Coordinates ..................................... 20-21 Editing the Unit/Tick ...................... 20-21 Label of Vectors .............................. 20-21 Origin ................................................ 20-21 X and Y Axes ................................... 20-21 VecVis ..................................................... 20-19 VI Constant Value ................................ 20-35 Curve Filter ...................................... 20-37 Curve Input ..................................... 20-27 Defining Styles ................................ 20-42 Edit Dialogues ................................. 20-31 Embedded Graphic Windows ........ 20-30 Export Curve Data .......................... 20-38 Export Curve Graphic ..................... 20-38 FFT Plot ............................................ 20-18 Format Label ................................... 20-33 Labelling Plots ................................. 20-32 Plot Style .......................................... 20-43 Pre-defined Style ............................ 20-44 Status Bar ........................................ 20-32 Straight Line .................................... 20-37 Styles ................................................ 20-41 Text Label ........................................ 20-32 Tools for Virtual Instruments ....... 20-31 User-defined Styles ........................ 20-41 Value Label ...................................... 20-32 Vector Diagram ............................... 20-19 Voltage Profile Plot ......................... 20-22 Waveform Plot ................................ 20-25 X-Y-Plot ............................................ 20-17 VI Panel Automatic Arrangement .................. 20-5 Automatic Scale Buttons ................. 20-5 Background ....................................... 20-8 Context Sensitive Menu ................... 20-8 Create Virtual Instruments ............. 20-9 Default Styles .................................... 20-9 Defining Styles ................................ 20-42 Edit ..................................................... 20-4 Moving and Resizing ........................ 20-6 Page Format ...................................... 20-6 Plots .................................................... 20-9 Results ............................................... 20-8 Title Block .......................................... 20-7 Variables of Plots .............................. 20-6 Virtual Instrument ................................... A-5 Virtual Instrument Panel ........................ A-6 Virtual Instrument Panels ..................... 20-3

Virtual Instruments ................................ 20-1 Types .................................................. 20-1 Types Feeders ................................... 20-2 Types Harmonics .............................. 20-3 Types Protection ............................... 20-2 Virtual Power Plant ................................. 12-1 VisDefcrv ................................................ 20-27 VisDraw .................................................. 32-43 VisEigen ................................................... 26-7 Viseigen .................................................... 20-3 VisFft ...................................................... 20-18 VisFft (DPL) ......................................................... H-155 DoAutoScaleX ................................. H-155 VisHrm .................................................... 20-25 VisLabel .................................................. 20-33 VisModbar .......................................20-3, 26-8 VisModphasor .......................................... 26-9 VisOcplot ................................................ 32-30 VisPath ................................................... 20-22 Schematic Visualization ................. 20-24 VisPlot ..................................................... 20-10 Curves .............................................. 20-15 Editing Subplots .............................. 20-10 Setting the X-Axis ........................... 20-11 Setting the Y-Axis ........................... 20-13 VisPlot (2 Y-Axes) ................................. 20-17 VisPlot/VisPlot (DPL) SetAutoScaleX ................................ H-147 VisPlot/VisPlot2 (DPL) ......................... H-137 AddResVars .................................... H-139 AddVars ........................................... H-137 Clear ................................................ H-139 DoAutoScaleX ................................. H-145 DoAutoScaleY ................................. H-146 GetScaleObjX ................................. H-151 GetScaleObjY ................................. H-153 SetAdaptX ....................................... H-149 SetAdaptY ....................................... H-150 SetAutoScaleY ................................ H-148 SetCrvDesc ..................................... H-154 SetDefScaleX .................................. H-143 SetDefScaleY .................................. H-144 SetScaleX ........................................ H-141 SetScaleY ........................................ H-142 SetXVar ........................................... H-140 VisPlot2 .................................................. 20-17 VisPlot2 (DPL) DoAutoScaleY2 ............................... H-146 VisPlottz ................................................. 32-38 VisValue ................................................. 20-32 VisXvalue ............................................... 20-35
J - 17

DIgSILENT PowerFactory

Users Manual

Index

VisXYPlot ................................................ 20-17 Voltage Sag Analysis ............................ 29-48 Options ............................................. 29-48 Results .............................................. 29-51 Voltage Source Element (AC) .................................... C-66 Element (DC) .................................... C-67

W
Warn (DPL Internal Method) ............... H-12 Waveform Plot ...................................... 24-14 Weibull-Markov-Model ........................... 29-5 Welcome .................................................... 1-1 while(){} DPL ...................................................... G-9 Write ElmRes (DPL) ................................... H-96 Write (DPL Internal Method) ............... H-10 WriteDraw ElmRes (DPL) ................................... H-97 WriteOut IntForm (DPL) ................................ H-121 WriteWMF SetDesktop (DPL) .......................... H-124

Z
Zone .......................................................... 12-9

J - 18

Вам также может понравиться