One last point, you can see that with either model you will still get a very nearly correct low-side voltage from the load flow in my specific case of unloaded transformers in parallel (one off-nominal).
Because in that ratio for either YBUS matrix is very nearly the same. From: Russ Patterson [mailto:[email protected]] Sent: Thursday, January 7, 2021 8:12 PM To: 'MATPOWER-L' Subject: RE: circulating current (MVAR loss) Hi Ray, I believe you are correct - if you ensure that the off-nominal transformer is added to the model with orientation in the branch data as coming FROM the low-side TO the high-side it will build the model correctly. Below is a snip from my notes PPT and I compare the textbook model (left-hand side) to the MATPOWER model (right-hand side). Entering the off-nominal transformer branch information like this (with the low-side as the FROM bus) builds the exact correct model and the load flow results exactly match those that are found by hand with the textbook approach. The simple solution appears to require that off-nominal transformers be entered in branch data with this orientation - otherwise incorrect results are to be expected. So far I have verified that PW, MATPOWER, PSS/E all agree and have the incorrect result. Siemens PSS/CAPE load flow produces the correct result as-is. Changing the orientation (as you suggested) in the MATPOWER branch data for the off-nominal bank will result in it producing the correct result. Best regards, russ From: [email protected] [mailto:[email protected]] On Behalf Of Ray Daniel Zimmerman Sent: Wednesday, January 6, 2021 11:52 AM To: MATPOWER-L Subject: Re: circulating current (MVAR loss) The term "pi-model" may be used to refer to different things, but I think what I said is still correct. MATPOWER uses an ideal transformer (with possible complex off-nominal taps) in series with a standard pi-model transmission line that includes both a series impedance and shunt elements. If the shunt elements are ignored, the resulting model (series impedance in series with ideal transformer) can also be represented as a different pi-model. But it matters whether the transformer is at the "from" bus and the impedance at the "to" bus or vice versa. And I believe MATPOWER and the textbooks you are using are identical, except for the convention used for this orientation. So, if I am correct about that, simply swapping the orientation and inverting the tap ratio in MATPOWER should result in identical results to your hand calculations. Ray On Jan 4, 2021, at 2:21 PM, Russ Patterson <[email protected]> wrote: I'll take a look, thanks Ray. But, the pi-model's I'm talking about are to accommodate an off-nominal transformer. The pi- model you are talking about is to accommodate the shunt terms which are not present in my case (bc). Two different animals, right? russ From: <mailto:[email protected]> [email protected] [ <mailto:[email protected]> mailto:[email protected]] On Behalf Of Ray Daniel Zimmerman Sent: Monday, January 4, 2021 2:29 PM To: MATPOWER-L Subject: Re: circulating current (MVAR loss) Actually, it looks to me like the difference is simply the convention of which end of the branch has the impedance and which end has the ideal transformer. If you flip the orientation of the branch in your MATPOWER case, so that it goes from bus 2 to bus 1 and invert the tap ratio, I think the MATPOWER results should match the other models exactly, right? Ray On Jan 4, 2021, at 12:32 PM, Ray Daniel Zimmerman < <mailto:[email protected]> [email protected]> wrote: Hi Russ, I suspect the models may not be identical. Are they using the model shown in the <https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmatpower. org%2Fdocs%2FMATPOWER-manual-7.1.pdf&data=04%7C01%7Cruss%40PattersonPowerEng ineers.com%7C39ce788577f941794e8a08d8b372672f%7C129f4b88f0464380bb358fe60741 29bb%7C0%7C0%7C637456651244185313%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMD AiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=UZ3HUdq9JeOjP8 H7RBaPW6HlYWZTHW64DMZS%2F1zszPs%3D&reserved=0> MATPOWER User's Manual in Fig 3-1 with an ideal transformer in series with a pi-model? If not, that would explain the discrepancy. I don't have those books handy, so feel free to send me (off-list please) the PDFs of the relevant pages, as it would be useful to confirm. Thanks, Ray On Jan 4, 2021, at 11:19 AM, Russ Patterson < <mailto:[email protected]> [email protected]> wrote: Hi Ray, I've chewed on this a while and it looks like the MATPOWER approach is equivalent to the circuit below for the off-nominal transformer (#2). The <image001.png> I show is based on <image002.png> for both transformers (#1 is at nominal tap, #2 is at tap of 1.0502). The <image003.png> below is = <image004.png>. This is the <image001.png> that MATPOWER builds. The secondary bus voltage is then 0.976 pu. <image005.png> Below is what you get if you follow the approach that Gross1, Neunswander2, and Kusic3 use (attached). <image006.png> Although the MATPOWER approach and Gross approach result in different <image007.png> matrices, they result in nearly exactly the same secondary bus voltage because the ratio of <image008.png> in both are nearly identical. It seems to me that the <image001.png> created by MATPOWER may be wrong when off-nominal taps are used. I say that with a large dose of humility because surely I am missing something. But, it seems clear that either Gross or MATPOWER is wrong here. What am I missing? References (I can provide pdf of the pages if needed): 1 - "Power System Analysis", 2ed, Charles A. Gross (p. 204) 2 - "Modern Power Systems", John. R. Neunswander (p. 251) 3 - "Computer-Aided Power System Analysis", George L. Kusic (p. 95) Best regards, Russ From: <mailto:[email protected]> [email protected] [ <mailto:[email protected]> mailto:[email protected]] On Behalf Of Ray Daniel Zimmerman Sent: Monday, December 21, 2020 11:44 AM To: MATPOWER-L Subject: Re: circulating current (MVAR loss) I suggest double-checking your calculations against the code in makeYbus.m, which is pretty straightforward, and the model described in the <https://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmatpower. org%2Fdocs%2FMATPOWER-manual-7.1.pdf&data=04%7C01%7Cruss%40PattersonPowerEng ineers.com%7C39ce788577f941794e8a08d8b372672f%7C129f4b88f0464380bb358fe60741 29bb%7C0%7C0%7C637456651244195308%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMD AiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C1000&sdata=pkZh4dMIQ2YHvP WfBsF1U8s3%2FwKaghKUjmC10O9YZHw%3D&reserved=0> User's Manual see Figure 3-1 and equation (3.2). Be sure to keep in mind the orientation of the taps in the model. Ray On Dec 16, 2020, at 3:52 PM, Russ Patterson < <mailto:[email protected]> [email protected]> wrote: Carlos - thank you. Very helpful. The YBus I get for my case is below. I expected Y(1,1) to equal the of this sum: (1/j0.1) + (1/j0.09522) + (1/-j1.991) = j 19.9997 (negative sign is per coder preference). Is attached (page 1) not how MATPOWER would modify the bank #2 impedances before creating YBUS? Yb = Compressed Column Sparse (rows = 2, cols = 2, nnz = 4 [100%]) (1, 1) -> 0 - 19.0663i (2, 1) -> 0 + 19.5217i (1, 2) -> 0 + 19.5217i (2, 2) -> 0 - 20i Best regards, russ From: <mailto:[email protected]> [email protected] [ <mailto:[email protected]> mailto:[email protected]] On Behalf Of Carlos E Murillo-Sanchez Sent: Wednesday, December 16, 2020 4:12 PM To: MATPOWER discussion forum Subject: Re: circulating current (MVAR loss) Russ Patterson wrote: Hi - I am still trying to hand calculate the flow into branch 2 from bus 1 to bus 2. I can't get my results to match MATPOWER. I get Q into the banks from bus 1 of, Bank #1: 24.00 MVAR Bank #2: -25.02 MVAr Attached is my short calculation and the .m file. Is there a way to have MATPOWER barf out the YBUS matrix? >> help makeYbus If buses are numbered consecutively starting from 1 in the bus table (see ext2int if not), simply type: >> mpc = loadcase('mycase'); >> [Yb, Yf, Yt] = makeYbus(mpc) To get all the relevant current injections in the solved case, simply do >> mpc = runpf(mpc); >> define_constants; >> V = mpc.bus(:, VM) .* exp(1i * mpc.bus(:, VA)*pi/180); >> Ibus = Yb * V >> Ifrom = Yf * V; >> Ito = Yt * V; >From there, compute power injections as >> Sbusinj = V .* conj(Yb * V); >> Sfrominj = V(mpc.branch(:, F_BUS)) .* conj(Yf * V); >> Stoinj = V(mpc.branch(:, T_BUS)) .* conj(Yt * V); carlos. <power.pdf> <image021.png><image007.png><image001.png><image012.png><image014.png><image 022.png><image011.png><image005.png><image013.png><image020.png><image003.pn g><image019.png><snip.pdf>
