From b18347ffc9db9641e215995edea1c04c363b2bdf Mon Sep 17 00:00:00 2001 From: Angelo Rossi Date: Wed, 21 Jun 2023 12:04:16 +0000 Subject: Initial commit. --- benchmarks/dc30.dat | 753 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 753 insertions(+) create mode 100644 benchmarks/dc30.dat (limited to 'benchmarks/dc30.dat') diff --git a/benchmarks/dc30.dat b/benchmarks/dc30.dat new file mode 100644 index 0000000..45737b3 --- /dev/null +++ b/benchmarks/dc30.dat @@ -0,0 +1,753 @@ +BEGIN NEW DATA CASE +C BENCHMARK DC-30 +C Modeling of circuit-breaker restrike using a valve that is under TACS +C control. The basic electric network model apparently comes from one Carl +C Solver of CIGRE WG 13.02, as pointed out by John D. Sakellariou of the +C Public Power Corporation in Athens, Greece. I (W. Scott Meyer) inserted +C valve and TACS modeling during September of 1977. The user should extend +C TMAX to 1.5 milliseconds in order to see more (including a 3rd restrike). +C This 1st of 8 subcases uses TACS. See the 3rd of 8 for the use of MODELS. +C The 7th of 8 produces the same answer faster using secret relay modeling. + 1.0E-6 3.0E-3 + 1 1 1 1 1 -1 + 5 5 20 20 100 100 +TACS HYBRID + 1DUMMY +UNITY + 1.0 + 1.0 0.5E-3 +90BUS2 +90BUS3 +99VSW = BUS2 - BUS3 +99DRIVE = ABS(VSW) +99BREAK = 1.5E+8 * TIMEX + 1.0E+5 +C 99DRIVE = ABS(VSW) + 0.0 +C 98DRIVE = 0.4 * ( ABS(VSW) + 1.E-6 ) ** 3.0 * 2.0 +C 99BREAK = 150000000.0 * TIMEX + 100000.0 +98GRID 51+UNITY BREAK DRIVE +33DUMMY TIMEX UNITY BUS2 BUS3 VSW DRIVE BREAK GRID +BLANK card ends all TACS data + GEN BUS1 15. + BUS1 2.9 + BUS1 BUS2 0.1 + BUS2 0.1 + BUS3 .017 + BUS3 490. + BUS2 BUS2R 24.34 + BUS3 BUS3R BUS2 BUS2R +BLANK card terminates electric network branches + BUS2 BUS3 -1. 1.E9 2 +C The following card serves to name the switch following it. To see the +C results of this activity, interactively execute the "SWITCH" command of +C SPY, sending "EXTRA" for the alternative table. Another point: note +C the exclamation point, which is needed to hold lower case within A6 name +C (assuming KINSEN = 1 within STARTUP). + NAME: Valve ! { Request "NAME: " of cols. 3-8 precedes A6 valve name in 9-14 +11BUS2R BUS3R 20. GRID 13 +BLANK card ends all switches +14GEN 66500. 50. -2.0508 -1. +BLANK card terminates electric network sources +C Total network loss P-loss by summing injections = -1.885346136987E-07 +C Note: preceding loss figure is meaningless since phasor network is +C lossless. This is floating zero compared with MVA = 1.2E8. +C Output for steady-state phasor switch currents. +C Node-K Node-M I-real I-imag I-magn +C BUS2 BUS3 -1.50498397E+01 -4.20286729E+02 4.20556099E+02 +C BUS2R BUS3R Open Open Open +C +C GEN 66457.406175675 66500. -12.86413577453 359.47829718693 +C -2379.740406308 -2.0508000 -359.248048233 -92.0508000 +C +C Step Time BUS2 BUS2R BUS3R BUS2R BUS3 BUS2 +C BUS3 BUS3R BUS3R DUMMY +C +C TACS TACS TACS TACS TACS TACS +C TIMEX UNITY BUS2 BUS3 VSW DRIVE +C *** Phasor I(0) = -1.5049840E+01 Switch "BUS2 " to "BUS3 " closed +C 0 0.0 0.0 0.0 64751.3498 64751.3498 64751.3498 64751.3498 +C 0.0 1.0 0.0 0.0 0.0 0.0 +C *** Open switch "BUS2 " to "BUS3 " after 1.00000000E-06 sec. +C 1 .1E-5 0.0 0.0 64752.0751 64752.0751 64752.0751 64752.0751 +C .1E-5 1.0 64752.0751 64752.0751 0.0 0.0 + 1 { Request for all node voltage outputs +C Valve "BUS2R " to "BUS3R " closing after 3.09000000E-04 sec. +C Valve "BUS2R " to "BUS3R " opening after 3.22000000E-04 sec. +C Valve "BUS2R " to "BUS3R " closing after 4.97000000E-04 sec. +C Valve "BUS2R " to "BUS3R " opening after 5.09000000E-04 sec. +C Last step: 3000 .003 122346.542 122346.542 -88693.149 33653.3927 -88693.149 +C Last step: .003 1.0 33653.3927 -88693.149 122346.542 122346.542 550000. 0.0 +C Variable max:177392.698 177392.698 102764.956 84422.9848 102764.956 84422.9848 +C .003 1.0 84422.9848 102764.956 177392.698 177392.698 +C Times of max: .497E-3 .497E-3 .83E-4 .478E-3 .83E-4 .478E-3 +C .003 0.0 .478E-3 .83E-4 .497E-3 .497E-3 +C Variable min:-54570.793 -54570.793 -93851.678 13809.9875 -93851.678 33212.9087 +C 0.0 1.0 0.0 -93851.678 -54570.793 0.0 +C Times of min: .002745 .002745 .497E-3 .31E-3 .497E-3 .002982 +C 0.0 0.0 0.0 .497E-3 .002745 0.0 + PRINTER PLOT + 184 .1 0.0 1.0 BUS2 BUS3 { Axis limits: (-0.386, 1.774) +BLANK card ending plot cards +BEGIN NEW DATA CASE +C 2nd of 8 subcases illustrates the modeling of a transistor using TACS. +C This is as described by its inventor, Naoto Nagaoka, in his paper entitled +C "Large-signal transistor modeling using the ATP version of EMTP," which +C appeared in the September, 1988, issue of EMTP News. See Sect. IV example + .000010 .003 { Note larger time step (10 times that of paper's graphs) + 1 1 1 1 1 -1 + 5 5 20 20 50 50 +TACS HYBRID +91BASEX { Transistor base current is passed from electric network to TACS +90COLL { Transistor collector voltage is passed from electric network to TACS +90EMIT { Transistor emitter voltage is passed from electric network to TACS +88VCE = COLL - EMIT +88NZERO = 1.E-12 +88BASEC263 NZERO BASEX 1.0 +88COLLCU = BASEC2 * 200. -0.25E-3 + VCE * ( BASEC2**0.947 ) / 1.352 +88EQUIV1 = VCE / COLLCU +88TEMPR = 100. +98EQUIVR63 TEMPR EQUIV1 1.0 +33EQUIVR +77EQUIVR 2775. { Initial condition matches R during phasor solution +BLANK card ending all TACS data cards +91COLL EMIT TACS EQUIVR 3 + NONLIN NAME:Type92 ! { Even tho name could go on next card, use this instead +92BASE EMIT 4444. + -1.0E-3 -10.E3 + 0.0 0.0 + 0.1E-6 0.584 + 1.0E-6 0.613 + 3.0E-6 0.647 + 5.0E-6 0.664 + 10.0E-6 0.682 + 20.0E-6 0.706 + 30.0E-6 0.711 + 9999 + VCC COLL 3900. 1 + COLL OUT 3.0000 + OUT 2200. + EMIT 820.00 + EMIT 10.000 + VCC BASEX 55000. + BASEX 12000. + SINE BASEX 3.0 + SINE 2000. + COLL EMIT NAME PHASOR 2780. { R(0) = 2780 ohms is present for t < 0 only +BLANK card terminates all branch cards + BASEX BASE MEASURING 1 +BLANK card terminates all switch cards +14VCC 12.0 .01 { dc power supply (collector) } -1. +14SINE 40.E-3 1000. -90. { Amplifier input is 1 KHz sine wave +BLANK card terminates source cards of electric network +C Total network loss P-loss by summing injections = 1.067463086805E-02 +C Node-K Node-M I-real I-imag I-magn +C BASEX BASE 0.00000000E+00 1.05879118E-22 1.05879118E-22 +C Gen: VCC 12. 12. .00177910514467 .0017791052761 .01067463086805 +C Gen: 0.0 0.0 .68384076675E-6 0.0220230 -.4103044601E-5 + OUT COLL EMIT BASEX SINE +C Step Time COLL OUT COLL EMIT BASEX SINE +C EMIT +C *** Phasor I(0) = 0.0000000E+00 Switch "BASEX " to "BASE " closed +C 0 0.0 4.4479989 .197916E-5 5.75999803 1.31199913 2.14924482 .180994E-5 +C 1 .1E-4 4.44521153 -.00263941 5.75735464 1.31214311 2.15127714 .002511621 +C 2 .2E-4 .444370671 -3.9987412 1.75822147 1.3138508 2.15282414 .005013329 +C 3 .3E-4 .443906636 -3.9900316 1.76087902 1.31697238 2.15435666 .007495253 +BLANK ending output specification cards +C 300 .003 2.38611281 -1.6984961 3.8051742 1.41906139 2.11753544 .16073E-14 +C maxima : 5.90958724 1.87782143 7.34957934 1.47345869 2.17056873 .04 +C Times max : .00168 .00266 .00167 .00135 .2E-3 .25E-3 +C minima : .426098973 -3.9987412 1.75822147 1.31199913 2.07778426 -.04 +C Times min : .44E-3 .2E-4 .2E-4 0.0 .00275 .75E-3 + PRINTER PLOT + 194 .3 0.0 3.0 TACS EQUIVR { Axis limits: (0.000, 1.731) +BLANK card ending plot cards +BEGIN NEW DATA CASE +C 3rd of 8 subcases is the same as the first except that it uses newer and +C slower MODELS rather than older and faster TACS. + 1.0E-6 3.0E-3 + 1 1 1 1 1 -1 + 5 5 20 20 100 100 +MODELS +INPUT bus2 {v(BUS2)}, bus3 {v(BUS3)} +OUTPUT grid +MODEL dc30 + INPUT v2, v3 + VAR grid + OUTPUT grid + EXEC + IF abs(v2-v3)>=1.5e8*t +1e5 THEN grid:=1 ELSE grid:=0 ENDIF + ENDEXEC +ENDMODEL +USE dc30 AS dc30 + INPUT v2:=bus2, v3:=bus3 + OUTPUT grid:=grid +ENDUSE +RECORD + dc30.v2 AS bus2 + dc30.v3 AS bus3 + dc30.grid AS grid +ENDMODELS + GEN BUS1 15. + BUS1 2.9 + BUS1 BUS2 0.1 + BUS2 0.1 + BUS3 .017 + BUS3 490. + BUS2 BUS2R 24.34 + BUS3 BUS3R BUS2 BUS2R +BLANK card terminates electric network branches + BUS2 BUS3 -1. 1.E9 2 +11BUS2R BUS3R 20. GRID 13 +BLANK card ends all switches +14GEN 66500. 50. -2.0508 -1. +C --------------+------------------------------ +C From bus name | Names of all adjacent busses +C --------------+------------------------------ +C GEN |BUS1 * +C BUS1 |TERRA *GEN *BUS2 * +C BUS2 |TERRA *BUS1 *BUS3 *BUS2R * +C BUS3 |TERRA *TERRA *BUS2 *BUS3R * +C BUS2R |BUS2 *BUS3R * +C BUS3R |BUS3 *BUS2R * +C TERRA |BUS1 *BUS2 *BUS3 *BUS3 * +C --------------+------------------------------ +BLANK card terminates electric network sources +C Total network loss P-loss by summing injections = 9.738141670823E-08 +C Output for steady-state phasor switch currents. +C Node-K Node-M I-real I-imag I-magn +C BUS2 BUS3 -1.50498397E+01 -4.20286729E+02 4.20556099E+02 +C BUS2R BUS3R Open Open Open +C Gen ends: -12.86413577452 359.47829718648 -.3492459655E-9 .119526533815E8 +C Gen ends: -359.2480482325 -92.0508000 .119526533815E8 0.0000000 +C +C Step Time BUS2 BUS2R BUS3R BUS2R BUS3 BUS2 +C BUS3 BUS3R +C +C TACS TACS +C BUS3 GRID +C *** Phasor I(0) = -1.5049840E+01 Switch "BUS2 " to "BUS3 " closed +C 0 0.0 0.0 0.0 64751.3498 64751.3498 64751.3498 64751.3498 +C 64751.3498 0.0 +C *** Open switch "BUS2 " to "BUS3 " after 1.00000000E-06 sec. +C 1 .1E-5 0.0 0.0 64752.0751 64752.0751 64752.0751 64752.0751 +C 64752.0751 0.0 + 1 +C 3000 .003 122346.542 122346.542 -88693.149 33653.3927 -88693.149 33653.3927 +C -88693.149 0.0 +C Variabl max: 177392.698 177392.698 102764.956 84422.9848 102764.956 84422.9848 +C 102764.956 1.0 +C Times of max: .497E-3 .497E-3 .83E-4 .478E-3 .83E-4 .478E-3 +C .83E-4 .309E-3 +C Variabl min: -54570.793 -54570.793 -93851.678 13809.9875 -93851.678 33212.9087 +C -93851.678 0.0 +C Times of min: .002745 .002745 .497E-3 .31E-3 .497E-3 .002982 +C .497E-3 0.0 + PRINTER PLOT + 184 .1 0.0 1.0 BUS2 BUS3 { Axis limits: (-0.386, 1.774) +BLANK card ending plot cards +BEGIN NEW DATA CASE +C 4th of 8 subcases is the same as the first and the third, except that +C it uses both TACS and MODELS. The voltages BUS2 and BUS3 are input to TACS. +C VSW is output from TACS and input to MODELS. GRID is output from MODELS. +C Compare values at t=0 with 3rd subcase. Ending time TMAX should be +C extended to 3 msec if all 3000 steps are desired. Here, to save time +C (because MODELS simulates very slowly), only 600 steps will be simulated. +C 18 January 2003, add both the new Type-27 TACS source and the following +C optional request for timing. Note that the 6th subcase has the source, +C but not the declaration. As a result, dT-size differences will exist +C for the signals that are passed between TACS and MODELS. +MODELS BEFORE TACS { Reverse the default order of computation at each time step + 1.0E-6 0.6E-3 + 1 1 0 0 1 -1 + 5 5 20 20 100 100 +TACS HYBRID + 1DUMMY +UNITY + 1.0 + 1.0 0.5E-3 +90BUS2 +90BUS3 +99VSW = BUS2 - BUS3 +27DV { MODELS variable DV will define Type-27 TACS source of the same name +33BUS2 BUS3 VSW DV +BLANK card ends all TACS data +MODELS +INPUT deltav {TACS(vsw)} +OUTPUT grid +MODEL dc30 + INPUT dv + VAR grid + OUTPUT grid + EXEC + IF abs(dv)>=1.5e8*t +1e5 THEN grid:=1 ELSE grid:=0 ENDIF + ENDEXEC +ENDMODEL +USE dc30 AS dc30 + INPUT dv:=deltav + OUTPUT grid:=grid +ENDUSE +RECORD + dc30.dv AS dv +ENDMODELS + GEN BUS1 15. + BUS1 2.9 + BUS1 BUS2 0.1 + BUS2 0.1 + BUS3 .017 + BUS3 490. + BUS2 BUS2R 24.34 + BUS3 BUS3R BUS2 BUS2R +BLANK card terminates electric network branches + BUS2 BUS3 -1. 1.E9 +C The following card serves to name the switch following it. To see the +C results of this activity, interactively execute the "SWITCH" command of +C SPY, sending "EXTRA" for the alternative table. Another point: note +C the exclamation point, which is needed to hold lower case within A6 name +C (assuming KINSEN = 1 within STARTUP). + NAME: Valve ! { Request "NAME: " of cols. 3-8 precedes A6 valve name in 9-14 +11BUS2R BUS3R 20. GRID 12 +BLANK card ends all switches +14GEN 66500. 50. -2.0508 -1. +BLANK card terminates electric network sources +C First 1 output variables are electric-network voltage differences (upper voltage minus lower voltage); +C Next 4 output variables belong to TACS (with "TACS" an internally-added upper name of pair). +C Next 1 output variables belong to MODELS (with "MODELS" an internally-added upper name of pair). +C Step Time BUS2R TACS TACS TACS TACS MODELS +C BUS3R BUS2 BUS3 VSW DV DV +C *** Phasor I(0) = -1.5049840E+01 Switch "BUS2 " to "BUS3 " closed in the steady-state. +C 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +C *** Open switch "BUS2 " to "BUS3 " after 1.00000000E-06 sec. +C 1 .1E-5 0.0 64752.0751 64752.0751 0.0 0.0 0.0 +C 2 .2E-5 -506.98951 64680.6667 65187.6562 -506.98951 0.0 0.0 +C 3 .3E-5 -1509.364 64544.7937 66054.1577 -1509.364 -506.98951 -506.98951 +C 4 .4E-5 -2482.2238 64430.506 66912.7297 -2482.2238 -1509.364 -1509.364 +BLANK card ending node voltage request +C 300 .3E-3 139427.112 64952.7749 -74474.337 139427.112 138735.778 138735.778 +C Valve "BUS2R " to "BUS3R " closing after 3.10000000E-04 sec. +C Valve "BUS2R " to "BUS3R " opening after 3.23000000E-04 sec. +C 400 .4E-3 80675.1617 83379.4041 2704.24245 80675.1617 77287.9568 77287.9568 +C Valve "BUS2R " to "BUS3R " closing after 4.99000000E-04 sec. +C 500 .5E-3 0.0 73856.3228 -30892.73 104749.053 178498.741 178498.741 +C Valve "BUS2R " to "BUS3R " opening after 5.03000000E-04 sec. +C 600 .6E-3 77132.9224 58368.5333 -18764.389 77132.9224 77569.8407 77569.8407 +C Variable maxima : 178498.741 84889.8318 102764.956 178498.741 178498.741 178498.741 +C Times of maxima : .499E-3 .499E-3 .83E-4 .499E-3 .5E-3 .5E-3 +C Variable minima : -38620.899 0.0 -93608.909 -38620.899 -38620.899 -38620.899 +C Times of minima : .85E-4 0.0 .499E-3 .85E-4 .86E-4 .86E-4 +BLANK card ending plot cards +BEGIN NEW DATA CASE +C 5th of 8 subcases is the same as the 1st (using TACS only) except that +C it uses the pocket calculator in place of Dube's logic for supplemental +C variables. Answers should be identical except for roundoff error. Since +C the same as 1st subcase, connectivity and phasor outputs will be omitted +C as well as plotting. +C TACS ASSEMBLY LANGUAGE { Temporary request for use of pocket calculator +TACS POCKET CALCULATOR { 12 January 2001, this new line replaces preceding + 1.0E-6 .000600 + 1 1 0 0 0 -1 + 5 5 20 20 100 100 +TACS HYBRID + 1DUMMY +UNITY + 1.0 + 1.0 0.5E-3 +90BUS2 +90BUS3 +99VSW = BUS2 - BUS3 +99DRIVE = ABS(VSW) +99BREAK = 1.5E+8 * TIMEX + 1.0E+5 +98GRID 51+UNITY BREAK DRIVE +33DUMMY TIMEX UNITY BUS2 BUS3 VSW DRIVE BREAK GRID +BLANK card ends all TACS data + GEN BUS1 15. + BUS1 2.9 + BUS1 BUS2 0.1 + BUS2 0.1 + BUS3 .017 + BUS3 490. + BUS2 BUS2R 24.34 + BUS3 BUS3R BUS2 BUS2R +BLANK card terminates electric network branches + BUS2 BUS3 -1. 1.E9 2 + NAME: Valve ! { Request "NAME: " of cols. 3-8 precedes A6 valve name in 9-14 +11BUS2R BUS3R 20. GRID 13 +BLANK card ends all switches +14GEN 66500. 50. -2.0508 -1. +BLANK card terminates electric network sources + 1 { Request for all node voltage outputs +BLANK card ending plot cards +BEGIN NEW DATA CASE +C 6th of 8 subcases is the same as the 4th, except that it demonstrates +C the sorting of TACS and MODELS data using /TACS and /MODELS requests. +C Created 3 July 1998, this should be mentioned in the July newsletter +C (see "Furnas" or "DC-30"). +C 18 January 2003, add both the new Type-27 TACS source. Note that the +C 4th subcase is modified similarly. In addition, MODELS BEFORE TACS was +C added to the 4th subcase, but not here. As a result, dT-size differences +C will exist for the signals that are passed between TACS and MODELS. + 1.E-6 5.E-6 { Only take 5 steps; these are plenty for illustration + 1 -1 +TACS HYBRID { Request to begin TACS data appears just once +/MODELS +MODELS { Request to begin MODELS data appears just once +C End of fixed data. Begin variable /-cards, which can appear in any +C order. To illustrate that TACS data really will be sorted to precede +C MODELS data, note that /TACS follows /MODELS in the following. +C I.e., we rely on /-card sorting to correct this. TACS data is +C separate and distinct from MODELS data just as branch data is +C separate and distinct from switch or source data. +/MODELS +INPUT deltav {TACS(vsw)} +OUTPUT grid +MODEL dc30 + INPUT dv + VAR grid + OUTPUT grid + EXEC + IF abs(dv)>=1.5e8*t +1e5 THEN grid:=1 ELSE grid:=0 ENDIF + ENDEXEC +ENDMODEL +USE dc30 AS dc30 + INPUT dv:=deltav + OUTPUT grid:=grid +ENDUSE +RECORD + dc30.dv AS dv +/TACS + 1DUMMY +UNITY + 1.0 + 1.0 0.5E-3 +90BUS2 +90BUS3 +99VSW = BUS2 - BUS3 +27DV { MODELS variable DV will define Type-27 TACS source of the same name +33BUS2 BUS3 VSW DV +/BRANCH + GEN BUS1 15. + BUS1 2.9 + BUS1 BUS2 0.1 + BUS2 0.1 + BUS3 .017 + BUS3 490. + BUS2 BUS2R 24.34 + BUS3 BUS3R BUS2 BUS2R +/SWITCH + BUS2 BUS3 -1. 1.E9 + NAME: Valve ! { Request "NAME: " of cols. 3-8 precedes A6 valve name in 9-14 +11BUS2R BUS3R 20. GRID 12 +/SOURCE +14GEN 66500. 50. -2.0508 -1. +/OUTPUT +C Step Time BUS2R TACS TACS TACS TACS MODELS +C BUS3R BUS2 BUS3 VSW DV DV +C *** Phasor I(0) = -1.5049840E+01 Switch "BUS2 " to "BUS3 " closed in the steady-state. +C 0 0.0 0.0 0.0 0.0 0.0 0.0 0.0 +C *** Open switch "BUS2 " to "BUS3 " after 1.00000000E-06 sec. +C 1 .1E-5 0.0 64752.0751 64752.0751 0.0 0.0 0.0 +C 2 .2E-5 -506.98951 64680.6667 65187.6562 -506.98951 0.0 -506.98951 +C 3 .3E-5 -1509.364 64544.7937 66054.1577 -1509.364 -506.98951 -1509.364 +C 4 .4E-5 -2482.2238 64430.506 66912.7297 -2482.2238 -1509.364 -2482.2238 +C 5 .5E-5 -3414.3602 64348.9091 67763.2693 -3414.3602 -2482.2238 -3414.3602 +C End of /-card data. The only thing that remains are the various blank +C cards that terminate the various data classes. Note the one for MODELS +C (optional for MODELS, but necessary for sorting): +BLANK card terminates all TACS data +BLANK card ends all MODELS data +ENDMODELS +BLANK card ending all BRANCH cards +BLANK card ending all SWITCH cards +BLANK terminates the last SOURCE card +BLANK card ends OUTPUT variable requests +BLANK card ending all batch-mode PLOT cards +C Comment about 6 lines above. Note ENDMODELS has like the initiation +C word MODELS: there is only one of them, and has nothing to do with +C the actual modeling. It is part of the structure in which actual data +C is carried. Normally, ENDMODELS would precede the blank card ending +C MODELS, but with sorting that is not possible. /-card sorting will +C put the actual data there. If we raise ENDMODELS line by one row, +C it would precede all real MODELS data, and that would be completely +C wrong. So, we put it after the blank. Recall MODELS ignores blank +C lines, so the blank card ending MODELS is ignored. It is essential +C to the sorting, but then is ignored by MODELS itself. Since it was +C optional, anyway, this works well. +BEGIN NEW DATA CASE +C 7th of 8 subcases is the same as the 1st (using TACS only) except that +C it uses secret relay modeling in place of Dube's logic for supplemental +C variables. Answers should be identical except for possible roundoff error +C and the more serious logic difference between a valve and a switch. Every +C time step between 320 and 520 is printed to show time steps 322 and 509 +C at which the output current differs. The 1st of these enters minima, to +C make one line different. These are merely isolated output differences +C between an ATP switch and an ATP valve; in fact, internal solution signals +C are identical. Except for the lines mentioned, dT-loop output is identical. +C Let's document the first difference. Relay modeling produces this: +C *** Open switch "BUS2R " to "BUS3R " after 3.22000000E-04 sec. +C 322 .322E-3 -12.461019 ... 66357.9825 0.0 +C whereas the original TACS modeling produces the following output: +C Valve "BUS2R " to "BUS3R " opening after 3.22000000E-04 sec. +C 322 .322E-3 -12.461019 ... 66357.9825 -.25597819 +C The relay modeling, using a switch, shows output that has been forced to +C zero whereas the valve modeling shows the illegal reverse current (less +C than the 20-amp I-epsilon threshold) that prompted the opening. This value +C -.25597819 is the only way that extrema differ (relay modeling has zero). +C About simulation speed, this relay modeling should be the fastest by far. +C Use of MODELS is shockingly slow, TACS is what it is, and the new relay +C modeling should be faster than compiled TACS, so perhaps 10 times faster +C than conventional (not compiled) TACS. Begin with the CSRM request. This +C precedes the list of relay connections. IRELAY is to be a positive integer +C if not blank or zero. This is the sampling multiple (here, unity): +C 345678901234567890123456789012<-IRELAY { Ruler for sampling multiple in 33-40. +CONNECT SECRET RELAY MODELS 1 { This is optional (a blank or 0 ==> 1) +C The A10 relay name "DC-30H " in the middle of 3 data lines below serves +C only to select logic for the 8th subcase rather than the 7th. This is not +C at all realistic. For real use, the name typically would select different +C relay logic from a catalog of available relay types offered by some vendor. +C Input 2A6 names Name of 2A6 names of +C class of variable relay ATP switch +C A15 >< A6 >< A6 > < A10 >< A6 >< A6 > { Ruler for data. A15, 2A6, A10, ... +Branch voltage BUS2 BUS3 DC-30g BUS2R BUS3R { Use relay named DC-30g, 1 input V, ... +END RELAY CONNECTIONS { End indeterminate list of connections to secret relays + 1.0E-6 3.0E-3 + 1 1 1 1 1 -1 + 5 5 20 20 100 100 320 1 520 20 + GEN BUS1 15. + BUS1 2.9 + BUS1 BUS2 0.1 + BUS2 0.1 + BUS3 .017 + BUS3 490. + BUS2 BUS2R 24.34 + BUS3 BUS3R BUS2 BUS2R +BLANK card terminates electric network branches + BUS2 BUS3 -1. 1.E9 2 +C Preceding 1st of 2 switches is unchanged. The 2nd is modified as follows: +C 11BUS2R BUS3R 20. { Valve of DC-30 } GRID 13 +C Switch data: T-close T-open I-epsiln --- ruler for a Type-0 switch + BUS2R BUS3R 999. 0.0 20. 3 +C The type code has changed from 11 to 0. The same 20 amps of current margin +C is used, although columns differ (valve vs. time-controlled switch). Note +C T-close = 999. in columns 15-24 simply is a large time that never will be +C reached. Were it not for the relay logic, this switch would remain open +C for the entire simulation. T-open is not used (will be set internally), +C so can be left blank or zero. The current margin does make a difference; +C if erased or set to zero, opening would be delayed by several time steps. +BLANK card ends all switches +14GEN 66500. 50. -2.0508 -1. +BLANK card terminates electric network sources + 1 { Request for all node voltage outputs + PRINTER PLOT + 184 .1 0.0 1.0 BUS2 BUS3 { Axis limits: (-0.386, 1.774) +BLANK card ending plot cards +$DISABLE +BEGIN NEW DATA CASE +C BENCHMARK DC-30, chopped. TACS outputs (the "33" card) have been +C eliminated for easy comparison using Mike Albert's freeware FC. It +C is informative to compare output of this with output of 7th subcase. + 1.0E-6 3.0E-3 + 1 1 1 1 1 -1 + 5 5 20 20 100 100 320 1 520 20 +TACS HYBRID + 1DUMMY +UNITY + 1.0 + 1.0 0.5E-3 +90BUS2 +90BUS3 +99VSW = BUS2 - BUS3 +99DRIVE = ABS(VSW) +99BREAK = 1.5E+8 * TIMEX + 1.0E+5 +98GRID 51+UNITY BREAK DRIVE +C 33DUMMY TIMEX UNITY BUS2 BUS3 VSW DRIVE BREAK GRID +BLANK card ends all TACS data + GEN BUS1 15. + BUS1 2.9 + BUS1 BUS2 0.1 + BUS2 0.1 + BUS3 .017 + BUS3 490. + BUS2 BUS2R 24.34 + BUS3 BUS3R BUS2 BUS2R +BLANK card terminates electric network branches + BUS2 BUS3 -1. 1.E9 2 + NAME: Valve ! { Request "NAME: " of cols. 3-8 precedes A6 valve name in 9-14 +11BUS2R BUS3R 20. GRID 13 +BLANK card ends all switches +14GEN 66500. 50. -2.0508 -1. +BLANK card terminates electric network sources + 1 { Request for all node voltage outputs + PRINTER PLOT + 184 .1 0.0 1.0 BUS2 BUS3 { Axis limits: (-0.386, 1.774) +BLANK card ending plot cards +$ENABLE +BEGIN NEW DATA CASE +C 8th of 8 subcases continues with external relay modeling. Unlike the +C preceding subcase, this has multiple relays with multiple inputs and +C multiple outputs (i.e., a relay controls more than 1 circuit breaker). +C 20 steps of 1 msec are taken to traverse one 50-Hz cycle. +PRINTED NUMBER WIDTH, 9, 2, { Request maximum precision (for 12 output columns) +CONNECT SECRET RELAY MODELS { Request that precedes list of relay connections +C The A10 relay name "DC-30H " in the middle of 3 data lines below serves +C only to select logic for the 8th subcase rather than the 7th. This is not +C at all realistic. For real use, the name typically would select different +C relay logic from a catalog of available relay types offered by some vendor. +C Input 2A6 names Name of 2A6 names of +C class of variable relay ATP switch +C A15 >< A6 >< A6 > < A10 >< A6 >< A6 > { Ruler for data. A15, 2A6, A10, ... +DIAGNOSTIC 9 { Debug print just for relays is located as if overlay 1 +Branch voltage REC DC-30H SEND REC { Relay 1, input is node voltage REC + GEN EXTRA { 2nd output for preceding relay # 1 +Switch current GEN SWIT DC-30H NAME: BREAK2 { Relay 2, input current GEN to SWIT +C Preceding "NAME: BREAK2" could just as well be replaced by "SWIT SEND " +Branch voltage GEN SEND { 2nd input for preceding relay is voltage +Branch voltage REC DC-30H EXTRA PLUS { Relay 3, input is node voltage REC +Switch status SEND SWIT { 2nd input for preceding is switch status +Output signal SEND REC { 3rd input for preceding is output vector +R-L-C current PLUS { 4th input ... is current of series R-L-C +Switch power GEN SWIT DC-30H GEN SWIT { Relay 4, input is power GEN to SWIT +R-L-C power PLUS { 2nd input for preceding is R-L-C power +C 3456789012345678901234567890123456789012345678901 +C TACS signal --- 1st of 2 relay input request words that is not illustrated +C MODELS signal --- 2nd of 2 relay input request words that is not illustrated +END RELAY CONNECTIONS { End indeterminate list of connections to secret relays +C The preceding addresses relay connections that are under user control. In +C addition, there might be hidden connections that are built into a relay. +C This is illustrated for Relay 3, which has two such special outputs. 1st, +C in the .LIS file, there will be seen two lines that confirm any change +C of switch status of that 2nd input to Relay 3. Look for 2 such messages: +C After step 5: Notice from model of relay 3: switch has just opened. +C After step 19: Notice from model of relay 3: switch has just closed. +C Also seen in the .LIS file, and also present in any .PL4 file of plot +C points, will be one appended signal. In the dT-loop heading, this is +C identified by the pair of names RELAY3 and SIGNAL. The 1st of these +C names is built by ATP, and indicates an appended signal from relay # 3. +C The 2nd name comes from the code for relay # 3. It is built in code. +C In this case, relay input number 5 simply is passed back as the relay +C signal. About interpretation of CSRM data, the 10-character relay name +C normally will be confirmed within quotation marks. That is if there is +C no appended signal. A relay that has an appended signal will have the +C A10 relay name replaced by (A6) followed by the 6-character variable +C name. For this data, look for "(A6)SIGNAL" where SIGNAL is the +C second of the two names that identify the appended output variable. +C Relay # 4 is particularly degenerate in that it has no associated relay +C logic! Yes, it has an output (a switch), but code will never send a +C signal to that switch. Those 2 inputs (numbers 7 and 8) were defined +C by relay 4, but in fact they are not used by any relay code. Values +C are selectively documented, one time step for each: +C Relay 4 documents relay input # 7 = switch power = 0.26967E+01 +C Relay 4 documents relay input # 8 = series R-L-C power = 0.24811E+02 + .001 .020 { Take 20 1-msec steps through the 20 msec of a 50-Hz cycle + 1 1 1 0 1 + GEN SWIT 6.0 + SWIT SEND 1.0 + SEND REC 2.0 1 + REC 1.0 + EXTRA PLUS 1.0 { Extra resistance will be shorted at 12 msec + PLUS 1.0 5.0 { Mostly-inductive branch delays zero} 1 +BLANK card terminates electric network branches +C Switch data: T-close T-open I-epsiln --- ruler for a Type-0 switch + GEN SWIT -1. 999. 0.0 3 +C A6 name BREAK2 applies to the following switch. It is used by relay input: + NAME: BREAK2 { Request "NAME: " of cols. 3-8 precedes A6 switch name in 9-14 + SWIT SEND -1. 999. .001 3 + SEND REC 999. 0.0 0.0 2 + GEN EXTRA 999. 0.0 0.0 3 + EXTRA PLUS -1. 999. 0.0 3 +C Note about preceding switch (SEND, REC) which has the exceptional output +C request "2" in col. 80, so just switch voltage. Originally, this was a +C "3" for both voltage and current, and the series R-L-C branch having the +C same names (so in parallel) had no output request. I.e., originally it was +C a branch and not a switch current that was displayed. But this was not as +C interesting when passed back from the relay as an appended output. As a +C switch current, it agreed with the original. But as a branch current, one +C will note a one time-step delay. In general, an OUTPUT request might be +C stale by one dT (it depends on the variable). This illustrates the problem. +C This illustrates that for a series R-L-C branch, one time step is lost as +C the output is passed to the relay & back again. Not so for switch current. +C The 2 right-most cols. of dT-loop output make the delay immediately obvious. +C An implied detail of a relay OUTPUT request is this: it is output vector +C current, not voltage, that will be fed to relays. In terms of batch- +C mode plotting, this is Type 9 not 8 (branch voltage) or 4 (node voltage). +C There is no loss of generality since only current is of interest. Voltage +C is available via a VOLTAGE request, so one never would need to go to the +C output vector to find it. +BLANK card ends all switches +14GEN 10.0 50. 0.0 -1. +BLANK card terminates electric network sources +C <<<< Next, show delayed input that is associated with preceding CONNECT SECRET RELAY MODELS declaration. +C Debug printout control as if overlay 1 (col. 22) |DIAGNOSTIC 9 { Debug print just for relays is located as if overlay 1 +C Relay 1. "DC-30H " Input # 1 Switch # 3 |Branch voltage REC DC-30H SEND REC { Relay 1, input is node volt +C Continuation. Switch # 4 | GEN EXTRA { 2nd output for preceding re +C Relay 2. "DC-30H " Input # 2 Switch # 2 |Switch current GEN SWIT DC-30H NAME: BREAK2 { Relay 2, input current GEN +C Continuation. Input # 3 |Branch voltage GEN SEND { 2nd input for preceding relay is +C Relay 3. "(A6)SIGNAL" Input # 1 Switch # 5 |Branch voltage REC DC-30H EXTRA PLUS { Relay 3, input is node volt +C Continuation. Input # 4 |Switch status SEND SWIT { 2nd input for preceding is switch +C Continuation. Input # 5 |Output signal SEND REC { 3rd input for preceding is output +C Continuation. Input # 6 |R-L-C current PLUS { 4th input ... is current of serie +C Relay 4. "DC-30H " Input # 7 Switch # 1 |Switch power GEN SWIT DC-30H GEN SWIT { Relay 4, input power GEN to +C Continuation. Input # 8 |R-L-C power PLUS { 2nd input for preceding is R-L-C +C Terminator of external relay connection data. |END RELAY CONNECTIONS { End indeterminate list of connections to secret relays +C <<<< End of insertion that is associated with delayed input of external relay connections. All relay names were recognized. +C Column headings for the 12 EMTP output variables follow. These are divided among the 5 possible classes as follows .... +C First 5 output variables are electric-network voltage differences (upper voltage minus lower voltage); +C Next 6 output variables are branch currents (flowing from the upper node to the lower node); +C Step Time GEN SWIT SEND GEN EXTRA GEN SWIT GEN EXTRA SEND PLUS RELAY3 +C SWIT SEND REC EXTRA PLUS SWIT SEND EXTRA PLUS REC TERRA SIGNAL +C *** Phasor I(0) = 3.3333333E+00 Switch "GEN " to "SWIT " closed in the steady-state. +C *** Phasor I(0) = 3.3333333E+00 Switch "SWIT " to "SEND " closed in the steady-state. +C *** Phasor I(0) = 0.0000000E+00 Switch "EXTRA " to "PLUS " closed in the steady-state. +C 0 0.0 0.0 0.0 6.66667 10. 0.0 3.33333 3.33333 0.0 0.0 3.33333 0.0 0.0 +C *** External relay number 2 permits circuit breaker from "SWIT " to "SEND " to open after time T = 1.00000000E-03 sec. +C 1 .1E-2 0.0 0.0 6.34038 9.51057 0.0 3.17019 3.17019 0.0 0.0 3.17019 0.0 3.33333 +C Relay 4 documents relay input # 7 = switch power = 0.26967E+01 +C 2 .002 0.0 0.0 5.39345 8.09017 0.0 2.69672 2.69672 0.0 0.0 2.69672 0.0 3.17019 +C 3 .003 0.0 0.0 3.91857 5.87785 0.0 1.95928 1.95928 0.0 0.0 1.95928 0.0 2.69672 +BLANK card ending node voltage outputs +C 4 .004 0.0 0.0 2.06011 3.09017 0.0 1.03006 1.03006 0.0 0.0 1.03006 0.0 1.95928 +C *** Open switch "SWIT " to "SEND " after 5.00000000E-03 sec. +C Notice from model of relay 3: switch has just opened. +C 5 .005 0.0 0.0 -.3E-15 -.4E-15 0.0 -.1E-15 0.0 0.0 0.0 -.1E-15 0.0 1.03006 +C 6 .006 0.0 -.77254 -1.5451 -3.0902 0.0 -.77254 0.0 0.0 0.0 -.77254 0.0 -.1E-15 +C 7 .007 0.0 -1.4695 -2.9389 -5.8779 0.0 -1.4695 0.0 0.0 0.0 -1.4695 0.0 -.77254 +C *** External relay number 1 forces circuit breaker from "SEND " to "REC " to close after time T = 8.00000000E-03 sec. +C The same relay forces circuit breaker from "GEN " to "EXTRA " to close at this same time. +C 8 .008 0.0 -2.0225 -4.0451 -8.0902 0.0 -2.0225 0.0 0.0 0.0 -2.0225 0.0 -1.4695 +C 9 .009 0.0 -4.7553 0.0 0.0 0.0 -4.7553 0.0 -.8646 -.8646 0.0 -.8646 -2.0225 +C Relay 4 documents relay input # 8 = series R-L-C power = 0.24811E+02 +C 10 .01 0.0 -5. 0.0 0.0 0.0 -5. 0.0 -2.4811 -2.4811 0.0 -2.4811 0.0 +C Notice from model of relay 3 : series R-L-C branch current first exceeds 3 amperes at time 11.0 milliseconds. +C 11 .011 0.0 -4.7553 0.0 0.0 0.0 -4.7553 0.0 -3.8037 -3.8037 0.0 -3.8037 0.0 +C 12 .012 0.0 -4.0451 0.0 0.0 0.0 -4.0451 0.0 -4.7122 -4.7122 0.0 -4.7122 0.0 +C *** External relay number 3 forces circuit breaker from "EXTRA " to "PLUS " to open after time T = 1.30000000E-02 sec. +C 13 .013 0.0 -2.9389 0.0 0.0 0.0 -2.9389 0.0 -5.1252 -5.1252 0.0 -5.1252 0.0 +C 14 .014 0.0 -1.5451 0.0 0.0 -4.5913 -1.5451 0.0 -4.5913 0.0 0.0 -4.5913 0.0 +C *** Open switch "SEND " to "REC " after 1.50000000E-02 sec. +C 15 .015 0.0 .1E-13 0.0 0.0 -3.3183 .1E-13 0.0 -3.3183 0.0 0.0 -3.3183 0.0 +C 16 .016 0.0 .772542 1.54508 0.0 -1.9547 .772542 0.0 -1.9547 0.0 .772542 -1.9547 0.0 +C 17 .017 0.0 1.46946 2.93893 0.0 -.55581 1.46946 0.0 -.55581 0.0 1.46946 -.55581 .772542 +C *** Open switch "GEN " to "EXTRA " after 1.80000000E-02 sec. +C 18 .018 0.0 2.02254 4.04508 0.0 .793462 2.02254 0.0 0.0 0.0 2.02254 .793462 1.46946 +C *** External relay number 2 forces circuit breaker from "SWIT " to "SEND " to close after time T = 1.90000000E-02 sec. +C 19 .019 0.0 2.37764 4.75528 23.9484 0.0 2.37764 0.0 0.0 0.0 2.37764 -.1E-14 2.02254 +C Notice from model of relay 3: switch has just closed. +C 20 .02 0.0 0.0 6.66667 -4.4379 0.0 3.33333 3.33333 0.0 0.0 3.33333 .14E-14 2.37764 +C Variable maxima : 0.0 2.37764 6.66667 23.9484 .793462 3.33333 3.33333 0.0 0.0 3.33333 .793462 3.33333 +C Times of maxima : 0.0 .019 0.0 .019 .018 .02 0.0 0.0 0.0 0.0 .018 .1E-2 +C Variable minima : 0.0 -5. -4.0451 -8.0902 -4.5913 -5. 0.0 -5.1252 -5.1252 -2.0225 -5.1252 -2.0225 +C Times of minima : 0.0 .01 .008 .008 .014 .01 .005 .013 .013 .008 .013 .009 + PRINTER PLOT +C So, what relay logic produced the preceding? Very simple and artificial. +C Logic will be summarized here in words, for completeness: +C Relay 1. It uses 1st of 8 relay inputs, which is a branch voltage. If +C the relay already has closed, input is ignored. If not, a +C voltage less than or equal to -2.0 will close the relay. +C Relay 2. It uses 2nd of 8 relay inputs, which is a switch current. If +C the initially-closed relay waits to open, and if current is +C greater than or equal to 2.1, the relay opens. If relay is +C open, wait until time reaches or exceeds 19 msec to reclose. +C Once reclosed, it stays closed. +C Relay 3. It uses 4th of 8 relay inputs, which is a switch status, +C to issue those messages about opening or closing (2 messages). +C It uses 5th of 8 relay inputs, which is current of the output +C vector, as a variable that ATP will append to its output vector. +C It uses 6th of 8 relay inputs, which is current of series R-L-C, +C to produce output when it first exceeds 3 amperes. About opening, +C (relay 3 begins closed), this is allowed beginning at 12 msec. +C Relay 4. No logic. It switches nothing. It just documents inputs 7 & 8. +BLANK card ending plot cards +BEGIN NEW DATA CASE +BLANK -- cgit v1.2.3