101
2A - 1 II. Cards to Begin a New Data Case ( includes miscellaneous data cards ) Each new data case that is to be processed by ATP must begin with one or more of the data types described in the following subsections. Structurally, there is an indeterminate number (possibly zero) of the special-request cards of Section II-A that come first, in any order (unless usage dictates an order for the problem of interest). The miscellaneous data cards of Section II-B, followed by possible extensions to these cards (see Section II-C), only come after the last of the special-request cards of Section II-A. II-A. Special - Request Cards That Precede Miscellaneous Data Free-format data options are useful for some special-request inputs. Take the FREQUENCY SCAN declaration as an example. Using free format, a valid sample card image is as follows : "FREQUENCY SCAN, 10., 5.0, 100., 0". Even more abbreviation is possible for the really lazy data assembler. Rather than use the full request word, an acronym made up of the first letter of each sub-word usually can be used. In this case, FREQUENCY SCAN can be abbreviated as FS, if desired. Nearly all special-request words are recognized in such abbreviated, fashion. Any exceptions to regular naming will be shown within parentheses on the right of the alphabetical list below, and in a separate tabulation following the complete list. A final point is this: although possible, the use of abbreviations generally is not recommended because the data that results is less readable. All possible special-request cards that could be recognized at this point of EMTP data input will now be listed in alphabetical order for ease of location. Before each is the number of the subsection (within the present Section II-A) that contains an explanation of use. The ordering begins (in July of 2003) alphabetically : 1 ABSOLUTE TACS DIMENSIONS allocation of total storage among 9 TACS tables 2 ABSOLUTE U.M. DIMENSIONS ( AUMD ) allocation of total storage among 4 U.M. tables 3 ACCESS MODULE BCTRAN branch cards for multi-phase transformer 4 ALLOW EVEN PLOT FREQUENCY disable conversion of IPLOT to odd number 5 ALTERNATE DIAGNOSTIC PRINTOUT diagnostic printout within time-step loop 6 ANALYTIC SOURCES USAGE user supplied ANALYT defines Type-1 sources 7 AUTO NAME toggle choice of internal branch naming 8 AVERAGE OUTPUT average values for EMTP output variables 9 BASE CURRENT IN AMPERES normalizing factor for output current 10 BASE VOLTAGE IN VOLTS normalizing factor for output voltage 11 BEGIN NEW DATA CASE case-separation card precedes data case 12 BEGIN PEAK VALUE SEARCH time the extrema computation can begin 13 BLANK card to signal the end of stacked data cases 14 CABLE CONSTANTS cable system: calculation of constants 15 CABLE PARAMETERS Akihiro Ametani’s newer cable constants 16 CAO LOAD FLOW Unbalanced load flow by Xiang-lin Cao 17 CENTRAL STATISTICS FILE name of the OPMC file PARALLEL.LIS 18 CHANGE PLOT FREQUENCY ( CPLF ) change frequency of .PL4 file points 19 CHANGE PRINTOUT FREQUENCY ( CPRF) change frequency of the simulation printout 20 CHANGE SWITCH to convert former switched-R and L data 21 CHANGE TRANSFORMER ( CX ) to convert saturable TRANSFORMER to [Z] 22 COMPILED TACS MAKE produce FORTRAN representing TACS supplemental

CHAP2

Embed Size (px)

Citation preview

Page 1: CHAP2

2A - 1

II. Cards to Begin a New Data Case ( includes miscellaneous data cards )

Each new data case that is to be processed by ATP must begin with one or more of the data typesdescribed in the following subsections. Structurally, there is an indeterminate number (possibly zero) of thespecial-request cards of Section II-A that come first, in any order (unless usage dictates an order for theproblem of interest). The miscellaneous data cards of Section II-B, followed by possible extensions tothese cards (see Section II-C), only come after the last of the special-request cards of Section II-A.

II-A. Special - Request Cards That Precede Miscellaneous Data

Free-format data options are useful for some special-request inputs. Take the FREQUENCY SCANdeclaration as an example. Using free format, a valid sample card image is as follows : "FREQUENCYSCAN, 10., 5.0, 100., 0". Even more abbreviation is possible for the really lazy data assembler. Ratherthan use the full request word, an acronym made up of the first letter of each sub-word usually can be used.In this case, FREQUENCY SCAN can be abbreviated as FS, if desired. Nearly all special-request wordsare recognized in such abbreviated, fashion. Any exceptions to regular naming will be shown withinparentheses on the right of the alphabetical list below, and in a separate tabulation following the completelist. A final point is this: although possible, the use of abbreviations generally is not recommended becausethe data that results is less readable.

All possible special-request cards that could be recognized at this point of EMTP data input will nowbe listed in alphabetical order for ease of location. Before each is the number of the subsection (within thepresent Section II-A) that contains an explanation of use. The ordering begins (in July of 2003)alphabetically :

1 ABSOLUTE TACS DIMENSIONS allocation of total storage among 9 TACS tables 2 ABSOLUTE U.M. DIMENSIONS ( AUMD ) allocation of total storage among 4 U.M. tables 3 ACCESS MODULE BCTRAN branch cards for multi-phase transformer 4 ALLOW EVEN PLOT FREQUENCY disable conversion of IPLOT to odd number 5 ALTERNATE DIAGNOSTIC PRINTOUT diagnostic printout within time-step loop 6 ANALYTIC SOURCES USAGE user supplied ANALYT defines Type-1 sources 7 AUTO NAME toggle choice of internal branch naming 8 AVERAGE OUTPUT average values for EMTP output variables 9 BASE CURRENT IN AMPERES normalizing factor for output current10 BASE VOLTAGE IN VOLTS normalizing factor for output voltage11 BEGIN NEW DATA CASE case-separation card precedes data case12 BEGIN PEAK VALUE SEARCH time the extrema computation can begin13 BLANK card to signal the end of stacked data cases14 CABLE CONSTANTS cable system: calculation of constants15 CABLE PARAMETERS Akihiro Ametani’s newer cable constants16 CAO LOAD FLOW Unbalanced load flow by Xiang-lin Cao17 CENTRAL STATISTICS FILE name of the OPMC file PARALLEL.LIS18 CHANGE PLOT FREQUENCY ( CPLF ) change frequency of .PL4 file points19 CHANGE PRINTOUT FREQUENCY ( CPRF) change frequency of the simulation printout20 CHANGE SWITCH to convert former switched-R and L data21 CHANGE TRANSFORMER ( CX ) to convert saturable TRANSFORMER to [Z]22 COMPILED TACS MAKE produce FORTRAN representing TACS supplemental

Page 2: CHAP2

2A - 2

23 COMPILED TACS USE faster TACS simulation using compiled models24 CREATE HARMONIC SOURCES build source cards to approximate harmonics 25 CUSTOM PLOT FILE double the precision of the .PL4 file (to 64 bits)26 DATA BASE MODULE modularize data: $INCLUDE with arguments27 DIAGNOSTIC selective diagnostic printout specified28 DISK PLOT DATA toggle plot data storage (disk vs. RAM)29 EXACT PHASOR EQUIVALENT toggle lumped-R to long-line formulas30 FAULTS TO GROUND phasor solutions with nodes faulted31 FILE REQUEST access to former "MIDOV1" during input32 FIX SOURCE ( FXS ) EMTP load flow: declare intention to use33 FREQUENCY SCAN loop over frequency for phasor solutions34 HARMONIC FREQUENCY SCAN user-defined sources drive phasor solutions 35 HEIDLER SURGE FUNCTION find Heidler parameters for Type-15 source36 HYSTERESIS ( HYS ) to punch Type-96 hysteresis branch cards37 HYSTERESIS HEVIA to convert Type-98 into Type-96 inductor38 INDUCTION MOTOR DATA derive U.M. parameters for induction motor39 INTERPOLATE SWITCH ZERO CROSSINGS switches open at interpolated zero currents40 JMARTI SETUP ( JMS ) derive frequency-dependent Marti line model 41 KILL CODES output a range of program error messages42 LINE CONSTANTS calculate parameters of an overhead line43 LINE MODEL FREQUENCY SCAN evaluate one line model vs. frequency44 LINEAR BIAS USAGE linearly-varied (not random) switch bias45 LOAD MORE SHOTS to combine 2 or more Monte Carlo results46 LOSSY SATURATION ( LSAT ) extended SATURATION that includes losses47 MINIMUM HARMONIC NUMBER beginning frequency of harmonic freq. scan48 MINIMUM TABLE SIZES make LISTSIZE.PMC for parallel Monte Carlo49 MISCELLANEOUS DATA CARDS miscellaneous data cards are to follow50 MODE VOLTAGE OUTPUT modal voltage output of distributed line51 MODELS BEFORE TACS each dT, MODELS is done before TACS52 MODELS PROCESSES EXTREMA use MODELS on extrema, not within dT loop53 NAMES ARE LEFT ADJUSTED halt if an A6 name begins with a blank54 NAMES ARE RIGHT ADJUSTED halt if an A6 name ends with a blank55 NETWORK EQUIVALENT create a constant-parameter network equivalent56 NEW LIST SIZES redefine limits of various program tables57 NODA SETUP frequency-dependent fitting by Taku Noda58 OBSERVE PARALLEL MONTE CARLO display and manage central status file59 OLD TO NEW TACS convert TACS data before “M39.” of July, 198460 OLD TO NEW ZNO convert old data of ZnO to current formats61 OMIT BASE CASE skip base base simulation of a Monte Carlo study62 PARTIAL TABLE DUMPING any table dumping or restoration will be partial63 PEAK VOLTAGE MONITOR request for peak node or branch voltage output64 POCKET CALCULATOR VARIES PARAMETERS pocket calculator loops over time or frequency65 POSTPROCESS PLOT FILE postprocess ".PL4" plot file signals using TACS66 POWER FREQUENCY change the synchronous power frequency67 PRINTED NUMBER WIDTH for width and blanks of dT-loop numbers68 RANDOM NUMBER GENERATOR SEED initialize the random number generator69 READ PL4 HEADER REWIND LUNIT4 and then read header only70 RELATIVE TACS DIMENSIONS relative sizing of the 9 TACS tables71 RENUMBER WITHOUT COUPLING ignore mutual coupling for node renumbering72 REPEATABLE RANDOM NUMBERS make random number generator predictable73 REPLOT batch-mode plot from connected .PL4 file74 SATURATION produce regular and hysteretic B-H curves75 SEMLYEN SETUP 2nd order frequency-dependent line fitter76 SINGLE STEP IF MAKE end at T = dT if COMPILED TACS MAKE

Page 3: CHAP2

2A - 3

77 SMOOTH SATURATION USING TANH hyperbolic tangent models Type-93 inductor78 STANDLER SURGE FUNCTION find Standler parameters for Type-15 source79 START AGAIN restart a halted, preceding simulation80 STEP ZERO COUPLE identify subnetworks with switches closed81 TACS POCKET CALCULATOR pocket calculator does TACS supplemental82 TACS WARN LIMIT limit on the number of TACS warnings83 TIME STEP LOOP transfer control to the time-step loop84 TOGGLE EXTREMA MODE formatted vs. unform. LOAD MORE SHOTS85 TRULY RANDOM NUMBERS seed the number generator using date and time86 TRUNCATE OUTPUT LINES output line limit after formed using KOL13287 TWO EXP SURGE FUNCTION parameters of Type-15 exponential surge88 UM TO TACS U.M. output variables go to Type-92 TACS89 UNIQUE TACS SOURCE TACS Type-91 or 93 source must be unique90 USE SEATTLE XFORMER Xusheng Chen’s 3-phase transformer model91 USE TPPLOT BEGIN begin data of TPPLOT for concurrent plot92 USE TPPLOT END end data of TPPLOT for concurrent plot93 USER IDENTIFICATION ( UID ) 6-byte label overrides USERID of STARTUP94 USER SUPPLIED SWITCH TIMES user supplied “random” switching times95 VERIFY U.M. COMPENSATION ( VUMC ) protect against overlap with 1-phase element96 VOLTAGE SOURCES IN KV scale voltage sources by an arbitrary factor97 XFORMER derive impedance matrix for transformers98 ZERO FLUX TOLERANCE tolerance to determine if phasor excitation99 ZINC OXIDE redefine controls of ZnO Newton iteration100 ZNO FITTER to fit exponentials to ZnO V-I data points

Most of these (e.g. AUTO NAME) are self-contained, so the explanation that follows will becomplete. But some represent requests for the transfer to separate supporting programs, and for theserequests, there will be references to further explanation toward the back of the book. An example of thelatter is NETWORK EQUIVALENT.

Acronyms (abbreviations) generally can be used, although such use is not encouraged because theresult is less readable. Usually, the appropriate acronym is formed from the first letters of the associatedwords, where a blank marks the end of each word. Take ABSOLUTE TACS DIMENSIONS as anillustration. The acronym ATD is equivalent. This simple, uniform rule applies to most requests. Theexceptions are seen within parentheses of the preceding tabulation. For completeness, they are, inalphabetical order : # Acronym Long form of request word -------------------------------------- 2 AUMD ABSOLUTE U.M. DIMENSIONS 13 BLANK 18 CPLF CHANGE PLOT FREQUENCY 19 CPRF CHANGE PRINTOUT FREQUENCY 21 CX CHANGE TRANSFORMER 32 FXS FIX SOURCE 36 HYS HYSTERESIS 37 HYSTERESIS HEVIA 40 JMS JMARTI SETUP 46 LSAT LOSSY SATURATION 92 USE TPPLOT END 93 UID USER IDENTIFICATION 95 VUMC VERIFY U.M. COMPENSATIONNote that 3 requests have no acronyms. For each such entry, there is no alternative to the long form.

Page 4: CHAP2

2A - 4

II-A-1. Request for Absolute Allocation of Total TACS Storage

TACS is the control-system modeling of Section III. Total working space for all TACS tables isassigned in List 19, along with the other 29 EMTP lists (see Section I-G). But there still remains thequestion of how this total working space is to be divided among the nine TACS tables. This allocation canbe performed at execution time, according to the description of the present section, thanks to the procedureof offset subscripting (see Ref. 8, Vol. VIII, 27 January 1979, pages PROV-19 through 22 ) .

The first way to allocate total TACS storage is with a request for absolute TACS table sizing. Twodata cards are involved. ABSOLUTE TACS DIMENSIONS (ATD) is to be followed by a card that givesthe desired absolute sizes :

1 2123456789012345678901234

3 4 5 6 7 856789012345678901234567890123456789012345678901234567890

ABSOLUTE TACS DIMENSIONS

12345678 190123456

278901234

356789012

434567890 12345678

590123456

678901234

756789012

8234567890

K1 K2 K3 K4 K5 K6 K7 K8 K9

I8 I8 I8 I8 I8 I8 I8 I8 I8

The format for the sizes is 9I8, with 9 required TACS table sizes having the following meaning :

LT1 Maximum number of TACS dynamic function blocks, having Laplace transfer functions H(s).

LT2 Maximum number of nonzero factors of the triangularized TACS network matrix. This limit appliesto both the steady-state solution and the transient solution.

LT3 Maximum total number of input variables to TACS dynamic function and supplemental devices.

LT4 Maximum number of TACS sources. This includes built-in sources (e.g., "TIMEX" or "UNITY")and variables passed from the electric network to be TACS driving functions.

LT5 Maximum number of supplemental variables and devices ( type codes 99, 98, or 88 keyed incolumns 1-2).

LT6 Maximum total number of extra INTEGER pointers which are associated with supplementalvariables and devices. There is no easy, exact formula, although sample figures can be given. Eachparenthesis requires 3 cells, as does each arithmetic operation ("+", "*", "=").

LT7 Maximum total number of extra floating-point cells that are associated with TACS variables. EachTACS variable requires one or more such cells. Again, a simple rule is impossible to state. Eachfirst-order function block requires 10 cells, each intermediate variable of supplemental-variableexpression evaluation requires one, the average device might require between 3 and 5, and the mostcomplex device, the Type-66 RMS sensor, requires 1 / ( f * DELTAT ) where "f" is the fundamentalfrequency.

LT8 Maximum number of distinct TACS variables used in the TACS data specification.

Page 5: CHAP2

2A - 5

LT9 Maximum number of Type-53 TACS devices (transport delay blocks).

Provided the total storage represented by this request is less than or equal to the List-19 spaceavailable, execution will proceed normally. If not, the overflow will be noted before any TACS data willactually be read. The result would be a KILL = 1 message pointing to List 19.

A second way to allocate total TACS storage is via a request for relative sizing. That is, rather thanrequest a specific number of function blocks, supplemental variables, etc., the user can simply request aproportional allocation (e.g., 5% of the total storage for function blocks, etc.). Consult the appropriatesubsection for details about RELATIVE TACS DIMENSIONS ( RTD ) .

Use of FORTRAN 77 ( F77 ) is assumed in the preceding comment about possible overflow of List19. The problem applies to any F77 version of ATP. Any newer F95 alternative avoids this potentialproblem as explained in the October, 2000, newsletter. Using F95, the user-requested absolute storagesimply is created dynamically. For this reason, RTD has no meaning, and any attempt to use it with a F95version should result in an error stop.

The interpretation of the two input data cards confirms only the first 5 of the 9 integers beingspecified. The following illustration has been taken from the 2nd subcase of BENCHMARK DC-18 :

C 1 2 3 4 5 6 7 C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request to define new TACS allocation absolutely. |ABSOLUTE TACS DIMENSIONSTACS table sizes. 10 90 100 20 30 | 10 90 100

II-A-2. Request for Absolute Allocation of Total U. M. Storage

The universal machine (U.M.) component of Section IX has total working space for all tablesassigned in List 25 of the overall program variable dimensioning (see Section I-G). But there still remainsthe flexibility of dividing this total working space among the four U.M. tables by means of the followingrequest for absolute sizes :

1 2 312345678901234567890123456789012

434567890 12345678

590123456

678901234

7 85678901234567890

ABSOLUTE U.M. DIMENSIONS NCLFIX NUMFIX IOTFIX IBSFIX

I8 I8 I8 I8

NCLFIX (cols. 33-40) Maximum total number of U.M. coils in the data case. This is the total for allU.M. components involved. It is the sum of the number of coils for each machine.

NUMFIX (cols. 41-48) Maximum number of U.M. components (machines) for the data case.

IOTFIX (cols. 49-56) Maximum number of U.M. output quantities (total for all machines).

IBSFIX (cols. 57-64) Maximum number of 6-character alphanumeric names associated with the U.M.This is the total for all machines.

Page 6: CHAP2

2A - 6

Provided the total storage represented by this user request is less than or equal to the List-25 spaceavailable, execution will proceed in a nominal fashion. If not, this fact will be noted in UTPF overlay 5 asthe first U.M. data component itself is ready for input, and an EMTP error message will result. In any case,the corresponding minimum size for List 25 will be shown as part of the column 1-50 interpretation of theType-19 request card for U.M. modeling. This way, the user knows what fraction of the available space heis utilizing.

If the user fails to input such a request for U.M. table sizing, then ATP allocates default dimensionsequal to (20, 3, 50, 60) within UTPF overlay 5. For computers with 32-bit integers and 64-bit floating-pointvalues, a List-25 size of 300 is sufficient for this usage (and it corresponds to the default allocation ofVARDIM for List 25).

Interpretation of the input data confirms the four U.M. table sizes that have been requested, of course.As an illustration, consider the associated output line of BENCHMARK DCNEW-1 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------U.M. table sizes. 20 2 50 60 |ABSOLUTE U.M. DIMENSIONS

II-A-3. Calculation of Matrices to Represent Transformers

The calculation of matrices [R] and [L] or [A] and [R] to represent arbitrary transformers is describedin the separate Section XIX-C. Whereas an XFORMER request is for data limited to a single phase andthree windings, the code now being considered (supporting program BCTRAN) can be used with anarbitrary number of phases and windings. The transfer to BCTRAN is by means of the following special-request card :

1 212345678901234567890

3 4 5 6 7 8123456789012345678901234567890123456789012345678901234567890

ACCESS MODULE BCTRAN

For an example of such usage, see any of the three subcases of BENCHMARK DCNEW-8.Interpretation extracted from the solution to this data case appears as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Generate transformer [R],[L] or [A],[R]. |ACCESS MODULE BCTRAN

II-A-4. Allow Even Plot Frequency

ALLOW EVEN PLOT FREQUENCY ( AEPF ) is the request to save solution points of the time-steploop with an even plotting frequency in the .PL4 file. This is contrary to default program logic as explainedin Section II-B.2. But the user has this flexibility if he requests :

Page 7: CHAP2

2A - 7

1 21234567890123456789012345

3 4 5 6 7 86789012345678901234567890123456789012345678901234567890

ALLOW EVEN PLOT FREQUENCY

An illustration of use can be found in the 4th subcase of BENCHMARK DC-22, from which the followinginterpretation has been drawn. Note that there are no parameter values to be confirmed ) :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Allow IPLOT of misc. data to be even (2, 4, ...). |ALLOW EVEN PLOT FREQUENCY

II-A-5. Request for Alternative Diagnostic Printout of the dT Loop

ALTERNATE DIAGNOSTIC PRINTOUT ( ADP ) is the request that defines 4 integers to controldiagnostic printout of the 4 pieces of the time-step loop (overlays 16 through 19 ) .

If minus signs are applied to MULT(K) as part of the printout frequency changes of Section II-C (orthe equivalent CHANGE PRINTOUT FREQUENCY declaration of a later subsection), then diagnosticprintout controls of the time-step loop are to be switched. Those of the DIAGNOSTIC request (see a latersubsection) are in effect initially. Then, at the time of the first change, an alternate set of printout controlparameters IPR(1:4) is used instead. These four new variables replace IPRSOV(16:19), to control thediagnostic output of the four pieces of the time-step loop. Upon the second such change (the second negativeMULT), there is a switch back to the original DIAGNOSTIC printout control values. Etc. (for each minussign, the two sets of control variables are switched).

The alternate set of printout control parameters IPR(1:4) is automatically initialized to zero at thebeginning of execution. If this is what the user wants, a declaration of the present section is not required.This would be for the common usage that will begin with diagnostic printout for steps 0 and 1, but which hasno such output thereafter.

On the other hand, if the time-step loop is to begin without any diagnostic printout, then nonzeroIPR(K) must be defined by the user. This is done using the following special-request card :

1 212345678901234567890123456789012

434567890 12345678

590123456

678901234

7 85678901234567890

ALTERNATE DIAGNOSTIC PRINTOUT IPR1 IPR2 IPR3 IPR4

I8 I8 I8 I8

Interpretation of the input data confirms the four printout controls that have been requested, of course.As an illustration, consider the associated output line of BENCHMARK DC-53 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------DELTAT-loop printout. 9 9 9 9 |ALTERNATE DIAGNOSTIC PRIN

Page 8: CHAP2

2A - 8

II-A-6. Type -1 Sources Are Defined by User within ANALYT

As explained in Section VII, source types 1 through 9 are reserved for functions that are directlydefined in user-supplied source code. If one or more such source functions are to be defined in FORTRANwithin a special user-supplied version of SUBROUTINE ANALYT, then the following special request cardmust precede input of the miscellaneous data cards for the data case in question :

1 21234567890123456789012

3 4 5 6 7 83456789012345678901234567890123456789012345678901234567890

ANALYTIC SOURCES USAGE

It is the user's responsibility to see to it that his own special SUBROUTINE ANALYT has replacedthe near-dummy module that comes with the UTPF, of course. The UTPF module is useful only for theartificial illustration of BENCHMARK DC-6.

Do not confuse the present declaration and associated ANALYT with the analytically-definedType-10 source of Section VII. The Type-10 source is newer and more convenient (e.g., no FORTRANcompiler is required), but it relies on the pocket calculator, so is limited to functions of that device. It is lessgeneral than arbitrary FORTRAN that could be placed in ANALYT.

Interpretation of the input declaration is illustrated by BENCHMARK DC-6. Note that there is noparameter value to be confirmed :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------User-supplied SUBROUTINE ANALYT is declared. |ANALYTIC SOURCES USAGE

II-A-7. Control of Automatic, Internal Branch and Switch Naming

The startup file initializes variable NMAUTO, which controls whether or not branches willautomatically be serialized by the program. There are only two possibilities : "0" means no such automaticnaming, whereas "1" will result in such naming. Well, whatever the STARTUP decision might be, thefollowing declaration will toggle (i.e., reverse) it :

1234567891 2 3 4 5 6 7 801234567890123456789012345678901234567890123456789012345678901234567890

AUTO NAME

The interpretation of this request confirms the status of variable NMAUTO after the change. The 4th

subcase of BENCHMARK DC-7 illustrates a change from naming (STARTUP defines NMAUTO = 1) tono names as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Toggle auto branch/switch name. NMAUTO = 0. |AUTO NAME

Page 9: CHAP2

2A - 9

II-A-8. Request to Average Output Signals

Successive values of EMTP output variables will be averaged prior to printing and plotting if thefollowing request is made :

1 12345678901234

2 3 4 5 6 7 8567890123456789012345678901234567890123456789012345678901234567890

AVERAGE OUTPUT

The mathematics of the solution are not affected. This is just a massaging of the answers at the timeanswers are printed and/or written to the plot file of LUNIT4. By averaging is meant the arithmetic mean ofthe current and the preceding variable value : (V-new + V-old ) / 2 .

For studies where EMTP output variables are smooth functions of time, the AVERAGE OUTPUTrequest would have negligible effect, and should not be used (it just adds a small error to the answer). Butthere are problem cases such as the hanging inductor (see the two pages of discussion in Section VI about“REMARKS ON OPENING ACTION”). There are pathological cases where the trapezoidal rule givesanswers that oscillate around the true value, so this remedy might sometimes be useful. As an example ofsuch usage, see BENCHMARK DC-55.

Interpretation of the input declaration appears as follows (note that there is no parameter value to beconfirmed ) :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request to average (smooth) output variables. |AVERAGE OUTPUT

II-A-9. Normalizing Factor for Output Currents

Output currents of the electric network, typically requested by1-punches in column 80 of theassociated branch cards, can be normalized uniformly by factor BASEI in amperes. In effect, the outputcurrents are converted to per unit with BASEI being the base current. The request for such scaling is BASECURRENT IN AMPERES ( BCIA ) as follows :

1 2 312345678901234567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

BASE CURRENT IN AMPERES BASEI

E8.0

Of course, non-unity BASEI will influence printout of the phasor solution as well as that of thetime-step loop. To cancel scaling of the preceding subcase, use BASEI equal to unity. The 6th subcase ofBENCHMARK DC-37 involves a scaling factor of 1000, to produce output in kiloamps. This probably isthe most common value other than unity. Interpretation of this use follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Normalize output currents by I-base = 1000 |BASE CURRENT IN AMPERES

Page 10: CHAP2

2A - 10

II-A-10. Normalizing Factor for Output Voltages

Output voltages of the electric network, typically requested by 2-punches in column 80 of theassociated branch cards, can be normalized uniformly by factor BASEV in volts. In effect, the outputvoltages are converted to per unit with BASEV being the base voltage. The request for such scaling isBASE VOLTAGE IN VOLTS as follows :

1 2 312345678901234567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

BASE VOLTAGE IN VOLTS BASEV

E8.0

Of course, non-unity BASEV will influence printout of the phasor solution as well as that of thetime-step loop. To cancel scaling of the preceding subcase, use BASEV equal to unity. The 6th subcase ofBENCHMARK DC-37 involves a scaling factor of 1000 to produce output in kV. This probably is the mostcommon value other than unity. Interpretation of this use follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Normalize output voltages by V-base = 1000 |BASE VOLTAGE IN VOLTS

II-A-11. Optional Case - Separation Card

While not mandatory, it is good practice for the user to make the very first card of each data case aspecial case-separation marker :

11234567890123456789

2 3 4 5 6 7 80123456789012345678901234567890123456789012345678901234567890

BEGIN NEW DATA CASE

See any standard test case ( e.g., BENCHMARK DC-18 ) for an example.

For execution that terminates normally, or for single-data-case solutions, this just described cardserves no operational purpose. It does, of course, appear on the listing of 80-column input data, withappropriate interpretation on the left (see below), but that's all.

On the other hand, should ATP decide to prematurely terminate execution of a particular data-casesolution with an EMTP error message, then a case-separation marker might be important. For a formal“KILL =” error termination, ATP automatically steps over remaining input cards, discarding them one at atime until it finds such a BEGIN NEW DATA CASE ( BNDC ) card. At that point, a new data case isknown to begin, so ATP can correctly recover to handle the just-found following case. This is referred to asEMTP error-recovery, during execution that involves two or more stacked data subcases.

Yet suppose that it was during the solution of the final data case of program execution that a fatalEMTP error termination occurs. In this case, there would be no following data case, so further solutionswould not be possible. To distinguish this situation, the final data case should always be followed by aBEGIN NEW DATA CASE card and a blank card, in order to terminate execution cleanly. The blank card

Page 11: CHAP2

2A - 11

in this situation is read as the start of a new data case, and the lack of any keying on it is recognized by theEMTP as the end of all data cases. In the absence of such usage, recovery following an EMTP error willresult in the encounter of an end to input data, which will be accompanied by a second EMTP error message(messy, and possibly confusing).

It should be emphasized that BEGIN NEW DATA CASE cards must be properly positioned in thedata deck; they do not in any way alter the need for blank termination cards (see explanation in a latersubsection). The identity and function of these special cards is recognized by the EMTP in only two places:

1. Following an EMTP fatal error, such cards are watched for as other cards of the input data are readand discarded.

2. Following normal completion of the solution for any particular data case, the very first non-comment

card of the following data case will be checked for BEGIN NEW DATA CASE.

Any other placement of these key cards will generally lead to error termination by the operatingsystem, since the alphanumeric text will be decoded numerically (which is impossible).

As any standard test case will show, interpretation of the BNDC declaration appears as follows. Notethat there is no parameter value to be confirmed :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Marker card preceding new EMTP data case. |BEGIN NEW DATA CASE

II-A-12. Request for Delay in Extrema Calculation

The integer miscellaneous data parameter MAXOUT (see Section II-B) provides for the calculationof variable extrema (maxima and minima) of program output variables. The same vectors of extrema areused for STATISTICS and SYSTEMATIC output as well. Normally, extrema are wanted over the full timespan of the simulation. But not always. There are cases where one wants to ignore a certain initial intervalof the simulation, only considering transients after a certain minimum time. For example, in a STATISTICSsimulation, it is possible that random closing will follow the opening of breakers (the clearing of a fault), butthat the peak simulation voltage will be produced during the deterministic opening portion of the simulation.If extrema were calculated over the entire time span of the simulation, each energization would generateidentical peaks, which is useless to the designer. So, in this case, the solution is to inhibit the calculation ofextrema until transients of the opening phase of execution have passed. This is possible, using a BEGINPEAK VALUE SEARCH (BPVS) request upon which the beginning time BEGMAX in seconds is to bekeyed in columns 33-40 :

1 2 312345678901234567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

BEGIN PEAK VALUE SEARCH BEGMAX

E8.0

For examples of such use, see BENCHMARK DC-48 and DCNEW-22.

Page 12: CHAP2

2A - 12

So much for the simplest possible case, where an initial time span is simply ignored in the extremacalculation. But more complex time ranges are possible, if the above BEGMAX is given a value of "-1.0".In this case, an extra card is to follow, upon which monotone increasing times T1, T2, etc. are to be keyed :

12345678 190123456

278901234

356789012

434567890 12345678

590123456

678901234

756789012

834567890

T1 T2 T3 T4 T5 T6 T7 T8 T9 T10

E8.0 E8.0 E8.0 E8.0 E8.0 E8.0 E8.0 E8.0 E8.0 E8.0

1st interval 2nd interval 3rd interval 4th interval 5th interval

In this case, extrema are to be calculated only for those portions of the simulation that intersect thesub-intervals of time (T1, T2), (T3, T4), etc. Present dimensioning of this feature has been limited to thesingle card of five subintervals, as shown. In case fewer than this maximum are actually desired, the 4 orfewer pairs should be followed by a very large time that will never be reached: the beginning time of abounding subinterval.

Interpretation of the input data confirms the starting time BEGMAX of the search for extrema, if thisis positive (the simple case). Using BENCHMARK DC-48 as an illustration :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Extrema lookout begins at t = 5.2500E-01 sec. |BEGIN PEAK VALUE SEARCH

On the other hand, if BEGMAX = -1.0, then the more complicated, 2-card input is involved.BENCHMARK DC-5 provides an illustration of such usage. Note that interpretation confirms only the firstfour of 10 possible times :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Extrema lookout begins at t = -1.0000E+00 sec.|BEGIN PEAK VALUE SEARCH(T1,T2): 5.00E-01 1.50E+00 2.50E+00 3.50E+00 | 0.5 1.5 2.5

II-A-13. Blank Card to Terminate Execution

The traditional termination procedure for the solution of a disk file that contains one or more stackeddata subcases is to have the first card of the following (non-existent) data case completely blank. The use of"BLANK " in columns 1-6 (note mandatory blank byte following the key word of 5 letters), followed byanything for the rest of the card image, is also acceptable. By agreement, either of these tells the programthat there remain no more data cases to be handled, so that EMTP execution can return to the originalopening prompt ("EMTP begins. Send ...") if execution is interactive. For batch-mode execution usingRUNTP.BAT with initial input equal to either DISK or BOTH , program execution will end.

123456 1 2 3 4 5 6 7 878901234567890123456789012345678901234567890123456789012345678901234567890

BLANK <-- user may enter comments here (cols. 7-80) –->

Page 13: CHAP2

2A - 13

In order to protect against termination by the operating system after an EMTP error stop, the just-mentioned final blank card should always be preceded by a BEGIN NEW DATA CASE ( BNDC ) card.This is explained in the preceding BNDC subsection .

This was the situation for many years, and it remains good practice today. Yet the user is advised thatthe blank terminating card at the end generally will not be read. If fewer than 5 data cards (the default valueof KASEND in STARTUP) remain when the final BEGIN NEW DATA CASE card is encountered, theprogram now is smart enough to realize that data is done, so it immediately re-issues the opening prompt (ifinteractive execution) or halts (if batch-mode execution). This saves a little output.

II-A-14. Calculation of Parameters of Multi - Phase Coaxial Cables

Prof. Akihiro Ametani of Doshisha University in Kyoto, Japan, is the author of cable parametercalculations. The present CABLE CONSTANTS ( CC ) dates to the mid-'70s whereas the followingCABLE PARAMETERS ( CP ) dates to 1994. If the user has no reason to prefer the present CC, he isreferred to the following CP, which is the author's preference.

The calculation of parameters for multi-phase coaxial cables is isolated in a separate UTPF overlay.It really is a separate, self-contained program, and all usage is described in the separate Section XXIII. Totransfer to that separate program, the following special-request card is used :

1123456789012345

2 3 4678901234567890123456789012345678

590123456

6 7 8789012345678901234567890

CABLE CONSTANTS KTRLSW(3)

I8

Normally only the request word is required (leave columns 16 onward blank). For examples of suchusage, see BENCHMARK DC-27, 28, 60, and DCNEW-6.

The parameter KTRLSW(3) of columns 49-56 is optional. It is used to modify the number ofconductors per SC (single core) coaxial cable within the memory reserved for CABLE CONSTANTSparameters (as explained near the top of MAIN27). As a rule of thumb, the following equation is valid :

ratio = # of conductors / SC cable = 2 + KTRLSW(3)

Of course this implies KTRLSW(3) > –2.

The following table was derived for 0.85 times default dimensioning :

KTRLSW(3) # SC # conductors ratio---------------------------------------- –2 92 0 0 –2 42 42 1 0 22 45 2 1 15 46 3 2 11 47 4

Page 14: CHAP2

2A - 14

Interpretation of the input data will report limiting sizes of the CC tables. For example, standard testcases are usually verified using 3 times default dimensioning and List 31 = 240K. Then the .LIS file ofBENCHMARK DC-27 will show :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Akihiro Ametani`s old code. Limits = 26 53 |CABLE CONSTANTS

The values 26 and 53 are internal parameters LDM and LDN. If a user had turned on diagnostic printout,he would have seen LDM and LDN described as the limit on SC coaxial cables and the limit on the numberof conductors, respectively.

II-A-15. Alternative, Newer Cable Parameters from Akihiro Ametani

Prof. Akihiro Ametani of Doshisha University in Kyoto, Japan, is the author of cable parametercalculations. The present CABLE PARAMETERS ( CP ) dates to 1994. At that time, the hope was that CPeventually would replace the original and older CABLE CONSTANTS (CC). But as long as CC can dosomething that CP can not, CC is being retained. Data is similar, so changing from one to the othergenerally is not difficult for an experienced user. Finally, CC continues to have value because CC code islargely independent of the CP code.

Access to Akihiro Ametani’s newer cable modeling is by means of the following request :

1 1234567890123456

2 3 4 5 6 7 87890123456789012345678901234567890123456789012345678901234567890

CABLE PARAMETERS

Illustrations of CP use can be found in standard test cases BENCHMARK DC-27, 28, 52, 60,DCNEW-6, NEW-13, and NEW-29. Interpretation of the declaration will report the limiting number ofconductors. For example, standard test cases are usually verified using 3 times default dimensioning and List31 = 240K. Then the .LIS file of BENCHMARK DC-27 will show the following in the 2nd subcase :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Prof. Akihiro Ametani`s 1994 code. Order = 38 |CABLE PARAMETERS

That is, the total of the number of cores, sheaths, armors, and the pipe (if any) must not exceed 38 for suchstandard dimensioning.

Much larger numbers of coupled conductors have been successfully handled as reported innewsletters of years 2002 and 2003. Produced by VARDI151.BAT is a TPBIG that will tolerate 151coupled conductors. The associated LISTSIZE.151 has List 31 = 3800K (storage varies approximately asthe square of the number of conductors, of course ) .

Page 15: CHAP2

2A - 15

II-A-16. Unbalanced Load Flow by Xiang - lin Cao

The unbalanced load flow within ATP comes from Xiang-lin Cao of Toden Software Inc. (TSI),which is a subsidiary of huge Tokyo Electric Power Company (TEPCO) in Japan. Mr. Cao also is the authorof the Type-58 dynamic S.M. model (see Chapter VIII), and he seemed to believe that the original load flowalgorithm of ATP (see FIX SOURCE later in this Section II-A) was unsatisfactory for networks that involvesignificant imbalance. CAO LOAD FLOW is the alternative that he has provided for such cases. Thedeclaration is as follows :

1 1234567890123

2 3 4 5 6 7 84567890123456789012345678901234567890123456789012345678901234567890

CAO LOAD FLOW

An illustration of CAO LOAD FLOW can be found in standard test case BENCHMARKDCNEW-20. Interpretation should then appear as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------New TEPCO load flow is used when unbalanced S.M. |CAO LOAD FLOW

In fact, the older and original request NEW LOAD FLOW is illustrated by the 2nd subcase ofDCNEW-20. Such old data continues to be honored, even though it is not encouraged. If used, there willbe an extra, preceding output line : "+++ Warning. The following is old. The recommended new form isCAO LOAD FLOW, named after the author." For more about CAO LOAD FLOW, refer to newslettersdated April and July of 1999.

II-A-17. Name the Central Status File of Parallel STATISTICS

The user of OBSERVE PARALLEL MONTE CARLO ( OPMC ) must name PARALLEL.LIS,which is the central file of summary statistics. This name, up to 40 bytes in length, is to follow (on a separatedata card) the declaration :

1 212345678901234567890123

3 4 5 6 7 8456789012345678901234567890123456789012345678901234567890

CENTRAL STATISTICS FILE

Column one of the file name must not be a slash ("/"), since this would be mistaken by the programas a request for data sorting by class (Section I-J). There usually are computer-dependent ways to avoid theproblem (e.g., for Apollo Aegis, begin with a backslash "\"). But for those who are either unwilling orunable to use such tricks, precede the leading slash by an extra, leading percent sign ("%") which will bediscarded upon input. Finally, for case-sensitive computers, the file name generally should be in lower case,followed by an exclamation point ("!") to hold that case even though STARTUP variable KINSEN hasvalue unity (indicating conversion of input to upper case).

An example of the just-explained declaration is provided by BENCHMARK DC-66. It was from thesolution DC66.LIS that the following interpretation was drawn :

Page 16: CHAP2

2A - 16

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Name of file for "OBSERVE PARALLEL MONTE CARLO" |CENTRAL STATISTICS FILEFile name:parallel.lis |parallel.lis ! { Actual

II-A-18. Request to Change the Frequency of Plot Points

The frequency of output to the .PL4 file, and hence the frequency for subsequent batch-mode plotting,is nominally controlled by integer miscellaneous data parameter IPLOT of Section II-B. But this frequencycan be varied as the simulation time is advanced. The request for such variation involves 2 data cards asfollows :

1 2123456789012345678901

3 4 5 6 7 823456789012345678901234567890123456789012345678901234567890

CHANGE PLOT FREQUENCY

12345678 190123456

278901234

356789012

434567890 12345678

590123456

678901234

756789012

834567890

KCHG MULT KCHG MULT KCHG MULT KCHG MULT KCHG MULT

I8 I8 I8 I8 I8 I8 I8 I8 I8 I8

1st change 2nd change 3rd change 4th change 5th change

The numeric card specifies at which time steps the frequency is to be changed, and to what values thefrequency is to be changed. Up to five pairs of these controls (KCHG, MULT) are permitted. The followingdefinitions apply :

KCHG(K): The time step number at which the K-th variation of plot frequency is to begin.

MULT(K): The modified value of IPLOT (see 2nd miscellaneous data card) that takes effect at time step KCHG(K).

Normally KCHG will be monotone increasing, from left to right. In any case, the pairs of integers are usedin this order. As simulation begins on step 1, ATP is waiting for step KCHG(1) to be reached before thechange to output frequency MULT(1) will be made. Then ATP will wait for step KCHG(2) to be reached,etc. There is no need for a bound as ATP will halt its consideration once the last defined pair has been used.

Interpretation confirms only the first three of the five pairs of integers that are defined. Illustrationsof use are provided by BENCHMARK DC-3 and DCNEW-25. The following interpretation is drawn fromthe first of these :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request preceding 5 plot output frequency pairs. |CHANGE PLOT FREQUENCYPlot out : 5 5 10 1 0 0 | 5 5 10

Page 17: CHAP2

2A - 17

II-A-19. Request to Change the Frequency of Time - Step Loop Printout

The frequency of LUNIT6 printout within the time-step loop is nominally controlled by integermiscellaneous data parameter IOUT of Section II-B. But this frequency can be varied as the simulationtime is advanced. One way is to use an extension to the integer miscellaneous data card (see Section II-C).But it is possible to accomplish identically the same control by having the same numerical card of (KCHG,MULT) pairs preceded by the appropriate special-request card, as follows :

1 21234567890123456789012345

3 4 5 6 7 86789012345678901234567890123456789012345678901234567890

CHANGE PRINTOUT FREQUENCY

12345678 190123456

278901234

356789012

434567890 12345678

590123456

678901234

756789012

834567890

KCHG MULT KCHG MULT KCHG MULT KCHG MULT KCHG MULT

I8 I8 I8 I8 I8 I8 I8 I8 I8 I8

1st change 2nd change 3rd change 4th change 5th change

The numeric card specifies at which time steps the printout frequency is to be changed, and to whatvalues the frequency is to be changed. Up to five pairs of these (KCHG, MULT) controls are permitted, asper the following definitions :

KCHG(K) : The time step number at which the K-th variation of printout frequency is to begin. Printoutfor this particular step number is always provided, as a beginning to the new frequency ofoutput.

MULT(K) : The modified value of IOUT (see 2nd miscellaneous data card) that takes effect at timestep KCHG(K).

Normally KCHG will be monotone increasing, from left to right. In any case, the pairs of integers are usedin this order. As simulation begins on step 1, ATP is waiting for step KCHG(1) to be reached before thechange to MULT(1) will be made. Next ATP will wait for step KCHG(2) to be reached, etc. There is noneed for a bound as ATP will halt its consideration once the last defined pair has been used.

If a minus sign is appended to MULT(K), then at the corresponding step number KCHG(J), thediagnostic printout status will be changed. That is, there will be a switching of the two sets of diagnosticprintout controls : 1) IPRSOV(16:19) of a DIAGNOSTIC request and

2) IPR(1:4) of an ALTERNATE DIAGNOSTIC PRINTOUT request

If there is no minus sign, there will be no change in status of the diagnostic printout at the associatedtime step. Any minus signs are merely extra flags. The absolute value of MULT still controls the production(non-diagnostic) printout frequency as originally described.

The present usage is more self-explanatory than the alternative of Section II-C, so probably it is tobe preferred. Years ago, it was necessary. Note that the extension to the integer miscellaneous data card ispossible only if integer miscellaneous data parameter IPUN is given a value of minus one (columns 41-48).But IPUN once had meaning when it was positive, as a request for the creation of terminal conditions. The

Page 18: CHAP2

2A - 18

user might have wanted to do both of these operations in the same data case, which previously wasimpossible (since variable IPUN could not be both negative and positive at the same time).

Use of CHANGE PRINTOUT FREQUENCY is illustrated by several standard test cases :BENCHMARK DC-22, 40, 42, 48, and 49. Program interpretation of the input data confirms only thefirst three of the five possible pairs of integers, however. The following illustration is from DC-48 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request preceding 5 printout number pairs. |CHANGE PRINTOUT FREQUENCYPrintout : 5 5 10 10 0 0 | 5 5 10

II-A-20. Conversion of Former Switched-R, L Elements to Type - 99 and 98

Years ago (prior to the "M32." update of 1982), EMTP had switch components that allowed for bothresistive and inductive discontinuities : so-called switched-R and switched-L elements. Today, suchmodeling can be accomplished using the more general pseudo-nonlinear elements of type codes 99 and 98.The user who wants to convert antiquated data involving switched-R or switched-L elements into modern,equivalent, representations can issue the following request :

11234567890123

2 34567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

CHANGE SWITCH XOPT

E8.0

This special-request card is to be added before the first miscellaneous data card of the antiquated datacase. Conversion then will be accomplished within a special program described in Section XIX-D.Parameter XOPT of columns 33-40 is the miscellaneous data parameter that specifies the units that are beingused for inductance (millihenries if zero or blank; ohms at frequency XOPT Hz if positive). Specification onthe request card means less intelligence inside the supporting program (no need to look for the integermiscellaneous data card, and read it). The supporting program will then read all input data, and punch (see$PUNCH) replacement branch cards to represent the antiquated components. It will then be the user'sresponsibility to replace the old card images with the new ones.

An example of such conversion is provided by the third subcase of standard test case BENCHMARKDC-14. The interpretation of the request then appears as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Convert switched-R,L cards to pseudo-nonlinear. |CHANGE SWITCH

II-A-21. Convert SATURABLE Transformer Cards to [ R ] and [ L ]

The calculation of matrices [R] and [L] to provide an alternative, linear representation for a saturableTRANSFORMER is described in the separate Section XIX-J. The special-request word CHANGETRANSFORMER ( CX ) provides the transfer :

Page 19: CHAP2

2A - 19

1123456789012345678

2 3 4 5 6 7 890123456789012345678901234567890123456789012345678901234567890

CHANGE TRANSFORMER

Upon completion of the computation, resulting [R] and [L] are obtained in the form of Type-51, 52,... branch cards using $PUNCH. Of course, the saturable TRANSFORMER is nonlinear, and thenonlinearity must be ignored. More precisely, it must be linearized : it is the phasor I-steady andPSI-steady that are used as an approximation. An illustration can be found in standard BENCHMARKDC-67. Interpretation of the transfer has been drawn from this solution :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Convert saturable TRANSFORMER into [R], [L]. |CHANGE TRANSFORMER

II-A-22. Create FORTRAN for Compiled TACS Representation

Compiled TACS simulates faster than normal, old, interpretive TACS because the control systemmodeling, which the user defines in TACS data, has been converted to FORTRAN source code. Forbackground, see newsletter stories entitled "Compiled TACS speeds simulation." These began in theJanuary, 1997, issue. The user's TACS model is built into the program by compilation and linking of theassociated FORTRAN. The first step of this process is creation of the associated FORTRAN, which isrequested by :

1123456789012345678

2 3 4 5 6 7 890123456789012345678901234567890123456789012345678901234567890

COMPILED TACS MAKE

Compiled TACS should not be used casually. Typically it should be used only for simulation that istoo slow because of the TACS burden. In effect, the TACS burden can be removed because compiledexecution typically might be an order of magnitude or more faster. But note that only the TACS burden isrelieved in this way. If the electric network accounts for at least half of the total burden, note that simulationspeed could not be doubled. Compiled TACS usually makes sense only if TACS dominates.

SINGLE STEP IF MAKE ( SSIM ) is described in a later subsection. This request frequently is usedalong with COMPILED TACS MAKE ( CTM ) to halt the simulation after one time step. The desiredFORTRAN to represent the TACS data is created on the first time step, so just a single step is required.

11234567890123456789

2 3 4 5 6 7 80123456789012345678901234567890123456789012345678901234567890

SINGLE STEP IF MAKE

The operating system symbol named COMPTACS provides an alternative to the declaration ofCOMPILED TACS MAKE in data. For MS-DOS, the command would be SET COMPTACS =MAKETypically this would be placed in a batch file immediately prior to the ATP execution that would create theassociated TACS FORTRAN. Of course, once ATP execution is complete, the flag should be cancelled.For MS-DOS, use SET COMPTACS= (i.e., nothing to the right of the equal sign ) .

Page 20: CHAP2

2A - 20

An illustration of COMPILED TACS MAKE can be found in standard BENCHMARKDCNEW-25. The following interpretation has been extracted from the associated output :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request for generation of FORTRAN for TACS data. |COMPILED TACS MAKE

II-A-23. Using Compiled TACS for Faster Simulation

COMPILED TACS USE ( CTU ) is the second step of a 2-step process. Do not use this requestunless it is preceded by the first step, which is COMPILED TACS MAKE ( CTM ) as described in thepreceding section. These two requests are paired, and must involve the same TACS data. That is, one canUSE (simulate) only what already has been made, compiled, and linked. The data must not be changedbetween the MAKE and the USE phases.

Provided the ATP version being used has been linked to include the TACS modeling of interest, therequest for faster simulation using compiled TACS is as follows :

112345678901234567

2 3 4 5 6 7 8890123456789012345678901234567890123456789012345678901234567890

COMPILED TACS USE

No standard test case illustrates this request because no illustrative TACS data yet is being built into(i.e., linked with) every version of the program that is created. Also, the operating system symbolCOMPTACS provides a more convenient alternative to declaration in data. For MS-DOS, the commandwould be SET COMPTACS=USE Typically this would be placed in a batch file immediately prior to theATP execution of interest. Of course, once execution is complete, the flag should be cancelled. ForMS-DOS, use SET COMPTACS= (i.e., nothing to the right of the equal sign ) .

For the user who does choose to embed the request for compiled TACS use in data, interpretationshould be as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request for use of compiled TACS (no interpret). |COMPILED TACS USE

II-A-24. Creation of Source Cards to Approximate Harmonics

CREATE HARMONIC SOURCES ( CHS ) is the request for harmonic source estimation as firstdescribed in the April, 2002, newsletter. Code is from Orlando Hevia of UTN in Santa Fe, Argentina, whowrote : "I send you the source code of the routine to generate HFS sources for diode / thyristor bridges."The request for such service is :

Page 21: CHAP2

2A - 21

1 212345678901234567890123

3 4 5 6 7 8456789012345678901234567890123456789012345678901234567890

CREATE HARMONIC SOURCES

A couple of weeks later, author Hevia expanded his creation: "I added a new type of device ... aTCR (Thyristor Controlled Reactor). The data are Current RMS (fundamental), frequency, phase,conducting angle, maximum harmonics, and a key," with the last of these controlling the preservation ordeletion of triplen harmonics.

Operation is demonstrated by a new 3rd subcase of BENCHMARK DC-15 , from which thefollowing interpretation has been extracted :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Orlando Hevia creates harmonic sources for HFS. |CREATE HARMONIC SOURCES

II-A-25. Request for Double - Precision .PL4 Plot File

The user will normally employ whatever precision of plot file data has been decided upon by ProgramMaintenance for his computer system, and not think further about the question. For plotting only, whichrequires low-accuracy, any computer precision should be adequate, so the user need never worry. But theremay be more concern for other uses of the plot file data, such as POSTPROCESS PLOT FILE (where plotfile variables become TACS sources of a subsequent simulation), or FOURIER ON (to request Fourierseries decomposition of a plot file signal). In such cases, full solution precision may be desired, and this isthe motivation for the request, which takes this form :

11234567890123456

2 3 4 5 6 7 87890123456789012345678901234567890123456789012345678901234567890

CUSTOM PLOT FILE

Today (year 2002), all program versions available to the general public involve 64-bit (double-precision) computation and 32-bit (single-precision) storage in the .PL4 file. The first use of CUSTOMPLOT FILE thus will convert from 32-bit (REAL*4) storage to 64-bit (REAL*8) storage in the .PL4 plotfile that will be created on LUNIT4 during simulation. However, the declaration is a toggle, so anyfollowing use would return the .PL4 storage to single precision.

Use is illustrated by standard BENCHMARK DC-3 and 54. Either should show the followinginterpretation, which confirms a change from single precision ( L4FULL = 0 ) to double precision(L4FULL = 1) storage in the .PL4 file :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Toggle choice of disk plot file. L4FULL = 1. |CUSTOM PLOT FILE { Re ...

Page 22: CHAP2

2A - 22

II-A-26. Modularization of Data for $INCLUDE Use with Arguments

The request for a copy of some data component that is stored in a data base generally requires$INCLUDE usage with one or more arguments. But when arguments are present, data must first beprocessed by the supporting program of Section XIX-F. This program searches the user's raw data for thecharacter strings of interest, and establishes numerical pointers for all arguments in order to speed later usage.A special-request card, to be placed in front of the user's raw data, transfers control to this conversionutility :

11234567890123456

2 3 4 5 6 7 87890123456789012345678901234567890123456789012345678901234567890

DATA BASE MODULE

An example of such usage is provided by BENCHMARK DC-36. It was from the first subcase ofthis solution that the following interpretation was drawn :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request for definition of data base modules. |DATA BASE MODULE

II-A-27. Request for Selective Diagnostic Printout

Integer miscellaneous data parameter IPRSUP (see Section II-B) will turn diagnostic printout on oroff irrespective of the location of that printout within the program. That is, either all diagnostic output isturned on, or all is turned off, at a certain threshold level. If positive, IPRSUP will override the selectiveprintout request of this present section.

But if IPRSUP is to be keyed zero or blank, then EMTP diagnostic printout can be controlledoverlay by overlay of the UTPF. A special-request card bearing the key word DIAGNOSTIC in columns1-10 is used in this case, followed by 10 blanks, followed by values for each of the 29 overlays as 29I2information :

1 ... 21234567890 ... 90 12 34 56 78

390 12 34 56 78

490 12 34 56 78

590 12 34 56 78

690 12 34 56 78

790 12 34 56 78

890

DIAGNOSTIC Each entry has I2 FORMAT

Overlay number : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29

In the selection of these diagnostic output codes, special care should always be taken with regard tothe time-step loop of overlays 16-19. Remember that diagnostic output can be generated for each time step,so beware of the termination time TMAX in relation to the step-size DELTAT, should such output berequested. Another consideration is for large networks, which will generate voluminous output in overlaynumber 7 (network node-renumbering) and the [Y] formation of overlay 14. In these cases, output can beproduced for each row of the matrix. It is recommended that diagnostic for overlay 7 almost never be used,and that the value for overlay 14 be limited to level 3. If in doubt about such control, consult ProgramMaintenance, or try the usage in real time, looking at the output on a computer monitor as it is beinggenerated. In case the output is excessive, execution then could be aborted, and the controls modifiedappropriately. A summary of the function of key overlays at the start of the program follows :

Page 23: CHAP2

2A - 23

Overlay 1 Special-request cards, miscellaneous data, and MODELS data inputOverlay 2 TACS data inputOverlay 3 Electric network branch inputOverlay 4 Switch (including diodes/valves) inputOverlay 5 Source (including S.M. and U.M.) inputOverlay 6 Network connectivity printoutOverlay 7 Node renumbering

If diagnostic printout is being turned off and on as a function of time (see Section 1.1b, with a minussign on MULT), then (IPRSOV(16:19) alternate with IPR(1:4) for control of diagnostic printout of thetime-step loop. There are two distinct cases of importance :

Case 1. If the user wants to start with no diagnostic (i.e., for time steps zero or one), thenIPRSOV(16:19) should all be zero, and the ALTERNATE DIAGNOSTIC PRINTOUTrequest of a preceding subsection should be used to define the nonzero printout codes(one or more of the 4 values nonzero).

Case 2. If the user wants to start with diagnostic (Step zero), then IPRSOV(16:19 should not allbe zero. In this case, no ALTERNATE DIAGNOSTIC PRINTOUT request is needed,since zero values are the default.

Interpretation of the input data confirms only the first 12 of the 29 integers that are defined. Anillustration is provided by BENCHMARK DC-18, which turns on diagnostic printout only in overlays 2 and16 (used by the pocket calculator) :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Debug print. 0 9 0 0 0 0 0 0 0 0 0 0 |DIAGNOSTIC 0 9

II-A-28. Toggle Choice Between Disk and Memory for Plot Data Storage

The startup file initializes variable LUNIT4, which controls whether plot data points are to be storedon disk or in memory within SUBROUTINE PLTFIL. The sign on what otherwise would be an I/O channelnumber makes this choice : "+" means that disk storage connected to I/O unit LUNIT4 will be used,whereas "-" will result in the storage of plot data in COMMON /C29B01/. Well, whatever the STARTUPdecision might be, the following declaration will toggle (reverse) it :

112345678901234

2 3 4 5 6 7 8567890123456789012345678901234567890123456789012345678901234567890

DISK PLOT DATA

For an example of such usage, see BENCHMARK DC-3. Interpretation will confirm the value ofLUNIT4 following the change. From DC3.LIS, assuming that STARTUP defines LUNIT4 = -4 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Toggle plot data storage choice. LUNIT4 = 4. |DISK PLOT DATA

Page 24: CHAP2

2A - 24

II-A-29. Long - Line Formulas for Constant - Parameter Distributed Lines

Normally, for the phasor solution, resistance is lumped (1/4 on each end and half in the middle) forconstant-parameter, distributed lines. This agrees with the modeling of the time-step loop, of course. Butsometimes the user may want the correct (exact) representation for the phasor solution. It can be obtained bythe request :

1 212345678901234567890123

3 4 5 6 7 8456789012345678901234567890123456789012345678901234567890

EXACT PHASOR EQUIVALENT

An example of such usage can be found in BENCHMARK DC-11 and DCNEW-2. Illustrativeinterpretation can be extracted from any such solution as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Do not lump R for constant-parameter distributed. |EXACT PHASOR EQUIVALENT

II-A-30. Phasor Solutions with Nodes Faulted to Ground

FAULTS TO GROUND ( FTG ) is a request that will cause ATP to loop over phasor solutions withdifferent nodes grounded. For each fault, the user lists nodes that are to be grounded (most commonly oneor three) on a data card. All regular EMTP output after source input is suppressed. In its place will appeara single table of fault currents with one row for each fault switch of each fault. A request for such servicebegins with the following fixed card :

11234567890123456

2 3 4 5 6 7 87890123456789012345678901234567890123456789012345678901234567890

FAULTS TO GROUND

Next to appear are an indeterminate number of cards, one for each fault. Each card is to carry thenames of the nodes that are to be faulted to ground during that particular fault. The format is :

12

345678

1901234

2567890123456

3789012 345678

4901234

5567890 123456

6789012 345678

7901234

8567890

BUS1 BUS2 BUS3 BUS4 BUS5 BUS6 BUS7 BUS8 BUS9 BUS10 BUS11 BUS12 BUS13

A6 A6 A6 A6 A6 A6 A6 A6 A6 A6 A6 A6 A6

Most commonly, either one name will be provided, or three will be provided. This would be for a single-line-to-ground fault or a 3-phase (to ground) fault, respectively. But any number of nodes can participate.Blank names are ignored, so for 3-phase use, it is customary to use BUS1 for phase a, BUS2 for phase b, andBUS3 for phase c. Finally, a blank card terminates the last such row of nodes to be faulted.

Inspiration for the addition of fault modeling to ATP came from BPA's Dan Goldsworthy. In thepast, he had been forced to set up many different, separate data cases, execute the program for each one,and finally, extract the fault currents manually from each solution. This was part of the careful building of

Page 25: CHAP2

2A - 25

a new data case. At the power frequency, Mr. Goldsworthy would validate his representation by shortingeach bus of interest to ground. He then would compare the resulting fault currents with those predictedindependently by a conventional short-circuit program.

Operation of FAULTS TO GROUND ( FTG ) bears some similarity to the operation ofFREQUENCY SCAN . Each involves a family of phasor solutions that is requested by means of aspecial-request card. Yet, there are important differences. The FTG loop is bigger because branch andswitch cards will be re-read for each fault. In order for this to occur at maximum speed, data input must befrom RAM rather than disk. Depending on computer, operating system, and compiler, this may or may notrepresent a bottleneck. No problem for Salford EMTP, which switched to virtual files early (see the finalparagraph on page 1 of the July, 1992, newsletter). But there was an obvious problem for VAX/VMS,which demonstrated a lot of disk noise and slow execution when running FTG. After local VAX expertRandy Suhrbier advised that he knew of no DEC compiler switch to move scratch disk files to RAM, yourEditor agreed to program a RAM disk as had been used for IBM mainframes during the mid-'80s. In fact,two RAM disks were programmed in SUBROUTINE WRIT10 for VAX during the morning of 3 April1993. The first and biggest (20K card images) is for data of LUNT10; the second (8K card images) is forprogram text of BLOCKD51.BIN . The sizes are arbitrary, but compilation is required to change either ofthem.

A new, third subcase has been added to DC-11 to illustrate the operation of FAULTS TOGROUND on the cascaded connection of Pi-circuits of DC-3. Illustrative interpretation is drawn from thissolution. To save space, the output for faults 3 through 9 of the 10 have been omitted. Note that the first twofaults are 3-phase whereas the 10th is single phase :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request preceding list of nodes to be faulted. |FAULTS TO GROUNDNames of nodes for fault number 1. | M-A M-B M-CNames of nodes for fault number 2. | 1-A 1-B 1-C ...Names of nodes for fault number 10. | 18-C Blank card ending list of nodes to be faulted. |BLANK card ends list ...

II-A-31. Calling of Installation - Dependent Module MIDOV1

The principal installation-dependent module that is called at the start of execution of each data caseis SYSDEP. But there once was another such module in overlay 1, a former SUBROUTINE that has sincebeen converted to a special, optional logic branch within SYSDEP. This can be used for any necessaryinitialization that is possible only after miscellaneous data cards have been read, for those computer systemsthat require such special treatment. The request for such special initialization (originally associated with fileopening and closing) is shown immediately below. But do not use this without the knowledge and approvalof Program Maintenance. It will result in execution of the statement CALL SYSDEP, which could bedisastrous for those computer systems that do not have alternate logic to intercept such advance usage.

1123456789012

2 3 4 5 6 7 834567890123456789012345678901234567890123456789012345678901234567890

FILE REQUEST

Page 26: CHAP2

2A - 26

No standard test case BENCHMARK DC*.DAT illustrates this use. In any case, interpretation of the inputdeclaration should appear as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request for "CALL MIDOV1" execution. |FILE REQUEST

II-A-32. Declaration of Intention to Use ATP Load Flow

EMTP load flow capability is associated with special data cards that are to follow the blank cardending sources, as explained in Section X. But such observation of power constraints is optional. If suchdata is to be read at the appropriate time and place, the EMTP must know of its existence. The user declaressuch existence by means of the following request card :

11234567890

2 3 4 5 6 7 81234567890123456789012345678901234567890123456789012345678901234567890

FIX SOURCE

For examples of such usage, see the standard test cases BENCHMARK DC-25 and DC-26. Interpretationof the input declaration then appears as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Declaration of desired EMTP load flow usage. |FIX SOURCE { Declare

II-A-33. Loop over Frequency to Produce Series of Phasor Solutions

The FREQUENCY SCAN ( FS ) feature of ATP allows for the repetition of steady-state phasorsolutions, as the frequency of sinusoidal sources automatically is incremented between a beginning and anending frequency. Rather than conventional time-response output, a frequency-response output of desiredquantities such as node voltages, branch currents or driving-point impedance / admittances can be obtainedFor plotting, the time axis of conventional ATP simulation becomes the frequency axis. The result is afrequency curve rather than a time curve. Either polar coordinates (magnitude and angle) or rectangularcoordinates (real and imaginary parts) of the phasor solution variables are used for output purposes. The usercan choose among magnitude only, or polar, or rectangular, or all four possible outputs for the variables ofinterest. Typical applications of the Frequency Scan are :

! Analysis and identification of resonant frequencies of power networks and individual systemcomponents;

! Computation of frequency response of driving-point network impedances or admittances seen from abusbar. For example, the positive-sequence or zero-sequence impedance;

! Analysis of harmonic propagation in a power system using the extended, related feature HARMONICFREQUENCY SCAN (see separate later subsection).

Page 27: CHAP2

2A - 27

This section describes how to create a FREQUENCY SCAN data case, interpretation of programoutput, and the plotting of results. In addition, the following useful features related to FREQUENCYSCAN will be treated :

" Incorporation into the FS computation of frequency-dependent nodal admittance matrices that havebeen computed or measured outside of ATP ;

" The MODELS interface to FS.

II-A-33.1. Frequency Scan Data Case Structure

Basically two types of frequency responses are generated, which differ in frequency increment:

a) Frequency is incremented in equal steps, i.e. uniform spacing is used:

b) Frequency is incremented geometrically, i.e. number of frequencies per decade is specified:

When geometric spacing is used, log(f) produces arithmetic frequency increment as illustrated by thefollowing example with 4 frequency points per decade :

f : 10 17.782794 31.622777 56.234133 100 (Hz)log(f) : 1.0 1.25 1.50 1.75 2.0

The Frequency Scan feature is activated by a special request data line, which must precede themiscellaneous data cards as illustrated by the 1st subcase of DC-51 :

BEGIN NEW DATA CASEC BENCHMARK DC-51C "FREQUENCY SCAN" use, with subsequent plotting of phasors vs. frequencyC This test cases uses uniform spacing; See DC-52 for geometric spacing.C Because IOUTLP = 2, the solutions for step numbers 3 and 5 are omitted.C 1st of 3 data subcases (2 LINE MODEL FREQUENCY SCAN, LMFS, cases follow)FREQUENCY SCAN, 60., 20., 130., 0, { 60 < f < 130 Hz in 20-Hz increments 0.1 0.0 2 1 1 { IOUTLP (cols. 1-8) only prints every other point.....

FS request with the required parameters is entered either in free format (parameters are separated by“,”) or using column-oriented fixed format as shown below :

112345678901234

25678901234

356789012

434567890 12345678

590123456

6 78901234

7 8 5678901234567890

FREQUENCY SCAN FMINFS DELFFS FMAXFS NPD FUNDFS

E8.0 E8.0 E8.0 I8 E8.0

FMINFS (cols. 25-32) is the beginning (minimum) frequency of the scan in (Hertz). This must be apositive number.

Page 28: CHAP2

2A - 28

DELFFS (cols. 33-40) is the frequency increment between successive solutions of the scan, if theuser wants uniform (as opposed to logarithmic) spacing. For logarithmic spacing, this fieldshould be left blank.

FMAXFS (cols. 41-48) is the ending (maximum) frequency of the scan, in (Hertz). This must be greaterthan or equal to FMINFS, of course. The solution loop will end with the last frequency thatdoes not exceed this upper limit.

NPD (cols. 49-56) is used only for geometric or logarithmic spacing as opposed to uniform orarithmetic spacing of the frequency points. For geometric or logarithmic spacing, provide aninteger value for the number of points per frequency decade. Successive frequency pointswithin a decade then will be related by :

FUNDFS (cols. 57 - 64) is used if and only if source angles are to be made proportional to frequency.To understand, compare the 2nd subcase of BENCHMARK DCNEW-21 (positiveFUNDFS) with the first (blank FUNDFS). If used, FUNDFS is the fundamental frequency— the frequency on the source cards for which the angles are defined.

Parameters DELTAT (time step) and TMAX (maximum simulation time) on the first miscellaneousdata card have no meaning for FS simulation.

Using parameters IOUT and IPLOT of the integer miscellaneous data card, the frequency of listoutput and plot output can be changed, respectively. For beginners it is recommended to set IOUT = 1 andIPLOT = 1 in order results at each frequency to be saved in output list (.LIS file) and in the plot file (.PL4file). Note that normally only odd numbers are allowed for IPLOT. If plot output frequency should be aeven number, then special request ALLOW EVEN PLOT FREQUENCY should be entered precedingmiscellaneous data lines.

Special attention should be paid to integer miscellaneous data parameter KSSOUT when using theFS option. See the Section II-B of the Rule Book for the definition of KSSOUT. If punched with unity, thefull phasor branch flow and injection output will result for each solution frequency of the scan. This couldproduce large quantities of printed output, if the number of frequency points is large. Inexperienced usersshould start with KSSOUT = 0.

The electric network may be composed of linear branches and built-in complex components except :

– nonlinear elements (they are represented by their linearized characteristics, if applicable);– U.M. rotating machine model;– Semlyen line model (line is represented by a constant-parameter B-circuit);– Noda line model (FS simulation dies).

When constant-parameter distributed line model (see Section IV-D) is included in the network, it isrecommended to insert EXACT PHASOR EQUIVALENT (EPE) request preceding miscellaneous datacards. EPE activates distributed-line formulas with hyperbolic functions for the phasor solution comparedto lossless line representation with lumped resistances (¼ at both ends and ½ in the middle of the line asexplained in Section IV-D). Hence the FS solution will be exact when EPE is used.

Page 29: CHAP2

2A - 29

Important components of a FS computation are type-14 AC sources in the network. They can bevoltage or current sources with constant amplitude as frequency is varied according to the range andincrement defined on the FREQUENCY SCAN request card. The HARMONIC FREQUENCY SCANfeature as extension to FS allows to define harmonic sources with varying amplitudes as a function offrequency. Note that the frequency specified on the type-14 AC source card has no effect in a FScomputation.

II-A-33.2. Frequency Scan Output

Formerly only node voltage output was available for FS solutions. Node voltages were outputted inboth polar (magnitude and angle in degrees) and rectangular (real and imaginary parts) forms as shownbelow :

The "FREQUENCY SCAN" output vector has the following format: Cell number one contains the frequency of the phasor solution (orbase-10 logarithm of this, in the case of geometric frequency spacing). Cells numbered two onward contain the pairs of magnitudeand angle of the phasor node voltages. These pairs are in the order requested by the user on the card for selective node voltageoutputs. For plotting purposes, these output variables are treated as though they were branch currents (plot type "9"). Both themagnitude and the angle use the actual node name for the first identifying variable, and then either "mag" or "angle"(left-adjusted in A6 field) for the second. The printed headings reverse this order and add a colon (":") separator in order toavoid imbedded blanks (assuming the user left-adjusts his names). The polar outputs are followed by rectangular outputs in thesame relative order, only identified by the second names "real" and "imag". There is column allignment of the two display modesfor any output variable, if printed output has been requested. mag:LOAD angle:LOAD mag:MID angle:MID mag:TRAN angle:TRAN mag:CUR angle:CUR real:LOAD imag:LOAD real:MID imag:MID real:TRAN imag:TRAN real:CUR imag:CUR ----- Output vector for step number 1. Frequency = 6.00000000E+01 Hz. 1.0000000E+02 0.0000000E+00 9.3571522E-01 -2.0655997E+01 9.3571522E-01 -2.0655997E+01 9.3571522E+01 -2.0655997E+01 1.0000000E+02 0.0000000E+00 8.7556297E-01 -3.3007946E-01 8.7556297E-01 -3.3007946E-01 8.7556297E+01 -3.3007946E+01 2) Freq [Hz] = 8.00000000E+01 Total network loss = 3.991500107966E+03

This output was extracted from the 1st subcase of BENCHMARK DC-51.

The second of the two associated 6-character names was used to indicate which component of thecomplex variable was involved: 1) mag for magnitude; 2) angle for the angle in degrees; 3) real for the realpart; and 4) imag for the imaginary part. Thus 4 real branch currents were used to represent one complexnode voltage.

Today, arbitrary outputs are allowed: node voltages, branch voltages, and branch currents, with eachhaving its natural variable type. Fundamental to the improvements was a switch from the special, fixed FSprintout to printout that is modeled after that of the time-step loop.

Magnitude-only is the new default output choice for both FS and HFS data. As long as the averageuser is willing to ignore phase, it is both simpler conceptually, and more efficient computationally, tosuppress output of the other parts of the complex solution (i.e., angle, real part, and imaginary part). Printedand plotted output variables then have the same familiar form as for time simulation (the most common use).Time in seconds is replaced by frequency in Hertz, of course. Otherwise, output has the same form, sorequires no special explanation. To illustrate, an extract from the list output of the same data case (DC-51,1st subcase) is given below :

Page 30: CHAP2

2A - 30

Column headings for the 5 output variables follow. These are divided among the 3 possible FS variable classes as follows.... First 4 output variables are electric-network voltage differences (upper voltage minus lower voltage); Next 1 output variables are branch currents (flowing from the upper node to the lower node);For each variable, magnitude is 1st, angle is 2nd, real part is 3rd, and imaginary is 4th. All 4 are labeled identically, note. Step F [Hz] LOAD LOAD LOAD LOAD MID MID MID MID TRAN TRAN TERRA TERRA TERRA TERRA

TRAN TRAN CUR CUR CUR CUR LOAD LOAD LOAD LOAD TERRA TERRA TERRA TERRA MID MID MID MID 1 60. 100. 0.0 100. 0.0 .93571522 -20.655997 .875562973 -.33007946 .93571522 -20.655997 .875562973 -.33007946 93.571522 -20.655997 87.5562973 -33.007946 93.571522 -20.655997 87.5562973 -33.007946 3 100. 100. 0.0 100. 0.0 .846733016 -32.141908 .7169568 -.45047724 .846733016 -32.141908 .7169568 -.45047724 84.6733016 -32.141908 71.69568 -45.047724 84.6733016 -32.141908 71.69568 -45.047724 5 140. 100. 0.0 100. 0.0 .750845344 -41.336343 .563768731 -.49591688 .750845344 -41.336343 .563768731 -.49591688 75.0845344 -41.336343 56.3768731 -49.591688 75.0845344 -41.336343 56.3768731 -49.591688

BOTH POLAR AND RECTANGULAR is the request for all 4 parts of each complex variable. Thiscorresponds to the mandatory output of the previous Frequency Scan version. However, the printout looksvery different, and the plot file has different structure. Take the illustration of the preceding paragraph. Thefirst two columns (for step number and frequency) would remain unchanged. But thereafter, each columnwould be replaced by four columns. The names at the top of each of the 4 columns would be the same. Forexample :

Step F [Hz] LOAD LOAD LOAD LOAD MID MID ... TERRA TERRA TERRA TERRA

Within each adjacent quadruplet, the first half is polar (angle follows magnitude) and the second halfis rectangular (imaginary part follows real part). This will be documented in a line immediately precedingthe lines shown. For an illustration, see the first subcase of DC-51 or 52.

POLAR OUTPUT VARIABLES is the second of three requests for an alternative to the defaultchoice of magnitude-only. Instead of four columns of printout for each output variable as explained in thepreceding paragraph, there will be only two. Magnitude and angle retain their same relative positions(magnitude precedes angle in degrees).

RECTANGULAR OUTPUT VARIABLES is the third of three requests for an alternative to thedefault choice of magnitude-only. This is like the preceding POLAR except that real and imaginary partreplace magnitude and angle.

Those new output requests are inserted into data section of sources preceding first source card asillustrated in the 1st subcase of BENCHMARK DC-51 :

.....BLANK card ending (here, non-existent) switchesC The following request for complete output (rather than the default choiceC of magnitude only) is read as part of source data, but it must precede theC first source. This is for FS use (HFS allows it anywhere among sources). BOTH POLAR AND RECTANGULAR { Request for (in order): mag, angle, real, imagC Preceding is one of 3 alternatives. The other two are, after commented:C POLAR OUTPUT VARIABLES { 2nd of 3 alternatives for output gives mag, angleC RECTANGULAR OUTPUT VARIABLES { 3rd of 3 alternative outputs gives real, imag14LOAD 100. 60. -1.BLANK card ending sources.....

Also for plotting, the same output requests are applied and accordingly output forms in pairs (mag,angle), (real, imag) or both are available. Widexx PL4 format option offers to import FS computationresults as text file into standard software like Excel, Quattro Pro or MathCad and to produce, forexample, Bode diagram with logarithmically scaled x- and y-axes. In STARTUP, if variable FMTPL4

Page 31: CHAP2

2A - 31

Fig. II-A-33.1 Determ ination of the frequency response of driving-point impedance (left)

and admittance (right) of a network seen from node k by FS simulation

(normally blank) is replaced by 'widexx', where xx defines the width of columns for plot variables, a textfile with data columns is created.

II-A-33.3. FS Output of Driving - Point Impedance or Admittance

Frequency Scan computation does not produce directly frequency curves of driving-point impedances/ admittances. According to the frequency-domain relations U = Z @ I and I = Y @ U , impedance seenfrom a node can be obtained, if a current source of amplitude 1 ampere is applied to this node. Voltage ofthat node then gives the impedance in S.

Similarly, if a sinusoidal voltage source with amplitude 1 volt is connected to a node, then the currentflowing into the network corresponds to the driving-point admittance seen from that node. Fig. II-A-33.1shows these two alternatives.

Computation of frequency responses of impedances or admittances shown in Fig. 3-2 can be extendedto three-phase power networks to determine :

– positive-sequence short-circuit or no-load impedance/admittance;A three-phase balanced source is connected to a three-phase busbar. Provided the system is balanced,voltage of phase a or current flowing into phase a gives positive-sequence impedance or admittance,respectively.

– zero-sequence short-circuit or no-load impedance/admittanceA single-phase source is connected to all three-phases of a busbar. In order to obtain Z0 not equal toinfinity, a return path should be available for zero-sequence currents.

II-A-33.4. Additional Features of Frequency Scan

Incorporation of the Frequency-Dependent Nodal Admittance Matrices of Components into FSComputation

A not well-documented feature of FREQUENCY SCAN allows to merge nodal admittancesubmatrices of any system component or group of components over the desired frequency range into the FScomputation. This way, the frequency dependence of desired components like transmission lines,transformers can be taken into account during FS computations. Since such data ([Y] submatrices) can begenerated outside of ATP, the user is flexible to input frequency dependent data either measured or computedusing any other program. The only restriction is the [Y] matrix must be symmetric, i.e. only the lower triangleis inputted. The procedure is outlined in Fig. II-A-33.2.

Page 32: CHAP2

2A - 32

Fig. II-A-33.2 Incorporation of externally produced frequency response curves into

Frequency Scan computation

Input Data Format

The nodal admittance matrices [Y(fi)] over a given frequency range (fmin # fi # fmax) are to be providedfor ATP as a text file (FORMATTED), that will be connected using a $OPEN statement. Additionally, thenodal admittance matrix (or a group of submatrices for different elements) at f = fmin must be entered as type-51, 52, ... elements. Unlike normal coupled RL-branches that carry a pair of A6 node names on each phasecard, only half of the node name fields are used, leaving the remaining fields blank as illustrated below( benchmark DC-11, first subcase ) :

BEGIN NEW DATA CASE C BENCHMARK DC-11 C Illustration of data input using [Y]. Matrix comes from DC-9 (orC more precisely, DCPRINT-25, since DIAGNOSTIC is needed to see it).C Solution is close to DC-9 (remember limited input [Y] precision).C Note two $UNITS cards. The 2nd, returning to original XOPT and C COPT, does nothing, since all data input is completed. But the 1stC is mandatory whenever [Y] input is used, so input [Y] in mhos willC be loaded into List-3 tables TR and TX without any scaling. COPT isC not used, so it can be anything (zero is used below). But XOPT mustC equal the reciprocal of 2 * Pi, since the scaling factor for [L] is C 2 * Pi times this frequency (.1591549431) in Hz --- which is unity. 0.0 0.0 60. { Note XOPT = 60 here --- never actually used 1 1 $UNITS, .1591549431, 0.0, { Ensures no scaling of [Y] in mhos. XOPT = 1/(2*Pi)51RA1 GA1 4.8E-9 1.22811E-04 { 1st row of 6x6 [Y] in mhos 52RB1 GB1 -1.E-7-2.24227E-05.00944-2.57399E-02 53RC1 GC1 4.3E-8-1.46254E-05-.0085 1.67291E-02.01660-4.74760E-0254 -1.E-7-9.42642E-06.01871-5.03015E-02-.0145 2.40976E-02 .04631-1.15612E-02 55 1.5E-6 6.45897E-06-.0168 5.97172E-02.01897-4.24556E-02 -.0327 3.04757E-02.03607-6.06204E-0256 1.2E-6 4.48565E-06.00209-2.06269E-02-.0022 3.68953E-02 .00366-6.53239E-02-2.E-5 2.74250E-02.00485 9.93931E-03

Page 33: CHAP2

2A - 33

$UNITS, 60., 0.0, { Restore original values; "CIMAGE" ends scaling XUNITS = 1. BLANK card ending branch cards

Following rules should be followed :

1. Connect the file of [Y] matrices to I/O channel LUNIT8 using $OPEN:$OPEN, UNIT=8 FILE=<filename> FORM=FORMATTED STATUS=OLDThis card must precede FREQUENCY SCAN request card.

2. To ensure no frequency scaling of [Y] (units are mhos), two $UNITS cards are required. They areinserted before and after entering type-51, 52, ... cards for f = fmin :

$UNITS, .1591549431, 0.0,

causes the scaling factor of [L] to become unity. Instead of a frequency value, 1/(2B) must be entered.Miscellaneous data parameter COPT is not used for the [Y] data input mode.

$UNITS, -1.0, -1.0

this card follows the last type-51., 52, ... card to restore the original frequency values.

3. The file containing admittance matrices, which are ordered with frequency increasing , is a text file(FORMATTED). There must be one set of [Y(fi)] data for each frequency starting from f = fmin. Note thatthe nodal admittance matrix at f = fmin is actually entered twice, i.e. additionally on type-51, 52, ... cardsin the ATP data case. Each data set consists of a single, arbitrary comment line followed by [Y(fi)].

4. As [Y] data, either single nodal admittance matrix for each frequency can be supplied or severaladmittance submatrices form a [Y] data set.

5. Since [Y] is symmetric, only the lower-triangle is inputted. Each matrix element is entered as a (G, B)pair. Each data line contains max. 2 matrix elements with format 4E20.0. No node names are used, sincethey are already known by type-51 cards. Data are inputted by rows of the lower-triangle up to andincluding the diagonal element. Each row starts on a new data line. To illustrate the file format, anexcerpt from an example with [Y](2x2) matrices is shown below :

C 1 2 3 4 5 6 7 8C 345678901234567890123456789012345678901234567890123456789012345678901234567890C real part >< imaginary part >< real part >< imaginary part >C 1 50.0000000000 -- Comment line for each frequency -- 9.024370461702E-03 -2.464601956308E-02 1.006936311722E+00 -8.415832519531E-01 2.256673812866E+01 -6.162223052979E+01C 2 52.3564274025 -- next frequency, f=52.35.. -- 8.370772004128E-03 -2.374093048275E-02 9.560084342957E-01 -8.187347054482E-01 2.093238830566E+01 -5.935950469971E+01C 3 54.8239098072 -- next frequency, f=54.82.. -- 7.762122899294E-03 -2.285474725068E-02 9.074985980988E-01 -7.955815792084E-01 1.941037559509E+01 -5.714403533936E+01

.

.

.

6. The frequency increment (linear or logarithmic) used to create the [Y] data set must match that of theFrequency Scan computation.

Page 34: CHAP2

2A - 34

II-A-33.5. MODELS Interface to Frequency Scan

The interface of MODELS to FREQUENCY SCAN [4] allows processing of the results of FrequencyScan computation by user-defined logic of MODELS. The node voltages and switch currents as complexquantities (real and imaginary parts) can be passed to MODELS as INPUT variables.

When MODELS is used in conjunction with FS, the MODELS variable t is used to carry the value ofthe present frequency f used in FS. All variables and functions of MODELS making explicit or implicitreferences to time are automatically transformed to make the same references to frequency.

Examples:

timestep holds the frequency increment between the previous frequency (prevtime) and the presentfrequency (t or simtime);

deriv(y) calculates the derivative of y with respect to frequencyintegral(y) calculates the integral of y with respect to frequencyprevval(y) returns the value of y at the previous frequencypredval(y,a) returns the predicted value of y at frequency aetc...

diffeq(a0|D0+a1|D1+...)|y:=x calculates the value of y from a differential equation expressed in terms offrequency, i.e.

Typical applications of the MODELS interface are, for example, to create Bode diagrams withmagnitude in Decibel ( 20 @ log10 ), to calculate the effective values using harmonic components, or tocalculate total harmonic distortion.

MODELS output can be sent to output list (.LIS file) and stored in the .PL4 plot file by means ofRECORD..ENDRECORD statements. Additionally, through WRITE1 and / or WRITE2 statements,MODELS variables can be written directly column-wise into text files MODEL.1 and / or MODEL.2 .

For a simple example of such usage, see the 3rd subcase of BENCHMARK DC-52.

II-A-34. User - Defined Harmonic Sources Drive Harmonic Frequency Scan

HARMONIC FREQUENCY SCAN ( HFS ) performs a sequence of phasor solutions for Type-14voltage and / or current sources of various frequencies, amplitudes and angles that are specified by the user.HFS is the ATP option for harmonic analysis of electrical networks.

Data for HFS runs can be divided into 6 classes :

1 . Special Request cards and Miscellaneous data cards2 . $PARAMETER entries3 . BRANCH data including requests for frequency dependent elements

Page 35: CHAP2

2A - 35

4 . Special output request5 . Source specifications6 . Specification of frequency dependence of elements

II-A-34.1. Special Requests

Class 1 data includes as a minimum the two Special Request entries of

BEGIN NEW DATA CASE and HARMONIC FREQUENCY SCAN as shown below

11234567890123456789

3 4 5 6 7 80123456789012345678901234567890123456789012345678901234567890

BEGIN NEW DATA CASE

1 212345678901234567890123

3 4 5 6 7 8456789012345678901234567890123456789012345678901234567890

HARMONIC FREQUENCY SCAN

The user can add optional special requests as listed in Section II-A. Typical entries may be POWERFREQUENCY or PRINTED NUMBER WIDTH, etc. Of course, the user should verify that such additionsdo not conflict with the process of HARMONIC FREQUENCY SCAN.

An optional but important addition requests the use of the Pocket Calculator for varying the value ofa series R-L-C branch as a function of frequency (harmonic order). This option is introduced by the requestPOCKET CALCULATOR VARIES PARAMETERS ( PCVP ) in conjunction with the $PARAMETERrequest as explained below.

1 2 3 41234567890123456789012345678901234567890 12345678

5 90123456

6 78901234

7 85678901234567890

POCKET CALCULATOR VARIES PARAMETERS MAXKNT IOPCVP NOSTAT

I8 I8 I8

In the general purpose use of PCVP (see later subsection of II-A), the value of MAXKNT sets thenumber of passes the user wants to make with varying parameters. For such study, MAXKNT of cols.41-48 is an arbitrary number provided by the user. But for HFS studies, MAXKNT should be set to zerobecause MAXKNT is internally set to the number of different frequencies that are specified by the user aspart of his frequency scan.

IOPCVP = 0 (cols. 49-56) generates a .LIS file with a full output for each pass. This may berequired for some general purpose application of PCVP, but it is wasteful for HFS. With IOPCVP = 1,the .LIS file contains the tabulation of output variables for each frequency specified and the new parametervalues for each frequency as changed by the KNT dependent formulas in $PARAMETER.

The above special requests are followed by two miscellaneous data cards — the same ones asdescribed in Section II-B. They will be repeated here to indicate recommended entries for HFS use.

First (floating-point) miscellaneous data card :

Page 36: CHAP2

2A - 36

12345678 190123456

278901234

356789012

434567890

12345678

5 6 7 890123456789012345678901234567890

DELTAT TMAX XOPT COPT EPSILN TOLMAT

E8.0 E8.0 E8.0 E8.0 E8.0 E8.0

Values of DELTAT and TMAX have no meaning for HFS, but cannot be left blank. Enter 1.0 forboth parameters. XOPT and COPT have the same meaning as described in Section II-B.

Second (integer) miscellaneous data card :

12345678 190123456

278901234

356789012

434567890 12345678

590123456

678901234

756789012

834567890

IOUT IPLOT IDOUBL KSSOUT MAXOUT IPUN MEMSAV ICAT NENERG IPRSUP

I8 I8 I8 I8 I8 I8 I8 I8 I8 I8

Enter ”1” for both IOUT and IPLOT to have outputs in the .LIS and .PL4 files for each frequencyspecified. KSSOUT = 1 will generate a detailed phasor output for each frequency, resulting in a largevolume of output, which for the usual HFS is not warranted. KSSOUT = 0 is the recommended usage. Tocreate a .PL4 file of plot points, enter ICAT = 1. This is common for HFS data.

II-A-34.2. $PARAMETER Specification

$PARAMETER data is required if the PCVP option is used to define the frequency dependence ofone or more series R-L-C elements. Rules for using the PCVP request in conjunction with $PARAMETERis described in detail in Section I-D. The HFS use is shown here on a simple example. In HFS applications,the ATP constant KNT which in the general case is the sequence counter of the sequence number of passesin a systematic or statistical run, is internally made equal to the harmonic order h = frequency / powerfrequency. The frequency dependence of an element is defined by the user as a function of KNT, which isnormalized frequency.

Let BUSHFS be the name of a node to which a frequency dependent impedance RHFS + j XFHSis connected. With the harmonic order h equal to KNT, let

RHFS = 0.35 * KNT **2 and XHFS = 1.21 * (1.0 + KNT**0.4 )

To enter these elements the user will have entered the PCVP request among the Class 1 data asoutlined above. After miscellaneous data cards, the following shows the data entry for $PARAMETER :

C 12345678901234567890123456789012345 $PARAMETER REFS__ = 0.3*KNT**2.0 XEFS__ = 1.21*(1.0+KNT**0.4) BLANK card ends $PARAMETER definition

Page 37: CHAP2

2A - 37

As part of branch data, the above frequency dependent element would be entered as follows :

C 345678901234567890123456789012345678 BUSHFS REFS__XHFS__

Note the use of under score characters to extend variable names to 6 characters (the width of R, L, and C datafields of an old, narrow-format, series R-L-C branch ) .

The $PARAMETER data involves free-format, low-level, FORTRAN-like statements. Constantsmust be floating-point numbers. I.e., constants must include a decimal point. Integers are not allowed (badthings will happen if a decimal point is forgotten). The user should carefully study the PCVP subsection thatfollows.

II-A-34.3. Frequency Dependent Elements

Class 3 HFS data is the same as the regular data for time domain runs. As HFS is a sequence ofphasor solutions, nonlinearities cannot be represented correctly. Nonlinear inductors will be linearizedwhereas nonlinear resistors and other nonlinear elements generally will be ignored.

II-A-34.3.1. Frequency Dependent R - L - C Elements

Linear frequency dependence of a series R- L - C branch can be modeled as described in SectionII-A-34.6. User defined non-linear frequency dependence of a series R-L-C element is modeled using thePCVP option. An example is shown in Section II-A-34.7.

II-A-34.3.2. The CIGRE Load Model

A frequency dependent distribution system load model was developed for HFS, but it is usable forFS and time domain simulations. After the originators of the model, it is called the CIGRE model, andcharacterized by three constants A, B, and C. The user enters the load MW, MVAR and kV and the threeconstants, ATP calculates the load impedance for the harmonic orders. The C.I.G.R.E. recommendedconstants are A = 0.073, B = 6.7 and C = 0.74. The model is valid for harmonic orders of 5 and higherand may yield incorrect reactive absorption at the fundamental frequency. This is usually not a problem, butthe user should be aware of it and compensate for it if required. The changing of the recommended constantswill change the overall frequency dependence of the model, and should be carefully analyzed by the user. Fordetails of the model see C.I.G.R.E. Publication Electra Vol. 71, 1981.

Two branch cards are required to enter a single-phase CIGRE load at some bus named BUSL . Thefollowing shows order and format :

12345678 1 2901234567890123456

3 47890123456789012

53456789012345678

6 79012345678901234

8567890

<LOAD> CIGRE A,B,C A B C

E16.0 E16.0 E16.0

Page 38: CHAP2

2A - 38

12345678 1901234

2567890123456

3 47890123456789012

53456789012345678

6 79012345678901234

8567890

<LOAD> VOLT PLOAD QLOAD

A6 A6 E16.0 E16.0 E16.0

The constants A, B, C are defaulted to 0.073, 6.7 and 0.74 respectively. Alternatively, the user canenter these values or his own preferences. As for the 2nd of the 2 data cards :

1) V LOAD is r.m.s. voltage across the load 2) PLOAD is the active power absorbed by the load3) QLOAD is the reactive power absorbed by the load

VLOAD, PLOAD and QLOAD must be specified in units consistent with the source specifications.E.g. if the source voltages are in volts, VLOAD is in volts, PLOAD is in Watts and QLOAD is in VARs.

For three phase loads, the data input can be simplified as follows. Assume the three phase load isconnected to nodes BUSLA, BUSLB, and BUSLC, two data cards suffice for the 3 phases :

12345678 1 2901234567890123456

3 47890123456789012

53456789012345678

6 79012345678901234

8567890

<LOAD> CIGRE A,B,C A B C

E16.0 E16.0 E16.0

12345678 1901234

2567890123456

3 47890123456789012

53456789012345678

6 79012345678901234

8567890

BUSLA <LOAD3BUSLB BUSLC VOLT PLOAD QLOAD

A6 A6 A6 A6 E16.0 E16.0 E16.0

VOLT, PLOAD and QLOAD are single phase quantities.

II-A-34.3.3. Induction Motor HFS Model

There is no built-in HFS induction motor model at the present time. In most cases it will be sufficientto use the locked rotor power frequency locked rotor impedance of the motor. Should a more sophisticatedmodel be required, the PCVP option may be used to for generating the frequency dependent characteristicof the rotor. See Example #2 in Section II-A-34.3.7 below.

II-A-34.3.4. Synchronous Machine HFS Model

There is special synchronous machine HFS model. It is generally recommended to use the negativesequence impedance.

Page 39: CHAP2

2A - 39

II-A-34.4. Output Requests

The old restriction of only node voltage outputs with FREQUENCY SCAN has been removed. Bothnode and branch voltage and current can be output the usual way with column 80 entries of 1, 2, or 3, whichis available for both FS and HFS. In the old FS output node voltages were recorded with their magnitudes,angles, and real and imaginary components. This has been changed to only magnitudes being monitored asthe default option. For HFS, the user can request the additional output of the angle of the variable byinserting a POLAR OUTPUT VARIABLES request after the blank card ending switches as follows :

C 123456789012345678901234567 BLANK ending switches POLAR OUTPUT VARIABLES C followed by SOURCE data 14BUSA etc.

II-A-34.5. Sources

Only Type 14 sources are available in HFS due to the fact that HFS is a sequence of phasor solutions.Source frequencies can be specified either in Hertz Hz or harmonic order h. The two types of sourcefrequency specifications cannot be mixed, however. There has to be at least one source with the powerfrequency equal to the default power frequency or the power frequency as modified at the top of the data file.If sources are specified in terms of the harmonic order h, there has to be at least one source with h = 1. ATPcalculates internally the frequency in Hz corresponding to h. Sources can be entered in any order as they aresorted internally. The general format for entering a source is :

12345678 190

21234567890

31234567890

41234567890

5 6 7 81234567890123456789012345678901234567890

14 NAME J AMPLITUDE FREQ or h ANGLE

I2 A6 I2 E10.6 E10.6 E10.6

NAME (cols. 3-8) is the name of the source busJ (cols. 9-10) is blank for a voltage source and -1 for a current sourceAMPLITUDE (cols. 11-20) is the peak voltage or current magnitudeFREQ or h (cols. 21-30) is the source frequency in Hz or harmonic order h in per unitANGLE (cols. 31-40) is the source voltage or current angle in degrees

Columns 41 through 80 must be blank except for a possible in-line comment following “{“

II-A-34.6. Elements with Linear Frequency Dependence

A series R-L-C branch having linear frequency dependence can be specified by entering the value ata specified higher frequency. ATP then will make a linear interpolation at any required frequency (harmonicorder) of the scan. The cards for this follow the last source card, and have the following format :

Page 40: CHAP2

2A - 40

1 2 312345678901234567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

NEXT PREQUENCY FOR SERIES RLC FREQ

E8.0

12345678 1901234

2567890123456

3789012345678

4901234

5 6 7 8567890123456789012345678901234567890

0 BUS1 BUS2 R L C

A6 A6 E6.2 E6.2 E6.2

1 2 3 4 5 6 7 812345678901234567890123456789012345678901234567890123456789012345678901234567890

BLANK card ending frequency dependence

FREQ (cols. 33-40) is the elevated frequency at which parameters are specifiedBUS1, BUS2 (cols. 3-14) are the 6-character terminal names that identify the series R-L-C branchR, L, C (cols. 27-44) are the parameters of the branch connecting BUS1 to BUS2

There are an indeterminate number of such frequency-dependent specifications of series R-L-C elements.These are to be specified in order of increasing frequency. For any particular frequency, there is anindeterminate number of branches, in general. Only the last of such sets of frequency-dependent data is to beterminated by a single blank card. So, the final branch at any particular frequency will be terminated eitherby declaration of the next frequency (if there is one) or a blank card (if no higher frequency).

II-A-34.7. HFS Examples

Example #1

Linear frequency dependence of R L and CIGRE load model

BEGIN NEW DATA CASEPOWER FREQUENCY, 50.0HARMONIC FREQUENCY SCANC DELTAT TMAX XOPT 1 1 50.C IOUT IPLOT ICAT 1 1 1C 1o km cable-1SRCA LOADA 1.280 0.152 0.408 10.0-2SRCB LOADB 0.164 .0987 0.408 10.0-3SRCC LOADCC frequency dependent impedanceC R X = 0.3 +j0.6 at 500 HzC 345678901234567890123456789012345678901234567890123456789012345678901234567890 LOADA LODA 0.1 0.3 1 LOADB LODB 0.1 0.3 LOADC LODC 0.1 0.3C frequency dependent CIGRE type load kV, 4.8 MW, 2.4 MVAR <LOAD> CIGRE A,B,C 0.073 2.0 0.74 LODA <LOAD3LODB LODC 5780.0 1600000. 80000. 1C branch to the converter LOADA CONVA 0.1 1

Page 41: CHAP2

2A - 41

LOADB CONVB 0.1 LOADC CONVC 0.1BLANK end of BRANCH dataBLANK end of SWITCH data POLAR OUTPUT VARIABLESC amplitude Hz or h angleC 10 kV 50 Hz voltage source14SRCA 8150.00 1. 0.14SRCB 8150.00 1. 240.14SRCC 8150.00 1. 120.C assume 3% negative sequence voltage at source14SRCA 245.00 2. 10.14SRCB 245.00 2. 130.14SRCC 245.00 2. 250.C harmonic sources at converter14CONVA -1 60.0 1.0 10.014CONVB -1 60.0 1.0 250.014CONVC -1 60.0 1.0 130.0C 5th14CONVA -1 12.0 5.0 10.0014CONVB -1 12.0 5.0 130.0014CONVC -1 12.0 5.0 250.00C 7th14CONVA -1 8.0 7.0 10.0014CONVB -1 8.0 7.0 250.0014CONVC -1 8.0 7.0 130.00C 11th14CONVA -1 5.0 11.0 10.0014CONVB -1 5.0 11.0 130.0014CONVC -1 5.0 11.0 250.00BLANK ending SOURCESNEXT FREQUENCY FOR SERIES RLC 500. { Elevated frequency for interpolation LOADA LODA 0.3 0.6 LOADB LODB 0.3 0.6 LOADC LODC 0.3 0.6BLANK card ending F-dependent series R-L-C branches LOADA LOADB LOADCBLANK end of OUTPUT dataBLANK end of PLOT dataBEGIN NEW DATA CASEBLANK

Example #2

Demonstrates the use of the PCVP

BEGIN NEW DATA CASEC this data file demonstrates the simple HFS modeling of an inductionC motor with only one rotor circuit. The model is created by theC POCKET CALCULATOR VARIES PARAMETERS optionPOWER FREQUENCY, 50.0HARMONIC FREQUENCY SCANPOCKET CALCULATOR VARIES PARAMETERS 0 1 { Loop five timesC DELTAT TMAX XOPT 0.001 -1.0 50. 1 1 1$PARAMETERC demonstrates the uses of a frequency dependence induction motorC locked rotor impedance. Only the R component is frequency dependentC Motor : 3ph, 0.38 kV, 550 kVA, slip = 0.8%, locked rotor reactance = 27%C rrotor = slip * V(kV)**2 / MVAC rrmot = 0.008 * (0.38**2 / .5 5) = 0.0021 ohm/phC the locked rotor inductance assuming xd' = 27%C Xlmot = 0.27 * (0.38**2 / .5 5) = 0.00709 ohm/ph

Page 42: CHAP2

2A - 42

C note the underscores making up the 6 char. names, only for those variablesC which are passed to the network dataC the constant KNT is made equal to h in ATPC $$ signifies an intermediate variable XLMOT_= 0.27 * 0.38**2/0.55SLIP = 0.008 $$RMOTS = 0.008 * 0.38**2/0.55 $$C the following expression is MOD(h,3)HMOD = ( KNT - 3.0 * TRUNC (KNT/3.0)) $$C test for the sequence numberZ = (-1.0) ** HMOD $$HS1 = (KNT + Z) $$C HS is the "harmonic slip"HS = (HS1 + SLIP)/KNT $$RMOT__= RMOTS/HSBLANK card ends $PARAMETER definitionsC Source bus 10.0 kV 95 MVA51SRCA BSA .30000 3.100052SRCB BSB .01100 1.052853SRCC BSCC BSA to BSMA is a measuring switchC 10.0 kV cable equivalent to plant bus 2.0 km-1BSMA TR10A 0.38 0.410 0.30 2.0-2BSMB TR10B 0.38 0.410 0.30 2.0-3BSMC TR10CCC Transformer 1000 kVAC x = 6.5% x = 10**2/1.00 = 100.0 ohm * 0.065 = 6.50 ohmC imag = 1.5 A , r = 0.5 ohm/phC TRANSFORMER 3.0 40.0 AX 9999 1TR10A TR10B .800 19.00 10.0 2LS3A GRS .001 .0001 .220 TRANSFORMER AX AY 1TR10B TR10C 2LS3B GRS TRANSFORMER AX AZ 1TR10C TR10A 2LS3C GRS GRS 1.0C line to converter LS3A CONVA 0.001 0.020 LS3B CONVB 0.001 0.020 LS3C CONVC 0.001 0.020C ******************************C Induction motor 500 kWC ******************************C induction motor, 500 kW, 380 V, modeled by locked rotor reactanceC ------______------______------______------______C 345678901234567890123456789012345678901234567890123456789012345678901234567890 LS3A MOTA RMOT__XLMOT_ 1 LS3B MOTB RMOT__XLMOT_ LS3C MOTC RMOT__XLMOT_ MOTA MOTSA .00001 { source separation MOTB MOTSB .00001 MOTC MOTSC .00001CBLANK end of BRANCH data ------------------------------------------------------|C SWITCHESC measure current in 10 kV feeder BSA BSMA -1.0 10.0 1 BSB BSMB -1.0 10.0 BSC BSMC -1.0 10.0CBLANK end of SWITCH data ------------------------------------------------------|

Page 43: CHAP2

2A - 43

POLAR OUTPUT VARIABLESC power frequency voltage source 10 kV 3 ph14SRCA 8150.00 1. 0.14SRCB 8150.00 1. 240.14SRCC 8150.00 1. 120.CC Voltage source for the induction motor14MOTSA 307.50 1. -85.14MOTSB 307.50 1. 155.14MOTSC 307.50 1. 35.CC current injection at converter bus CONVA,B,CC 500 kVA fundamental 933 A r.m.s. 1315 A peak14CONVA -1 1315.0 1.0 -170.0014CONVB -1 1315.0 1.0 70.0014CONVC -1 1315.0 1.0 -50.00C harmonic sources14CONVA -1 1.000 3.0 -170.0014CONVB -1 1.000 3.0 70.0014CONVC -1 1.000 3.0 -50.00C14CONVA -1 1.000 4.0 -170.0014CONVB -1 1.000 4.0 70.0014CONVC -1 1.000 4.0 -50.00C14CONVA -1 150.00 5.0 -310.0014CONVB -1 150.00 5.0 -190.0014CONVC -1 150.00 5.0 -70.00C14CONVA -1 108.00 7.0 -110.0014CONVB -1 108.00 7.0 -230.0014CONVC -1 108.00 7.0 -350.00C14CONVA -1 70.00 11.0 -250.0014CONVB -1 70.00 11.0 -130.0014CONVC -1 70.00 11.0 -10.00CBLANK card ending all source cardsBLANK ening frequency dependent cards TC10A TC10B TC10C LS3A LS3B LS3C BSA BSB BSCBLANK ending OUTPUT requests.BLANK ends plot cardsBLANKBEGIN NEW DATA CASEBLANK

II-A-35. Find Parameters for Heidler Surge Function

The Type-15 source is for surge functions of the electric network. One of the early extensions toDommel's simple exponentials is the Heidler surge function. See Section VII-A for details. The question is,for a given surge, what are the associated Heidler parameters? A fitter to produce the data required by ATPwas written by Orlando Hevia of UTN in Santa Fe, Argentina. Access is granted in response to the followingrequest :

1 21234567890123456789012

3 4 5 6 7 83456789012345678901234567890123456789012345678901234567890

HEIDLER SURGE FUNCTION

Page 44: CHAP2

2A - 44

Four illustrations of use have been provided in the 11th subcase of BENCHMARK DC-13. Any of theseillustrates the fixed interpretation as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Orlando Hevia fits params for Type-15 Heidler. |HEIDLER SURGE FUNCTION

II-A-36. Create Branch Cards for Type - 96 Hysteretic Inductor

The normal user of hysteresis modeling will know his B-H characteristic, and can simply input itaccording to the rules of Section V-D. But some users may not have any idea about magnetic losses (andhence the width of the hysteresis loop). Some users may only want a representative loop, for preliminaryexperimentation. Or some users may not even care about the loop itself, since possibly residual magnetismis the only phenomenon of interest (and hysteresis must be requested to have it). For whatever reason, theuser can access a standard hysteresis loop by means of the following request :

11234567890

2 3 4 5 6 7 81234567890123456789012345678901234567890123456789012345678901234567890

HYSTERESIS

Such a card transfers to the code of Section XIX-H, which will create branch cards for the Type-96 hystereticinductor of interest.

For an example of such usage, see the 3rd subcase of BENCHMARK DC-13. The followingillustrative interpretation was taken from this solution :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request to make Type-96 hysteresis branch cards. |HYSTERESIS

II-A-37. Conversion of Type-98 Element to Type - 96 Hysteretic Inductor

HYSTERESIS HEVIA provides access to a program that will convert from an old, single-valued,Type-98 inductor to the more general Type-96 hysteretic inductor. Program HYSTER performs thisfunction, and it comes from Orlando Hevia of UTN in Santa Fe, Argentina, as described in the July, 2000,newsletter. Of course, approximation and additional data (e.g., losses, residual flux, and frequency) areinvolved. The conversion begins with a request that includes controls for associated automatic, batch-modeplotting :

1 2 312345678901234567890123456789012

43456789012345678

590123456

6 7 8789012345678901234567890

HYSTERESIS HEVIA NOZOOM FSCALE DXL2

I8 E8.0 E8.0

Page 45: CHAP2

2A - 45

NOZOOM of columns 33-40 is a binary switch that indicates whether the entire curve, or instead justthe hysteresis loop itself, is to be plotted. Value 1 will plot everything (i.e., no zoom) whereas value zerowill drop the final point, which is outside the hysteresis loop itself.

FSCALE of columns 41-48 is a scaling factor to waste space above and to the right of the 1st and 2nd

quadrant plot (for positive values of flux, which is plotted vertically). For example, value 1.1 will waste10%, providing this much of a margin for the batch-mode plot.

DXL2 of columns 49-46 is the "radius" in screen inches of the squares that will be used to mark datapoints. Value zero means that there will be no such marking.

The preceding HYSTERESIS HEVIA request is to be followed by branch cards for a Type-98 element.The characteristic (including the 9999 card to terminate) is unmodified. However, the branch card itself ismodified to the right of column 26 (the end of the BUS4 name) as follows :

1 212345678901234567890123456

3 47890123456789012

53456789012345678

6 79012345678901234

8567890

P-LOSS FREQ PSI IOUT

E16.0 E16.0 E16.0 I6

Here PLOSS (cols. 27-42) is the loss in Watts, FREQ (cols. 43-58) is the frequency in Hz, PSI (cols. 59-74)is the residual flux in volt-seconds, and IOUT (cols. 75-80) is the request for branch output (normallylimited to column 80 of a branch card).

For an illustration of use, see the new 7th subcase of DC-13. Interpretation of the two most importantdata cards are copied from this solution :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request to make Type-96 hysteresis branch cards. |HYSTERESIS HEVIA ... Hevia 98. 4.0775E+04 5.0000E+01 4.0000E+02 3 |98NODE1 NODE2 ...

HEVIA HYSTER is the request word that will perform the computation of HYSTERESIS HEVIAduring branch data input. For an illustration, see the new 8th subcase of DC-13. In effect, HEVIAHYSTER is like a special, fixed version of more general TO SUPPORTING PROGRAM (see the April,1999, newsletter). Advantages include compactness of data (roughly a factor of two is saved for thecharacteristic), avoidance of the need for comment cards to document raw data, and avoidance ofintermediate roundoff error (the need to punch flux and current in columns of width 16). Disadvantagesinclude the effort to perform the conversion each time the data case is simulated. Name HYSTER can betraced to SUBROUTINE HYSTER in which author Hevia's supporting program has been placed.

... By means of the REPLOT request, more than one plot is possible for each set of input data, and eachplot is allowed to have different parameters.

The reference branch names BUS3 and BUS4 of columns 15-26 are used in unusual ways. For cardspunched by HYSTERESIS HEVIA the text HEVIA HYSTER represents not a request for a copy, butrather a request for wide format that is equivalent to preceding use of $VINTAGE, 1. This is for aType-96 branch. For a copy of a preceding Type-98 HEVIA HYSTER branch, names BUS3 andBUS4 are used in the usual way but the type code is to be changed from 98 to 96.

Page 46: CHAP2

2A - 46

II-A-38. Derive U. M. Data for an Induction Motor

Induction motors can be modeled using the Universal Machine (U.M.) of Chapter IX. However, allrequired U.M. data often are not readily available. Fortunately, they can be estimated from parameters thatare generally available. This is the function of a supporting program INDMOT written by Gabor Furst ofsuburban Vancouver, B.C., Canada. See a story in the April, 1997, newsletter about this feature. ProgramINDMOT itself is described in Section XIX-J, and access to it is established by the following request :

1 212345678901234567890

3 4 5 6 7 8123456789012345678901234567890123456789012345678901234567890

INDUCTION MOTOR DATA

For an example of such usage, see the 2nd subcase of BENCHMARK DC-15. The following illustrativeinterpretation was taken from that solution :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------To Gabor Furst program to make Type-3 U.M. data. |INDUCTION MOTOR DATA

II-A-39. Open Switches at Interpolated Current Zeros

INTERPOLATE SWITCH ZERO CROSSINGS ( ISZC ) is a request to change the rules of switchopening. This feature is not usable for general simulation, but it is useful for research involvingspecially-limited data. The request takes the form :

1 2 3123456789012345678901234567890123

4 5 6 7 845678901234567890123456789012345678901234567890

INTERPOLATE SWITCH ZERO CROSSINGS

ISZC is an outgrowth of the great debate about trapezoidal rule oscillation during the mid-'90s. For asummary, see newsletter stories entitled "Trapezoidal rule oscillations" which began in the October,1995, issue. Specifically, ISZC is a request for the experimental feature mentioned in a story entitled"Testing interpolation and half-step" in the January, 1996, issue. Rather than open a switch after a currentzero has been detected, the switch will be opened at the time of the interpolated zero. Simulation time willbe backed up to this intermediate instant, and a real (exact) half-step then is estimated by averaging a fullstep. Note this differs from the procedure described by those Manitoba authors of EMTDC. Thus, in ATP,time is not resynchronized with the original discretization. For every time instant that a switch is opened,half a time step thus is lost.

Limitations of ISZC are severe. Changes have been made for lumped, series-RLC elements only; theyignore single-phase nonlinear elements, rotating machinery, and control system modeling (TACS and/orMODELS) entirely. As a result, thyristors can not be represented. But diodes can, and this is enough tobegin the consideration of Prof. Ned Mohan's "Computer exercises for power electronics education."

Not yet being verified along with standard test cases is BENCHMARK DCNEW-30 which includesdata applicable to several of Prof. Ned Mohan's simple illustrations. Comment cards that begin thelast-studied subcase (at the top of the file) mention : "Mohan's comment card had title 'DIODE BRIDGE

Page 47: CHAP2

2A - 47

RECTIFIER WITH A 3-PHASE INPUT.' ... No snubber circuits or damping resistors are being used, thereare no manually-specified initial conditions, and the time step dT is much larger than Mohan was able touse, thanks to ISZC. 30 May 2000" Interpretation of the ISZC declaration can be documented from thesolution :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Switch opening shifts time to interpolated zero. |INTERPOLATE SWITCH ZERO C

II-A-40. Derive Frequency - Dependent J. Marti Line Model

In order to represent an overhead transmission line with frequency-dependent parameters and aconstant transformation matrix as required by Section IV-D-3, recourse is made to a separate supportingprogram. Instructions for the usage of this separate program are contained in Section XVII. Transfer to thissupporting program is accomplished by the following request :

1123456789012

2 334567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

JMARTI SETUP PDTO

E8.0

Variable PDT0 of columns 33-40 has the same meaning as the parameter of columns 33-38 offrequency-dependent branch cards of Section IV-D-3. In fact, the parameter is not actually used by the fitter,but is merely passed along from the declaration just shown to any branch cards that later will be punched.This is no different than node names of a BRANCH request, only here the request comes earlier, outsidethe supporting program.

Illustrations of JMARTI SETUP (JMS) use can be found in standard test cases BENCHMARK DCNEW-3, 5, and 6. Interpretation of the input declaration will confirm the input parameter (the following illustrationis from the 1st subcase of DCNEW-3 ) :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Jose Marti`s line fitter. PDT0 = 1.00000000E+00 |JMARTI SETUP, 1.0,

II-A-41. Request for Display of Fatal Error Messages

It sometimes is convenient to be able to generate the text of any particular fatal error message (a "KILLcode") without actually being obliged to assemble data that will so terminate erroneously during execution.This is possible using the request :

11234567890

2 31234567890123456789012

434567890 12345678

5 6 7 890123456789012345678901234567890

KILL CODES KILL1 KILL2

I8 I8

Page 48: CHAP2

2A - 48

Here KILL1 (columns 33-40) and KILL2 (columns 41-48) are the beginning and ending numbers ofthe consecutive error messages that are to be printed. Of necessity, KILL2 must not be less than KILL1.Note that only formal error messages with a KILL number can be reproduced this way. In theory, thisshould be all possible error messages. In practice, it excludes many "temporary" error messages that involvethe simpler, in-line statement CALL STOPTP to terminate execution following some simple message.

The most common use of KILL CODES is on an impromptu basis, which suggests interactive inputfollowing the "KEY" response to the opening prompt of the program.

Interpretation of the input data confirms the beginning and ending indices of the error messages. The4th subcase of BENCHMARK DC-13 illustrates this as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Test output of error messages 13 through 14 |KILL CODES, 13, 14,

II-A-42. Calculation of Parameters of Overhead Transmission Lines

The calculation of parameters for an overhead transmission line is isolated in a separate UTPF overlay.This really is a separate, self-contained program, and all usage is described in the separate Chapter XXI. Totransfer to that separate program, the following special-request card is used :

112345678901234

2 3 4 5 6 7 8567890123456789012345678901234567890123456789012345678901234567890

LINE CONSTANTS

For examples of such usage, see BENCHMARK DC-9, 29, 59, 60, etc. DC-59 provides numerous,self-contained examples (i.e., not within some other supporting program such as JMARTI SETUP). Usingstandard dimensioning with 240K for List 31, interpretation shows that 100 conductors can be handled :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Compute overhead line constants. Limit = 100 |LINE CONSTANTS

II-A-43. Estimate Error of a Line Model vs. Frequency

LINE MODEL FREQUENCY SCAN ( LMFS ) first was mentioned in newsletters in the April, 1990,issue. This refers to a 9-page article by Robert Hasibar, Daniel Goldsworthy, and Tsu-huei Liu in the Marchissue of EMTP News (LEC's journal). Entitled "Validation of frequency-dependent transmission linemodels," this "describes a recent addition to BPA's EMTP that will evaluate the steady-state response of aline section as a function of frequency." Although commonly used for a frequency-dependent line section,in fact LMFS can be used for any line section. The result is a comparison between the user-supplied modeland theory as represented by LINE CONSTANTS or CABLE CONSTANTS or CABLE PARAMETERS. Three standard tests were chosen to determine model accuracy : 1) a positive-sequence, short-circuitimpedance test with all circuits energized simultaneously; 2) a zero-sequence, short-circuit input-impedance

Page 49: CHAP2

2A - 49

test with all circuits energized simultaneously; and 3) a zero-sequence input-impedance and mutual-couplingtest with just one of the circuits energized (used only for multi-circuit cases). ATP automatically connectsthe appropriate testing circuits from previously-established data files, and produces output both on the lineprinter (LUNIT6) and also in a conventional .PL4 plot file for subsequent plotting.

LMFS compares any "line model" with the exact Pi-equivalent of a single segment of overhead line. Thisis done over an arbitrary range of frequencies. The "line model" that is being tested can be any combinationof linear branches, such as lumped elements, lines (constant-parameter, distributed line, frequency-dependentrepresentation of any type), coupled R-L elements, etc.

The frequency response of a line model such as constant-parameter distributed, JMarti or Semlyenline is compared with the exact B-equivalent of that line, which is calculated for each frequency of interestusing geometrical and electrical parameters that are entered as LINE CONSTANTS input data. For 3- and6-phase overhead lines, generic data files for $INCLUDE are provided as part of the 2nd and 3rd subcases ofBENCHMARK DC-51. These compute positive-sequence and zero-sequence short-circuit impedances :

DC51FS3P.DAT electric circuit with place-holding node names to compute positive-sequence, short-circuit impedance of a 3-phase overhead line

DC51FS3Z.DAT electric circuit with place-holding node names to compute zero-sequence, short-circuit impedance of a 3-phase overhead line

DC51FS6P.DAT electric circuit with place-holding node names to compute positive-sequence, short-circuit impedance of a 6-phase overhead line

DC51FS6Z.DAT electric circuit with place-holding node names to compute zero-sequence, short-circuit impedance of a 6-phase overhead line

DC51FS6M.DAT electric circuit with place-holding node names to compute positive-sequence, mutual-coupling impedance of a 6-phase overhead line between two circuits

II-A-43.1 Rules of LMFS Data Creation

Establish simulation data similar to that for FREQUENCY SCAN (see a preceding subsection) asfollows:

1. Use a new special request card: LINE MODEL FREQUENCY SCAN (or LMFS). The data fields and theirformat on this card are the same as those for the Regular FREQUENCY SCAN case: FMINFS, DELFFS,FMAXFS, NPD. Leave the data field for DELFFS blank, and enter the number of points per decade forthe logarithmic (geometric) spacing as NPD. FMIMFS and FMAXFS are the beginning and the endingfrequencies respectively.

1 2 312345678901234567890123456789012

434567890

12345678

590123456

678901234

7 56789012

834567890

LINE MODEL FREQUENCY SCAN FMINFS DELFFS FMAXFS NPD FUNDFS

E8.0 E8.0 E8.0 I8 E8.0

Page 50: CHAP2

2A - 50

2. Input the miscellaneous data cards.

3. Input the branch cards for the "line model" to be tested.

4. Input the appropriate generic data files (see description above) which consist of the needed branch cardsand source cards by using $INCLUDE. Also required on the $INCLUDE card are the names of sendingend and receiving end nodes of the line being tested. Following is an example of the use of generic fileDC51FS6Z.DAT, which will produce the frequency response for the zero-sequence short-circuit test ofa 6-phase line :

Col. 79-80$INCLUDE,dc51fs6z.dat,MR02A# ,MR04A# ,MR02B# ,MR04B# ,MR02C# ,MR04C#, $$C MR02D# ,MR04D# ,MR02E# ,MR04E# ,MR02F# ,MR04F# C dc51fs6p.datC dc51fs6m.dat

Note that 12 node names are needed for a 6-phase line. MR02A and MR04A are names of the sendingend and the receiving end of the first phase, respectively, etc. The $$ in columns 79-80 indicates thatthere will be a continuation card following the initial $INCLUDE card. Next, the comment card "Cdc51fs6p.dat" provides the name of a disk file that contains branch and source cards for the

positive-sequence impedance test. Finally, the comment card "C dc51fs6m.dat" provides similar

information for the mutual-coupling test. This assumes a double-circuit (6-phase) test. If only

a single circuit is involved, the final comment card has no meaning, and can be omitted without

consequence (such omission is not mandatory, however ) . BLANK card ending frequency cards.

5. Input the geometrical data of a single segment of overhead line. Prepare this data of line geometry justas one would for ordinary LINE CONSTANTS use except that only a single frequency card is used. Thisfrequency card carries the following data: RHO (earth resistivity), FCAR (Carson accuracy), DIST(length of the line), ISEG (segmentation option), and MODAL (transposition of the line). This data isterminated by the usual BLANK card ending frequency cards.

C Raw LINE CONSTANTS data for the overhead transmission line being considered:C 1 2 3 4 5 6 7 C 3456789012345678901234567890123456789012345678901234567890123456789012345678 1.4138 .0497 4 1.603 -15. 52.0 A1-1 1.4138 .0497 4 1.603 -16.06 53.06 A1-2 1.4138 .0497 4 1.603 -13.94 53.06 A1-3 2.4138 .0497 4 1.603 -25. 83.0 B1-1 2.4138 .0497 4 1.603 -26.06 84.06 B1-2 2.4138 .0497 4 1.603 -23.94 84.06 B1-3 3.4138 .0497 4 1.603 -15. 114.0 C1-1 3.4138 .0497 4 1.603 -16.06 115.06 C1-2 3.4138 .0497 4 1.603 -13.94 115.06 C1-3 4.4138 .0497 4 1.603 15. 114.0 A2-1 4.4138 .0497 4 1.603 13.94 115.06 A2-2 4.4138 .0497 4 1.603 16.06 115.06 A2-3 5.4138 .0497 4 1.603 25. 83.0 B2-1 5.4138 .0497 4 1.603 23.94 84.06 B2-2 5.4138 .0497 4 1.603 26.06 84.06 B2-3 6.4138 .0497 4 1.603 15. 52.0 C2-1 6.4138 .0497 4 1.603 13.94 53.06 C2-2 6.4138 .0497 4 1.603 16.06 53.06 C2-3 0.5 3.56 4 .495 -7.0 150.7 OHGW-L 0.5 3.56 4 .495 7.0 150.7 OHGW-R BLANK card ending conductor cards of LINE CONSTANTS data

Page 51: CHAP2

2A - 51

100. .001 1 53.00 1 1 C RHO ] [FCAR] [ DIST ] S TBLANK card ending frequency cards of LINE CONSTANTS data

6. Input optional batch-mode plot card(s). E. g.,

C 345678901234567890123456789012345 PRINTER PLOT 186 .2 0.0 5.0 GENIA MAG 196 .2 0.0 5.0 GENIB % MAG

For plotting purposes, node voltages are converted to branch quantities. The results of the tested line

model are treated as branch voltages ("8" in column 4), and results of the exact B-model and thepercentage errors are treated as branch currents ("9" in column 4.). The second name of a percentageerror will be either "% MAG" or "% ANG " ( for magnitude or angle, respectively ) .

7. After the last plot card, input the following three cards to end the data case :

BLANK card ending plot cards BEGIN NEW DATA CASEBLANK card ending data subcases

The line printer output includes tabulation of results of the requested node voltage output

variables for the tested line model, for the exact B-model, and the percentage errors. Variable

IOUT of the integer miscellaneous data card of Section II-B-2 controls the frequency of this output.

Tabulation after 100 entries will be truncated. Be careful with positive values for IDOUBL andKSSOUT on the same card. If IDOUBL has value unity, the connectivity table will be produced foreach test (there are 2 for a single-circuit line or 3 for a double-circuit line). As for any frequency scan,positive KSSOUT for LMFS is even more serious: there will be phasor branch flows and injectionprintout for each of the generally-many frequencies. As a general rule, IDOUBL and KSSOUT shouldhave value zero.

II-A-44. Linearly ( not Randomly ) Varied Bias for Monte Carlo Switching

At the request of BPA production users (specifically, Dan Goldsworthy), the normally random or zerobias that can be added to all switch times of Monte Carlo studies can be replaced by a linear variation. Thiswill be the response of ATP to the request :

112345678901234567

2 3 4 5 6 7 8890123456789012345678901234567890123456789012345678901234567890

LINEAR BIAS USAGE

No further information is required, since limits on the bias will be provided by the STATISTICSmiscellaneous data parameters DEGMIN and DEGMAX (see Section II-C, columns 41-56). For a case withLINEAR BIAS USAGE (LBU), there is replacement of the random number that normally is used by avariable that varies linearly between 1.0 / NENERG and unity as the NENERG energizations areperformed. For an illustration, see the 2nd and 3rd subcases of BENCHMARK DC-48.

Page 52: CHAP2

2A - 52

The interpretation of this request involves the confirmation of no parameter value. The following hasbeen copied from DC48.LIS :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Ramped linear variation of random bias. |LINEAR BIAS USAGE

II-A-45. Combination of 2 or More Partial Monte Carlo Studies

The many energizations ("shots") of a Monte Carlo study can be simulated in groups, either sequentiallyor in parallel (using 2 or more computers, typically). If not all shots are performed as part of the same datacase, there will be partial results in 2 or more .EXT disk files that are connected to I/O unit LUNIT9 (seeDC24.DAT for examples of use). Such partial results (extrema) then can be combined for purposes ofstatistical tabulation by means of a LOAD MORE SHOTS (LMS) request :

1 212345678901 ... 01234 5678

39012 3456

47890 1234 5678

59012 3456

67890 1234 5678

79012

3456

87890

LOAD MORE SHOTS K1 K2 K3 K4 K5 K6 K7 K8 K9 K10 K11 K12 K13 K14 K15

I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4

The 15 integers that are read from columns 21-80 as 15I4 information are optional. These are thenumbers of exceptional shots within the file --- shots that the user wants to discard (ignore) during loadingof the file. A maximum of 15 excluded shots are allowed, note. If one or more of the integers is non-zero,it is assumed that the first zero follows the last non-zero. I.e., the numbers of shots to be excluded fill thevector from left to right. Also, ATP assumes that the non-zero numbers are monotone increasing from leftto right.

In effect, LOAD MORE SHOTS is a command to read from a disk file of extrema that has beenconnected to I/O unit LUNIT2 using $OPEN. This is assumed to follow START AGAIN which loadssimulation tables (program memory). Use is illustrated several times within BENCHMARK DC-40. Thethird use, which excludes two energizations (shots numbered 1 and 2) is interpreted as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Load more Monte Carlo extrema. 1 2 0 |LOAD MORE SHOTS 1

II-A-46. Extended SATURATION That Includes Losses

LOSSY SATURATION ( LSAT ) is a request for an extension to the original SATURATION request,which accounted for inductance only. Accounting for losses (but not hysteresis) as well as flux, LOSSYSATURATION comes from author Orlando Hevia of UTN in Santa Fe, Argentina, as first described in theApril, 2002, newsletter. A Type-99 pseudo-nonlinear resistance is added in parallel with a Type-98pseudo-nonlinear inductance to complete the representation. The newsletter story mentions more detaileddocumentation: a paper entitled "Inductor with losses in the ATP" on pages 13-22 of the August, 2001,issue of EEUG News. To connect to author Hevia's supporting program of Section XIX-K, use the request:

Page 53: CHAP2

2A - 53

11234567890123456

2 3 4 5 6 7 87890123456789012345678901234567890123456789012345678901234567890

LOSSY SATURATION

Use is illustrated in the 10th subcase of standard BENCHMARK DC-13. The fixed interpretation of thisrequest is copied from DC13.LIS :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Orlando Hevia fits params for lossy saturation. |LOSSY SATURATION

II-A-47. Starting Frequency of Harmonic Frequency Scan

A MINIMUM HARMONIC NUMBER ( MHN ) declaration is required if and only if a $PARAMETERblock involves harmonic number "h" prior to the definition of sources of a frequency scan. This will be thecase for a POCKET CALCULATOR VARIES PARAMETERS ( PCVP ) loop that varies networkimpedances as a function of frequency. The problem is this : The harmonic number "h" is used before itnormally is defined. To rectify this problem, the user must declare redundantly his lowest frequency :

1 2 312345678901234567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

MINIMUM HARMONIC NUMBER MINH

I8

"Subharmonics allowed in HFS" is the title of a story in the July, 2002, newsletter. It provides furtherexplanation of how and why the MHN declaration was added. Prior to the admission of subharmonics, therewas no problem because the power frequency was the minimum frequency. But with subharmonics, this cannot be assumed.

The 19th subcase of BENCHMARK DCNEW-21 illustrates the MHN declaration. Although columns33-40 contain the all-important starting value of 1/3 (indicating 16.67 Hz for the 50-Hz system), this valueis not confirmed in the interpretation. Rather, the limited space is used to explain when the MHN declarationis needed :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Needed if HFS subharmonic h in $PARAMETER block. |MINIMUM HARMONIC NUMBER

II-A-48. Create LISTSIZE.PMC for Parallel Monte Carlo

Parallel Monte Carlo simulation is the only practical use of the MINIMUM TABLE SIZES ( MTS )declaration as first explained in the July, 1995, newsletter. MTS is ignored except during initialization of thecentral statistics file (characterized by a PART:-1 declaration). Then MTS is a request for oneenergization followed by the creation of a LISTSIZE.DAT file that corresponds to minimum sizes. This filewill be created in the CENTRAL STATISTICS FILE (CSF) directory, and will be given the special file

Page 54: CHAP2

2A - 54

type .PMC to recall the usage with parallel Monte Carlo. If present at the time a simulation involvingSHOTS: begins, it is this file rather than LISTSIZE.DAT that will be connected to establish program tablesizes. Although automatically created during initialization, nothing prevents a user from editing the filemanually if he believes he knows more or better than ATP about how to economize on tables. After all,logic of the ATP creation is simple, so an intelligent user almost always can do better. An MTS declarationtakes the form :

1 2 3 12345678901234567890123456789012

43456789012345678

5 6 7 890123456789012345678901234567890

MINIMUM TABLE SIZES MULTIP MEXTRA

I8 I8

Here the two integers are optional. MULTIP is a multiplier in percent (i.e., will be divided by 100 uponinput) whereas MEXTRA is an offset. These two values provide excess table space to account for imperfectestimation of needs. Normally, the user will leave the fields of columns 33-48 blank in which case theprogram will assign default values MULTIP = 4 and MEXTRA = 5. These mean that followingestimation of a minimum list size, this value will be multiplied by 1.04 and then 5 will be added to providea margin of safety.

BENCHMARK DC-66 includes several MTS declarations. Since it is only for PART:-1 use that MTShas meaning, there are two possible and different interpretations :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Create .PMC file using MINHAR, MAXHAR = 4 5 |MINIMUM TABLE SIZESIgnore since not PART:-1 initialize of SHOTS: |MINIMUM TABLE SIZES

II-A-49. Request to Read Miscellaneous Data Cards

The floating-point and integer miscellaneous data cards are described in Section II-B. For a conventionalsimulation, they come after all special requests of the type now being considered. For the normal simulation,this is fine, and there is no need to read miscellaneous data cards elsewhere.

But for special circumstances, the user may want to define one or more of the miscellaneous dataparameters ahead of time, along with other special request cards. This is required for START AGAINusage, for example (see BENCHMARK DC-40 or 49 as an illustration). If such usage is wanted, simplyprecede the usual miscellaneous data cards of Sections II-B and II-C by the special requestMISCELLANEOUS DATA CARDS ( MDC ) as follows :

1 2123456789012345678901234

3 4 5 6 7 856789012345678901234567890123456789012345678901234567890

MISCELLANEOUS DATA CARDS

The user is advised not to do this casually, however. There should be a clear, real, known need asapproved by standard instructions, or as recommended by local Program Maintenance.

Page 55: CHAP2

2A - 55

The interpretation of these data only requires documentation of the request card, since the miscellaneousdata cards (and possible extensions) are interpreted exactly as explained in Sections II-B and II-C. As for theleading card, it is interpreted as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request preceding 2 miscellaneous data cards. |MISCELLANEOUS DATA CARDS

II-A-50. Request for Tricky Mode - Voltage Output of Distributed Line

There are cases where mode voltage rather than phase voltage is desired as the output of a distributedtransmission line. This will generally be for educational usage of one form or another, since the quantitiesin question generally can not be physically measured. Since all distributed-parameter transmission-linemodels (except Noda) use a modal transformation matrix to decouple the multi-conductor equations, themodal quantities are a part of the solution process, and it is just a matter of directing such variables to theoutput vector. With care, the user can request the modal voltage to ground at both ends of one distributed-parameter transmission line. The request has the following form :

1 2 312345678901234567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

MODE VOLTAGE OUTPUT MODOUT

I8

Variable MODOUT (cols. 33-40) is to be keyed with the number of phases or coupled conductors thatare involved. A blank or zero field is defaulted to MODOUT = 3, so it is really only in other cases that thenumerical value need be keyed.

Such modal output is possible for only one transmission line, and that line must be placed at the very endof branches, immediately before the blank card that terminates all branch cards. In addition, the very firstbranch data must consist of extra, high-impedance branches that are connected from each node to ground atboth ends of the line in question. Equal in number to 2 * MODOUT, column 80 of these uncoupled (type-0) series R-L-C branches must be keyed with a "1" so as to request branch current output. Use a resistanceso large that the answer is unaffected.

So much for data input. Following simulation, the user will find his modal voltages in the outputlocations that otherwise would have been reserved for the branch currents just mentioned. This is why thepresent feature is a little tricky. The first MODOUT output currents are in reality modal voltages to localground at the BUS1 end of the line, in natural order; the next MODOUT output currents are mode voltagesto ground at the other end (the BUS2 end) of the line, also in natural order. A reminder message to this effectis printed immediately below the column headings for the output variables, so the user will not forget. Notethat if one is plotting, type-9 plot requests (see Section 1.10) must be used, since the EMTP thinks that themodal voltages are currents in the 2 * MODOUT high-resistance branches that were supplied by the user.

An illustration of this feature is provided by the 2nd subcase of BENCHMARK DC-38. It is from thissolution involving a 3-phase, constant-parameter line that the following interpretation has been extracted :

Page 56: CHAP2

2A - 56

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request for tricky modal output. MODOUT = 3. |MODE VOLTAGE OUTPUT

II-A-51. MODELS Computation Precedes TACS

If both MODELS and TACS are being used in the same data subcase, the default choice is for TACScomputation to be performed first at any time step. This was the decision of MODELS author Dube whenfirst he allowed coexistence of the two alternatives (see the July, 1995, newsletter). But, as explained in theJuly, 2003, newsletter, there are cases where the user might want the MODELS computation to precede theTACS computation. In theory, this can be requested as follows :

1 123456789012345678

3 4 5 6 7 890123456789012345678901234567890123456789012345678901234567890

MODELS BEFORE TACS

The MODELS BEFORE TACS ( MBT ) request can be added to any data, but it will have an effect onlyif both TACS and MODELS are being used. Operation is illustrated by the 4th subcase of BENCHMARKDC-30, from which the following interpretation has been extracted :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Each time step, MODELS computation precedes TACS |MODELS BEFORE TACS

II-A-52. Use MODELS on Extrema Rather Than within the dT Loop

MODELS can be used to post-process the extrema vector rather than for modeling within the time-steploop. This is for time simulation. But MODELS can not be used for both functions as part of the same timesimulation. The user must choose between the two possible uses. The default choice is the original one ofMODELS author Dube: simulation within the time-step loop. If the user wants instead to use MODELS topostprocess, he must declare this intention using this request :

1 2123456789012345678901234

3 4 5 6 7 856789012345678901234567890123456789012345678901234567890

MODELS PROCESSES EXTREMA

Operation first was described in the April, 2001, newsletter. Although the previous paragraph mentionedthe time-step loop for clarity of understanding, a loop over frequency might instead be involved. There is asimilar choice for frequency scans, too. More generally and abstractly, the choice is this: whether or notMODELS is required to form the output vector. In the case of a frequency scan, MODELS originally wasused to form the complex outputs themselves as illustrated by the 3rd subcase of BENCHMARK DC-52. Analternative is to apply MODELS to the output vector after it has been formed. In fact, the newsletter writingbegins with mention of frequency not time: "MODELS can process HARMONIC FREQUENCY SCAN(HFS) solution variables ..." Just as there is an alternative, completely-different use of MODELS for timesimulation, so there is an alternative, completely-different use of MODELS for frequency scans, too.Interpretation might mention time simulation, but only because this is easier to explain in less space.

Page 57: CHAP2

2A - 57

The 9th subcase of BENCHMARK DCNEW-10 illustrates use for a PCVP loop over time simulations.Interpretation is as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Unconventional use outside time step loop only. |MODELS PROCESSES EXTREMA

II-A-53. Halt Execution If an A6 Name Begins with a Blank

NAMES ARE LEFT ADJUSTED ( NALA ) is the way the user declares that none of his A6 namesbegins with a blank byte. Normally, there is no such restriction. But if the user wants protection against aninadvertent leading blank (in effect, a spelling error), he need only issue the declaration :

1 212345678901234567890123

3 4 5 6 7 8456789012345678901234567890123456789012345678901234567890

NAMES ARE LEFT ADJUSTED

Should a leading blank be discovered (should not all names be left-adjusted as intended), programexecution will be terminated with a KILL = 81 error message. BENCHMARK DCNEW-10 illustrates use,with the 2nd subcase illustrating this error termination. Interpretation of the NAMES ARE LEFTADJUSTED declaration involves the confirmation of no parameter. From the solution to BENCHMARKDCNEW-10, it appears as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Halt if 1st byte of a name is found to be blank. |NAMES ARE LEFT ADJUSTED

II-A-54. Halt Execution if an A6 Name Ends with a Blank

NAMES ARE RIGHT ADJUSTED ( NARA ) is the way the user declares that none of his A6 names endswith a blank byte. Normally, there is no such restriction. But if the user wants protection against aninadvertent trailing blank, he need only issue this declaration :

1 2123456789012345678901234

3 4 5 6 7 856789012345678901234567890123456789012345678901234567890

NAMES ARE RIGHT ADJUSTED

Should a trailing blank be discovered (should not all names be right-adjusted as intended), programexecution will be terminated with a KILL = 81 error message. No standard test case illustrates this,however. In the opinion of program developers, left-adjusted names are preferable to right-adjusted names,so use of the present declaration is not encouraged. BENCHMARK DCNEW-10 explains this on acomment card.

Interpretation of the NAMES ARE RIGHT ADJUSTED declaration involves the confirmation of noparameter. It should appear as follows :

Page 58: CHAP2

2A - 58

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Halt if last byte of a name is found to be blank. |NAMES ARE RIGHT ADJUSTED

II-A-55. Calculation of Constant - Parameter [R], [L] Network Equivalent

The calculation of coupled [R], [L] branches to represent parts of the network that are not to bemodeled explicitly is done by a separate supporting program named NETEQV. Instructions for the usage ofthis utility are covered in Section XXIV. To transfer to that separate program, the following special-requestcard is used :

1123456789012345678

2 390123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

NETWORK EQUIVALENT IOFBND

I8

IOFBND of columns 33-40 is optional, and normally will be left blank. If a value is keyed, it is takento be the maximum number of busses that are allowed. If omitted, the EMTP will dimension tables of thesupporting program as large as possible (within available working space of overlay 28 (/C28B01/). Since thesparsity diagram (which shows nonzero terms of the Jacobian) can only be produced if there is extra storage,this diagram will only be seen if a positive IOFBND is keyed, and if this positive value leaves sufficient extraworking space for the sparsity diagram.

Interpretation of the request card confirms the value of IOFBND. An illustration is provided by thesecond subcase of BENCHMARK DC-14 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Constant-R,L generator equivalent. IOFBND = 11. |NETWORK EQUIVALENT, 11,

II-A-56. Redefine the Limits of Program Tables

Disk file LISTSIZE.DAT defines the limits of program tables as execution begins. This is as explainedin Section I-G. However, if the same dimensioning information (VARDIM data) has been declared as partof data of the first subcase of the input data file, it is this latter information that will be used in place ofLISTSIZE.DAT for the initial table sizing. This is for program dimensioning at the very start of the .LISfile (assuming LU6VRT is positive). Such data begins with NEW LIST SIZES ( NLS ) as follows :

112345678901234

2 3 4 5 6 7 8567890123456789012345678901234567890123456789012345678901234567890

NEW LIST SIZES

This is to be followed by the contents of LISTSIZE.DAT as documented in Section I-G. StandardBENCHMARK DC-47 illustrates such use. The output file DC47.LIS then begins as follows (note thevery first line, which is exceptional and characteristic of NLS use ) :

Page 59: CHAP2

2A - 59

Table sizes declared in data. |NEW LIST SIZES List 6 scaled by = 5.00 |NBHDSW 5.0 { Five is the default ... Default multiplier = 2.000 |DEFAULT 2.0 1st card (Lists 1-10). |BLANK Comment card is ignored. |C 0 0 0 0 0 2nd card (Lists 11-20). | 0 0 0 0 0 3rd card (Lists 21-29). | 0 1750 Supplemental offsets. | 240000 742 --- 502 cards of disk file read into card cache cells 1 onward.Alternative Transients Program (ATP), Salford 80386 translation. ...

Later, when special-request cards are interpreted, there will be no trace of NLS and its associated data.These cards already have been displayed (see immediately above). The NLS data have been removed fromregular data in order to replace LISTSIZE.DAT

For small data cases, no user should bother with NLS. But for larger data sets, the use of NLS makesvery good sense, and is encouraged. The burden on program tables does depend on data, so the input datafile is the logical place to store such important statistics. Whereas most standard BENCHMARK DC-XXtest cases can be processed using the usual 3-times-default dimensioning, there are a few exceptions thatrequire more space for at least one table. For these cases (see DC-22 and 47), NLS has been used.

For NLS use, the 2nd or later stacked subcase is fundamentally different from the first. For the 2nd

subcase, NLS data can not replace LISTSIZE.DAT since NLS does not apply to the first subcase. So NLSdata in the 2nd or later subcase must be processed in its natural location and sequence. Interpretation isillustrated by output that begins the solution of the 4th subcase of DC-22 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Marker card preceding new EMTP data case. |BEGIN NEW DATA CASERequest preceding VARDIM input LISTSIZE.DAT |NEW LIST SIZES 1st card (Lists 1-10). | 0 0 68 2nd card (Lists 11-20). | 0 0 4700 3rd card (Lists 21-29). | 0 0 220 Supplemental offsets. | 240000

This will be followed by another heading as execution "begins again" using the revised dimensions. Becauseobviously unused space has been eliminated, a lot of table space has been saved, note : "Total size ofLABCOM tables = 74664 ..." ( compare with 230K for 3-times-default dimensioning ) .

II-A-57. Frequency Dependent Fitting by Taku Noda

Frequency-dependent modeling by Taku Noda first is mentioned in newsletters in the October, 1994,issue. Associated branch data is explained in Section IV-D-5. But how does an interested user obtain dataapplicable to his particular component (typically a section of transmission line or cable)? Dr. Noda has hisown separate fitting program (not part of ATP) that runs on any Wintel PC, and the ATP user can interfacewith it following the request :

11234567890123456

2 78901234

3 4 5 6 7 856789012345678901234567890123456789012345678901234567890

NODA SETUP NODAPR

I8

Page 60: CHAP2

2A - 60

NODAPR (columns 17-24) is a binary switch that controls production printout within LINECONSTANTS or CABLE PARAMETERS (whichever is named by the following data). For productionuse, NODAPR is left blank, which means there will be no printed output. This corresponds to productionoutput of a JMARTI SETUP or SEMLYEN SETUP case : no printout during the frequency scan. Ineffect, normal output is being suppressed just as if $LISTOFF had been used. If the user wants normaloutput during the frequency scan for diagnostic purposes, use value unity (comparable to $LISTON ) .

Use with several different line and cable sections is illustrated by standard BENCHMARK DCNEW-13.Interpretation of the first of these is as follows (note that blank columns 17-24 produced the value zero forNODAPR after erasure of the in-line comment ) :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request for Taku Noda`s ARMA fitter. NODAPR = 0 |NODA SETUP { Requ ...

II-A-58. Display and Manage Central Status File of Parallel STATISTICS

Some program versions and some installations have networking of two or more computers that allowcentral monitoring and control of the parts of a Monte Carlo study that is being simulated in pieces,generally by parallel processing. Reference [52] provides a detailed explanation. Well, access to thesupporting program that displays and manipulates the central status file PARALLEL.LIS is by the request:

1 21234567890123456789012345678

3 4 5 6 7 89012345678901234567890123456789012345678901234567890

OBSERVE PARALLEL MONTE CARLO

Since usage normally is interactive, the KEY request would precede this one, which can be abbreviatedOPMC for quicker keying. The CENTRAL STATISTICS FILE request to name PARALLEL.LIS shouldcome between these two, as the following interpretation from the 5th subcase of BENCHMARK DC-66shows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Name of file for "OBSERVE PARALLEL MONTE CARLO" |CENTRAL STATISTICS FILEFile name:f:\data\parallel.lis |f:\data\parallel.lisMonitor and control parallel "STATISTICS". |OBSERVE PARALLEL MONTE CA

Some computers (e.g., Apollo, Sun, and DEC VAX / VMS ) should have the OPMC code available as aseparate, small supporting program. If so, a common name would be OPMC.EXE Frequent usersprobably will find such an alternative preferable, since a small program is less demanding of computerresources than huge ATP. Also, it allows for computer-dependent extensions to the universal features thatwill be described in Section XIX-B.

Page 61: CHAP2

2A - 61

II-A-59. Convert TACS Data Older Than “M39.” Update of July, 1984

With every passing year, OLD TO NEW TACS has decreasing value. It serves to convert old TACSdata to current TACS data. Here "old" is defined to mean what existed prior to the "M39." update of July,1984. Among other things, this marked the end of blank cards within TACS data to separate different dataclasses (which originally required ordering and segregation). The request for conversion is :

1123456789012345

2 3 4 5 6 7 867890123456789012345678901234567890123456789012345678901234567890

OLD TO NEW TACS

The 2nd subcase of standard BENCHMARK DC-67 demonstrates such use. Interpretation is copied fromthe solution DC67.LIS :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Convert pre-M39 TACS data to new TACS data. |OLD TO NEW TACS

II-A-60. Convert ZnO data of "M36." Vintage ( September, 1983 )

With every passing year, OLD TO NEW ZNO has decreasing value. It serves to convert old zinc-oxide(ZnO) surge arrester modeling to current modeling. Here "old" is "M36." or earlier vintage, which dates toSeptember of 1983. The request is simple enough :

112345678901234

2 3 4 5 6 7 8567890123456789012345678901234567890123456789012345678901234567890

OLD TO NEW ZNO

This special-request card is to be added before the first miscellaneous data card of a data case involvingold ZnO data cards. The EMTP reads such data, and punches (see $PUNCH in Sect. I-D) replacementbranch cards to represent the ZnO arresters. It then will be the user's responsibility to replace the old cardimages with the new ones, using a text editor.

An example of such conversion is provided by the second subcase of standard test case BENCHMARKDC-13. The following illustrative interpretation has been copied from DC13.LIS :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request to convert old ZnO data to new formats. |OLD TO NEW ZNO

II-A-61. Request for Omission of Base Case of STATISTICS Simulation

The conventional STATISTICS or SYSTEMATIC data case involves a base case simulation beforeany of the NENERG (integer miscellaneous data parameter; see Section II-B) energizations are performed.This is a preliminary shot, right down the middle, with all of the variances set to zero. Well, the user canomit this extra, preliminary simulation by a special request card reading :

Page 62: CHAP2

2A - 62

112345678901234

2 3 4 5 6 7 8567890123456789012345678901234567890123456789012345678901234567890

OMIT BASE CASE

Resulting statistical tabulations are unaffected, since the base case simulation was not part of thestatistical processing, anyway. So, if the user already knows how the base case solution looks, he can savethe computation of one shot as well as the associated printed output.

Examples of such usage are provided in standard test cases BENCHMARK DC-16, 24, and 66. Thefollowing fixed interpretation can be seen in any of the associated solutions :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Omit base case if STATISTICS/SYSTEMATIC usage. |OMIT BASE CASE

II-A-62. Request That Any Table Dumping or Restoring Be Partial

The concept of partial table dumping was introduced in the January, 1999, newsletter (see a story entitled"Partial table dumping"). Partial Table Dumping is an extension to Turbo Table Dumping by Robert Schultzof the New York City area. For background on Schultz's quantum leap forward, see newsletters beginningwith the October, 1993, issue. Partial or selective table dumping began 12 October 1998 when MODELStables were the first to be ignored for any data case that involved no MODELS usage. This was quicklyfollowed by the addition of logic for TACS, the U.M., etc. Partial table dumping prohibits the applicationof Schultz's logic to those portions of ATP tables that are known not to be in use.

For now (October, 2002), partial table dumping can be enabled by the average user only by means of thefollowing request :

1 2 123456789012345678901

3 4 5 6 7 823456789012345678901234567890123456789012345678901234567890

PARTIAL TABLE DUMPING

For now, the user is being forced to declare explicitly his desire for partial table dumping. This is toprevent unintended use until associated logic has been proven to be bulletproof by numerous experienced andserious users. Later, if and when usage might be understood by various experts to be extremely reliable, theneed for explicit declaration might be removed.

Testing of partial dumping logic occurs regularly following an easy, special modification to code.Program developers will rename disk file TAPSAV.NEW to TAPSAV.PUM and then perform a minorupdate (UP PUM). Next, TSTALL of STARTUP is changed to some negative value such as -0.3 to dump,zero, and restore tables 30% of the way through any simulation. The value of TSTALL should not affectthe answer as long as it is in the interval (-1, 0). Finally, RUN.BAT next will verify every single standardsimulation example without any change to data. This is so easy, and so exhaustive (if not 100% rigorous),there seems to be little need for explicit testing among the family of standard test cases. Only DC-16contains the PARTIAL TABLE DUMPING declaration, and the following interpretation is taken from thesolution DC16.LIS :

Page 63: CHAP2

2A - 63

C 1 2 3 4 5 6 7 C 34567890123456789012345678901234567890123456789012345678901234567890123456 C ------------------------------------------------|------------------------- Faster STATISTICS, SYSTEMATIC, and START AGAIN. |PARTIAL TABLE DUMPING

II-A-63. Request for Peak Voltage of Simulation

The user may be interested in peak node voltage, or in peak linear branch voltage, or both, without beingconcerned about the location in the network where this will occur. If so, there exists the paper-savingalternative that avoids voltage output for all nodes or branches :

1 2 312345678901234567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

PEAK VOLTAGE MONITOR MAXVLT

I8

Variable MAXVLT chooses the type of voltages being monitored : 1 --- for node voltages only ; 2 --- for linear branch voltages only ; 3 --- for both node voltages and also linear branch voltages.

Zero or blank will be interpreted as unity (a request for the peak of node voltages only). This is therequest. Later, at the end of the simulation, before the usual peak-value printout for the output vector, willbe generated the requested output or outputs.

For the monitoring of node voltages (MAXVLT = 0 or 1), one line will give the node name, the time ofthe peak, and the value of the overall peak. The following is an illustration taken from the first subcase ofBENCHMARK DC-7 : Overall simulation peak node voltage = 5.69470365E+05 occurred at bus "TRANB " at time (sec) = 1.17000000E-02 For 132-column output, this will be a single line, of course (it has here been split in two for ease ofpresentation only). The printed value at the end is the peak of all node voltages in volts, not the peak of allnode voltages in per unit. If the problem has transformers that change the nominal voltage level, there is noeasy way of spotting peaks of per unit voltage that might occur on the low voltage side. So, usage issomewhat specialized, and it requires caution.

For the case of MAXVLT = 2 or 3, there will be output for the peak branch voltage as follows (fromthe second subcase of BENCHMARK DC-7 ) : Overall simulation peak branch voltage = 5.66276224E+01 occurred at linear branch number 3, which connects node "TRAN " to " ". The time [sec] = 0.00000000E+00

Illustrative use can be found in standard test cases BENCHMARK DC-7, 61, and 62. The followingillustration of interpretation was taken from the solution to the second subcase of BENCHMARK DC-7 :

C 1 2 3 4 5 6 7 C 34567890123456789012345678901234567890123456789012345678901234567890123456 C ------------------------------------------------|------------------------- Output global peak voltage of network. 3 |PEAK VOLTAGE MONITOR, 3,

Page 64: CHAP2

2A - 64

II-A-64. Pocket Calculator Controls Loop over Solutions

POCKET CALCULATOR VARIES PARAMETERS ( PCVP ) is a request for use of the pocketcalculator to either add a loop, or control an existing loop, over solutions. During the loop, typically somedata parameter or parameters will be varied by the pocket calculator via a $PARAMETER block (a separatesubject of Section I-D). The PCVP request involves 3 integer control parameters as follows :

1 2 3 41234567890123456789012345678901234567890 12345678

595123456

678901234

7 85678901234567890

POCKET CALCULATOR VARIES PARAMETERS MAXKNT IOPCVP NOSTAT

I8 I8 I8

MAXKNT (cols. 41-48) gives the number of times the loop over solutions is to be traversed. Yet, this isjust backup information that will be preempted (or superceded or overridden) by a better, separate control.For example, MAXKNT is ignored in the case of either FREQUENCY SCAN ( FS ) or HARMONICFREQUENCY SCAN ( HFS ) because each of these declarations already controls the loop over frequencyin more sophisticated fashion using starting and ending frequencies. When not needed, typically MAXKNTis given the obviously-wrong value of unity to emphasize that the value is being ignored. Any value that isnot positive will be converted to the default value of unity because a positive value is required by code thatsupports PCVP.

IOPCVP (cols. 49-56) controls printout within the loop over solutions. Value zero will avoid suppression,resulting in complete output during all passes. This is useful during testing that severely limits the numberof passes. But for a large number of passes, the extra output generally is wasteful, and might be confusing.Just as a STATISTICS or SYSTEMATIC loop generally suppresses normal output other than extrema, soproduction use of PCVP generally will. For positive IOPCVP, output is suppressed after the first pass. Thefollowing summary, copied from the output of DCNEW-25, explains the transition as follows: IOPCVP> 0 means that normal output is about to be suppressed as the 2nd shot begins. At most, extrema andparameters will be seen (this would be for value 1). Value 2 will suppress parameters of the next shot. Value3 also will suppress extrema, leaving just the single line showing KNT and MAXKNT.

NOSTAT (cols. 57-64) is a binary switch that controls the use of extrema for statistical tabulation. Valueunity will suppress statistical tabulation (i.e., "no statistics") whereas value zero or blank will not. But forany frequency scan, there is no statistical tabulation, so the value is immaterial in these case (e.g., for FS orHFS use).

An explanation of possible uses is complicated by the fact that there are 3 fundamentally different typesof loops over solutions :

1) Loop over time simulations. An example would be a Monte Carlo study. Yes, flexible PCVP canbe used as an alternative to limited and rigid STATISTICS, although care is required. Alternatively, somenormally-constant parameters of the network (e.g., values of a filter) might be varied. This commonly wouldbe referred to as a parameter-variation study. DCNEW-25 provides illustrations.

2) Loop over phasor solutions. Here steady-state frequency is an important controlling variable,typically. There will be a frequency scan --- possibly (but not necessarily) in conjunction with older andseparate FREQUENCY SCAN ( FS ) or HARMONIC FREQUENCY SCAN ( HFS ) declarations. Simplenetwork parameters may be varied as the loop is traversed. DCNEW-26 provides illustrations.

Page 65: CHAP2

2A - 65

3) Loop over some supporting program. An example would be a loop over conductor height orground resistivity for an overhead transmission line within the LINE CONSTANTS calculation. DC-59provides illustrations.

Before attempting to create his own data involving PCVP, a user is encouraged to study input data andresulting output of the standard test cases previously mentioned.

Theory and evolution of PCVP use was summarized in newsletters beginning with the October, 1998,issue. A search for the 4-letter acronym should always be adequate for published writing because the longform is simply too demanding of space with proportional fonts. Not so for data (the long form is usedexclusively in standard test cases).

The interpretation of the PCVP request card confirms just the first two of the 3 integer parameters. Toillustrate, consider the 10th subcase of BENCHMARK DC-59 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Build loop around $PARAMETER changes. 3 0 |POCKET CALCULATOR VARI ...

II-A-65. Request to Postprocess .PL4 Plot File Using TACS or MODELS

POSTPROCESS PLOT FILE ( PPF ) is the declaration that either TACS or MODELS will be used topostprocess a .PL4 plot file. The user first connects the old plot file (input to the post processor) to I/O unitnumber LUNIT2 using $OPEN. For an example (which may be installation-dependent), seeBENCHMARK DC-46. If TACS, variables of the plot file will be assigned to user-defined TACS sourcesin natural order by ATP, thereby providing the connection for postprocessing by the user. If MODELS,signals will be connected as defined by a special INPUT statement. This is the ATP response to therequest :

1 2 312345678901234567890123456789012

434567890 12345678

590123456

6 7 8789012345678901234567890

POSTPROCESS PLOT FILE IPLOT LUNPPF L63TYP

I8 I8 I8

IPLOT (columns 33-40) is an integer indicating frequency of the output. There is similarity to themiscellaneous data parameter of the same name. For example, if IPLOT = 3 is used, then only every thirdpoint of the old plot file will be used for input, and output will have this same frequency, of course. Themost common (and least tricky) case uses IPLOT = 1, so that there are as many output points as there areinput points. Note that IPLOT > 1 requires a multiplied time step DELTAT, too.

LUNPPF (columns 41-48) is the number of the I/O unit to which the input .PL4 file is to be connected.Any non-positive value (including blank) will be given default value 63, which usually is satisfactory.

L63TYP (columns 49-56) is an integer code indicating .PL4 file type. There are four choices: 1) valueunity indicates UNFORMATTED; 2) value two indicates FORMATTED; 3) value three indicatesconventional C-like; and 4) value four indicates Pisa-format C-like.

Page 66: CHAP2

2A - 66

The data case is completed by cards for a TACS-only or MODELS-only data case. Yes, an electricnetwork could follow, and the 2nd subcase of DC-46 illustrates this. But the control system modeling is allthat is required. Consider TACS first. Generally, there should be as many TACS sources as there arevariables in the old data file, with 6-character names being arbitrary. In the order defined, these areautomatically (internally) connected to variables of the old plot file. Most post-processing will involveTACS supplemental variables, although function blocks also are useful ( e.g., 1 / s for the integration ofsome voltage to produce flux). That was for TACS. MODELS is substantially different. Instead of TACSsources, an INPUT statement defines each name followed by {PL4(K)} where K is an integer giving theposition of the variable in the disk file (e.g., 1 for the first, 2 for the second, etc.). For an illustration, see the3rd subcase of DC-46 which does using MODELS what the preceding two subcases do using TACS.

The interpretation of the request card confirms the user-keyed frequency IPLOT, of course. This isillustrated by the following line from the solution to the first subcase of BENCHMARK DC-46 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Postprocess with frequency IPLOT = 2. |POSTPROCESS PLOT FILE

II-A-66. Redefinition of Synchronous Power Frequency STATFR

POWER FREQUENCY ( PF ) is the declaration that the synchronous power frequency STATFR is to beredefined. The initial value of STATFR is defined arbitrarily in the STARTUP file, of course. But it is notconvenient to alter such a critical value for occasional foreign data cases that might deviate from the localfrequency. In the case of stacked data cases, it is even conceivable that different values would be requiredwithin the same disk file. So, at the beginning of each new data case, the user has the ability to alter theassumed power frequency by means of a request such as :

1123456789012345

2 367890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

POWER FREQUENCY STATFR

E8.0

Variable STATFR of columns 33-40 is the synchronous power system frequency in Hertz. Without sucha declaration, this will normally be either 50 Hz or 60 Hz, depending upon content of the STARTUP file(which defines the variable at the start of execution ) .

The interpretation of the request card confirms the user-keyed frequency STATFR, of course. This isillustrated by the following line from the solution to BENCHMARK DC-26 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------New power frequency STATFR = 5.00000000E+01 Hz. |POWER FREQUENCY, 50.0,

Page 67: CHAP2

2A - 67

II-A-67. Request to Change the Width and Spacing of dT Loop Printout

A PRINTED NUMBER WIDTH (PNW) request will format the dominant printout of the time-step loop.This involves the step number, time, and variable values, and it occurs at frequency IOUT (miscellaneousdata parameter of Section II-B). Although spacing of the step number and the time are fixed, all followingnumbers will be of uniform width and intercolumn separation as determined by variables KOLWID andKOLSEP of the STARTUP file. Such formatting is important enough, however, that it also has been placedunder user control at the beginning of each data case. The optional request in data is :

1 212345678901234567890

3123456789012

434567890 12345678

5 6 7 890123456789012345678901234567890

PRINTED NUMBER WIDTH KOLWID KOLSEP

I8 I8

KOLWID (cols. 33-40) is the total column width in characters, including blanks that separate columns.KOLSEP (cols. 41-48) is the number of blank characters separating nonblank numbers.

The interpretation of the request card confirms the two user-keyed integers KOLWID and KOLSEP, ofcourse. This is illustrated by the following line from the solution to BENCHMARK DC-26 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Width of time-step loop numbers. W=13 S=2 |PRINTED NUMBER WIDTH, 13,

II-A-68. Initialization of Random Number Generator of STATISTICS

A single floating-point number is required to initialize the random number generator of Monte Carlo("STATISTICS") studies as well as other uses (TACS, SPY APPEND, the pocket calculator, andMODELS). The experienced user can define this seed, SEEDRN, using a RANDOM NUMBERGENERATOR SEED ( RNGS ) request as follows :

1 2 312345678901234567890123456789012

4 5345678901234567890123456

6 7 8789012345678901234567890

RANDOM NUMBER GENERATOR SEED SEEDRN

E24.0

Installation-dependent complications are possible although not yet an important issue as this paragraph isreviewed during November of 2002. As long as all computers involve 32-bit integers, 24 bytes of decimalprecision should be adequate to seed the 32-bit number-generating algorithm, which dates to the mid-'80s.The user is forewarned, however, that an upgrade would be appropriate upon use of a computer and PC thatuses 64-bit integers. Using 64 bits, repetition should be practically impossible. But a change to the code ofRANDNZ will be required.

Although not yet illustrated by any standard test case, interpretation is as shown below. Note that thisoutput confirms the seed within 11 decimal digits (generally inadequate; a 64-bit variable for SEEDRNallows 16 or 17 decimal digits ) :

Page 68: CHAP2

2A - 68

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Store new dice seed SEEDRN = .74280517926 |RANDOM NUMBER GENERATO ...

II-A-69. Position .PL4 Plot File on LUNIT4 Ready for 1st Time Step

Special positioning is required if new simulation numbers are to be written immediately followingexisting header information of an old .PL4 plot file that is either UNFORMATTED or FORMATTED innature. Note that the newer and more efficient C-like alternatives require no such request. Assuming that anUNFORMATTED or FORMATTED plot file already is connected to I/O unit number LUNIT4 (variabledefined by STARTUP), the user request for positioning ready for the dT loop is :

1123456789012345

2 3 4 5 6 7 867890123456789012345678901234567890123456789012345678901234567890

READ PL4 HEADER

The usual application will involve START AGAIN which otherwise would create a plot file without theheader information that is needed for later plotting. By means of the READ PL4 HEADER (RPH) request,a complete, self-contained plot file can be produced by the START AGAIN simulation. An example canbe found in the 4th subcase of BENCHMARK DC-40, which uses the header produced by the 2nd subcase ofBENCHMARK DC-24. Note that no plot points from the first simulation will be preserved, however.Illustrative interpretation comes from the solution to BENCHMARK DC-40 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------REWIND LUNIT4 plot file, then read the header. |READ PL4 HEADER

Historical note: READ PL4 HEADER was devised for sequential .PL4 files. These came first (themiddle '80s). For sequential files, special code to position the file is very important. Although practical useinvolved UNFORMATTED files, the FORMATTED case should be comparable (although it is little usedbecause of larger file size and slower I/O). Later introduction of C-like files made the positioning trivial, anddid away with the need for READ PL4 HEADER. Today (November, 2002), the alternativeSTATUS=OVERLAY on the $OPEN card should perform the same function for C-like data.BENCHMARK DC-40 for Salford EMTP shows that the READ PL4 HEADER declaration has beenremoved by commenting. An in-line comment explains that it "messes up C-like usage of PL4."

II-A-70. Request for Relative Allocation of Total TACS Storage

Before using RELATIVE TACS DIMENSIONS ( RTD ), understand the preceding ABSOLUTE TACSDIMENSIONS ( ATD ), which provides the more common way to allocate use of the total TACS storage.Also realize that relative TACS dimensioning is not supported by any F95 ATP version, for which it has nomeaning because total TACS storage is not defined.

The second way to allocate total TACS storage is with a request for relative sizing. That is, rather thanrequest a specific number of function blocks, supplemental variables, etc., the user can simply request a

Page 69: CHAP2

2A - 69

proportional allocation (e.g., 5% of the total storage for function blocks, etc.). The special-request card is tobe followed by one data card bearing the 9 proportions, which will be read as 9I8 data :

1 2123456789012345678901234

3 4 5 6 7 856789012345678901234567890123456789012345678901234567890

RELATIVE TACS DIMENSIONS

12345678 190123456

278901234

356789012

434567890 12345678

590123456

678901234

756789012

8234567890

K1 K2 K3 K4 K5 K6 K7 K8 K9

I8 I8 I8 I8 I8 I8 I8 I8 I8

In theory, this is simple enough. But one practical problem with this second alternative for sizing TACStables is this: the user has no intuitive feeling for the relative space that is occupied by the different tables.To aid the user, the following is an approximate correspondence between nominal (default) absolutedimensions and the proportions that produced them :

Absolute size 20 90 100 20 30 250 300 60 4

Relative size 11 15 7 7 3 8 21 28 1

This applies to translations having integers that are half as long as floating-point variables. Note that theINTEGER*4 and REAL*8 storage in common use today (November, 2002) satisfies this condition.Proportions would be a little different for computers that store floating-point variables in words of the samelength as integers. This might be an issue soon, with 64-bit microprocessors on the horizon.

RELATIVE TACS DIMENSIONS was added to the 6th subcase of BENCHMARK DC-21 on 10November 2002 simply for completeness. It does not change the output significantly, and is ignored by F95ATP (e.g., Lahey) use. In any case, interpretation will be illustrated using the following output. Note thatvalues of just the first 3 of the 9 input numbers are confirmed :

1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request to define TACS allocation proportions. |RELATIVE TACS DIMENSIONSTACS proportions. 1.10E+01 1.50E+01 7.00E+00 | 11 15 7

II-A-71. Ignore Mutual Coupling During Node Renumbering

RENUMBER WITHOUT COUPLING ( RWC ) was introduced to speed execution using data thatinvolve extremely large numbers of coupled conductors. Use first was described in the January, 1999,newsletter. For anything close to the 400 coupled coils that have been used for internal transformermodeling, renumbering of network nodes may pose a sizable bottleneck. Yet, the burden of renumbering iseasily bypassed, and the resulting simulation speed might not be noticeably affected. To avoid noderenumbering (which means that nodes will be numbered in the order they are encountered during data input),use the declaration :

Page 70: CHAP2

2A - 70

1 21234567890123456789012345

3 4 5 6 7 86789012345678901234567890123456789012345678901234567890

RENUMBER WITHOUT COUPLING

Use is illustrated by the 5th subcase of standard BENCHMARK DC-5. The following interpretation istaken from this solution :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Ignore coil coupling for transient renumbering. |RENUMBER WITHOUT COUPLING

Of course, data of DC-5 is far too small for such use to be practical. It is an illustration only. Just 3 timesteps are simulated, but these are enough to show that the solution is unaffected (compare with the solutionof the 1st subcase). Curiously, RWC actually saved memory, so presumably also accelerated the simulationslightly. From case summary statistics following the simulation, it will be seen that List 5 use decreasedfrom 39 cells for the 1st subcase to 38 for the 5th. One fewer factor of triangularized [Y] seems to haveresulted.

II-A-72. Make the Random Number Generator Predictable

REPEATABLE RANDOM NUMBERS ( RRN ) is used to seed the random number generator of ATPso that each execution will produce the same sequence of numbers. Use first was described in the October,1998, newsletter. This English-language request and its companion TRULY RANDOM NUMBERS( TRN ) control the same variable NSEED as the column-80 punch of the STATISTICS miscellaneous datacard. But there are needs for random numbers that do not involve STATISTICS switches, so RRM ismore general, and is important in its own right. Should an RRN request be part of a STATISTICS datacase, RRN will override (take precedence over) the later numeric specification of NSEED in column 80.

Illustrations of the REPEATABLE RANDOM NUMBERS request can be found in standardBENCHMARK DC-24 and 68. The format is simple enough :

1 21234567890123456789012345

3 4 5 6 7 86789012345678901234567890123456789012345678901234567890

REPEATABLE RANDOM NUMBERS

Interpretation requires no explanation since no parameter requires confirmation. The following can befound in either DC24.LIS or DC68.LIS :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Constant seed in random number generator. |REPEATABLE RANDOM NUMBERS

II-A-73. REPLOT for Batch - Mode Plotting of Connected .PL4 File

REPLOT ( R ) is for batch-mode plotting of a previous simulation. If miscellaneous data parameterICAT was equal to 1 or 2, then the plot data points of the previous simulation were saved on disk as a

Page 71: CHAP2

2A - 71

permanent file. Should the user now (at some later time) wish to perform batch-mode plotting of this data,he must do two things. First, he must connect the file of raw data points of I/O channel LUNIT4 using$OPEN (see Section I-D). Second and finally, he must transfer control to batch-mode plotting by means ofthe following request :

123456 1 2 3 4 5 6 7 878901234567890123456789012345678901234567890123456789012345678901234567890

REPLOT

As an example of such usage, see the standard test case BENCHMARK DC-54 for the computer ofinterest. Remember that the $OPEN card is installation-dependent, in general (which is why therecommendation is "for the computer of interest"). As for interpretation, this is as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request to attach and plot disk file of old data. |REPLOT

II-A-74. Convert RMS V - I Saturation Characteristic to Instantaneous B - H

The calculation of instantaneous B-H characteristics for use with Type-92 or Type-98 nonlinearreactors is not trivial, sometimes. If the user has only a curve of RMS values for voltage and current, theseparate supporting program named SATURA can profitably be used. Instructions for the usage of thisutility are covered in Section XIX-G. To transfer to this separate program, the following special-requestcard is used :

11234567890

2 3 4 5 6 7 81234567890123456789012345678901234567890123456789012345678901234567890

SATURATION

For an example of such usage, see BENCHMARK DC-13. It is from the solution to this case that thefollowing interpretation was drawn :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request for magnetic saturation computation. |SATURATION

II-A-75. Model Overhead Line by 2nd Order Recursive Convolution

SEMLYEN SETUP ( SS ) is the request for a supporting program to model a transmission circuit usingsecond order recursive convolution as first advocated by Prof. Adam Semlyen of the University of Torontoin Ontario, Canada. This was the first multi-phase, untransposed, frequency-dependent model in EMTP. Itdates to the mid-‘70s. If used with care, it probably leads to the fastest smooth simulation of an overheadline. But the fixed, low order means that proper fitting is demanding. By the mid-'80s, use had been largelysuperceded by the newer, higher-order, and easier-to-use JMARTI SETUP (see a preceding subsection).

Page 72: CHAP2

2A - 72

In order to represent overhead transmission lines with frequency-dependent parameters and a constanttransformation matrix as required by Section IV-D-4, recourse is made to a separate supporting program.Instructions for the usage of this separate program are contained in Section XXII. The transfer to thissupporting program is accomplished by the following request :

11234567890123

2 3 4 5 6 7 84567890123456789012345678901234567890123456789012345678901234567890

SEMLYEN SETUP

For examples of such usage, see BENCHMARK DC-29 and 60. It is from any solution to this data thatthe following fixed interpretation was drawn :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------2nd-order frequency-dependent line modeling. |SEMLYEN SETUP

II-A-76. Terminate Simulation at Time dT if COMPILED TACS MAKE

The SINGLE STEP IF MAKE ( SSIM ) declaration has no meaning in the absence of compiled TACS,which simulates faster because dedicated FORTRAN is used to represent the user's TACS modeling. TheFORTRAN in question will be created during the first step of simulation that involves TACS if COMPILEDTACS MAKE has been requested. Of course, normally a simulation would involve many time steps. Butif a user wants nothing other than the FORTRAN to represent his TACS model, he can halt after one timestep. This is the effect of SINGLE STEP IF MAKE ( SSIM ) . With an SSIM declaration, the user does notneed to change ending time T-max on the floating-point miscellaneous data card. The format is :

1 1234567890123456789

2 3 4 5 6 7 80123456789012345678901234567890123456789012345678901234567890

SINGLE STEP IF MAKE

An example of such use can be found in the 6th subcase of standard BENCHMARK DCNEW-25. It isfrom the associated solution DCN25.LIS that the following interpretation was drawn :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Halt after single step, if MAKE of compiled TACS. |SINGLE STEP IF MAKE

II-A-77. Type - 93 Reactor Converted to Hyperbolic Tangent

SMOOTH SATURATION USING TANH ( SSUT ) is a request to convert reactor data from onenonlinear ATP model to another — from the piecewise-linear Type-93 saturable reactor of Section V-Iinto the smooth hyperbolic tangent function TANH of Section V-K. Orlando Hevia of UTN in Santa Fe,Argentina, provided a separate fitting program SFTANH to provide this service (see Section XIX-L), andSSUT connects with this fitter as first described in the January, 1998, newsletter.

Page 73: CHAP2

2A - 73

Access to Orlando Hevia's separate fitting program requires a request that includes three optional numericparameters. The format is as follows :

1 2 312345678901234567890123456789012

4 34567890 12345678

590123456

6 7 8789012345678901234567890

SMOOTH SATURATION USING TANH ITMAX KPL DXL2

I8 I8 E8.0

ITMAX (columns 33-40) is an iteration limit for the fitter's optimization. Any blank or non-positivevalue will be internally converted to the default value of 3000.

KPL (columns 41-48) is the number of steps used to vary the current numerically from zero to the peakvalue of interest. Any blank or non-positive value will be internally converted to the default value of 50.

DXL2 (columns 49-56) is a radius in inches for the associated batch-mode graphics. These rely uponCALCOMP PLOT graphics. Any blank or non-positive value will be internally converted to the defaultvalue of 0.05 which means that data points will be marked with squares having 1/10 of an inch on each side.Note that the largest circle contained within this square has a radius of .05 inches (hence use of the termradius).

Use is illustrated by the 6th subcase of standard BENCHMARK DC-13 and this includes screen graphicsfor those program versions that support batch-mode plotting of CALCOMP PLOT. In addition to the screengraphics, the user has the HP-GL, PostScript, and GNUPLOT alternatives. Unfortunately, interpretation ofthe request does not confirm any of the input parameters, which were an afterthought. The interpretationis independent of input data as follows : C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Fit piecewise-linear saturation with smooth TANH. |SMOOTH SATURATION USIN ...

II-A-78. Find Standler Parameters for a Type - 15 Source

The Type-15 source is for surge functions of the electric network. One of the later extensions to simpleexponentials is the Standler surge function as first described in the January, 2001, newsletter. The questionis, for a given surge function, what are the 3 associated Standler parameters? A fitter to produce these, waswritten by Orlando Hevia of UTN in Santa Fe, Argentina. Transfer to this supporting program STANDL isthe result of the request :

1 212345678901234567890123

3 4 5 6 7 8456789012345678901234567890123456789012345678901234567890

STANDLER SURGE FUNCTION

Associated batch-mode graphics will display the resulting Standler surge function on the screen. SinceCALCOMP PLOT graphics are used for this, the HP-GL, PostScript, and GNUPLOT alternatives alsoshould be available ( see NOHPGL, NOPOST, and NOGNU parameters within STARTUP ) .

Page 74: CHAP2

2A - 74

An illustration can be found in the 9th subcase of standard BENCHMARK DC-13. Interpretation of thetransfer has been drawn from the associated .LIS file :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Orlando Hevia fits params for Type-15 Standler. |STANDLER SURGE FUNCTION

II-A-79. Request to Restart a Halted Simulation : START AGAIN

Integer miscellaneous data parameter MEMSAV will result in the dumping of EMTP memory onto diskat the conclusion of a simulation. For a single, deterministic simulation, this will be at the ending time of thesimulation, t = Tmax. For a Monte Carlo (STATISTICS) study, this will be upon the completion of thefinal energization number NENERG. Such a simulation can be restarted at any later time by means of thefollowing initial request :

112345678901

2 3 4 5 6 7 81234567890123456789012345678901234567890123456789012345678901234567890

START AGAIN

Actually, this is only the request to load tables from the disk file that already has been connected to I/Ounit number LUNIT2 by means of a $OPEN request (see Section I-D). For an example of such usage, seeBENCHMARK DC-40 for the computer of interest (due to installation-dependence of the $OPEN card). Ifintegrity of the disk file that stores EMTP tables is important, a copy of the original file should be used, inorder to prevent accidental destruction. At the present time, there is no READ-only insurance for anyconnected file.

As the hibernating simulation is awakened, certain parameters can be changed, should the user desire this.The START AGAIN request is to be followed by an arbitrary number of cards that redefine switch andTACS source parameters, one card per component or quantity that is to be changed. The last of these isterminated by a "9999"-card (keyed in columns 5-8) :

$OPEN, (etc. for control parameters)START AGAINOne card for each switch or TACS source that is to be changed 9999

There are five alternatives for the format of the cards that change the parameters of switches or TACSsources. These alternatives follow :

12345678 1 29012345678901234

3 45678901234567890

5 6 7 81234567890123456789012345678901234567890

J T-close T-open

I8 E16.0 E16.0

1) Cols. 55-60 left blank means that a special, dedicated input structure for a switch is assumed. In theabove format, "J" is the switch number, in order of data input. The switch opening time T-open will beredefined only if columns 25-40 are keyed with a positive number. More commonly, it is the closingtime T-close that will be altered, for switches that are open at the end of the preceding, discontinued

Page 75: CHAP2

2A - 75

simulation. Columns 9-24 are always read, and T-close is always redefined (blank is interpreted as arequest for zero closing time).

2) Cols. 55-60 keyed with "1111." means that the data card is a TACS source card, with its usual format(except for cols. 55-60). Any blank field of such a TACS source card will result in no change to theassociated source parameter. I.e., the user need key only those parameters that he actually wants to alter.

3) Cols. 55-60 keyed with "2222." means that the data card is a switch card, with its usual format (exceptfor cols. 55-60). Any blank field of such a switch card will result in no change to the associatedparameter. I.e., the user need key only those parameters that he actually wants to alter.

4) Cols. 55-60 keyed with "-1111." ---- like 2), except that all data fields are read. Here, blanks meanzeroes.

5) Cols. 55-60 keyed with "-2222." ---- like 3), except that all data fields are read. Here, blanks meanzeroes.

Following the "9999" terminator (keyed in columns 5-8) that ends such change cards, the ending timeTMAX can be altered by means of a MISCELLANEOUS DATA CARDS request (see a precedingsubsection). Then a TIME STEP LOOP request (see a later subsection) actually transfers control to thetime-step loop, to continue the suspended simulation.

A few additional points might be passed along as well. Between the MISCELLANEOUS DATACARDS and the TIME STEP LOOP requests, the user is able to place any other special requests that mightbe appropriate. The most commonly used is CHANGE PRINTOUT FREQUENCY to alter the frequencyof the time-step loop printout. If this is done, remember that step numbers begin where the previous haltedsimulation left off (e.g., for TMAX = 50 msec and DELTAT = 100 microsec, the first printed step wouldbe for number 500). The user should be aware that, although all requests might be accepted by ATP, someof the more complex ones can not possibly be honored in practice. A good illustration is FREQUENCYSCAN (see a preceding subsection). There is no way a hibernating simulation of the time-step loop possiblycould be awakened and re-directed to perform a series of phasor solutions (which is what the use ofFREQUENCY SCAN would imply)! Yet this is simple and obvious. More insidious are requests thatwould simply make erroneous or inconsistent certain parameters or controls of the restarted simulation. Anexample of such a potential disaster is provided by use of the ABSOLUTE TACS DIMENSIONS request(see a preceding subsection). Use of this feature would alter the pointers to the TACS tables, withoutchanging the tables themselves (which are already built), leading to "garbage out," and most likely anoperating system interrupt of some sort. Hence the user is warned to be both intelligent and skeptical aboutany such usage; if there are some added hidden benefits, there also are some very real limits, and somehidden traps. Be cautious!

Several different input data card interpretations can be involved with the just described data. Thebeginning and the ending of these are fixed, and are illustrated by the following two lines fromBENCHMARK DC-40 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Continuation of partial previous simulation. |START AGAINTerminator for modified switching times. | 9999

Page 76: CHAP2

2A - 76

In between these two, it is possible to have several different structures, of which the most common is thatfor altered switch closing time (alternative 1 above). Interpretation for this case confirms the three inputparameters, as the following line from the solution of BENCHMARK DC-49 illustrates :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Altered switch. 1 1.1990E-02 0.0000E+00 | 1 .011990

So much for single simulations. Monte Carlo studies, too, can involve START AGAIN. In this case,there are additional alternatives. To the right of the basic declaration, there can be as many as 15 integernumbers ( K1, K2, etc.) :

1 212345678901 ... 0 1234 5678

39012 3456

47890 1234 5678

59012 3456

67890 1234 5678

79012

3456

87890

START AGAIN K1 K2 K3 K4 K5 K6 K7 K8 K9 K10 K11 K12 K13 K14 K15

I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4

These are the indices of already-simulated energizations that are to be ignored as the Monte Carlo studyis restarted. Most commonly there will be no such numbers, of course, meaning that all previousenergizations will be used. As an illustration, see the first subcase of BENCHMARK DC-40. The secondand third subcase of this same file ignore one of the 3 preceding simulations by means of nonzero K1.Nonzero integers must be in increasing order, and no fields can be skipped (the first blank or zero willterminate such declarations ) .

If K15 (columns 77-80) of the preceding paragraph is keyed with the special value -888, then the seedof the random number generator RANDNZ will be reinitialized to the value that existed at the start (notat the end!) of the last preceding energization. This allows a repeat of the last (generally incomplete, forsuch usage) energization of the preceding execution. It is useful when something went wrong and executionwas terminated abnormally by ATP with some "KILL =" message. The most common usage is for cases ofnon-convergence of the Newton iteration for ZnO surge arresters (see Section V-E ) . Convergence isunpredictable, and the difficulty is different for each energization due to the different switching times, whichgive rise to different transients. Eventually there may be an energization that is aborted with an errortermination KILL = 212. Whereas the troubled energization could be ignored completely (it will not be apart of the history that is saved in MEMSAV tables), the intelligent or sophisticated user probably will wantto go back with a subsequent execution and exactly repeat the switching times that caused the trouble. Thetroubled energization might be made to converge by better control of the Newton iteration (see ZINCOXIDE of a later subsection), in which case the continuation will be continuous, without any reinitializationof the random number generator. This may be desired or required for some reason. Another reason to repeatan abortive energization is to study it further via additional printout and/or plotting. Such post-mortemexamination is possible only if switching times can be duplicated exactly, and the flag K15 = -888 allowsthis. Note that value "-888" is not a legal energization number, so there is no confusion with the regularmeaning of K15.

Monte Carlo studies can combine the history of more than one preceding simulation, too. The first usesSTART AGAIN as just described. Immediately after this single card can come an arbitrary number ofdeclarations for additional parts of the history. The integers have exactly the same format and meaning,although the declaration word is changed to avoid ambiguity :

Page 77: CHAP2

2A - 77

1 212345678901 ... 0 1234 5678

39012 3456

47890 1234 5678

59012 3456

67890 1234 5678

79012

3456

87890

LOAD MORE SHOTS K1 K2 K3 K4 K5 K6 K7 K8 K9 K10 K11 K12 K13 K14 K15

I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4 I4

The energization numbers are always local to the portion being loaded, so no mental arithmetic isrequired. Each such declaration will be preceded by a $OPEN card to connect the new associated file tounit LUNIT2, and each of these might be (it depends on the computer being used) preceded by a $CLOSEcard to disconnect the file of the preceding portion. It is critical to note that the disk file of START AGAINis completely different in structure and size than the disk file or files of LOAD MORE SHOTS. ForSTART AGAIN, a complete set of tables (including LABCOM of size LTLABL words) is required, asproduced on unit LUNIT2 of a preceding simulation that had MEMSAV = 1 (integer miscellaneous dataparameter). On the other hand, the file of LOAD MORE SHOTS consists of only switching times andextrema of each energization, as produced on unit LUNIT2 of a preceding simulation that had MEMSAV= 2. The user must remember which is which, since otherwise execution will be impossible. For an exampleof such usage, see the 2nd and 3rd subcases of BENCHMARK DC40. Illustrative interpretation shall be takenfrom the latter of these :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Connect disk file to I/O unit. |$OPEN, UNIT=LUNIT2 FILEContinuation of partial previous simulation. |START AGAIN { Completed table restoration. Reset T = 1.80000000E-03 sec.Terminator for modified switching times. | 9999 {Connect disk file to I/O unit. |$OPEN, UNIT=LUNIT2 FILE=Load more Monte Carlo extrema. 3 |LOAD MORE SHOTS 3Toggle mode of "LOAD MORE SHOTS". L2FORM = 1. |TOGGLE EXTREMA MODEConnect disk file to I/O unit. |$OPEN, UNIT=LUNIT2 FILE=Load more Monte Carlo extrema. 1 2 |LOAD MORE SHOTS 1Toggle mode of "LOAD MORE SHOTS". L2FORM = 0. |TOGGLE EXTREMA MODE { ReRequest preceding 2 miscellaneous data cards. |MISCELLANEOUS DATA CARDS

Of the 15 possible energization numbers, only the first 3 are confirmed by the interpretation, note. Amaximum of 3 are shown, and the first zero entry will terminate the input list, and will not be shown as partof the interpretation. A final detail is this : The same single START AGAIN card would have beeninterpreted twice if the first integer K1 had been nonzero. Then the second interpretation would have beenthe same as that for LOAD MORE SHOTS. But since K1 of the START AGAIN card was left zero orblank, no such 2nd interpretation confirming the value of K1 is seen.

II-A-80. Subnetwork Identification with All Switches Closed at T = 0

STEP ZERO COUPLE ( SZC ) instructs the program to perform automatic subnetwork identificationwith all the non-grounding switches closed at time zero. Also, there will be no further subnetworkidentification (normally it is a dynamic process within the time-step loop). Without this special request, theprogram would determine the subnetwork identification dynamically at each time step for which switchingwill occurred. More information on subnetwork identification can be found in Ref. 8, Vol. XIV, pagesCUMA-30 to 33. The declaration has this format :

Page 78: CHAP2

2A - 78

11234567890123456

2 3 4 5 6 7 87890123456789012345678901234567890123456789012345678901234567890

STEP ZERO COUPLE

For an example of such use, see the second subcase of BENCHMARK DC-38. It is from the solutionto this subcase that the following illustrative interpretation was drawn :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------No nonlinear subnetwork check in DELTAT-loop. |STEP ZERO COUPLE

II-A-81. Pocket Calculator Speeds TACS Supplemental Variables

TACS POCKET CALCULATOR ( TPC ) is a request that will speed the evaluation of TACSsupplemental variables by use of the pocket calculator in place of Laurent Dube's original logic within thetime-step loop. Format of the request is as follows :

1 21234567890123456789012

3 4 5 6 7 83456789012345678901234567890123456789012345678901234567890

TACS POCKET CALCULATOR

Cancellation of this request also is possible. Simply append OFF at the end. This would be at the startof some following subcase for which service of the pocket calculator is not wanted. TACS POCKETCALCULATOR OFF is illustrated in the 2nd subcase of BENCHMARK DC-20. TACS POCKET CALCULATOR ON is an alternate, longer form of the TPC declaration. AppendingON has no effect at all. Yet, sometimes it is clearer to use this parallel declaration if a following datasubcase turns the service off. For an illustration, see the 1st subcase of BENCHMARK DC-20.

Operation of TPC first was described in the July and October, 2001, issues of the newsletter. Rememberthat only TACS supplemental variables will be evaluated faster; TACS supplemental devices are notaffected, and neither are function blocks. As for improved speed for simple arithmetic, see the comparisonsin the January, 2002, newsletter, which has a story entitled "Pocket Calc. does TACS supplemental."

Each supplemental variable name must begin with a letter of the alphabet, users are warned. This is thesame as for compiled TACS : FORTRAN rules are assumed, not Dube's rules.

The 3rd subcase of BENCHMARK DC-18 and the 5th subcase of DC-30 illustrate TPC use. Answersshould agree within the limits of roundoff error. Differences generally are not of consequence, using 64 ormore bits for floating-point precision.

Interpretations of both the ON and the OFF alternatives can be found in BENCHMARK DC-20. Theyare as follows, from the 1st and the 2nd subcases, respectively :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------TACS supplemental variables compiled by POCKET. |TACS POCKET CALCULATOR ONCancel preceding TPC use. Back to Dube supplem. |TACS POCKET CALCULATOR OFF

Page 79: CHAP2

2A - 79

II-A-82. Request to Redefine Limit on Number of TACS Warning Messages

TACS WARN LIMIT ( TWL ) is a request that allows management of warning messages that might beissued by TACS early during a simulation. There are special cases for which certain TACS warningmessages are a nuisance. An example is the frequency sensor, which might produce many warning messagesbefore steady-state operation is reached during hvdc initialization. Such warning messages can be limitedin total number, and also suppressed completely before a certain starting time, by means of the followingrequest :

1 2123456789012345678901234

356789012

434567890

5 6 7 81234567890123456789012345678901234567890

TACS WARN LIMIT LIM T-beg

I8 E8.0

Here LIM is the limit on the number of TACS warning messages that will be displayed, and T-beg isthe time before which all TACS warnings are ignored (and not counted toward the limit LIM). Theinterpretation of this request card confirms the two user-keyed integers, of course. This is illustrated by thefollowing line from the solution to the second subcase of BENCHMARK DC-18 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Warning controls. LIM, T-beg = 5 1.00E+00 |TACS WARN LIMIT, 5, 1.0,

II-A-83. Request for Transfer to the Time-Step Loop

TIME STEP LOOP ( TSL ) is a request that is used after START AGAIN to awaken the hibernatingsimulation by a transfer of control to the time-step loop. I.e., TSL actually resumes the simulation. Theformat is :

112345678901234

2 3 4 5 6 7 8567890123456789012345678901234567890123456789012345678901234567890

TIME STEP LOOP

Illustrations of the use of TSL can be found wherever START AGAIN is used: BENCHMARK DC-40and 49. Input data interpretation is as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Transfer control to the time-step loop. |TIME STEP LOOP

II-A-84. FORMATTED vs. UNFORMATTED for LOAD MORE SHOTS

TOGGLE EXTREMA MODE ( TEM ) is the command to switch between the two alternative formats ofextrema data. The default setting for the disk files of Monte Carlo extrema is UNFORMATTED, so if this

Page 80: CHAP2

2A - 80

is what is wanted when using LOAD MORE SHOTS, no extra request should appear. But before loadinga FORMATTED file of extrema, the following request must be used to inform the program of the modechange :

11234567890123456789

2 3 4 5 6 7 80123456789012345678901234567890123456789012345678901234567890

TOGGLE EXTREMA MODE

Should a subsequent file be UNFORMATTED, a second application of the request will be required toreturn to the default setting. There is no limit on the number of mode changes. For an illustration, see the 2nd

and 3rd subcases of BENCHMARK DC-40. Interpretation confirms the new (just-modified) status, withassociated variable L2FORM = 0 indicating UNFORMATTED and L2FORM = 1 indicatingFORMATTED. Illustrative interpretation comes from the first usage within the solution to BENCHMARKDC-40 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Toggle mode of "LOAD MORE SHOTS". L2FORM = 1. |TOGGLE EXTREMA MODE

II-A-85. Seed the Random Number Generator Using Date and Time

TRULY RANDOM NUMBERS ( TRN ) is the alternative to REPEATABLE RANDOM NUMBERS( RRN ) as described in a preceding subsection. A TRN request can be used to cancel a previous RRNrequest, or override the following input of NSEED from column 80 of the statistics miscellaneous datacard.

1 212345678901234567890

3 4 5 6 7 8123456789012345678901234567890123456789012345678901234567890

TRULY RANDOM NUMBERS

In theory, using the date and time to seed the random number generator should result in truly randomnumbers. A second execution using the same data should produce different results (assuming that therandom number generator affects modeling ) .

Illustrations of the TRULY RANDOM NUMBERS ( TRN ) request can be found in standardBENCHMARK DC-24 and 68. However, the declaration either has been commented out, or is cancelledby an RRN declaration on the following line. This is in order that answers will be repeatable, thereby makingverification easier.

Interpretation requires no confirmation of parameter value. The following declaration and immediatecancellation are from the solution to BENCHMARK DC-68 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Date and time seed the random number generator. |TRULY RANDOM NUMBERSConstant seed is put in random number generator. |REPEATABLE RANDOM NUMBERS

Page 81: CHAP2

2A - 81

II-A-86. Truncate Output Lines after Formation Using Width KOL132

TRUNCATE OUTPUT LINES ( TOL ) limits the width of output to the .LIS file. Normally, theSTARTUP file will supply the line width for LUNIT6 output text using variable KOL132. But the usermight want to truncate to this width the output after it has been formed in order to make it even narrower.This is possible, if variable KUTOFF is defined to be less than KOL132. The request has the followingformat :

1 2 312345678901234567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

TRUNCATE OUTPUT LINES KUTOFF

I8

Sample usage can be found in the 5th subcase of BENCHMARK DC-66, which truncates the 132-column output of two short error messages to 125 columns. Illustrative interpretation, taken from thesolution to this data set, is as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Override KOL132 of STARTUP with KUTOFF=125. |TRUNCATE OUTPUT LINES, 12

II-A-87. Determine Parameters of Type - 15 Exponential Surge Function

TWO EXP SURGE FUNCTION ( TESF ) is the request to transfer to a fitting program namedTWOEXP by Orlando Hevia of UTN in Santa Fe, Argentina. The January, 2001, newsletter story aboutStandler mentioned other alternatives, and Hermann Dommel's original, 2-exponential surge function is oneof these. Orlando Hevia will optimize the selection of associated parameters.

1 21234567890123456789012

3 4 5 6 7 83456789012345678901234567890123456789012345678901234567890

TWO EXP SURGE FUNCTION

Sample usage can be found in the 12th subcase of BENCHMARK DC-13. Illustrative interpretation,taken from the solution to this data set, is as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Orlando Hevia fits params for Type-15 Two EXP. |TWO EXP SURGE FUNCTION

II-A-88. Pass Any U. M. Output Variables to Type - 92 TACS Sources

UM TO TACS ( UTT ) is the request that is required to interface one or more uncommon U.M. outputvariables with Type-92 sources of TACS. Use this variable interface if the user instructions of Chapter IXdo not offer all fixed interfaces that are required.

Page 82: CHAP2

2A - 82

It is possible to pass any U.M. output variable to TACS. But the original, simplest implementation hadthe following limitation: the TACS variable that is to be defined by the U.M. must be a Type-92 TACSsource of the same name (the second of the two 6-character names that identify the U.M. variable). Second,the program must be alerted to the user's desire for such control by means of a declaration reading :

11234567890

2 3 4 5 6 7 81234567890123456789012345678901234567890123456789012345678901234567890

UM TO TACS

Note that the U.M. variable being passed must be a U.M. output variable. However, there is norequirement of this type within TACS, where output is optional. Since nothing was done to identify thecorrect U.M. in the case of two or more machines, the attentive reader might have concluded that there is alimitation to just a single machine. But limitations are not this restrictive. In fact, the connection logic willmatch a Type-92 source with the first U.M. output variable having the requested name. As long as thedesired variable is the first, it does not matter what the machine number might be.

Beginning in August of 1993, two or more U.M. variables of the same name were allowed as summarizedin the October, 1993, newsletter. The TACS source card does not otherwise use columns 41-52, so thisspace has been reserved for the machine variable as 2A6 information. E.g., "UM-1 OMEGM " for themechanical radian speed of the first machine. If columns 41-52 are used (i.e., are non-blank), then the TACSsource name of columns 3-8 is arbitrary. Comment cards within BENCHMARK DCNEW-10 explain this,and the line that begins with "92FIELD" illustrates use.

A limitation has to do with initial conditions : there will be no transfer of values on step zero (for timezero). This is because the transfer is done within the TACS code of the time-step loop, and this code is notcalled for step zero. If the resulting discontinuity at time zero bothers the user, he is free to supply the initialconditions for the TACS variables manually, of course.

An example of the just-explained declaration is provided by BENCHMARK DCNEW-10, to whichTACS modeling was added solely to receive U.M. variables. It was from this solution that the followinginterpretation was drawn :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Send U.M. outputs to any Type-92 TACS sources. |UM TO TACS { Declaration

II-A-89. Ensure that Type - 91 or 93 TACS Sources Are Unique

UNIQUE TACS SWITCH ( UTS ) is the declaration that is required to protect against an ambiguousdefinition of a Type-91 or 93 TACS source. Either source depends on a switch, and the user is allowed toidentify this by naming one of its two terminal nodes. Unfortunately, this might not be unique. There aretwo terminal nodes, and more than one switch might be connected to the same node. To protect against suchambiguity of switch identification, make the request :

Page 83: CHAP2

2A - 83

1 123456789012345678

2 3 4 5 6 7 890123456789012345678901234567890123456789012345678901234567890

UNIQUE TACS SWITCH

In the absence of such a request, the first switch (in order of data input) that touches the named node willbe accepted. But for any program dated 28 April 2003 or newer, a new warning message should documentalternatives. For an illustration, see BENCHMARK DCNEW-15 as first explained in the July, 2003,newsletter.

The 6-character switch name could be used in place of a terminal node name, and this would removeambiguity in the specification of an associated switch. This is the safer way to specify a Type-91 or 93TACS source. But not many users who assemble ATP data bother to name their switches.

The UNIQUE TACS SWITCH ( UTS ) request, if added to data that produces the just-mentionedwarning, will result in an error message of the form: "KILL = 42. ... the TACS source that is defined by aswitch touching node ... is not unique ... so execution is being halted."

Sample usage can be found in BENCHMARK DC-22. Illustrative interpretation, taken from the solutionto this data set, is as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Halt if TACS Type-91 or 93 source is not unique. |UNIQUE TACS SWITCH { Halt ...

II-A-90. Use Xusheng Chen's 3 - phase Transformer Model

USE SEATTLE XFORMER ( USX ) is the declaration that is required for access to the 3-phase,saturable transformer model of Prof. Xusheng Chen of Seattle University in Seattle, Washington, USA.Background can be found in the January, 1993, newsletter. The declaration itself is :

11234567890123456789

2 3 4 5 6 7 80123456789012345678901234567890123456789012345678901234567890

USE SEATTLE XFORMER

However, there are plenty of restrictions, a user is warned. First, an input data file name must follow thepreceding request word, separated by a comma (more generally, the free-format data separator symbol). I.e.,free-format data input is assumed; it is not an option as with most other requests. There is no fixed-formatalternative for the USX request, and that is why the preceding card image did not show the file name.Another important restriction: the number of coupled windings is fixed at 6 = 3 * 2 where 3 is the numberof phases. That is, a 2-winding transformer can be represented whereas a 3-winding transformer (i.e., withtertiary windings) can not without simplification (approximation) of the data. In fact, that GPU Stolle Roadtransformer of BENCHMARK DC-31 involves 3 windings as shown in the 2nd subcase. Prof. Chen removedthe tertiary to allow use of his model (see the 3rd subcase).

Yet another important restriction is this: no more than one Chen transformer can be used in any particulardata case. Data must begin with a conventional Pi-circuit (see Section IV-B) which establishes the coils ofthe single transformer. I.e., the first phase of the Pi-circuit is the first coil of the transformer, etc. More

Page 84: CHAP2

2A - 84

than just connectivity, the Pi-circuit will be used to represent the transformer during any steady-statephasor solution to establish initial conditions of the network. For an illustration, see the 3rd subcase ofBENCHMARK DC-31. The following interpretation has been copied from DC31.LIS :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Name of disk file for Prof. Chen`s transformer. |USE SEATTLE XFORMER, dc31

Data describing Prof. Chen's transformer is too involved and too specialized to be inserted in this RuleBook at this time. Any reader who has interest is advised to obtain a copy of Prof. Chen's final report and usethe instructions that are contained therein. The April, 1993, newsletter states: "The 120-page final reportfrom Prof. Xusheng Chen of Seattle University was reprinted by BPA and made available to the generalpublic ... BPA mailed copies by air to 14 cooperating contacts (including the 7 foreign user groups and 2individual developers)."

Simply to give a general idea of data structure, consider the 14 input data cards of the DC-31 illustration.The following is from DC31CHEN.DAT and it applies to that 115:345 kV GPU Stolle Road transformer :

C (1) SPOS, VR1, VR2 500. 115.00 345.00C (2) IEXPOS, LEXPOS, XPOS12 .0060 .0030 .12317C (3) FREQ, FREQPU, V1PU 60.000 1.000 1.000C (4) EPSPY, EPSZC, R1, R4 .000010 .000100 .001290 .001290C (5) FIEXP, RFIEXP, R7, CXMER, PAPC FIVE-SLOPE REPRESENTATION: 1457.32 900.00 333.14 .00000 0.C (6) Y0(I), I=1,6 0.000000 0.000000 0.000000 0.000000 0.000000 0.000000C (7) S1, S4, S6, S7 1.000 5. 4. 4.C (8) LEN1, LEN4, LEN6, LEN7 1.000 1000. 1000. 1000.C (9) P8, P9, P10, DT 1000. 1000. 1000. .0100C (10) KT, KP, KW 2000 10 1C (11) BB0, BB1, BB2, BB3, BB4C FIVE-SLOPE REPRESENTATION: 1.4142 1.5558 1.6404 1.8527 2.2000C (12) HH0, HH1, HH2, HH3, HH4 8.4853 39.7575 94.3742 638.19 1530.00C (13) Binary flags to request flux outputs: 1 1 1 1 1 1C (14) Binary flags to request coil current outputs: 1 1 1 1 1 1C 3456789012345678901234567890123456789012345678901234567890

An alternative to the preceding Chen transformer model was provided by Prof. Donald Stuehm at NorthDakota State University (NDSU). Any reader who has interest in the Chen model should be aware of thisalternative. Mention is being placed here simply because there is no Rule Book section about the NDSUmodel. Why? Because no special new component or data is required. This is the strength of the NDSUmodel: it involves an interconnection of existing, old, proven components rather than new modeling. Asummary can be found in the story entitled "3-phase Xformer modeling in Fargo" in the January, 1993,newsletter. This states: "A Table of Contents and Outline of the final report from NDSU was

Page 85: CHAP2

2A - 85

disseminated on February 12th as the bulk of a 7597-byte E-mailing of the Fargo list server. Later that sameday, a second server message informed the general public that the oral presentation would be held here inPortland ... Dr. Donald Stuehm, Professor at NDSU and Principal Investigator for the project, did makethe presentation ... BPA expects to reprint copies of the 100-page final report and mail them to its primaryEMTP contacts (including foreign user groups) when a final copy is available." This was done, and forseveral years BPA distributed a free copy to anyone having interest.

Warning : data for any 3-phase transformer model generally is unavailable. The October, 1996,newsletter contains writing about the problem : "In its simplest form, a transformer of any number of phasescan be modeled by Type-51, 52, etc. branches [Z] = [R] + j w [L] . Any number of these can beinterconnected arbitrarily, and mixed with nonlinearities. A good illustration of this is the NDSUtransformer model of Prof. Don Stuehm ... The challenge was not with ATP, but rather with gathering ofthe data. For Prof. Stuehm, graduate student Bruce Mork, and others, this required innovativemeasurement on actual distribution transformers in the NDSU high-voltage laboratory. But when mightsuch measurements be made on high-power devices (i.e., hundreds of MVA rather than KVA)? This wouldbe for sophisticated, multi-phase, saturable transformer models. If such data is not available, simplermodels must be used, of course." Although only the NDSU model was mentioned, this 1996 comment isapplicable to the Chen transformer model, too. Time has not ameliorated the problem, either. As thisparagraph is being written during November of 2002, data is less available than ever. Whereas in 1994 BPAhad hoped to pay Prof. Stuehm to collaborate on the measurement of high-power BPA devices, this projectrapidly became a casualty of BPA reorganization and cost-cutting. Then a primary advocate, Robert Hasibar,died (1998). The hope at BPA has disappeared. Manufacturers might be able to provide parameters foreither the Chen or the NDSU model, but such data generally is not available to customers free of charge. Asa result, few ATP users ever will have practical application for either model. A decade later, this seems tobe the hard reality of usage.

II-A-91. Begin TPPLOT Data for Concurrent Plotting

USE TPPLOT BEGIN ( UTB ) is the declaration that introduces TPPLOT data for concurrent plotting.I.e., screen graphics as the simulation progresses; a rolling (essentially continuous) plot. The request itselfis trivial :

1 1234567890123456

2 3 4 5 6 7 87890123456789012345678901234567890123456789012345678901234567890

USE TPPLOT BEGIN

Unfortunately, this feature is installation-dependent because TPPLOT is the interactive plotting programthat runs under the MS-DOS extender Salford DBOS. Any other ATP version should ignore any attempteduse because NOTPPL in STARTUP should have value unity ("no TPPLOT"). For any program version,if NOTPPL = 1, TPPLOT data will be ignored. The following Illustrates interpretation of data usingDC1.LIS :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request that precedes TPPLOT initialization. |USE TPPLOT BEGIN { The Ignore TPPLOT data since NOTPPL=1 in STARTUP. |PL4 { Access to plot < < Etc. (remove some 20 lines of interior TPPLOT commands) > >

Page 86: CHAP2

2A - 86

Ignore TPPLOT data since NOTPPL=1 in STARTUP. |TIME 0 .02 { The firstMarker that follows the last TPPLOT data card. |USE TPPLOT END { The 2nd

That was for rejection of the TPPLOT data. The other ATP alternative is acceptance. If NOTPPL isgiven the value zero in STARTUP, interpretation will appear as above except that the uniform interiorinterpretation will be changed to :

Next input for TPPLOT (use as dT-loop begins). |

Use of TPPLOT for concurrent plotting is illustrated by BENCHMARK DC-1 (where superposition andoffsetting are used to separate 9 signals) and DC-63 (where WINDOW plotting provides the separation).As summarized in the October, 1994, newsletter, operation using Salford EMTP is simple enough: "This isillustrated by DC-1, which has been enhanced to provide for the graphic monitoring of 9 signals ... Theinterested reader is advised to simulate in the batch mode: RUNTP DISK DC1. * -R Then sitback, and watch the graphic action. There will be 10 frames (or pages) of 20 msec each to cover thetotal simulation time of 200 msec. Of course, simulation is slowed by the graphics. Whereas with noplotting the total job time is about 71 seconds on your Editor's 33-MHZ AT&T 486, this rises to about105 with the rolling plot. A <CR> is required to exit the time-step loop once the simulation is finished.Completion will be noted by a single diagnostic line at the top of the final graph."

II-A-92. End TPPLOT Data for Concurrent Plotting

USE TPPLOT END ( UTE ) is the declaration that is used to terminate TPPLOT data that is used forconcurrent ATP plotting. See the preceding subsection for a description that includes interpretation of thisbounding line. For completeness, the request is :

1 12345678901234

2 3 4 5 6 7 8567890123456789012345678901234567890123456789012345678901234567890

USE TPPLOT END

II-A-93. 6 - Character User Identification Overrides USERID of STARTUP

Normally, the STARTUP file will supply the 6-character user identification USERID. But the user maywant to override this for some reason. The most important case is for parallel Monte Carlo simulations,where different processes are identified in the CENTRAL STATISTICS FILE by different USERID.Rather than require different STARTUP files, the following special-request word can be used to re-defineUSERID :

1 212345678901234567890123456

3789012

4 5 6 7 8345678901234567890123456789012345678901234567890

USER IDENTIFICATION USERID

A6

Page 87: CHAP2

2A - 87

Remember that USERID is text, so for the common situation having STARTUP variable KINSEN = 1,lower case will be maintained only if an "!" is added. Interpretation is illustrated by the solution toBENCHMARK DC-66, from which "Paris " unfortunately has been clipped on the right :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Override USERID of STARTUP with "Paris ". |USER IDENTIFICATION

II-A-94. User Supplied Switch Times for Monte Carlo ( STATISTICS ) Study

This special request allows the user to specify the random switch closing/opening times of a Monte Carlo(STATISTICS) simulation himself, rather than have the random number generator of the program determinesuch times. To use this feature, one prepares data the same as for regular STATISTICS simulation except forthe following two items :

1) Input a special request card to notify the program of the desired usage. The format is :

1 212345678901234567890123456

3 4 5 6 7 8789012345678901234567890123456789012345678901234567890

USER SUPPLIED SWITCH TIMES

This serves to forewarn the program that switching times are to be read from a disk file that is connectedto I/O unit number LUNIT8 (defined in the STARTUP file). It is the user's responsibility to connectsuch a disk file to LUNIT8 using $OPEN before such switching times are needed. Any place before theblank card ending source cards should always be acceptable. But for clarity, it is recommended that the$OPEN precede the USER SUPPLIED SWITCH TIMES request.

2) Specify the switch closing times (T-close) and opening times (T-open) for all the switches. This is doneenergization by energization in a data file that is to be connected to I/O unit number LUNIT8. Values areto be keyed using 5E15.0 formats, for as many cards as may be required (more than one card perenergization if there are more than 5 switches in the network). For each energization, data begins witha single comment card, which is to be followed by switch closing times, which are to be followed byswitch opening times, as follows :

1 2 3 4 5 6 7 812345678901234567890123456789012345678901234567890123456789012345678901234567890

C Arbitrary 80-column comment line to separate the energizations visually

1123456789012345

2 3678901234567890

4123456789012345

5 6678901234567890

7123456789012345

867890

1st switchT-close

2nd switchT-close

3rd switchT-close

4th switchT-close

5th switchT-close

E15.0 E15.0 E15.0 E15.0 E15.0

Page 88: CHAP2

2A - 88

1123456789012345

2 3678901234567890

4123456789012345

5 6678901234567890

7123456789012345

867890

1st switchT-open

2nd switchT-open

3rd switchT-open

4th switchT-open

5th switchT-open

E15.0 E15.0 E15.0 E15.0 E15.0

Note that each switch contributes such entries, whether the switch is random or deterministic. Yes, thisinvolves redundancy, but it was simplest to program. Construct such a set of switching times (closingand opening) for each energization of the Monte Carlo study, and precede each by an arbitrary 80-column comment line (upon which the energization number should be keyed for clarity). Then stacksuch cards in order. I.e., the first-keyed set will be used for the 1st energization, the 2nd set for the 2nd

energization, etc.

For an example of such usage, consider the second subcase of BENCHMARK DC-24, which connectsthe disk file DC24LUNIT8.DAT (for systems permitting such a long name) to I/O unit number LUNIT8.The first of the subcases of DC-24 involved the rolling of dice to determine the random switch closing timesfor each of the three energizations. Of course, the dice are "loaded" or "fixed" so that results are repeatable(important for test cases). The second subcase of DC-24 bypasses the dice, and instead reads desiredswitching times from LUNIT8. Since the file DC24LUNIT8.DAT was constructed using the sameswitching times as result from simulation of the first subcase, the two solutions should agree exactly. Thesecond subcase adds a base case solution for variety, but that difference is unimportant for the subject ofcurrent interest.

There is no interpretation of the card images of switching times that are read from I/O unit numberLUNIT8. However, the special-request card will be interpreted as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Random switching times read from LUNIT8 channel. |USER SUPPLIED SWITCH TIME

Since there is no output of the LUNIT8 records themselves, the alert user will randomly verify severalswitching times from the values that precede each energization ("Random switching times for energizationnumber XX :"). He also should confirm the just-shown request card, since without this, dice will be rolledand the user's data file would be totally ignored. The user should not be fooled by the standard 1/3 of a pageof Monte Carlo text that precedes the energizations. There also will be the usual explanation of uniform orGaussian distributions, of course, and none of this applies to the user's case. Only the user knows what, ifany, distribution applies to his own customized switching times that are defined in the LUNIT8 file.

II-A-95. Protect U. M. Data Against Overlap with 1 - Phase Compensation

VERIFY U.M. COMPENSATION ( VUMC ) will protect the user against the presence of a conflict ofcompensation, should the U.M. solution involve compensation rather than prediction (see Chapter IX). EachU.M. that uses compensation is assumed by ATP to be isolated in its own disconnected subnetwork. In thesame subnetwork, there must not be any single-phase element that uses compensation (e.g., Type-92 ZnO).Of course, subnetwork identification is dynamic (within the time-step loop, whenever a switch changesstatus), so a problem can not be known ahead of time, in general. If protection against an overlap of U.M.compensation is wanted, the user must request it as follows :

Page 89: CHAP2

2A - 89

1 2123456789012345678901234

3 4 5 6 7 856789012345678901234567890123456789012345678901234567890

VERIFY U.M. COMPENSATION

This protection first was explained in the January, 2000, newsletter, which states that it became effectiveon 23 May 1999. Should overlapping compensation be detected, a KILL = 9 error termination shouldresult as demonstrated by the 6th subcase of BENCHMARK DCNEW-16. Interpretation of the VUMCdeclaration is taken from the solution DCN16.LIS :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Check for U.M. compensation overlap with List 9. |VERIFY U.M. COMPENSATION

II-A-96. Scale Voltage Sources by Arbitrary Factor ( Typically 1K )

VOLTAGE SOURCES IN KV ( VSIK ) is the request to have all amplitudes of voltage sources of theelectric network scaled by an arbitrary positive factor FACTVI. The format is :

1 2 312345678901234567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

VOLTAGE SOURCES IN KV FACTVI

E8.0

FACTVI of columns 33-40 can be left blank if the user wants a factor of 1000 (the default value). I.e.,as illustrated in the 4th subcase of DC-37, the user makes any voltage source amplitude smaller by this factor.No question, voltages in kV are more convenient numbers than voltages in volts. With care (beware ofnonlinear elements), ATP will supply the implied factor of 1000. Output variables will be in kV and kA (thelatter being for currents). Compare the solution of the 4th subcase of DC-37 with the 1st. Better yet, modifythe data of the 4th in two ways : 1) remove the VSIK declaration; and 2) multiply the source amplitude by1000. Then simulate this modified data and compare the resulting .LIS file with the standard solution to the4th subcase.

FACTVI shown here is the same variable that can be found in STARTUP. So, if the user really desiresit, his decision to scale can be moved from data to the environment of execution. Yet, this is largely hidden,and is dangerous, so is not recommended as a general policy. At least a VSIK declaration is visible in thedata being simulated. Of course, STARTUP will be loaded before a data case is read, so any VSIKdeclaration in data will override any value that has been assigned in STARTUP. Value zero in STARTUPindicates that there is to be no scaling. To cancel previous scaling, a VSIK declaration should carry specialvalue minus one (remember zero will not do the job since it is a request for the default factor of kilo).

Any scaling of program variables, including VSIK of this subsection, is not recommended by programdevelopers. Scaling is tricky, and ATP use poses enough challenges without this added danger. On the otherhand, some engineers want to deal in kV and kA and MVA instead of in volts, amperes, and watts. Toolsof scaling are made available to satisfy this demand. For a discussion of VSIK, look in the October, 1997,newsletter.

Page 90: CHAP2

2A - 90

II-A-97. Calculation of [R] and [L] to Represent a 1 - Phase Transformer

The calculation of [R] and [L] matrices to represent a transformer generally requires the use of a separate,self-contained program such as XFORMER (Section XIX-A) or BCTRAN (Section XIX-C). The first ofthese is the older, and it is limited to single-phase transformers. The request for it is trivial :

1234567

1 2 3 4 5 6 7 88901234567890123456789012345678901234567890123456789012345678901234567890

XFORMER

For an example of such usage, see BENCHMARK DC-15. The interpretation extracted from the solutionDC15.LIS appears as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request for transformer [R] +jw[L] computation. |XFORMER

An alternative to XFORMER is the BCTRAN program. A transfer to this once was possible from insideof XFORMER using a special parameter value 44. Traces of this can be found on a comment card near thetop of DCNEW-8, which explains that this service "is no longer valid beginning 10 Oct 1987." If the userwants BCTRAN, he is advised to use the request ACCESS MODULE BCTRAN as described in an earliersubsection. For an example of such usage, see BENCHMARK DCNEW-8.

II-A-98. Threshold To Determine Whether Type 96 Has Phasor Excitation

ZERO FLUX TOLERANCE ( ZFT ) serves to define the zero or near-zero tolerance EPFLUX that isused to determine whether or not a Type-96 hysteretic inductor of Section V-D is excited during thesteady-state phasor solution. EPFLUX is a flux threshold. It is important because user-supplied residualflux will be used if and only if the associated device is not excited. The request to redefine EPFLUX hasthe following format :

1 2 312345678901234567890123456789012

434567890

5 6 7 81234567890123456789012345678901234567890

ZERO FLUX TOLERANCE EPFLUX

E8.0

In the absence of a ZFT declaration, EPFLUX will be given the value EPSILN, which typically is giventhe value 1.E-8 in STARTUP. In turn, this starting value might be overridden by a value keyed on thefloating-point miscellaneous data card (Sect. II-B-1). Unless the user has a ZFT declaration, this is the valuethat will be used when it is time to process hysteretic inductors following the phasor solution. This was thechange beginning in March of 2001. Prior to this date, an exact zero was required for use of the residual fluxas explained in the October, 2001, newsletter.

Use is illustrated in the 3rd subcase of BENCHMARK DC-33. In fact, the answer did not change as aresult of the ZFT addition because the tolerance being defined is equal to the default value. Interpretationlogically should confirm the value of EPFLUX , but it does not :

Page 91: CHAP2

2A - 91

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Max phasor flux that avoids use of residual flux |ZERO FLUX TOLERANCE

II-A-99. Parameters to Control the Newton Iteration of ZnO Arresters

Zinc Oxide (ZnO) surge arresters require branch cards as described in Section V-E. Yet no controls on theNewton iteration that is used to solve the associated nonlinear equations will be seen as part of such data.Instead, such controls are first defined in the STARTUP file. They then can be redefined by a special-request card having this format :

11234567890123456

278901234

356789012

434567890 12345678

590123456

678901234

7 85678901234567890

ZINC OXIDE MAXZNO EPSZNO EPWARN EPSTOP ZLIM(1) ZLIM(2)

I8 E8.0 E8.0 E8.0 E8.0 E8.0

MAXZNO (cols. 17-24) is the maximum number of Newton iterations that will be allowed for thesolution of the surge arresters in each subnetwork. The Newton iteration will go this longunless tolerance EPSZNO is attained first.

EPSZNO (cols. 25-32) is the convergence tolerance for the Newton iteration. All voltage corrections ofthe coupled elements must be smaller than this in absolute value, for the equations to bejudged to be solved. A blank (zero) value is taken as a request for the value EPSILN * Vref,where EPSILN is the familiar floating-point miscellaneous data parameter of Sect. II-B-1(1.E-8 for 64-bit program versions in common use).

EPWARN (cols. 33-40) is the voltage convergence tolerance for the non-fatal warning message about a"sloppy solution." A blank (zero) data field is taken as a request for the value Vref / 1000.This represents one tenth of one percent of rated voltage, then, which is about the limit ofgraphical resolution.

EPSTOP (cols. 41-48) is the voltage convergence tolerance for a fatal error stop complaining about anon-converged iteration. A blank (zero) data field is taken as a request for the value Vref / 10which is 10% of rated voltage. The current error in such a case could be astronomical,remember, due to the extreme nonlinearity ( e.g., 1.1 ** 26 = 11.9 ) .

ZLIM(1) (cols. 49-56) is the maximum per unit (based on the reference voltage VREF of Section V-Eusage) voltage correction at each iteration. A blank or zero is given the default value of unity.

ZLIM(2) (cols. 57-64) is the maximum per unit (based on the reference voltage VREF of Section V-Eusage) arrester voltage that will be permitted during the iteration. A blank or zero is changedto the default value of 1.5

Instead of this fixed-column specification, it may be more convenient to employ free-format input, withcommas separating the data fields in question. Just be careful to use the right number of them (accuratecounting is a disadvantage of free-format data that involves several parameters).

Page 92: CHAP2

2B - 1

The interpretation of this request card confirms only the first four parameters on the card. This isillustrated by the following line from the solution to BENCHMARK DC-38 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------ZnO const. 20 1.000E-08 1.000E-03 1.000E-01 |ZO, 20, , , , 0.9,,

II-A-100. Request to Fit Exponentials to ZnO Data Points

The calculation of parameters to represent ZnO surge arresters involves a separate, self-containedprogram ARRDAT as described in Section XIX-I. To transfer to this code, the following special-requestcard is used :

11234567890

2 3 4 5 6 7 81234567890123456789012345678901234567890123456789012345678901234567890

ZNO FITTER

For an example of such usage, see BENCHMARK DC-39. The interpretation extracted from thissolution appears as follows :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|-------------------------Request to generate Type-92 ZnO branch cards. |ZNO FITTER

II-B. Miscellaneous Data Cards , Floating - Point and Integer

For simulation (but not for access to a supporting program), two types of miscellaneous data cards arerequired : 1) floating-point; and 2) integer. Both card types will be explained in the remainder of this section.Optional extensions to these miscellaneous data cards also exist, but they will be delayed until Section II-C.

II-B-1. Floating - Point Miscellaneous Data Card

The first non-comment card that is not recognized as any of the preceding special-request cards of SectionII-A will be taken to be the floating-point miscellaneous data card, which has the following format :

12345678 190123456

278901234

356789012

434567890 12345678

5 6 7 890123456789012345678901234567890

DELTAT TMAX XOPT COPT EPSILN TOLMAT

E8.0 E8.0 E8.0 E8.0 E8.0 E8.0

DELTAT (cols. 1-8) is the size of the time step of the numerical integration, in seconds. Signals will becalculated at discrete instants of time that have this time separation. Taking into account the

Page 93: CHAP2

2B - 2

Nyquist criterion, the time step preferably should be ½ ... 1/10 of the smallest time constant ofthe network that is to be simulated. If nonlinear elements are involved, an even smaller timestep might be advisable. Where practical, the trapezoidal rule of integration is used. Forbrevity, DELTAT often will be abbreviated as dT.

TMAX (cols. 9-16) is the ending time of the simulation, in seconds. Except for START AGAINdata cases (see Sect. II-A), time always will begin at zero. For simulation, time will beincremented in steps of size DELTAT until TMAX has been reached. However, a non-positive TMAX means that there will be no simulation. In simplest form, this would be arequest to halt execution after the phasor solution (possibly involving a load flow to satisfypower constraints). Or, there could be a loop over frequency — some type of frequency scan.

XOPT (cols. 17-24) indicates whether it is inductance in millihenries or inductive reactance in ohmsthat is to be keyed on linear branch cards. There are two distinct cases : 1) if XOPT = 0, inductances are to be keyed in millihenries ; and 2) if XOPT > 0, then values are to be in ohms at frequency XOPT (in Hertz). In eithercase, remember that this choice on the miscellaneous data card can be changed at any point ofthe data input by means of the first parameter of a $UNITS card (Sect. I-D).

COPT (cols. 25-32) indicates whether it is capacitance in microfarads or capacitive reactance inmicromhos that is to be keyed on linear branch cards. There are two distinct cases : 1) if COPT = 0, capacitances are to be keyed in microfarads; and 2) if COPT > 0, then values are to be in micromhos at frequency COPT (in Hertz). Ineither case, remember that this choice on the miscellaneous data card can be changed at anypoint of the data input by means of the second parameter of a $UNITS card.

EPSILN (cols. 33-40) is the near-zero tolerance that is used to test singularity of the real coefficientmatrix within the time-step loop. A blank or zero value means that the value of the STARTUPfile will be used. For 64-bit (REAL*8) computation that is common today, a default value of1.E-8 is typical. Historically, work began using 36-bit computation, for which a default valueof 1.E-5 was typical. Since 64 bits is equivalent to about 16 decimal digits, EPSILN can bemade smaller than 1.E-8 (1.E-10 or 1.E-11 usually will not confuse the intelligent user).

TOLMAT (cols. 41-48) is the near-zero tolerance that is used to test singularity of the complexadmittance matrix [Y] of the steady-state, phasor solution. A non-positive value will be takenas a request for value EPSILN (see preceding parameter). Note that unlike EPSILN,TOLMAT is not defined in the STARTUP file, however.

If scientific notation is used for any of the preceding parameters, the value must be right-adjusted withinits data field. Otherwise, the following error message should result : "KILL = 97. An E-field number that isnot right-adjusted within its data field has been detected ..."

II-B-2. Integer Miscellaneous Data Card

The just-described floating-point miscellaneous data card is to be followed by an integer miscellaneousdata card bearing the following information :

Page 94: CHAP2

2B - 3

12345678 190123456

278901234

356789012

434567890 12345678

590123456

678901234

756789012

834567890

IOUT IPLOT IDOUBL KSSOUT MAXOUT IPUN MEMSAV ICAT NENERG IPRSUP

I8 I8 I8 I8 I8 I8 I8 I8 I8 I8

IOUT (cols. 1-8) gives the frequency of LUNIT6 (printed) output within the time-step loop. E.g.,a value of 3 means that every 3rd time step will be printed. A value of zero or blank is changedto unity. For a frequency scan, it is output within the loop over frequencies that is controlled,rather than the loop over time, of course. Finally, IOUT may be modified up to 5 times duringthe simulation using either IPUN = -1 (see explanation below) or the equivalent CHANGEPRINTOUT FREQUENCY of Section II-A.

IPLOT (cols. 9-16) gives the frequency for saving solution points of the time-step loop for purposesof later batch-mode plotting and the associated .PL4 disk file. E.g., a value of 3 means thatevery 3rd time step will be saved. A value of zero or blank is changed to unity, and any evenvalue is increased by one to make it odd. An even plotting frequency is not allowed becauseof the likelihood of deception: a saw-toothed oscillation would go unnoticed. Yet, thedetermined user can prevent this by insisting in the form of an ALLOW EVEN PLOTFREQUENCY declaration (see Section II-A). If ATP makes the adjustment to IPLOT, it willissue the following 1-line reminder : " >>>> Even plot output frequency IPLOT is made oddby adding one ..." A final detail is this : IPLOT may be modified up to 5 times during thesimulation using CHANGE PLOT FREQUENCY of Section II-A.

IDOUBL (cols. 17-24) controls the LUNIT6 output of a table showing network connectivity. A valueof zero or blank will suppress such output, whereas unity will produce it. For each node thereis shown a list of other nodes to which there are physical connections. Mutual couplingbetween phases of multiphase elements is ignored in this output, as is the capacitance toground of Pi-circuits and distributed-parameter lines and cables. The name "TERRA " (asread from the STARTUP file) is used for ground instead of six blank characters, to improvereadability. Ordering of the rows corresponds to order of the input data — except for thefinal row, which applies to ground ( node number one, which is labeled "TERRA " ) .

KSSOUT (cols. 25-32) controls printout of the steady-state phasor solution, if any. There are 3 basictypes of outputs: branch flows, switch flows, and nodal injections. These can be controlled bythe value of KSSOUT as follows :

0 ! No steady-state solution printout.1 ! Print the complete steady-state solution: branch flows, switch flows, and source

injections.2 ! Print switch flows and source injections, but not branch flows.3 ! Print branch flows requested by column 80 punches, switch flows, and source

injections.

MAXOUT (cols. 33-40) controls printout of extrema at the completion of simulation. Keying a zero orblank will suppress such computation and output, whereas the value unity will produce it. Toexclude an initial time prior to the start of extrema monitoring, use BEGIN PEAK VALUESEARCH in Section II-A.

Page 95: CHAP2

2B - 4

IPUN (cols. 41-48) is used to request the input of an extra, following card to vary the printoutfrequency. Use a value of "-1" to request such an extra card, or zero or blank if no such extracard is wanted. Refer to Section II-C-4 for details of the following card. Alternatively, useCHANGE PRINTOUT FREQUENCY of Section II-A. This has the same effect.

MEMSAV (cols. 49-56) controls the dumping of ATP memory onto disk at the end of the simulation.This would be for subsequent use of a START AGAIN request of Section II-A. Key "1" ifsuch preservation of memory is desired, or zero or blank if it is not. For the single,deterministic simulation, the table saving is done at time TMAX (the floating-pointmiscellaneous data parameter). For Monte Carlo (STATISTICS) studies, tables will be savedupon completion of energization number NENERG (the integer miscellaneous dataparameter). Memory preservation is a powerful and useful tool of the production user.However, be warned that success of reuse generally depends on the ATP version being used.In general, do not attempt to awaken a hibernating simulation using a different ATP version.

BENCHMARK DC-32 is the simplest illustration of MEMSAV = 1. Using parallel namingof output files (see explanation of ICAT), tables automatically will be given the namedc32.bin where the .bin comes from STARTUP. This same name then will appear on a$OPEN for LUNIT2 when the simulation is to be awakened (see DC-49). So, DC-32 andDC-49 are a matched pair. They illustrate a single deterministic simulation. For such usagewith a Monte Carlo study, see BENCHMARK DC-24 and DC-40.

Monte Carlo studies can be more complicated. If some study is to be simulated in two or moreindependent pieces that are later to be combined, then for the 2nd or later portion (eachassociated with a LOAD MORE SHOTS declaration of the execution that combines theresults), the value "2" is to be keyed rather than "1". The difference is great. Unity resultsin the dumping of all tables (including LTLABL words of LABCOM), whereas "2" willproduce an abbreviated file consisting of only switching times and extrema. An abbreviatedfile by itself can not be awakened, but it can be appended to a complete file by means of theLOAD MORE SHOTS declaration. Of course, it is important to have a different seed for therandom number generator of such simulations that are later to be combined. Otherwise, theuser would just be repeating the same energizations (a waste of computation). For anillustration involving Monte Carlo simulations, see BENCHMARK DC-24 and DC-40. The3rd subcase uses MEMSAV = 2 and has more-flexible FORMATTED output of theswitching times and extrema on unit LUNIT9.

ICAT (cols. 57-64) is to be left blank (or zero) if there is to be no permanent saving of raw plot datapoints that might be written to I/O channel number LUNIT4 during the simulation. But shouldsuch permanent saving be desired, then a positive value is required : 1 ! Save the points, but ignore any batch-mode plot cards that might be present ; 2 ! Save the points, and also honor any batch-mode plot cards that might be present.The disk file in question might be named internally using the date and time of day when thesimulation began. Date and time are part of the plot file header, too. However, parallelnaming of output files became the generally-preferred alternative around 1990. This isrequested in STARTUP by KTRPL4 < 0. For years the value KTRPL4 = -6666 has beenused to place the .PL4 file on the hard disk in parallel with the .LIS file. Of course, file type.PL4 itself comes from STARTUP. See Section I-E for more details about KTRPL4 use.

Page 96: CHAP2

2B - 5

File names based on date and time involve structure that depends on the operating system.This is in the code of installation-dependent SUBROUTINE SYSDEP, over which the userhas no control. As of year 2002, MS-DOS or MS Windows-based alternatives all use theMS-DOS structure YMDDHHMM. Here Y is the final decimal year digit (e.g., "2" indicates2002), M is a hexadecimal month digit (so October is A, November is B, and December isC), DD is the day within the month as 2 decimal digits (01 through 31), HH is the hourwithin the day as 2 decimal digits (00 through 23), and MM is the minute within the hour as2 decimal digits (00 through 59). This is the best that can be done within the DOS limit of 8bytes. Other operating systems such as VAX/VMS use longer names that are more precise.The VMS structure is PLOTYYMMDDHHMMSS where 6 decimal digits of the date( YY-MM-DD ) are followed by 6 decimal digits of the time ( HH:MM:SS ). Beware ofKOMPAR > 1 in STARTUP, however, as this will change to the most famous date inhistory: the World War I armistice. WW I ended at the 11th hour of the 11th day of the 11th

month of 1918. 18-11-11 is the date and 11:00:00 is the time, so MS-DOS uses8B111100. Beware of the accumulation of such files. If already in use, the right-most digitwill be incremented by 1 until a free name is found. Erasure of all 8B11*.PL4 files from timeto time is advised.

NENERG (cols. 65-72) is to be left blank (or zero) for single, deterministic simulations. But forSTATISTICS or SYSTEMATIC data cases, this is to be the total number of energizations(exclusive of any possible, extra, base-case solution). Append a minus sign if SYSTEMATICusage is involved --- a flag to distinguish such a case from Monte Carlo studies. Also,remember that an extra STATISTICS or SYSTEMATIC miscellaneous data card (Section II-C-1) must follow.

IPRSUP (cols. 73-80) is normally left blank or zero. If keyed as a positive value, this is the diagnosticprintout control that is to be applied to all UTPF overlays. The same result can be obtained viaparameter IPRSUP in the STARTUP file. But since the user normally will want to selectivelycontrol such output overlay by overlay, he should instead use the DIAGNOSTIC special-request card (see section II-A).

Each of the preceding integers that is not blank should be right-adjusted within its data field. ATP willcheck for this, and will halt with the following error message if a violation is found : "KILL = 98. An I-fieldnumber that is not right-adjusted within its data field has been detected on the last-read data card. Column... begins a field of width 8, but column ... contains either an illegal character or a blank that is not on theleft. When all decimal digits are not packed on the right, an integer will be larger than expected by 10, or100, etc." While the unwanted scaling by a power of 10 no longer should be true (see discussion of BN in theJanuary, 1997, newsletter), the error trap has been retained for historical reasons (compatibility with old data).

Interpretation of the just-described floating-point and integer miscellaneous data cards confirms onlythe first three floating-point parameters, but all integer parameters. As an illustration, consider the twoassociated output lines of BENCHMARK DC-4 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|------------------------- Misc. data. 1.000E-02 6.000E+00 0.000E+00 | .010 6.0 Misc. data. 1 1 1 1 1 -1 0 0 0 0 | 1 1 1

Page 97: CHAP2

2C - 1

II-C. Extensions to Miscellaneous Data Cards

Two of the just-described integer miscellaneous data parameters (see section II-B) can require theinput of additional, supplemental extensions that are to immediately follow the integer miscellaneous datacard. If none or only one is used, there is no question of ordering. But if both extensions are required, thenthese must be appended in the order of presentation, with the STATISTICS / SYSTEMATIC card (SectionII-C-1 to II-C-3) preceding the card that controls the output frequency (Section II-C-4).

II-C-1. STATISTICS Miscellaneous Data Card for Monte Carlo Simulation

If and only if NENERG (cols. 65-72) of the integer miscellaneous data card is positive (i.e. flag forSTATISTICS studies, see section VI-B.1), then the following additional card, called the STATISTICSmiscellaneous data card, is required :

12345678 190123456

278901234

356789012

434567890 12345678

590123456

6 77890123456789012

834567890

ISW ITEST IDIST IMAX IDICE KSTOUT KNTRPT NSEED

I8 I8 I8 I8 I8 I8 I8 I8

ISW (cols. 1-8) determines whether there is to be printed output of all the variable switchclosing/opening times, for each of the NENERG energizations. Zero will suppress suchoutput, whereas unity will provide it. For the special case where "4444" is keyed in columns 5-8, refer to section II-C-3 which describes testing of the random number generator.

ITEST (cols. 9-16) controls whether an extra random delay, calculated using the parametersDEGMIN, DEGMAX, and STATFR (see STARTUP file), is to be added to randomly-generated switching times for each energization. A zero or blank means that there will besuch an addition for all random switches; the value "1" means that there will be no suchaddition for any random switch; the value "2" means that such an addition will be made onlyto random closing (not opening) times; and a value "3" means that such an addition will bemade only to random opening (not closing) times. For details of these different switch types,see Section VI-B.

IDIST (cols. 17-24) chooses between the two types of dice (random distributions) that are available.A zero or blank value means that all randomly-generated switching times are to have Gaussian(normal) distribution, whereas a value of unity means that a uniform distribution is to be usedinstead. Note that this is not applicable to the extra random delay (see preceding parameterITEST), which is assumed always to involve a uniform distribution.

IMAX (cols. 25-32) will normally be left blank or keyed as zero. It is to be keyed with "1" if the userwants additional printout of deterministic extrema for each energization. The extrema inquestion are those normally seen at the end of a conventional, single simulation that hasinteger miscellaneous data parameter MAXOUT equal to unity. Such output has maxima,times of maxima, minima, and times of minima --- all extra output (an addition to, rather thana replacement for, the normal output for each energization).

Page 98: CHAP2

2C - 2

IDICE (cols. 33-40) controls whether or not standard random numbers (that vary neither with time norwith manufacturer of the computer) are to be used. The value "1" will give such standardrandom numbers, whereas a blank or zero will result in the use of computer-dependent dice, ifsuch separate dice have been provided. Specifics will depend upon the installation-dependentlogic of ENTRY RANDNZ of RFUNL1. For reasons of repeatability and universality,standard test cases such as BENCHMARK DC-24, DC-40, DC-48, and DC-50 all useIDICE = 1.

Reality of year 2002 : all surviving versions of ATP use the same 32-bit overflow to generaterandom numbers. The 100 standard random numbers, once stored separately, no longer exist.No program version uses a random number generator that comes with the compiler, either. Alluse the same universal, 32-bit FORTRAN as copied from DEC VAX. DEC stated that thiswas described in "The Art of Computer Programming," vol. 2, by Donald E. Knuth,Addison-Wesley, 1981.

KSTOUT (cols. 41-48) controls whether or not each energization is to have added printout that normallyis associated only with a conventional, single simulation. Included are output of the time-steploop, and variable extrema (if integer miscellaneous data parameter MAXOUT is positive). The scalar extrema of PEAK VOLTAGE MONITOR also will be honored, if it has beendeclared. Such extra output is in addition to the regular, minimum program output ofSTATISTICS / SYSTEMATIC simulations. Since any such special output is repeated foreach energization, the user should be careful in its use. To obtain such extra output for eachenergization, key a zero explicitly. A blank or minus one ("-1") will suppress such extraoutput.

KNTRPT (cols. 49-56) is normally left blank or zero. If keyed with a nonzero integer, it is taken to bethe energization number KNT that is to be repeated (mnemonically, "count repeat"). Thisonly has meaning for START AGAIN usage, where execution begins with the Monte Carlohistory (including energization number KNTRPT) already stored in memory. In case two ormore sets of Monte Carlo history have been loaded (the first by START AGAIN and thesecond or later set by LOAD MORE SHOTS), numbering of the energizations is cumulative,in the order the files were loaded. Of course, KNTRPT must be positive and not larger thanthe total number of loaded energizations. Following the TIME STEP LOOP request, theuser will see the heading of variable names followed by time-step loop printout (assuming herequested this with KSTOUT = 0). Following such output, the memory of Monte Carlo usageis erased, so batch-mode plotting will complete the data case. For an illustration, see the 4th

data subcase of BENCHMARK DC-40.

NSEED (cols. 73-80) controls whether or not a Monte Carlo simulation is repeatable, should thesimulation ever be repeated using the same computer. A blank or zero means that everysolution will be different (i.e., no repeatability), whereas unity will result in identical answersevery time the data case is simulated using the computer of interest. At issue is the seed of therandom number generating algorithm. Normally (for blank or zero in cols. 73-80), thisdepends on the time of day as well as the process time. But for repeatability (value unity), aconstant seed is used.

Monte Carlo studies are important enough, and tricky enough, so that each should be simulatedseparately using a separate disk file. The stacking of two or more data cases, of which at least one is a MonteCarlo study, is not recommended. But for those who believe in living dangerously by stacking two or more

Page 99: CHAP2

2C - 3

Monte Carlo studies within a single disk file, remember to use $STARTUP at the beginning of the second orlater of these. This is needed to reinitialize the critical table-dumping control TENERG. The 2nd subcase ofBENCHMARK DC-24 serves as an example in this regard.

Interpretation of the previously-described STATISTICS miscellaneous data card confirms only thefirst six parameters. As an illustration, consider the associated output of BENCHMARK DC-24 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|------------------------- Statistics data. 1 1 0 0 1 0 | 1 1 0

II-C-2. SYSTEMATIC Miscellaneous Data Card

If and only if NENERG (cols. 65-72) of the integer miscellaneous data card is negative (i.e. flagfor SYSTEMATIC studies, see section VI-B-2), then the following additional card, called the SYSTEMATICmiscellaneous data card, is required :

12345678 190123456

278901234

356789012

434567890 12345678

5 6 7 890123456789012345678901234567890

ISW ITEST IMAX KSTOUT

I8 I8 I8 I8

ISW (cols. 1-8) same as for preceding STATISTICS use.

ITEST (cols. 9-16) controls whether switch times, to be specified in columns 15-24 of aSYSTEMATIC switch card, are to be Tbeg or Tmid (see Section VI-B-2). Use blank or zeroif Tmid is desired, or unity if Tbeg is preferred.

IMAX (cols. 25-32) same as for preceding STATISTICS use.

KSTOUT (cols. 41-48) same as for preceding STATISTICS use.

Interpretation of the just-described SYSTEMATIC miscellaneous data card is in fact identical to that forSTATISTICS. As an illustration, consider the associated output of BENCHMARK DC-16 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|------------------------- Statistics data. 1 1 0 0 0 0 | 1 1 { I

II-C-3. STATISTICS Miscellaneous Data Card for Dice Testing

It is possible to test a random number generator without actually performing the simulations thatnormally would depend upon the random number generator. If and only if NENERG (cols. 65-72) of theinteger miscellaneous data card is positive, and if cols. 5-8 of the STATISTICS miscellaneous data card (i.e., variable ISW) are keyed with "4444", then only a test of random numbers is desired. For such usage, the

Page 100: CHAP2

2C - 4

extra card following the integer miscellaneous data card has the following format, as a simpler version of theusual card of Section II-C-1 :

12345678 190123456

2 37890123456789012

434567890

5 6 712345678901234567890123456789012

834567890

ISW ITEST IDICE NSEED

4444 I8 I8 I8

ISW (cols. 1-8) the "4444" is a request for dice testing.

ITEST (cols. 9-16) gives the number of points per standard deviation of the tabulations that are toresult. A zero is given the default value of 2.0 (meaning 8 entries on either side of the mean,if SIGMAX = 4.0 in the STARTUP file ) .

IDICE (cols. 33-40) the same as for Section II-C-1 above.

NSEED (cols. 73-80) the same as for Section II-C-1 above.

Concerning the rest of the data case, it should be legal through the blank card ending switch cards.Only the switch cards are actually used, so branch cards are arbitary as long as no error results before theswitch cards are read. Finally, there should be a BEGIN NEW DATA CASE card at the bottom, since thiswill be searched for just as would be the case following an ATP error message.

Switching times will be generated for each of the NENERG imaginary energizations (in fact, programcontrol never leaves overlay 12). There then will be a tabulation for each pair of Gaussian switches. Recallthat if the closing time for each of two switches has Gaussian (normal) distribution, then so does thedifference of these two. The mean of the difference will be the difference of the means, whereas the varianceof the difference will be the sum of the two variances. For M Gaussian switches, there will be M * (M - 1)/ 2 such pairs of switches. For each pair, there will be one tabulated output showing both the experimentaland the theoretical cumulative distribution functions. See BENCHMARK DC-50 for an example.

The just-described tabulation only applies to two switches having Gaussian switching times. If one ofthe switches is deterministic, or if one is random but uniformly-distributed, then the tabulation will beskipped.

There is no new interpretation for the miscellaneous data card of dice testing. Refer to the precedingSections II-C-1 or II-C-2 for illustrations of interpretation.

II-C-4. Change of Frequency of the Time - Step Loop Printout

The frequency of LUNIT6 printout within the time-step loop is nominally controlled by integermiscellaneous data parameter IOUT of Section II-B. But this frequency can be varied as the simulation timeadvances. One way already has been documented in Section II-A : a CHANGE PRINTOUT FREQUENCYrequest. Another way is to key integer miscellaneous data parameter IPUN (cols. 41-48) as "-1", and appendthe following card :

Page 101: CHAP2

2C - 5

12345678 190123456

278901234

356789012

434567890 12345678

590123456

678901234

756789012

834567890

KCHG MULT KCHG MULT KCHG MULT KCHG MULT KCHG MULT

I8 I8 I8 I8 I8 I8 I8 I8 I8 I8

1st change 2nd change 3rd change 4th change 5th change

This card specifies at which time steps the printout frequency is to be changed, and to what values thefrequency is to be changed. Up to five pairs of these (KCHG, MULT) controls are permitted. The meaningis as follows :

KCHG(K) The time step number at which the K-th variation of printout frequency is to begin. Printoutfor this particular step number is always provided, as a beginning to the new frequency ofoutput.

MULT(K) The modified value of IOUT (see 2nd miscellaneous data card) that takes effect at time stepKCHG(K).

If a minus sign is appended to MULT(K), then at the corresponding step number KCHG(K), thediagnostic printout status will be changed. That is, there will be a switching of the two sets of diagnosticprintout controls :

1) IPRSOV(16:19) of a DIAGNOSTIC request (see Section II-A) ;2) IPR(1:4) of an ALTERNATE DIAGNOSTIC PRINTOUT request (see Section II-A).

If there is no minus sign, there will be no change in status of the diagnostic printout at the associatedtime step. Any minus signs are merely extra flags. The absolute value of MULT still controls the production(non-diagnostic) printout frequency as originally described.

Interpretation of the just-described printout control card confirms only the first three pairs of numbers.As an illustration, consider the associated output of BENCHMARK DC-16 :

C 1 2 3 4 5 6 7C 34567890123456789012345678901234567890123456789012345678901234567890123456C ------------------------------------------------|------------------------- Printout : 5 5 20 20 0 0 | 5 5 20