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

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

潮流运算牛拉matlab出错

[复制链接]

该用户从未签到

尚未签到

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

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

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

×
%本程序的功能是用牛顿——拉夫逊法进行潮流计算
& R, v1 \- [3 `% B1矩阵:1、支路首端号;2、末端号;3、支路阻抗;4、支路对地电纳' H1 h8 w+ U, O  J) m% r' E
%         5、支路的变比;6、支路首端处于K侧为1,1侧为0
( F  |5 U3 x. P3 m% B2矩阵:1、该节点发电机功率;2、该节点负荷功率;3、节点电压初始值
3 r5 J3 b2 ~+ s- b" T# d%         4、PV节点电压V的给定值;5、节点所接的无功补偿设备的容量
4 h5 x# R  G) f+ S7 p1 n%         6、节点分类标号
  O/ P5 t4 d5 k0 E2 L2 \( ~clear;
+ ^, F4 k0 P4 S' n8 ^n=24;%input('请输入节点数:n=');
. @( [) ?6 i% J# B: r' {nl=38;%input('请输入支路数:nl=');8 ~' l( y' d. F4 C: j
isb=1;%input('请输入平衡母线节点号:isb=');
" \/ Y+ ?0 q1 hpr=0.00001;%input('请输入误差精度:pr=');! p& C- r, q7 U0 ~
B1=[1 2 0.0026+0.0139i 0.4611i 1 0;' \0 |. G! M# x2 |- X) S4 V
    1 3 0.0546+0.2212i 0.0572i 1 0;
1 f4 X) ~& N8 k- Q    1 5 0.0218+0.0845i 0.0229i 1 0;8 @2 Y% A/ ?; M4 ]" x
    2 4 0.0328+0.1267i 0.0343i 1 0;* V' y4 w0 t: y4 n
    2 6 0.0497+0.192i 0.052i 1 0;- |8 f  T( L+ F4 L4 P% {0 S$ a
    3 9 0.0308+0.119i 0.0322i 1 0;
$ S" L: L1 @" @  Q, S* C) S    3 24 0.0023+0.0839i 0 1 0;
& N0 W6 ]! G* h6 ]' P. U    4 9 0.0268+0.1037i 0.0281i 1 0;: Z7 K- F7 r; x6 G" k
    5 10 0.0228+0.0883i 0.0239i 1 0;
  j- e/ Z- `9 p! g9 A/ F0 z    6 10 0.0139+0.0605i 2.459i 1 0;
: ]7 _& C; t/ d/ p- Q    7 8 0.0159+0.0614i 0.0166i 1 0;7 P6 S' D7 P' {; U8 `/ l
    8 9 0.0427+0.1651i 0.0447i 1 0;4 M. Y: ]$ {7 e, z
    8 10 0.0427+0.1651i 0.0447i 1 0;
& ?. W6 ?% g6 k/ v    9 11 0.0023+0.0839i 0 1 0;2 T4 L3 i# T! N0 P, u
    9 12 0.0023+0.0839i 0 1 0;
; }9 v5 N1 S/ g    10 11 0.0023+0.0839i 0 1 0;
" L; G8 N) F" \) ?/ }; u8 F    10 12 0.0023+0.0839i 0 1 0;
9 U! h! m4 ^2 H, |) p7 I    11 13 0.0061+0.0476i 0.0999i 1 0;
, u. z, l3 _9 d+ E    11 14 0.0054+0.0418i 0.0879i 1 0;1 X! c0 V% q' n+ ~" f. v
    12 13 0.0061+0.0476i 0.0999i 1 0;
& e% q' a# A" M1 V    12 23 0.0124+0.0966i 0.203i 1 0;# A" ?6 [7 A7 G# [9 d
    13 23 0.0111+0.0865i 0.1818i 1 0;
$ ~9 M5 P! L* ~( f, l3 c    14 16 0.005+0.0389i 0.0818i 1 0;; _, k& z- u* r. `% L9 G; d
    15 16 0.0022+0.0173i 0.0364i 1 0;
7 V6 F% ^1 M1 u    15 21 0.0063+0.049i 0.103i 1 0;
% J" t' {" D* z, B, _! L    15 21 0.0063+0.049i 0.103i 1 0;
0 ]8 O: |2 M8 b6 i9 G* s# P$ J    15 24 0.0067+0.0519i 0.1091i 1 0;3 t) l- A2 ?2 W7 S! I, X! h
    16 17 0.0033+0.0259i 0.0545i 1 0;( ]( C1 Q+ ^8 L' }: b
    16 19 0.003+0.0231i 0.0485i 1 0;
2 m" _0 T2 T2 h    17 18 0.0018+0.0144i 0.0303i 1 0;3 k/ w, ^# z7 m% v) M
    17 22 0.0135+0.1053i 0.2212i 1 0;# r9 G) m8 C- ^5 e3 P
    18 21 0.0033+0.0259i 0.0545i 1 0;8 z( j8 s7 e- V) F2 s
    18 21 0.0033+0.0259i 0.0545i 1 0;
+ o2 B! q* ?6 {7 }  W& m4 r    19 20 0.0051+0.0396i 0.0833i 1 0;7 o) ^+ e3 Q4 ^
    19 20 0.0051+0.0396i 0.0833i 1 0;9 M  N7 D3 D+ B
    20 23 0.0028+0.0216i 0.0455i 1 0;; {7 a, `( v& z' y  `0 p
    20 23 0.0028+0.0216i 0.0455i 1 0;
9 d( Q1 a/ p3 y, A0 b1 Z    21 22 0.0087+0.0678i 0.1424i 1 0];%input('请输入由支路参数形成的矩阵: B1=');' q$ D4 F  M" I9 f' i4 J
B2=[0.1788 1.0157 1 0 0 2;
9 b" U) ]! a' ?6 _; s) \    0 0.9127 1 0 0 2;# q. y" a4 R1 G1 T
    0 1.6935 1 0 0 2;
- k! V) L9 S/ j    0 0.6958 1 0 0 2;
1 g9 p. }/ D2 H    0 0.6669 1 0 0 2;
( r2 t( Y' a4 @: n, j, I- M    0 1.2796 1 0 0 2;7 }" o3 c' g* y5 X8 w& |
    0 1.1748 1.05 1.05 0 1;" C# a9 b9 E; ~5 s
    0 1.6085 1 0 0 2;
' g0 ]( T# \/ ^! p4 F, S( v* c6 \    0 1.6465 1 0 0 2;
1 ]1 m3 z) G" t1 l$ M( ]    0 1.8345 1 0 0 2;# M9 H! s2 W/ Z8 `
    0 0 1 0 0 2;! e& o+ I, c3 O/ `; Y- X- K2 O
    0 0 1 0 0 2;/ B& E; k* H+ a
    6.9529 2.4923 1 0 0 2;
- ?3 P8 ^! a1 T+ H: @    0 1.8236 1 0 0 2;! Q, L8 P+ `$ X( a2 n2 [4 o
    1.8235 2.9803 1 0 0 2;
" }/ j3 o, `& k) e7 @    1.8235 0.9398 1 0 0 2;2 b7 O3 }8 [  ~$ X
    0 0 1 0 0 2;
; z& D1 ^% f/ i( L+ R2 {/ r    4.7059 3.1322 1 0 0 2;
& p( y* ?" T* U: a$ Z6 f/ I    0 1.7025 1 0 0 2;
- u  Y. E" r1 e$ ~/ L3 N) q4 O    0 1.2037 1 0 0 2;* ^; ]( w0 A6 B) B/ ?# u+ q
    4.7059 0 1 0 0 2;
, O9 B" P5 Y2 J1 f    0 0 1 0 0 2;* O1 @6 {: [: ]+ X& k, w2 m
    7.7647 0 1 0 0 2;+ p8 b% [0 T0 f& M! ]: c  Z
    0 0 1 0 0 2];%input('请输入各节点参数形成的矩阵: B2=');6 t" H, |. e2 U- g& i
Y=zeros(n);e=zeros(1,n);f=zeros(1,n);V=zeros(1,n);sida=zeros(1,n);S1=zeros(nl);
/ H; d3 H9 d1 N%-------修改部分------------$ E1 v6 J9 X9 |9 S) @) m
ym=0;) F# l) K; X, N; ^8 w
SB=100;UB=220;* D! i" R' }9 Y' f
%ym=input('您输入的参数是标么值?(若不是则输入一个不为零的数值)');1 l1 i4 i3 J+ \# m* {; m
if ym~=0
9 m0 a1 s) U; D    %SB=input('请输入功率基准值:SB=');
0 ~3 O3 f+ G( l' E' ?2 A8 \: r- ^    %UB=input('请输入电压基准值:UB=');
. `5 A- Q/ l/ w1 o$ Y- }, s# A    YB=SB./UB./UB;
8 Y% G$ v& l! p. z3 K+ J: ]4 p    BB1=B1;$ }: S9 `$ r) [9 Z$ U
    BB2=B2;  o3 f, t: H7 z
    for i=1:nl. R7 c8 ~& b8 @, e) ?! f! f; ]* h
        B1(i,3)=B1(i,3)*YB;4 c$ d& L% v* N8 M: D
        B1(i,4)=B1(i,4)./YB;$ X4 P! N. Q0 h0 v9 }# t
    end
( d# b2 \7 m2 {7 w. L    disp('B1矩阵B1=');
$ R/ ?9 g8 T- U1 D3 ^9 M* z    disp(B1)' o, J0 ~8 s5 H% N
    for i=1:n
. t* {8 n% y# C% @) ^4 q1 B5 e        B2(i,1)=B2(i,1)./SB;' F& R( v2 x& b& S1 y' g9 i1 l. G
        B2(i,2)=B2(i,2)./SB;1 v3 A" \& \7 Q( P- Y
        B2(i,3)=B2(i,3)./UB;
; B8 o. I" W: t5 E        B2(i,4)=B2(i,4)./UB;
% U. J- d& J3 N7 h: Y- P$ G        B2(i,5)=B2(i,5)./SB;! h& o; X- B: C" o5 H9 ]6 j
    end2 {+ L8 x4 e2 r/ N* A2 ^% u7 ~
    disp('B2矩阵B2=');
, \! ?3 x" k2 Z; Q! K    disp(B2)7 m* W5 n/ ?+ I+ @
end
- L! D0 [* N' g2 V; \! ]% M3 }% % %---------------------------------------------------
: Z5 T6 G  @5 A; l% C5 bfor i=1:nl# i1 Q$ X8 K+ Q) b) \9 ?
%支路数0 q/ X9 ^/ l1 u9 i+ ]' F
    if B1(i,6)==0. @. R  W$ P. ?9 Z& z& S
%左节点处于低压侧
* Y) E$ C- K# Z2 \8 b       p=B1(i,1);q=B1(i,2);
% E! d0 ]3 h' a0 T' D3 v+ t) T; k    else9 T# A" N+ b0 }2 t* `( L
       p=B1(i,2);q=B1(i,1);
- c1 w2 w+ U! w2 p    end
) Z1 ?( H0 G; h. X9 d( _    Y(p,q)=Y(p,q)-1./(B1(i,3)*B1(i,5));  ?" N  \9 [+ _4 l+ f. |
%非对角元/ p$ v, U+ l! {8 L
    Y(q,p)=Y(p,q);4 G5 f! j; M7 U8 X
    Y(q,q)=Y(q,q)+1./(B1(i,3)*B1(i,5)^2)+B1(i,4)./2;0 I1 q8 T& K/ A; S7 A3 j
%对角元K侧3 ^, C' @/ S+ ]2 R
    Y(p,p)=Y(p,p)+1./B1(i,3)+B1(i,4)./2, `  Z: ~) M6 [4 p
%对角元1侧 2 h+ u: `# y+ ~+ h/ ]' U
end# \: r% P: G2 e& H) V* m& w
%求导纳矩阵1 o$ j, @3 w1 N6 H" E8 S) B
disp('导纳矩阵 Y=');6 _( H6 q% X: M0 W1 w
disp(Y)
* }* S: A. u( W%----------------------------------------------------------: Q) N8 ]) h9 F! t2 p* G9 P' Y
G=real(Y);B=imag(Y);
; L- c9 Q/ ]8 s+ L( F, N$ b! a%分解出导纳阵的实部和虚部  2 G2 @4 e% s$ i' ~5 D3 |
for i=1:n9 F8 o5 o* J! e% I; m4 A! s
%给定各节点初始电压的实部和虚部    & y# }7 {+ @8 |3 k
    e(i)=real(B2(i,3));; {* L7 J% x" }. j& L
    f(i)=imag(B2(i,3));1 A+ b! j: @0 O1 J* t- R$ L
    V(i)=B2(i,4);; g2 K% b, A4 T0 v( P8 q
%PV节点电压给定模值 ! r9 B5 ~: ~$ h2 K, U' Y. j
end$ k1 ~$ S% p$ w; @/ C: Y
for i=1:n" q' y& G) J# W% r8 z
%给定各节点注入功率    7 l$ F" R* I. o6 S- Q
    S(i)=B2(i,1)-B2(i,2);
  `+ R5 }& D& p% T%i节点注入功率SG-SL  
* p( C+ B* W2 S* z( O+ J$ g    B(i,i)=B(i,i)+B2(i,5);
8 S. e8 X+ N3 s: n%i节点无功补偿量    z% U" v" g: b+ `) b/ s
end" z9 H$ H8 N# Q: ^# Y( r% S
%===================================================================2 D4 k: h" ~  t6 p
P=real(S);Q=imag(S);
4 t6 K2 m7 e3 y% Z! K7 v( F$ xICT1=0;IT2=1;N0=2*n;N=N0+1;a=0;
3 {0 J/ M) r: ?3 r5 s9 W  z( i3 Dwhile IT2~=0; ^( H& u& T0 `
      IT2=0;a=a+1;
* ~% i! s5 j2 C      for i=1:n
- d1 r; N. T; x5 @' E          if i~=isb$ w: A6 w- w* v& t  `( D
%非平衡节点    ' g% u; ]0 _. U" b
             C(i)=0;D(i)=0;6 `) z: N; C- s' ~& V5 L# j& }9 P, A
             for j1=1:n: C' u" [( t( ~4 p/ j( \! ?
                 C(i)=C(i)+G(i,j1)*e(j1)-B(i,j1)*f(j1);%Σ(Gij*ej-Bij*fj)
3 {2 O2 A. G, ?  }                 D(i)=D(i)+G(i,j1)*f(j1)+B(i,j1)*e(j1);%Σ(Gij*fj+Bij*ej)! K5 F1 C  x% p4 s  K& I7 h9 k
             end
# Q  u3 q! Q6 R4 L             P1=C(i)*e(i)+f(i)*D(i);%节点功率P计算eiΣ(Gij*ej-Bij*fj)+fiΣ(Gij*fj+Bij*ej)
; n! u6 v- h3 r, W. C             Q1=C(i)*f(i)-e(i)*D(i);%节点功率Q计算fiΣ(Gij*ej-Bij*fj)-eiΣ(Gij*fj+Bij*ej)
, O. G  i. o8 Q5 g  C%求P',Q'    8 a2 I. ]; {! L8 E4 @% c5 V
             V2=e(i)^2+f(i)^2;& q3 @( Y9 @5 d2 y3 d& r- f( u2 |( S
%电压模平方
; _( v& ^% E2 Q( w( r     %========= 以下针对非PV节点来求取功率差及Jacobi矩阵元素 =========
' z% X) R& }( d' I8 G- b* {- B1 H             if B2(i,6)~=3
0 b* o: @6 M. H7 U, ~* s+ Y%非PV节点    $ a: n: K" ^6 M, q
                DP=P(i)-P1;
1 X4 _* {% [4 f0 N4 {6 z2 d%节点有功功率差    ; c5 Q8 v5 j$ q& t3 _, X8 X
                DQ=Q(i)-Q1;             %节点无功功率差  
- v* C/ ~. r) c$ S' z6 O%=============== 以上为除平衡节点外其它节点的功率计算 =================
9 P" V7 e" W! t4 v' C5 r' B" G%================= 求取Jacobi矩阵 ===================# n: R  J; h# B
                for j1=1:n
( r# o. s6 ]) X3 r9 x& H                    if j1~=isb&j1~=i, ^1 q2 {3 N4 F
%非平衡节点&非对角元    - S7 j2 ~9 f+ Y0 F
                       X1=-G(i,j1)*e(i)-B(i,j1)*f(i);# S. O7 p" I2 d' Y+ f, G  m6 _7 t
% dP/de=-dQ/df   
$ P7 b& v/ D3 j/ a                       X2=B(i,j1)*e(i)-G(i,j1)*f(i);. c* s/ |7 }1 O$ x) m) b5 M5 @
% dP/df=dQ/de    % j- F( A( E1 j" K
                       X3=X2;           % X2=dp/df  X3=dQ/de, f1 r$ h: R& n8 x4 O
                       X4=-X1;          % X1=dP/de  X4=dQ/df9 u- X) j5 m( T1 t  c- M8 o  d5 i
                        p=2*i-1;q=2*j1-1;% k" S1 p; @, O5 ]7 `, K  Z
                        J(p,q)=X3;J(p,N)=DQ;m=p+1;9 S1 y! l/ }+ C6 A- x! s
                        J(m,q)=X1;J(m,N)=DP;q=q+1;
! }0 K7 S! W6 V# ]* X                        J(p,q)=X4;J(m,q)=X2;
/ X+ K  Z4 _6 R7 y' M                    elseif j1==i&j1~=isb
. Z/ v% d, n! |* V& a+ K%非平衡节点&对角元   
6 x- z1 x/ M: n                       X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);% dP/de# b  J- E5 L7 J/ V% f" l& \. G3 k
                       X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);% dP/df
9 ?  ^6 q" j! w, j3 I+ p, u+ ]) F                       X3=D(i)+B(i,i)*e(i)-G(i,i)*f(i); % dQ/de+ c3 T( O, I* I7 z' Z( h: {. ~; f
                       X4=-C(i)+G(i,i)*e(i)+B(i,i)*f(i);% dQ/df, d# E& h/ |( `, T5 R
                       p=2*i-1;q=2*j1-1;J(p,q)=X3;J(p,N)=DQ;%扩展列△Q
& N* L3 ^! z( Z                       m=p+1;  e. o3 ^# [# O* k; @: }
                       J(m,q)=X1;q=q+1;J(p,q)=X4;J(m,N)=DP;%扩展列△P. {$ H( N7 V& V/ r& _% ~
                       J(m,q)=X2;
" g- x, S% q, f: a# W! p; @+ M                    end( `/ j  W- O/ X& |, S& ~
                end1 ]3 a6 x$ X$ t! _; S' ]" F
             else* z& [  Q5 [+ x
    %=============== 下面是针对PV节点来求取Jacobi矩阵的元素 ===========
# e" }# ?8 R; L5 v                DP=P(i)-P1;  _8 a# `( P" ^; `6 Y
% PV节点有功误差( U5 V, Q( _, D7 N/ G) U
                DV=V(i)^2-V2;
' X" Z7 q6 V  }; V" e; J. Z! D  \% PV节点电压误差    ) `( T! v- q: W9 {
                for j1=1:n. F# |  U7 \' I+ v
                    if j1~=isb&j1~=i3 H7 j' \* C! M( I' l: {6 v
%非平衡节点&非对角元   
; G" X8 K; l* X: Z7 k3 Q- V                       X1=-G(i,j1)*e(i)-B(i,j1)*f(i);   % dP/de* y5 K. b/ L9 C7 q8 U) I% `
                       X2=B(i,j1)*e(i)-G(i,j1)*f(i);    % dP/df
# r4 S) y$ v8 E% o) I. Y9 y                       X5=0;X6=0;
. @) d  g* O7 d- F" d                       p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV;, O7 K' ]9 ]; b( l" m5 F' Z
                       m=p+1;+ E0 g! J, P9 ^
                       J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;
; t- e% Z* Q# E% J: ^                       J(m,q)=X2;
3 u5 e& H! R: C5 E; c1 k                    elseif j1==i&j1~=isb
$ I! Y6 X+ [0 b% j5 `0 a* ~%非平衡节点&对角元   
5 C' R5 l& n- c" J3 P7 n                       X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);% dP/de
% C* [; l5 ?- i$ N7 i3 z& G0 m                       X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);% dP/df) V! }. K' l7 P% X# n, v: G6 ?
                       X5=-2*e(i);
6 ^5 ~1 ~  s. t/ Z                       X6=-2*f(i);
& L8 ?) B+ ^9 f- U6 p7 [; I                       p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV;" A( T, [& X* a# P) w" o% z' k
                       m=p+1;, A, B8 ^* D& ~' D
                       J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;; z  M/ C; x  ?4 M, k/ `
                       J(m,q)=X2;! l3 b( C& ^# a; o) l' f3 f
                    end
" i; q/ Q  Q0 y, M1 g# u3 I                end
! B# z# l3 l  V& e) `1 o. t# Y! F             end
% c3 x: Z) {& w( b$ `  C          end
& f! [' X  Q) v, S# v6 y5 W      end
$ P7 ]) H% L9 W4 C+ Y# V, o6 N%========= 以上为求雅可比矩阵的各个元素 =====================
4 D/ k% O/ s% T6 K- K      for k=3:N0                    % N0=2*n (从第三行开始,第一、二行是平衡节点)% l1 _: X4 j: R" o- v
          k1=k+1;N1=N;              % N=N0+1 即 N=2*n+1扩展列△P、△Q
8 s+ N+ V1 e! P  q: f6 M          for k2=k1:N1& X' a9 U+ K0 H, o# B  R
% 扩展列△P、△Q   
  J; U- _* ?0 k# G              J(k,k2)=J(k,k2)./J(k,k);* A8 P  i0 X  p& w8 f
% 非对角元规格化    # G  G5 Z, j2 i% x0 s
          end
0 |; |' A+ Q8 g  ]# p; x5 a9 U          J(k,k)=1;                 % 对角元规格化" \$ J+ A  h1 t' D0 G! p
          if k~=3                   % 不是第三行: w! i" _) U& V6 ^  L, d( v1 K
; Y( F9 _( c9 K+ e) t
%============================================================
2 m9 W/ |* A2 H, H' m: f6 w             k4=k-1;7 \3 l3 p0 B) R: e
             for k3=3:k4
' U* [! k- E2 y% 用k3行从第三行开始到当前行前的k4行消去
3 X4 Q( @! ], G9 f/ j                 for k2=k1:N1
% i/ |; n7 Y+ s; w& y1 Z% k3行后各行下三角元素
: c" Z1 a9 K: B                  J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算0 H( E9 [$ u( b- D) G
                 end
/ f# C+ b- N) L5 k                 J(k3,k)=0;
7 r$ G5 U, F$ C  b/ n- R8 u0 ?/ l             end. p# |; C+ Q+ ]: `
             if k==N0 % U) p5 \3 d( c5 B% e
                 break;6 p6 ]/ |4 i0 P) j+ p! r1 T
             end
, v' U) n. B0 a6 o%==========================================
. G; f/ |: t4 t& P) K             for k3=k1:N0# i3 Q0 V+ a% v; _% W+ S; f
                for k2=k1:N1
3 q1 O8 }$ d& t6 r5 y1 R$ b: z                    J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算
4 V  N& x+ [" X  _7 Y% Q                end( u$ ?; R$ y8 u0 Z8 f
                J(k3,k)=0;, m$ k, E7 z/ r5 c9 G. v1 N
             end: Z9 k0 u2 _9 O/ d, F, N* _
          else6 G  R# c6 `5 O. d$ r
             for k3=k1:N06 J7 W  ~+ ~4 p) s
                 for k2=k1:N10 \7 D0 s: v+ Q) e: W3 X4 |# f
                     J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算& O# N8 }* j& J2 I" S
                 end* r, ~# e3 X" z3 s! A6 y, F# p
                 J(k3,k)=0;
: L; U7 B4 M& W8 g6 X: ^6 t) f8 p2 C             end
3 z  v; y0 f% c" j& C9 W, V" B          end% h0 c. ^2 o$ V# @  d- e
      end
; C) b) _; m5 V3 y9 g) F! O      %====上面是用线性变换方式将Jacobi矩阵化成单位矩阵=====
0 i; W5 }" d! F- g. z: z8 I5 o      for k=3:2:N0-1* j/ i5 o; a* p- f3 ]9 @
          L=(k+1)./2;0 [4 J& S1 _3 [
          e(L)=e(L)-J(k,N)    %修改节点电压实部$ c+ P& u5 k/ o
          k1=k+1;% o) i  m' w: N2 G* y
          f(L)=f(L)-J(k1,N)    %修改节点电压虚部
& c; E, e/ ^5 y8 p) g* I      end
1 B! }0 F1 X4 {      %------修改节点电压-----------
+ G( R/ R1 z5 K. e' [& K      for k=3:N0
: H# V! j+ l8 v9 B; A6 N( E, _          DET=abs(J(k,N));
% d% |+ W$ y' M9 p5 [) u( S7 ]          if DET>=pr    %电压偏差量是否满足要求
. F* g2 s0 }3 ^# z0 ]             IT2=IT2+1; %不满足要求的节点数加1
: E6 m! g, u1 y1 {          end
% q+ e8 s7 t* Y$ _' D2 j      end, b8 c( |" ]) ]
      ICT2(a)=IT2;
% a  l% d8 Y9 q) d      ICT1=ICT1+1;
" }: G1 f3 R# E2 a. tend
$ `  Q- z2 J9 a9 b4 Z6 f, [%用高斯消去法解"w=-J*V"% e5 F, R  k% d% N% F
disp('迭代次数:');
; i9 g" h$ @8 s' [2 l  X0 ndisp(ICT1);- C  e# z3 e5 v4 G7 o
disp('没有达到精度要求的个数:');
8 ?  O* e1 I5 n0 Z/ n* `disp(ICT2);
4 h% ~4 m5 v4 S- r" u5 X4 wfor k=1:n6 ~0 A" B2 T4 Q0 V
    V(k)=sqrt(e(k)^2+f(k)^2);) P: T! X: B3 Q. b
    sida(k)=atan(f(k)./e(k))*180./pi;
3 f+ {' t7 {, ~- S    E(k)=e(k)+f(k)*j;* l" u8 s1 t8 d1 t3 f% A0 z, N! Y% S, t
end  m# S5 V* [8 i4 K. B5 `% _
%=============== 计算各输出量 ===========================
+ B3 V  S. ]5 u/ E# D' Gdisp('各节点的实际电压标幺值E为(节点号从小到大排列):');( ~5 `' r0 B. [
disp(E);* Q8 L+ M4 @6 D  _" x# q/ H5 L
EE=E*UB;, O7 k2 j, W  r% d
disp(EE);
2 m; ?) p! E' O5 V3 g( E8 T$ E5 V4 K' r0 gdisp('-----------------------------------------------------');
3 G( U# F. a, a* gdisp('各节点的电压大小V为(节点号从小到大排列):');# p( C) u/ D  I/ b2 S+ q7 e
disp(V);
/ m& H7 O0 A5 s" \  zVV=V*UB;
% \/ Z7 u! M  A9 `disp(VV);1 e' d9 N# C. ^( [' A" V* Z6 E
disp('-----------------------------------------------------');& D: \  r" o4 n% h
disp('各节点的电压相角sida为(节点号从小到大排列):');* |. ^/ B* |. H& i( d5 T( W5 [' {: Q
disp(sida);
" }+ o" ?; Y2 I. U/ r; yfor p=1:n
9 L' e3 R6 k! X9 h" f    C(p)=0;
, L/ v* N8 E! w, O0 v; r0 ~    for q=1:n2 W0 K, @+ @  _$ u' F
        C(p)=C(p)+conj(Y(p,q))*conj(E(q));
. a2 n! V' Q6 @: O  z& o    end
' ?. ]2 n; q. U- m- \- T    S(p)=E(p)*C(p);( P6 c: w$ ]* C' Z  m7 `
end
5 n1 j/ D/ h; S$ ~" @5 idisp('各节点的功率S为(节点号从小到大排列):');
6 m8 G" S- p" J$ Qdisp(S);
1 c0 a  q- M7 a" \! y; K$ udisp('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~');% B: C  M' |) _# |
SS=S*SB;
* N8 z- k5 Z8 }. adisp(SS);
  s' Q: S  L9 f  |: j, Qdisp('-----------------------------------------------------');/ @" p( j* Y7 m6 B: p* t( g
disp('各条支路的首端功率Si为(顺序同您输入B1时一致):');1 t% o, z# Y# }0 @
for i=1:nl
( \/ c+ O- d% a9 H/ K       p=B1(i,1);q=B1(i,2);/ G" @0 q5 V6 M) y; [+ S0 l/ u& z
       if B1(i,6)==0
) E, ]& n* w! t! m5 X8 ~9 ?            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))));9 G1 V- L( y* Y8 I0 a( @( w
            Siz(i)=Si(p,q);  ]- T8 g5 N* h6 w1 L  c! v0 U
        else+ k' h" j2 T$ a; \
            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))));
. K0 J4 [+ f9 K7 A            Siz(i)=Si(p,q);+ S/ z7 R; A; @' S# g, I+ g
        end* [, Z8 L+ {, z5 g& G2 a1 N
    disp(Si(p,q));
  z9 W) Y8 ]3 u1 V    SSi(p,q)=Si(p,q)*SB;5 J3 ^/ H  Y) E- b8 y+ M
    ZF=['S(',num2str(p),',',num2str(q),')=',num2str(SSi(p,q))];
. N3 t6 _3 x' i    disp(ZF);
- ?4 B0 `7 d) s% b    %disp(SSi(p,q));
) |4 W0 G. F& v& D+ a    disp('-----------------------------------------------------');
5 G& L- H( y$ y2 X+ s( Jend
& Y8 V- h! h5 M! bdisp('各条支路的末端功率Sj为(顺序同您输入B1时一致):');8 j6 t+ M4 a; p$ C8 P2 `$ t# O6 R
for i=1:nl1 Z" s+ F5 F- P% `8 q
    p=B1(i,1);q=B1(i,2);* G0 V" w0 B3 o. g# E! W! d
    if B1(i,6)==0! S. I; `2 K* F# v2 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))));9 n+ B' f4 b0 r8 ?" s& ?* Q3 V) o
        Sjy(i)=Sj(q,p);
% H  }6 C; o9 K9 x: V* i6 s" M    else  H  {. r/ o  n5 ?1 i& y  W
    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))));
1 H$ j5 x( U+ t3 `% s        Sjy(i)=Sj(q,p);
) }6 a- B3 P3 a- U( E. {) q0 |    end
' E4 W- p9 p" q) c5 f; x# T    disp(Sj(q,p));% R, q/ A* B4 x* G5 p
    SSj(q,p)=Sj(q,p)*SB;
! I: R! f$ t3 D5 l" Z* d6 T3 F    ZF=['S(',num2str(q),',',num2str(p),')=',num2str(SSj(q,p))];
2 U3 @4 ]* o7 A& c    disp(ZF);
) ?1 W5 J* O) v) o    %disp(SSj(q,p));/ [9 ?" ^  O' l4 u" t3 `
    disp('-----------------------------------------------------');% f2 c" D* N4 v% Y) l/ J4 x; m
end
' g$ H3 ^& ~* i3 n: H) idisp('各条支路的功率损耗DS为(顺序同您输入B1时一致):');
8 J0 H# P; s: r. Sfor i=1:nl& d' m: ^* W. ~/ W# @  l' L$ V: `& ^
        p=B1(i,1);q=B1(i,2);
0 S$ U3 I0 L! N$ R    DS(i)=Si(p,q)+Sj(q,p);$ W4 R4 e* ?: }7 @8 ]" R
    disp(DS(i));
- H1 G! D# L4 Q% d  \7 c- U    DDS(i)=DS(i)*SB;
, O9 v8 p* ?$ Y8 B5 h    ZF=['DS(',num2str(p),',',num2str(q),')=',num2str(DDS(i))];
# {0 N6 h! B- e& L0 c    disp(ZF);& l: H  {" y% f! f. n
    %disp(DDS(i));9 R* N2 @! t) {2 N' q
    disp('-----------------------------------------------------');/ a" f6 u. O8 l1 y" @0 |4 G
end
2 C( }7 a. B+ q: w  Nfigure(1);: a) |! x" j8 ?$ n5 F' Z
subplot(2,2,1);! j# z8 I' c" Z
plot(V);
$ ?& p+ Z* r, l3 zxlabel('节点号');ylabel('电压标幺值');+ S0 o& B2 F& \% X) _! m2 n" R
grid on;% I3 w& v( v% E  @
subplot(2,2,2);
( |. H) ?6 N$ G- }plot(sida);
0 H" l8 D4 [0 Q( S  L/ Axlabel('节点号');ylabel('电压角度');
. R5 D/ g1 @  g) jgrid on;
# F* U2 L" p  L& n$ Y! t% |subplot(2,2,3);; K6 e7 S# f! _7 v6 K5 \! I
bar(S);- f+ X7 I: \) H/ {
ylabel('节点注入有功');
0 ^3 l1 B  i2 a2 C4 f. kgrid on;. }: K" f6 x; L* [- ?- z
subplot(2,2,4);3 D4 o  s7 M+ L  [# f4 J
bar(Siz);
$ e6 M( o) {# lylabel('支路首端无功');2 f" Y  i: k. b; s# f' _5 d5 p
grid on;
"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
您需要登录后才可以回帖 登录 | 立即加入

本版积分规则

招聘斑竹

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

GMT+8, 2026-10-29 20:59

Powered by Discuz! X3.5 Licensed

© 2001-2026 Discuz! Team.

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