设为首页收藏本站|繁體中文 快速切换版块

 找回密码
 立即加入
搜索
查看: 1324|回复: 0

[讨论] 潮流运算牛拉matlab出错

[复制链接]

该用户从未签到

尚未签到

发表于 2015-6-6 20:23:30 | 显示全部楼层 |阅读模式

马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!

您需要 登录 才可以下载或查看,没有账号?立即加入

×
%本程序的功能是用牛顿——拉夫逊法进行潮流计算; l  [( k: z0 Y
% B1矩阵:1、支路首端号;2、末端号;3、支路阻抗;4、支路对地电纳( ]0 |+ u* Y. N: P9 X
%         5、支路的变比;6、支路首端处于K侧为1,1侧为05 {4 g# w& W# l  v9 ~) G8 L$ o; n
% B2矩阵:1、该节点发电机功率;2、该节点负荷功率;3、节点电压初始值, }. Q0 T" q& `6 L  ^9 m
%         4、PV节点电压V的给定值;5、节点所接的无功补偿设备的容量. f) T; l; v9 ^0 @" W4 ^5 |& n
%         6、节点分类标号! O: s5 Q1 l2 q
clear;
. d& _9 `5 k" {. Vn=24;%input('请输入节点数:n=');
6 Q+ j$ l$ r0 Q: v) p7 E- j1 u3 |nl=38;%input('请输入支路数:nl=');" D# L" I3 i1 n/ [
isb=1;%input('请输入平衡母线节点号:isb=');  j& r1 ^5 k& P8 Z
pr=0.00001;%input('请输入误差精度:pr=');
; Z7 }7 y$ k: |6 h: XB1=[1 2 0.0026+0.0139i 0.4611i 1 0;# }( f% o7 s+ Y2 U# t
    1 3 0.0546+0.2212i 0.0572i 1 0;
  O$ E1 k& R& ^' ?: W    1 5 0.0218+0.0845i 0.0229i 1 0;
" v' F* e" A4 D/ B4 x    2 4 0.0328+0.1267i 0.0343i 1 0;/ e( T+ p  V/ J  V' z  }" l
    2 6 0.0497+0.192i 0.052i 1 0;4 c4 ?8 ^$ r& z
    3 9 0.0308+0.119i 0.0322i 1 0;
. K' I( C$ ~$ G. J  m    3 24 0.0023+0.0839i 0 1 0;
7 [6 P" r! d- V: {6 q    4 9 0.0268+0.1037i 0.0281i 1 0;
( }! G  G) @! `/ b& B/ u    5 10 0.0228+0.0883i 0.0239i 1 0;$ v" q4 i* O( O9 [% k6 P
    6 10 0.0139+0.0605i 2.459i 1 0;$ T0 U8 M/ Y/ O0 E7 |% S: O; @
    7 8 0.0159+0.0614i 0.0166i 1 0;( H  T, n( l4 v0 Z1 N( j4 ?
    8 9 0.0427+0.1651i 0.0447i 1 0;
- v9 b1 V+ d3 F7 g( v% h    8 10 0.0427+0.1651i 0.0447i 1 0;2 M6 o+ N) [! B. B
    9 11 0.0023+0.0839i 0 1 0;, \( u) O) r' b
    9 12 0.0023+0.0839i 0 1 0;* X/ i/ }( T6 m
    10 11 0.0023+0.0839i 0 1 0;
  b! C- Z8 I# ^9 w    10 12 0.0023+0.0839i 0 1 0;2 d9 O) d8 \3 l  T
    11 13 0.0061+0.0476i 0.0999i 1 0;% H& f- {! j4 Y' z/ S
    11 14 0.0054+0.0418i 0.0879i 1 0;
( G2 O1 C1 P$ p; q8 ?! E    12 13 0.0061+0.0476i 0.0999i 1 0;/ _) W4 Q1 }! a* ~$ t5 c4 H
    12 23 0.0124+0.0966i 0.203i 1 0;
8 }0 m5 ~5 U9 H- U% l    13 23 0.0111+0.0865i 0.1818i 1 0;3 C, e7 I" l$ X
    14 16 0.005+0.0389i 0.0818i 1 0;; A! a% u# p: C5 {5 D9 G# M$ {
    15 16 0.0022+0.0173i 0.0364i 1 0;
% l. t( }4 M3 v! i0 |1 [- p    15 21 0.0063+0.049i 0.103i 1 0;; d7 i, w2 `$ o. q! ~! R; s  J
    15 21 0.0063+0.049i 0.103i 1 0;) M2 ~6 g& R' L
    15 24 0.0067+0.0519i 0.1091i 1 0;
( V4 Z" ^3 ?9 ]' \, m& K    16 17 0.0033+0.0259i 0.0545i 1 0;" C6 Q) v; L5 q7 s  o' U4 d# @- ~
    16 19 0.003+0.0231i 0.0485i 1 0;
8 X- p0 p# \! C( n3 \+ |5 |3 k    17 18 0.0018+0.0144i 0.0303i 1 0;
, G' t- Q5 G1 H& ?    17 22 0.0135+0.1053i 0.2212i 1 0;- |- W% R1 y9 R$ U: o, q" @
    18 21 0.0033+0.0259i 0.0545i 1 0;
9 r2 I$ |- b, b9 Z    18 21 0.0033+0.0259i 0.0545i 1 0;( k3 G/ U8 q6 t* k+ `
    19 20 0.0051+0.0396i 0.0833i 1 0;
& L$ [' B6 w! C: l! _    19 20 0.0051+0.0396i 0.0833i 1 0;( `& E8 \8 M: c9 ?
    20 23 0.0028+0.0216i 0.0455i 1 0;
9 N  F7 e" L( {    20 23 0.0028+0.0216i 0.0455i 1 0;5 [* ?2 L) p; I* L" S" w% f
    21 22 0.0087+0.0678i 0.1424i 1 0];%input('请输入由支路参数形成的矩阵: B1=');
" b7 B  `: F% H1 bB2=[0.1788 1.0157 1 0 0 2;, F6 c: U# H- ?: y* }3 d& w
    0 0.9127 1 0 0 2;
7 B+ S* I5 m8 w5 m    0 1.6935 1 0 0 2;. G$ \& L  O* G
    0 0.6958 1 0 0 2;# x9 K' u5 v+ d) J- b
    0 0.6669 1 0 0 2;
4 H) J+ O' s) O: D' f& `    0 1.2796 1 0 0 2;8 h% R. r3 u2 U* x9 c4 j
    0 1.1748 1.05 1.05 0 1;) @$ H( R! A: L/ R! F% ~
    0 1.6085 1 0 0 2;
3 c" V" f  ~) _2 ]+ e% `    0 1.6465 1 0 0 2;
1 ^( U6 K: |( e    0 1.8345 1 0 0 2;
' M4 w6 Z6 B/ k3 H. Z2 [$ i    0 0 1 0 0 2;
; F# r) A0 S0 Y; G4 d    0 0 1 0 0 2;# _+ @% u) y: r. N- S) g+ Q9 Q
    6.9529 2.4923 1 0 0 2;
, z3 |+ T# l8 j: q6 A    0 1.8236 1 0 0 2;
# z3 ?, }& Y; y. j8 D# i4 E    1.8235 2.9803 1 0 0 2;
: X- T1 f* ~4 r    1.8235 0.9398 1 0 0 2;2 l) d- t8 K! {- Z% ^% g+ ~
    0 0 1 0 0 2;2 C( x' D: A* Z  O( P1 K
    4.7059 3.1322 1 0 0 2;
+ s, m4 j2 h7 ~4 Z! _    0 1.7025 1 0 0 2;2 P) R3 @+ R& ?4 M4 o! u
    0 1.2037 1 0 0 2;
1 m* A  L" d: J. y    4.7059 0 1 0 0 2;' `" c# m+ [+ K1 k; s
    0 0 1 0 0 2;
) P6 `8 Q% Q" M! `0 F    7.7647 0 1 0 0 2;
4 t, M  v4 b* d6 ~. I! D; t7 {( z    0 0 1 0 0 2];%input('请输入各节点参数形成的矩阵: B2=');
8 \) m. H$ x9 b2 V$ S) S% L; R9 o& `Y=zeros(n);e=zeros(1,n);f=zeros(1,n);V=zeros(1,n);sida=zeros(1,n);S1=zeros(nl);  k& K7 |5 k$ p  j/ I
%-------修改部分------------) ?( a: X8 g/ C+ I8 c8 l# F4 A- c, u
ym=0;
, A6 G& D9 z0 b9 j5 ESB=100;UB=220;
: ?7 j2 f. r) w2 e%ym=input('您输入的参数是标么值?(若不是则输入一个不为零的数值)');
; P3 ^; M, l0 p, Z- e$ t. X$ T  X/ d9 Eif ym~=0
8 a2 _2 z( `2 T, h0 E( I    %SB=input('请输入功率基准值:SB=');! [% c! V. s0 `9 B6 d
    %UB=input('请输入电压基准值:UB=');
* c8 O' x, s: Y1 f    YB=SB./UB./UB;$ C; m. r7 p6 j( O" j( d
    BB1=B1;
$ u5 A! h; e/ f# d( V' R: i. K0 X7 r    BB2=B2;
* x: u( g! @: I: c2 m5 `6 ~# ^& h. h    for i=1:nl
. ^/ y3 O! T* i- `0 a        B1(i,3)=B1(i,3)*YB;: C  O7 _- o+ ]' o; d, g+ a
        B1(i,4)=B1(i,4)./YB;2 L; x, y) ]) a
    end
/ F' g% |; R: A) H    disp('B1矩阵B1=');& ]; v5 Y; Y- [% e0 W0 u* U: A
    disp(B1)
7 Y. G) c& s1 @* v    for i=1:n+ |7 j6 E, Y3 X' N
        B2(i,1)=B2(i,1)./SB;" Y, E+ n3 W/ N; x9 w8 [7 B
        B2(i,2)=B2(i,2)./SB;
% z7 e) V! m. @        B2(i,3)=B2(i,3)./UB;
" z' V  W: g  C: A2 j+ Y7 h        B2(i,4)=B2(i,4)./UB;/ m$ o9 Z" t8 j* W3 K) y# P: M
        B2(i,5)=B2(i,5)./SB;8 W- Q2 ?7 T0 o9 L
    end+ e$ I$ [8 x6 b' y0 l3 u
    disp('B2矩阵B2=');9 A1 l+ A- M# R  f& {. t
    disp(B2)
' H/ W3 j/ N  |) N( @end
1 Y% Z8 S9 o4 ^6 ]  b, _9 p$ _$ z% % %---------------------------------------------------4 v5 y3 ]3 I* G2 D
for i=1:nl4 S$ ?( g1 y3 P! X4 n
%支路数' F# C( H$ w( l( i* u5 H4 d
    if B1(i,6)==0' Z' r/ c9 K- J5 g7 s5 Y6 O
%左节点处于低压侧
8 i9 h; R  P! k7 }8 C1 ]% h0 h       p=B1(i,1);q=B1(i,2);
2 C; C2 V0 B1 b9 ?* |    else1 c" l2 e2 s- L
       p=B1(i,2);q=B1(i,1);
& J/ g+ _8 ]) Z+ b# P    end
, x( I( r6 f4 K/ ?6 W    Y(p,q)=Y(p,q)-1./(B1(i,3)*B1(i,5));
$ o% h2 z+ e3 K& ^4 B%非对角元) R! Q2 Y& e9 L' x% q( W
    Y(q,p)=Y(p,q);% j  |( Z2 m+ W' A
    Y(q,q)=Y(q,q)+1./(B1(i,3)*B1(i,5)^2)+B1(i,4)./2;
  v% L6 F' l$ s# b; V- R5 r6 P%对角元K侧
. b/ R2 s/ F' I, B* z    Y(p,p)=Y(p,p)+1./B1(i,3)+B1(i,4)./2
" s* n7 ]% I9 `3 V%对角元1侧
8 M" n; |) L# ]+ i7 Nend1 X5 N9 D' c4 x+ ?4 e
%求导纳矩阵" }( C! s+ _3 h' K' k  ^
disp('导纳矩阵 Y=');
8 S5 a/ ]' ?4 Z" S& P1 fdisp(Y)
7 b& W0 N4 H0 B/ V% U) t%----------------------------------------------------------: N* b. Q! A, k. G. g
G=real(Y);B=imag(Y);& M% J6 S! M: z6 |+ F
%分解出导纳阵的实部和虚部  
/ u( L8 b/ u- r. g% \for i=1:n
+ S" A7 K8 k" v. U3 y0 P%给定各节点初始电压的实部和虚部    8 m$ K, Q+ e) A: W0 E6 i
    e(i)=real(B2(i,3));
8 N: `4 V! X5 p7 m; U  ^* w    f(i)=imag(B2(i,3));. w' Z5 A" D. H! }& U  I( }& ]
    V(i)=B2(i,4);
9 W! ^  |1 l. o5 Y) `. {%PV节点电压给定模值
5 y3 Q9 @9 p$ }2 Hend
- f, o! ?; S" m0 i) N* X+ tfor i=1:n  R2 n+ _0 j6 `% S" J7 V9 Z
%给定各节点注入功率    3 J  |; W+ g- O8 P9 ?
    S(i)=B2(i,1)-B2(i,2);
0 P7 _/ `* U. g: C5 c%i节点注入功率SG-SL  
+ U" ^3 |$ S: k* [* D, m    B(i,i)=B(i,i)+B2(i,5);8 Z* ]' H, \" Y$ e  x
%i节点无功补偿量  
: r: O8 E+ L1 Aend
# n" b/ _/ t3 y3 M' ?, y8 b( V; W%===================================================================
4 U. d2 k5 Y0 p  Y3 y& ~$ WP=real(S);Q=imag(S);& R3 b, _& w. x* z0 i
ICT1=0;IT2=1;N0=2*n;N=N0+1;a=0;5 [9 `: \" p3 M5 P2 w
while IT2~=0% i! S1 _6 e6 K; H; t
      IT2=0;a=a+1;/ c. M5 U! a6 ?& |1 `
      for i=1:n. u# L! L! \% {/ z/ m3 j
          if i~=isb* e% R) L) m3 }& {# B5 M: D9 O8 b2 R2 c
%非平衡节点    # n( ~! W  ]" t; ~0 q. W0 `0 @
             C(i)=0;D(i)=0;" Y! L0 L) d, e: Z
             for j1=1:n1 |+ p( \$ u0 Z; ~- J' h  |: `- M
                 C(i)=C(i)+G(i,j1)*e(j1)-B(i,j1)*f(j1);%Σ(Gij*ej-Bij*fj)
( ]7 Q& e8 K- K( U                 D(i)=D(i)+G(i,j1)*f(j1)+B(i,j1)*e(j1);%Σ(Gij*fj+Bij*ej)
. {' c" A  _# Z/ n$ p2 Q             end% Z, ^9 M' i" [' A7 G+ F9 A( f
             P1=C(i)*e(i)+f(i)*D(i);%节点功率P计算eiΣ(Gij*ej-Bij*fj)+fiΣ(Gij*fj+Bij*ej)  P- I; R; M$ h
             Q1=C(i)*f(i)-e(i)*D(i);%节点功率Q计算fiΣ(Gij*ej-Bij*fj)-eiΣ(Gij*fj+Bij*ej)
' B& q3 Q4 M0 h# n) @%求P',Q'   
, p. l4 |: O4 ]- o. ^9 N: r/ N             V2=e(i)^2+f(i)^2;, D8 e7 _$ L* T8 Y! Q
%电压模平方
2 x- b- P, s  [& V6 Y4 u     %========= 以下针对非PV节点来求取功率差及Jacobi矩阵元素 =========
/ E0 X* P4 i& |( q" f/ X- S             if B2(i,6)~=3
7 e2 G! F" j# @/ o%非PV节点    ( g4 `# m  J# ^" d/ m( m9 F
                DP=P(i)-P1;) {9 }# R, |7 [# S; [0 U: m+ Q
%节点有功功率差    8 U+ v, d; l. N3 S
                DQ=Q(i)-Q1;             %节点无功功率差  
7 N2 l% z4 T' V/ ~%=============== 以上为除平衡节点外其它节点的功率计算 =================
0 O  b9 z+ f! ]: v5 J%================= 求取Jacobi矩阵 ===================0 G: f. j% h1 G( \9 \
                for j1=1:n
+ n$ w5 K1 C6 k% D                    if j1~=isb&j1~=i& F2 M% \/ f5 r; k7 H  s' \' C
%非平衡节点&非对角元    8 i: n' {. T* q3 T
                       X1=-G(i,j1)*e(i)-B(i,j1)*f(i);; ^& T5 h& m5 L1 R3 i2 Z
% dP/de=-dQ/df    * _1 v( W5 Z: g) F8 I
                       X2=B(i,j1)*e(i)-G(i,j1)*f(i);  I2 ^. Y; M/ g% B0 {' m: ?
% dP/df=dQ/de   
! v% Q, p* x2 J6 E                       X3=X2;           % X2=dp/df  X3=dQ/de# L- V. }) ?' z9 Q
                       X4=-X1;          % X1=dP/de  X4=dQ/df  W5 V) {4 q4 C4 x" T
                        p=2*i-1;q=2*j1-1;8 b6 F+ a, T; L* F3 {: p/ Y- o. a  j, P
                        J(p,q)=X3;J(p,N)=DQ;m=p+1;
# c5 ?0 x. F* m) V! e, o- \2 d                        J(m,q)=X1;J(m,N)=DP;q=q+1;
0 [, [) N. _' V# @; G                        J(p,q)=X4;J(m,q)=X2;  p" s& E# Z- \9 f0 a; ~' f
                    elseif j1==i&j1~=isb
* S5 y- L6 i& r  ]) A9 I" V1 j%非平衡节点&对角元   
% L- ^2 S. [; h2 V" l5 k                       X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);% dP/de
. t6 N( {; ?* H6 h9 `                       X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);% dP/df
+ t* S! A, c. j6 r( K# o" _                       X3=D(i)+B(i,i)*e(i)-G(i,i)*f(i); % dQ/de
* {; N' S9 k6 [! R0 A' l3 D                       X4=-C(i)+G(i,i)*e(i)+B(i,i)*f(i);% dQ/df2 [4 _; ?  D; B0 B
                       p=2*i-1;q=2*j1-1;J(p,q)=X3;J(p,N)=DQ;%扩展列△Q
) f* k# W) R" g                       m=p+1;' E5 l/ J( k- Q% X
                       J(m,q)=X1;q=q+1;J(p,q)=X4;J(m,N)=DP;%扩展列△P% P: ]1 L  A( L+ q
                       J(m,q)=X2;5 J6 Z0 {4 |  D6 s7 }( r7 i0 ~
                    end/ y( I' T- H' `
                end
& t+ I* a5 [  Y' C             else' j, N& O4 `) _# [& R4 k
    %=============== 下面是针对PV节点来求取Jacobi矩阵的元素 ===========& N1 T" b8 u+ ^8 f4 O
                DP=P(i)-P1;) C* `* k& \- D0 v/ O
% PV节点有功误差. X* s+ q$ h0 T% i  l  g7 ?( F
                DV=V(i)^2-V2;' \$ Y) H3 w3 k4 `" t; O, P! g$ {
% PV节点电压误差   
& R/ a* D. q, M$ y6 j( I# L+ P                for j1=1:n& D, p! _/ ]+ ~3 n% M
                    if j1~=isb&j1~=i
# a7 I  u4 W: h  h7 P. ^%非平衡节点&非对角元    ( q2 q  ?- E+ D8 W# _! ~4 W
                       X1=-G(i,j1)*e(i)-B(i,j1)*f(i);   % dP/de0 c2 s  A' n% h
                       X2=B(i,j1)*e(i)-G(i,j1)*f(i);    % dP/df) J' o- z$ h0 W: ]9 d) @, O6 z
                       X5=0;X6=0;
5 G9 `/ _# N9 a4 P+ W) r# Q7 l                       p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV;
+ J( t6 g6 W3 {1 p6 r                       m=p+1;
, W6 c: ]+ I1 v. }- j                       J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;
  d$ n. {* C% c' x/ X3 E                       J(m,q)=X2;1 H) Y% h% H. d$ w8 ~* C
                    elseif j1==i&j1~=isb
6 E8 I5 V; E* U3 p%非平衡节点&对角元    8 |4 [7 z8 F( |0 E! x# e$ f7 l6 o  j, O4 ^
                       X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);% dP/de
7 r4 g( J, v* C  R                       X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);% dP/df& z6 D1 l3 K+ R3 C% J
                       X5=-2*e(i);
! i* ?* A# _2 C9 a+ k  R4 u                       X6=-2*f(i);
- b5 Q. x, J: t+ D$ H6 x8 @/ N                       p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV;" i' E/ F# \( g& [
                       m=p+1;# K! Q; S2 |5 [: s2 G
                       J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;
, \. t' r! y3 C, A                       J(m,q)=X2;* V2 H- E, {  e* ]
                    end
. j  r# @, @% }                end0 x! U, V  W4 s- t7 f. \
             end
' J+ Y, b  T: S; O+ u" n3 [          end5 V5 j( T3 x/ e- c9 w7 w9 [, u
      end
% o: O: [: M; g( J  }%========= 以上为求雅可比矩阵的各个元素 =====================
. A. `4 w. l* |1 b  G9 e1 A& u      for k=3:N0                    % N0=2*n (从第三行开始,第一、二行是平衡节点)
+ a( v. ]% I4 N3 E' X( U6 j6 L          k1=k+1;N1=N;              % N=N0+1 即 N=2*n+1扩展列△P、△Q
) }, E/ u5 A2 F          for k2=k1:N1. w2 P+ }" D& d* Z6 n2 G
% 扩展列△P、△Q   
( C% I6 w  {0 s4 Y              J(k,k2)=J(k,k2)./J(k,k);
! c5 s6 K: k" g- z& J& P& E/ A" D% 非对角元规格化    ) `+ N% l; t8 ^3 N9 ~' a: E. t0 Y8 z/ Z
          end0 t  @8 J7 D1 q" M$ M/ z
          J(k,k)=1;                 % 对角元规格化
) I5 k$ W5 c2 ^7 s$ Z          if k~=3                   % 不是第三行  x1 H: P. l" k  _% H$ ^

; K" ]/ e. y2 B& b4 l3 o/ m- o%============================================================
3 ^/ M! |8 @; ~& x% t5 o; l( y1 p9 |             k4=k-1;. A  ?0 k  A" O4 T9 Q
             for k3=3:k4$ k) _: F$ P1 [6 M2 i$ K/ O
% 用k3行从第三行开始到当前行前的k4行消去
1 A+ U, ~5 s5 h) g                 for k2=k1:N1+ W$ l+ {0 z7 D" r
% k3行后各行下三角元素
/ L2 n+ U. i, s4 Z: d/ L! _! `                  J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算
8 u% i* x+ X% p$ [; X( T/ t4 Z( Z                 end
  m/ _# I7 r3 a3 l                 J(k3,k)=0;
+ f7 m! u* Q1 g6 }/ v6 N             end3 s3 C! h! q* C0 d$ |
             if k==N0 : M0 D& \( ]& Y$ |; C2 X: u
                 break;3 c8 I% f( a6 l. R  c) ^5 P! Z3 a4 q
             end( @$ ]; `$ S0 ]) z  U; o
%==========================================0 e  n8 H3 N! q# ~
             for k3=k1:N07 B* B9 B3 w; M, }& G: y* S8 k
                for k2=k1:N1, |+ m% B% i) ^& R
                    J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算
1 x' ^0 V% ^- h% K1 }* G" _1 c                end9 y: w2 r( {5 i: a3 T. @1 c  A
                J(k3,k)=0;$ y% z2 |& `1 i8 J( H5 D: s
             end7 q. G0 V: _# i; U
          else& ]" o5 {/ X4 v  ^
             for k3=k1:N0
$ }: K; y+ `! E3 }' G$ E4 W                 for k2=k1:N1
7 M+ P  ~% e3 t. U6 I                     J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算2 \3 W. O& b6 k$ m
                 end
* m/ ^( D6 a+ l# n7 F  w: B                 J(k3,k)=0;
4 b! n" {3 B  o1 g) v. p4 C             end
! s# u$ J2 l2 B& \          end
! D, t* p( y7 X3 T" s      end
. [. }) [* f( Z4 _& I; U  p+ q0 W& U      %====上面是用线性变换方式将Jacobi矩阵化成单位矩阵=====% K' h; Q8 z8 i& H$ r7 p2 V$ R
      for k=3:2:N0-1* c; ]& D  i7 q9 h
          L=(k+1)./2;0 R1 \* Q6 }- J& j4 N4 E) G  e
          e(L)=e(L)-J(k,N)    %修改节点电压实部) v) q& _; Q' ]" d% e+ w) Z
          k1=k+1;
5 P' n2 \8 `, [$ z; Z          f(L)=f(L)-J(k1,N)    %修改节点电压虚部' ^, Q" b( N+ y0 I" M" U* d
      end
* I2 L" d3 W0 n# A1 p0 C8 p& m      %------修改节点电压-----------
, r+ ]- u4 f$ V1 V- @& h; P      for k=3:N01 ?: L, j! f6 [9 G$ |2 B( K
          DET=abs(J(k,N));
) Y8 ^, L2 F1 \/ A, h          if DET>=pr    %电压偏差量是否满足要求
) c% A, G: O7 V             IT2=IT2+1; %不满足要求的节点数加1
7 n8 I1 F7 n# o! G          end
3 }1 r- R1 P# ~& U/ X# e& U7 x2 ^      end
7 L6 z' d- O( F* C" x. @      ICT2(a)=IT2;, G5 ?" J* v' K; D, a0 `" x
      ICT1=ICT1+1;
3 ]: \, ~. d  O9 e1 {end
* p1 t+ J4 Y- g0 F: A# ?" R, N%用高斯消去法解"w=-J*V"
" R$ v. F- `/ B$ a! fdisp('迭代次数:');
* z* k/ R% F7 T1 _9 C0 ^disp(ICT1);9 @1 d8 x4 j5 o' k
disp('没有达到精度要求的个数:');
( `. u0 M1 z0 v! edisp(ICT2);9 ^7 @) t/ S, I5 G9 _7 }4 y  f$ v
for k=1:n
' u: F( W( ~  I; u2 }5 x) s: ]    V(k)=sqrt(e(k)^2+f(k)^2);; n* U; ^- V, e" r2 q
    sida(k)=atan(f(k)./e(k))*180./pi;: u1 N2 D! |+ S; Y7 m
    E(k)=e(k)+f(k)*j;
7 z6 R; @( `+ v! Wend
9 N2 q) h7 D* _3 {3 K%=============== 计算各输出量 ===========================! e' H8 p  Q0 \/ z* k
disp('各节点的实际电压标幺值E为(节点号从小到大排列):');  \1 R1 Z3 ^6 v! r/ q8 y1 v
disp(E);
) R% n3 g; c- N2 qEE=E*UB;
; q. E5 Y2 v7 m* S& F$ c7 Y! F4 Mdisp(EE);
  w  c' C+ f" ldisp('-----------------------------------------------------');1 f) F( E" m6 V4 r1 `* H
disp('各节点的电压大小V为(节点号从小到大排列):');/ O. _1 U1 v& \6 |# C2 S
disp(V);3 d1 e( S0 B/ n" r8 u
VV=V*UB;9 m" N$ L$ t. n3 `7 C8 D" g
disp(VV);+ c1 h( j/ v, P) P2 ?
disp('-----------------------------------------------------');# }* s5 L& e$ Z& s$ _7 g" F
disp('各节点的电压相角sida为(节点号从小到大排列):');: V. X) ^5 Q! u, z
disp(sida);
8 S* W  \, }3 o9 u# x! K( u# sfor p=1:n
& z2 v! z  g- p% Y% p    C(p)=0;
' A* m. _8 u* |% f6 K, m) P$ f    for q=1:n
$ K) {  D4 m  N& j. {3 m( ^        C(p)=C(p)+conj(Y(p,q))*conj(E(q));
% m* _5 `/ T7 d0 v, ~( B4 r; q    end
, I* B9 o/ G1 B# n    S(p)=E(p)*C(p);5 i) b) g! N! j! m8 N
end
% k3 x6 \4 n. W2 o, D7 K; R3 H6 {0 Fdisp('各节点的功率S为(节点号从小到大排列):');
* M! ?& n: A$ tdisp(S);
( p4 ?% U2 f5 l, Fdisp('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~');
! }; h, f+ N; J( x2 T; ?SS=S*SB;
9 K2 r4 {; o- [disp(SS);
- ?$ \+ C# [# S" Q" `# X- K2 w, a7 wdisp('-----------------------------------------------------');
# v4 B- r. s) ]+ u6 Q( N% edisp('各条支路的首端功率Si为(顺序同您输入B1时一致):');  b9 Z7 a- }& h5 o( J5 O
for i=1:nl
# O) T6 A, B9 E  o. n: Y: a       p=B1(i,1);q=B1(i,2);! B: j) }( W5 Z  ?* b; K8 ~
       if B1(i,6)==07 `2 ^* w/ q6 v+ K. ]
            Si(p,q)=E(p)*(conj(E(p))*conj(B1(i,4)./2)+(conj(E(p)*B1(i,5))-conj(E(q)))*conj(1./(B1(i,3)*B1(i,5))));: v& c0 _( K/ e
            Siz(i)=Si(p,q);
: W( b# m" F) n+ x' p: G* u1 x        else
% k4 O7 l, i# E/ k- @3 e            Si(p,q)=E(p)*(conj(E(p))*conj(B1(i,4)./2)+(conj(E(p)./B1(i,5))-conj(E(q)))*conj(1./(B1(i,3)*B1(i,5))));
% i; q( [2 P6 A( Y9 t1 ~& @5 o6 ]            Siz(i)=Si(p,q);& U% M" t! u' m9 {/ Z8 k5 m
        end
8 D& b( q5 G: u3 ~/ b! C    disp(Si(p,q));; B) X# G5 b# U* e! W. ~( R" x
    SSi(p,q)=Si(p,q)*SB;2 e6 u: A& }: H: w. d
    ZF=['S(',num2str(p),',',num2str(q),')=',num2str(SSi(p,q))];( t: U: B* X8 q
    disp(ZF);8 K$ z, i( b9 l) \* P; h7 C
    %disp(SSi(p,q));
: g! J# V3 }/ ~8 Q' X( y$ W. Z    disp('-----------------------------------------------------');% z" \3 a6 C, R
end4 K4 A- _8 q. W3 [2 c* j
disp('各条支路的末端功率Sj为(顺序同您输入B1时一致):');
" p' a2 y' a- z) W  afor i=1:nl$ k$ `6 w( U0 G3 N" @0 S
    p=B1(i,1);q=B1(i,2);/ v. Y: e: ~) t( u. @. h) f
    if B1(i,6)==0, b  M2 j' c# x3 M2 r5 a! \' [
        Sj(q,p)=E(q)*(conj(E(q))*conj(B1(i,4)./2)+(conj(E(q)./B1(i,5))-conj(E(p)))*conj(1./(B1(i,3)*B1(i,5))));8 Z" j$ F; a& b+ a1 `
        Sjy(i)=Sj(q,p);8 ^* {% V# j; x7 i2 O
    else- b- b+ [. M0 |# z* ?( d. |
    Sj(q,p)=E(q)*(conj(E(q))*conj(B1(i,4)./2)+(conj(E(q)*B1(i,5))-conj(E(p)))*conj(1./(B1(i,3)*B1(i,5))));! p' ~, ]  y: i! A' w& m; v
        Sjy(i)=Sj(q,p);. `' P4 @+ D1 h5 _0 s+ Z
    end
0 ^7 g6 A+ F9 r% [# y. _, f  _    disp(Sj(q,p));
! N- P- T0 L2 d& O' I# x' q( I    SSj(q,p)=Sj(q,p)*SB;) [8 T# v. W2 j) ~7 `# \; F( i
    ZF=['S(',num2str(q),',',num2str(p),')=',num2str(SSj(q,p))];
5 N" r+ a8 ?6 ]& _* z8 y  W( G    disp(ZF);
& T5 t+ Q" q. d4 u8 W: m/ B8 I    %disp(SSj(q,p));5 e  x9 l& Z* w% E: ^
    disp('-----------------------------------------------------');
/ g" P7 n& Z1 A! R) A, s) wend
+ w. U9 P& S1 a8 cdisp('各条支路的功率损耗DS为(顺序同您输入B1时一致):');- e8 u# o, I, A7 K& x" o
for i=1:nl
3 R6 M. q& O- s0 u        p=B1(i,1);q=B1(i,2);# T7 J. D1 U. ]! Y7 Z0 d* L; l7 K- G* A
    DS(i)=Si(p,q)+Sj(q,p);4 H. M' I2 g  }+ i
    disp(DS(i));5 F  M6 ]; a  w8 b. F* Z3 @
    DDS(i)=DS(i)*SB;1 m7 n9 {& Q# W5 J. J/ N
    ZF=['DS(',num2str(p),',',num2str(q),')=',num2str(DDS(i))];; w: [# L2 X% j4 D: n
    disp(ZF);0 \, t+ z: f* m7 ^: g; \
    %disp(DDS(i));
1 _. j( J# h; ^* K8 x) U+ [    disp('-----------------------------------------------------');" _7 c6 g( |7 W6 b- R- Y
end
. F; f' N! S: bfigure(1);3 q- g. G, C8 p6 ?1 x
subplot(2,2,1);
- Q. D- h; a  Nplot(V);
6 f! _5 w) m  uxlabel('节点号');ylabel('电压标幺值');! W* [) T+ H6 J
grid on;
, e. G/ J/ y# Z, t# d0 l( Bsubplot(2,2,2);
0 t3 h5 @" E: U: B: m6 s$ ^/ ^0 iplot(sida);+ C+ s2 @9 d6 |5 C6 f
xlabel('节点号');ylabel('电压角度');
* p$ E* E5 I" j* ~grid on;
( y, ^1 H, U' k3 [' wsubplot(2,2,3);
  t4 x, t% G6 h& W5 Dbar(S);
1 {: M, ^9 m+ E. yylabel('节点注入有功');
1 t' L1 C9 f9 G' ?1 ^  u3 c/ E3 H9 w( Ugrid on;
/ J2 l% L: b& G! I4 M/ dsubplot(2,2,4);- X' D" A/ w! @6 _  r" Q
bar(Siz);9 T1 y; [4 L' }% y6 o
ylabel('支路首端无功');
" p& w* V/ p/ r8 ~5 B. x! ngrid on;
"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
您需要登录后才可以回帖 登录 | 立即加入

本版积分规则

招聘斑竹

小黑屋|手机版|APP下载(beta)|Archiver|电力研学网 ( 赣ICP备12000811号-1|赣公网安备36040302000210号 )|网站地图

GMT+8, 2024-4-26 23:30

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表