|
|
马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!
您需要 登录 才可以下载或查看,没有账号?立即加入
×
%本程序的功能是用牛顿——拉夫逊法进行潮流计算
$ ^5 X' z- p6 @( J% B1矩阵:1、支路首端号;2、末端号;3、支路阻抗;4、支路对地电纳
6 W3 H9 f8 \9 {/ y3 T! S; u" B9 L" w6 x% 5、支路的变比;6、支路首端处于K侧为1,1侧为0# B5 J9 R, W' C* ~
% B2矩阵:1、该节点发电机功率;2、该节点负荷功率;3、节点电压初始值/ _$ F: o# {# V& s( G @8 f
% 4、PV节点电压V的给定值;5、节点所接的无功补偿设备的容量6 |# z5 Q# ] }0 ]8 r
% 6、节点分类标号
0 k& J6 i' q8 W4 }- S6 [6 V6 |clear;& m, _' T7 s6 @1 u G/ o4 y5 X
n=24;%input('请输入节点数:n=');; d- v0 o8 c" W8 X( K' f( G
nl=38;%input('请输入支路数:nl=');
0 T5 R& r" K+ [; K5 cisb=1;%input('请输入平衡母线节点号:isb=');! @- J4 K7 r* p, x; D# B9 l2 ]
pr=0.00001;%input('请输入误差精度:pr=');+ ^5 L" K2 k) o2 ^
B1=[1 2 0.0026+0.0139i 0.4611i 1 0;: @8 S& ] G# y W: E2 F) n
1 3 0.0546+0.2212i 0.0572i 1 0;# v0 ^4 [ l0 Q0 W* q% X1 o
1 5 0.0218+0.0845i 0.0229i 1 0;8 s7 N* `/ [ m% L
2 4 0.0328+0.1267i 0.0343i 1 0;' } y# t8 r" k& T3 R& [
2 6 0.0497+0.192i 0.052i 1 0;$ N9 y8 H8 X, R
3 9 0.0308+0.119i 0.0322i 1 0;7 [; H. Y2 k, G! {$ d8 E g7 W1 S
3 24 0.0023+0.0839i 0 1 0;
/ J5 c6 L$ ?* {4 t 4 9 0.0268+0.1037i 0.0281i 1 0;
- f; d3 g) ?, G! Q$ ? 5 10 0.0228+0.0883i 0.0239i 1 0;
/ Q4 X- l0 r e: j 6 10 0.0139+0.0605i 2.459i 1 0;6 g" z4 Y: w+ P" z! m( x1 e; I
7 8 0.0159+0.0614i 0.0166i 1 0;
; {1 D. i; Z e$ h 8 9 0.0427+0.1651i 0.0447i 1 0;2 ]+ |- ^2 l4 S) @* Y# O0 m
8 10 0.0427+0.1651i 0.0447i 1 0;
& H3 ?5 [6 ^2 [4 E 9 11 0.0023+0.0839i 0 1 0;
9 N8 G1 I" Y8 D# N) z 9 12 0.0023+0.0839i 0 1 0;
- F, f' I d2 O8 J7 q8 \- z- f8 x 10 11 0.0023+0.0839i 0 1 0;, V9 D2 M G! |. i4 U
10 12 0.0023+0.0839i 0 1 0;' N: n/ f$ n$ ^+ T
11 13 0.0061+0.0476i 0.0999i 1 0;
/ i: r" a7 ~& k2 C' G 11 14 0.0054+0.0418i 0.0879i 1 0;( U' w4 k5 x4 q, W; S
12 13 0.0061+0.0476i 0.0999i 1 0;
3 N' e) T/ [' X% l0 A 12 23 0.0124+0.0966i 0.203i 1 0;
9 v% s, q2 c" T, Q 13 23 0.0111+0.0865i 0.1818i 1 0;+ ]+ Y; s; E5 |! C% M: G" @4 C
14 16 0.005+0.0389i 0.0818i 1 0;
: T; V. L: Q8 `0 w; h2 c: ] 15 16 0.0022+0.0173i 0.0364i 1 0;6 d+ I; s Y5 }$ f& C; T# P; i+ g. @
15 21 0.0063+0.049i 0.103i 1 0;7 V7 \" m- D. B
15 21 0.0063+0.049i 0.103i 1 0;
0 I' J# |8 S9 ~8 |" e* z 15 24 0.0067+0.0519i 0.1091i 1 0;
n4 d, p3 Y2 W | 16 17 0.0033+0.0259i 0.0545i 1 0;
' G& }: B$ }+ D; j, q; H 16 19 0.003+0.0231i 0.0485i 1 0;3 n$ ~' F4 Y. O7 ~: Z
17 18 0.0018+0.0144i 0.0303i 1 0;
8 Y+ c6 x+ a" C1 @9 l" H) j6 D' N 17 22 0.0135+0.1053i 0.2212i 1 0;* X8 y% R( ?, B0 `- c7 b5 O
18 21 0.0033+0.0259i 0.0545i 1 0;* ]9 A8 ^' l5 V3 f2 }
18 21 0.0033+0.0259i 0.0545i 1 0;& k. B0 E& z; F- k$ s
19 20 0.0051+0.0396i 0.0833i 1 0; S3 l" x# ~1 F7 D9 q: K
19 20 0.0051+0.0396i 0.0833i 1 0;0 y% c0 u5 j" F" K- z w
20 23 0.0028+0.0216i 0.0455i 1 0;
9 S. ^7 X" @1 N, T3 w 20 23 0.0028+0.0216i 0.0455i 1 0;5 c! |2 d) w: x/ |
21 22 0.0087+0.0678i 0.1424i 1 0];%input('请输入由支路参数形成的矩阵: B1=');4 ]6 p' p' c' L# ~/ s
B2=[0.1788 1.0157 1 0 0 2;
6 k! x/ g) j4 ~) d, H; Q: m+ F 0 0.9127 1 0 0 2;5 |' n$ y5 M3 @0 z1 e
0 1.6935 1 0 0 2;
6 U1 v% O/ J% N P 0 0.6958 1 0 0 2;
! x0 n, J, u) A 0 0.6669 1 0 0 2;
6 E# Z1 L& \' x2 n/ w! w" Z. e 0 1.2796 1 0 0 2;. u/ ~" @4 q. g! r
0 1.1748 1.05 1.05 0 1;3 O1 B. Z( l- @; c6 W* k
0 1.6085 1 0 0 2;* `; V ?# A( F2 V3 |# Y% E
0 1.6465 1 0 0 2;0 z- {8 L X0 g8 }' k
0 1.8345 1 0 0 2;3 ~& `4 P% W [2 A, M3 S$ P2 P
0 0 1 0 0 2; A. J) J; [3 U/ A, A y: `3 f4 [
0 0 1 0 0 2;
, c f1 ?3 _4 c8 O9 C& \5 @ 6.9529 2.4923 1 0 0 2;
' n4 O0 |) i5 _4 q# }# ^; \ 0 1.8236 1 0 0 2;% | d, \, A# }3 T+ B U' {& i) y
1.8235 2.9803 1 0 0 2;
7 c: z7 ^, D6 ? 1.8235 0.9398 1 0 0 2;
; v; u9 ?; H* N5 v1 ` 0 0 1 0 0 2;
$ y8 t; x! _6 A+ k) W0 a7 w* R% R 4.7059 3.1322 1 0 0 2;
% n% h/ E) p2 ~; d0 @' n7 S+ ~2 d$ A$ ^) E 0 1.7025 1 0 0 2;
- s- `$ S$ ?7 r. O# w9 P' [& @( { 0 1.2037 1 0 0 2;
7 S1 M$ X, g2 u! I6 S+ e 4.7059 0 1 0 0 2;
1 C5 H& y- q: g# m. q; P/ S 0 0 1 0 0 2;
4 Y3 M& U& D+ l$ s 7.7647 0 1 0 0 2;, r0 k9 w7 T9 Y$ t8 @
0 0 1 0 0 2];%input('请输入各节点参数形成的矩阵: B2=');
/ Q3 K% k9 ]: kY=zeros(n);e=zeros(1,n);f=zeros(1,n);V=zeros(1,n);sida=zeros(1,n);S1=zeros(nl);
! G0 g1 h" K$ n$ j%-------修改部分------------
+ K, A: Q- R' O3 Aym=0;
; w7 B: p( k s& t" V/ jSB=100;UB=220;
- H2 r- @; I; I8 c2 X%ym=input('您输入的参数是标么值?(若不是则输入一个不为零的数值)');
" Y8 f5 [) O' n1 I" rif ym~=0% E! z/ u: w# ?
%SB=input('请输入功率基准值:SB=');
$ e, s6 D: b1 L, q %UB=input('请输入电压基准值:UB=');
# [. n2 s9 i' q* k8 e YB=SB./UB./UB;' w; F% t) W+ @8 e$ E
BB1=B1;
; W4 D8 E! Q8 b$ d' { BB2=B2;1 X6 j* Z% k: X. E1 d
for i=1:nl/ l& X$ b+ K+ I" t
B1(i,3)=B1(i,3)*YB;% x: Z/ F) f9 ?2 B+ w
B1(i,4)=B1(i,4)./YB;; a. _3 i |8 y O7 n3 r( n
end3 H9 N- {! r0 i3 R; {
disp('B1矩阵B1=');
0 T; ?$ i! d3 K. f' u3 s% _2 T; A disp(B1)0 y, z3 \' e% O8 i9 L6 a; |
for i=1:n: o3 w( B8 S% j9 y* @$ f; }
B2(i,1)=B2(i,1)./SB;
) w) g2 e) L1 I# L4 Y B2(i,2)=B2(i,2)./SB;
0 }' l5 n( G. k# \# \ B2(i,3)=B2(i,3)./UB;
, R' I* B, G$ a! M" D! |3 J B2(i,4)=B2(i,4)./UB;
3 }" O0 q. N* { B2(i,5)=B2(i,5)./SB;
, |" N( R! ] \5 ?+ ?- Q6 J9 {! I end5 g$ z9 N1 l: x) b1 w) S
disp('B2矩阵B2=');5 h$ a& Q9 o( g. T N2 N5 O
disp(B2)
4 `3 [1 w; n( y: j+ k$ [end! k( R7 G7 z. f. u# b! V
% % %---------------------------------------------------* o t' i1 w+ R" a* r
for i=1:nl5 H7 @( E# \+ V: W3 S3 _5 _, \
%支路数2 t# ]% w+ @* Z- B- l
if B1(i,6)==0
# i( y& R) r0 X; h4 n7 t: @* k/ Q%左节点处于低压侧
; x% ?6 a" Z3 B* B# N; i% } p=B1(i,1);q=B1(i,2);3 @# A7 ]4 C& C/ |5 G; Z
else- H2 _1 x! }4 J) b' Z X% m4 ^
p=B1(i,2);q=B1(i,1);
v! W% G- n$ _" u end3 ]. L+ J* w* Q/ Z: L
Y(p,q)=Y(p,q)-1./(B1(i,3)*B1(i,5));
8 L/ Z3 A( u2 G" l8 R%非对角元
4 \ B" n+ K! B7 \, q( @ Y(q,p)=Y(p,q);5 g: o; j: E \6 B! v/ `0 n
Y(q,q)=Y(q,q)+1./(B1(i,3)*B1(i,5)^2)+B1(i,4)./2;
$ E5 m& F+ k! f3 j8 p# f* K: ^%对角元K侧2 D/ j5 w- |8 k; B, B
Y(p,p)=Y(p,p)+1./B1(i,3)+B1(i,4)./2! V0 x+ z4 {! T4 ?! f8 R
%对角元1侧
9 W# G* ^, u& g y- Jend
+ M, `3 T5 A1 S) J3 M' h%求导纳矩阵
% W7 r$ l: I1 ~5 [2 H6 Fdisp('导纳矩阵 Y=');- K/ q% K$ H1 V" A; f. k
disp(Y)- H& d8 u* c4 t8 N
%----------------------------------------------------------
, c2 \$ i. E) A! zG=real(Y);B=imag(Y);
. y2 d7 }9 ^. {6 C& w%分解出导纳阵的实部和虚部
i1 H. U* x% c0 l$ _for i=1:n9 \8 M- N. s- G& s5 C
%给定各节点初始电压的实部和虚部
/ |6 ], O0 k0 }: O e(i)=real(B2(i,3));) _* j+ Z& o b) n8 C/ @
f(i)=imag(B2(i,3));
+ r* J5 ~- k) b" r/ ` V(i)=B2(i,4);
% Q) ^* n+ f+ Y# G( V4 B0 v0 P%PV节点电压给定模值 ; i2 Y: \& v4 l3 q! d
end
) Z; Y! _. b, F& kfor i=1:n
0 i+ q5 i: f5 w3 S, @% j7 l) N Y%给定各节点注入功率 8 T* `) X1 i$ |% ]9 R
S(i)=B2(i,1)-B2(i,2);
1 b) K. E) m$ t( g+ Y- L) o& l%i节点注入功率SG-SL " _6 _5 d! ?' {+ E
B(i,i)=B(i,i)+B2(i,5);4 b( ?! b. c4 e' ?/ o
%i节点无功补偿量
9 s! S$ Q- f% n, X& xend
) p: P6 d8 L6 |! |6 q' Y# A" {%===================================================================
3 ?0 c! b' `9 s- P/ O1 UP=real(S);Q=imag(S);
* J, {" F) p- kICT1=0;IT2=1;N0=2*n;N=N0+1;a=0;
+ o( P; R0 |8 g# ?while IT2~=0
# p% ?6 _% u# P IT2=0;a=a+1;$ c' j2 @% Y0 b5 U4 a+ M; ]+ Q. a
for i=1:n0 X: @: R7 F; F7 T2 D, P* m
if i~=isb/ `# t; J' b3 g; j8 t8 G
%非平衡节点 ) _# N3 _# s4 ]
C(i)=0;D(i)=0;1 {* ^+ G9 y8 y& ~' n
for j1=1:n
( f7 j6 T$ p8 b1 k C(i)=C(i)+G(i,j1)*e(j1)-B(i,j1)*f(j1);%Σ(Gij*ej-Bij*fj)
+ Z( `2 i* W. d/ _- s D(i)=D(i)+G(i,j1)*f(j1)+B(i,j1)*e(j1);%Σ(Gij*fj+Bij*ej)9 f3 Z2 Q+ m+ P8 l; h1 P' F
end
7 S6 V6 U- d* N2 ~ P1=C(i)*e(i)+f(i)*D(i);%节点功率P计算eiΣ(Gij*ej-Bij*fj)+fiΣ(Gij*fj+Bij*ej)
. g9 [4 F7 \" n+ }+ J Q1=C(i)*f(i)-e(i)*D(i);%节点功率Q计算fiΣ(Gij*ej-Bij*fj)-eiΣ(Gij*fj+Bij*ej)3 ?# V% I+ h; x
%求P',Q'
! m# u1 H# [% d; ` V2=e(i)^2+f(i)^2;: z( l7 L7 @& V4 Z( `# v! E
%电压模平方1 q9 C0 ] r. Q2 T
%========= 以下针对非PV节点来求取功率差及Jacobi矩阵元素 =========; D! c! b s# X7 X) G2 e/ J
if B2(i,6)~=3
8 e1 Q" w3 Z$ Z9 D" w$ N$ l%非PV节点 8 ^) S* c+ @/ u3 J
DP=P(i)-P1;
( V& n2 V* X+ @2 S+ b%节点有功功率差 3 T5 _6 R$ h1 r, |
DQ=Q(i)-Q1; %节点无功功率差
1 e# k& C2 ?# z7 `' ~0 J%=============== 以上为除平衡节点外其它节点的功率计算 =================7 G3 }! Z3 K+ I, v. f/ |1 U
%================= 求取Jacobi矩阵 ===================' I: J5 b4 a' d3 m' d3 V
for j1=1:n
: o, O6 v; P8 E* g1 N if j1~=isb&j1~=i3 h* I2 t0 k. {- L+ K: G/ s
%非平衡节点&非对角元
" y! ~* G j% R: w( S X1=-G(i,j1)*e(i)-B(i,j1)*f(i);; s* T: Y& |- O' ?& ?0 p+ ^
% dP/de=-dQ/df 7 I* _! y- N. J7 r* L$ c& Z
X2=B(i,j1)*e(i)-G(i,j1)*f(i);( H3 R$ R9 {" ?
% dP/df=dQ/de : Q2 q# l0 w/ [: I6 R5 m( r
X3=X2; % X2=dp/df X3=dQ/de. q4 Z u+ X c$ Z; X
X4=-X1; % X1=dP/de X4=dQ/df
& l9 t9 `9 I! G5 G2 ~ p=2*i-1;q=2*j1-1;
( s$ n/ |! V$ C4 r J(p,q)=X3;J(p,N)=DQ;m=p+1;! c' c' F+ G* Q. Z. O$ Q% l
J(m,q)=X1;J(m,N)=DP;q=q+1;" Y+ m y* E7 s( O4 A9 b
J(p,q)=X4;J(m,q)=X2;9 `$ M6 F' N$ {# f; w
elseif j1==i&j1~=isb
7 {9 T, T: I8 h* Q3 O# \6 ]%非平衡节点&对角元
: y6 L* z5 y/ O& n+ g; j X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);% dP/de
" M' o% G- j! k3 j X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);% dP/df
& d+ i1 I( S5 C$ P X3=D(i)+B(i,i)*e(i)-G(i,i)*f(i); % dQ/de$ C( e3 a. l4 x0 \, h! Q, ?! W9 L
X4=-C(i)+G(i,i)*e(i)+B(i,i)*f(i);% dQ/df
& Y( k7 S4 D/ l9 C% d5 x0 P p=2*i-1;q=2*j1-1;J(p,q)=X3;J(p,N)=DQ;%扩展列△Q- J+ K/ c- m: u& S! B. C5 s
m=p+1;- q: G7 A8 ?3 y6 x
J(m,q)=X1;q=q+1;J(p,q)=X4;J(m,N)=DP;%扩展列△P
" y, _' n- `% T( G J(m,q)=X2;
Z6 F E {0 n0 i t9 j! M* U) ~ end
7 }- s$ }1 l" F0 } end
: ]6 a) I& F" i& g. { else
* x7 k, w$ E; h: i9 o %=============== 下面是针对PV节点来求取Jacobi矩阵的元素 ===========
* a! Z7 t3 X( p1 M DP=P(i)-P1;4 ?0 N2 L4 @ W c7 r( J# S4 H
% PV节点有功误差
: ^: C X* G$ M& c$ q* |' P DV=V(i)^2-V2; R) \8 c$ f. P! N. ?
% PV节点电压误差
% ]2 p0 |; \' {/ Z for j1=1:n: e8 Q& V4 O2 Y' d* z3 w
if j1~=isb&j1~=i
( l7 |* s$ L" C/ p1 ]+ ~%非平衡节点&非对角元
& d8 z# E3 t8 ]# X0 a- k, ?% Z9 [ X1=-G(i,j1)*e(i)-B(i,j1)*f(i); % dP/de
. N- g o- K8 G% d X2=B(i,j1)*e(i)-G(i,j1)*f(i); % dP/df
! w1 o7 f& q. _" Z/ @& m) Q X5=0;X6=0;
9 _, \" ]2 S( Q5 ?* E0 I, [: w p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV;
3 r: Y; y$ t) m m=p+1;( Z# m: S) }- h0 a
J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;% `9 [1 V' p& X) o6 g7 B
J(m,q)=X2;
# b$ T, @; J8 P* I$ w elseif j1==i&j1~=isb
# x& e8 Z0 s. N( O5 ~ q u%非平衡节点&对角元 3 L5 D6 v' g1 ]: J
X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);% dP/de0 M' ` w. P( h
X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);% dP/df
( s" ]0 b2 [6 Z$ U1 I/ | X5=-2*e(i);( r+ s3 I! V/ D4 O
X6=-2*f(i);
( l; p9 y8 m% \ w& ~$ G( a) a p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV;& N' g" A( [, [4 f
m=p+1;
0 w! C( l1 j7 f) O* Y( x4 }$ t" n J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;
4 U$ G- Z( e0 s8 l. m J(m,q)=X2;+ ^2 W) w! {& w+ u! [' N
end
' y. e7 s2 {- ^- Q) J: _ end4 Z8 n: M- b0 c1 V9 W' d
end9 K8 K% }" U' `/ }5 x
end
4 J" S# O) o7 v+ `# b% v end
& m! H, g5 f- Y. v2 O) @$ n o%========= 以上为求雅可比矩阵的各个元素 =====================! c5 I* H- a, y, V( S3 u
for k=3:N0 % N0=2*n (从第三行开始,第一、二行是平衡节点)/ u* k8 ]; i* Y. J
k1=k+1;N1=N; % N=N0+1 即 N=2*n+1扩展列△P、△Q- J W4 w# l7 x+ r
for k2=k1:N1
' d, p6 v( v. A2 f% K* [6 D( Y0 \8 ^% 扩展列△P、△Q
' [) L$ I! Y$ U2 u' Y J(k,k2)=J(k,k2)./J(k,k);
& W% w, S/ h2 x9 U; t: f% 非对角元规格化 " H( \# {# J, ?+ s" e; P; P' }
end
2 q+ D7 ?: k$ b+ x5 ` J(k,k)=1; % 对角元规格化
9 Y, c* \+ Y5 v( ]5 X: E0 D! _ if k~=3 % 不是第三行) w7 r4 N4 L: b: X" T
( y; X. F, R5 g- s3 `%============================================================
% s5 q$ l, {9 Q6 M* B0 Y k4=k-1;* Q8 e: L/ j& p0 D+ w
for k3=3:k42 Q- M7 V, b* t# E9 W
% 用k3行从第三行开始到当前行前的k4行消去
1 ^* q$ r! m, g, R for k2=k1:N1" E. {( D' `+ X6 v! I9 I
% k3行后各行下三角元素
{+ _1 q- \2 O I' c' `3 a1 i; s J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算' x I2 h" a c" U1 r* [
end0 ?3 X* s: O- x1 R8 V4 g( W
J(k3,k)=0;( K. W( B3 I3 x* O$ T8 F1 i8 d2 ^
end& s' B) i2 q8 K, `. o% o
if k==N0 " ^. i- B7 Q% ]3 D
break;- E/ J- o0 V4 s. K3 Y s! E# w
end' G2 h3 I2 f3 {) f) w
%==========================================
. E4 R: o% _) E4 t) _* x for k3=k1:N0/ @9 ?. A7 s5 {; }2 o4 w0 y- o+ Z
for k2=k1:N18 M' f# v- k$ s6 h9 P
J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算% W2 t& W8 d- k, s8 f W; t6 e
end+ Q7 a/ p# M- u
J(k3,k)=0;
; f8 r4 a* h( Y |6 D Z end2 }( t2 Y+ \2 ^, V1 h& g
else$ ~- A! G% ?3 d( q2 a* C7 S
for k3=k1:N0
; |; g. C- I. v* Y' C3 c for k2=k1:N1
! h6 ?+ `9 }: I) q* q J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算1 J: m4 M9 V! M1 I( g2 X6 m( T
end/ I! l5 @% Q% `, T8 X
J(k3,k)=0;
* `2 H, E& f$ O end1 t& W9 a% p# {. V6 X, z: w
end: U! h: b( c* X: V# @) U+ V6 ?
end
# f3 V6 O6 Q1 q2 b$ L% e# R4 ? %====上面是用线性变换方式将Jacobi矩阵化成单位矩阵=====) M) L8 [* I: Y" r E' w4 M! k
for k=3:2:N0-1
1 p% X4 U( b/ V$ y1 U+ [3 h/ r L=(k+1)./2;5 s7 F, u p$ A U1 u- b+ W: Q
e(L)=e(L)-J(k,N) %修改节点电压实部# \6 O/ J( c+ I- u! y1 q& p" e
k1=k+1;
+ y6 B( \; j1 i- X5 i4 C+ U+ a f(L)=f(L)-J(k1,N) %修改节点电压虚部
1 l1 r% Q3 ~0 w2 o$ ] end
' w2 z- i# V0 |. u. @- ?# D %------修改节点电压----------- E7 |% x2 ~5 ]% i6 g1 g
for k=3:N0
9 ]% C3 F! z1 G, C, O1 n/ n& e% M9 l! J DET=abs(J(k,N));
' f* d u& Y Y ~9 U8 j4 ?7 m, U if DET>=pr %电压偏差量是否满足要求
1 H) ~% a6 g% ] ^4 D, Q8 k; @: b IT2=IT2+1; %不满足要求的节点数加1
1 D* O1 L4 n, a4 c, p7 s end
+ b+ P, f4 q2 H6 h( f end0 ], W0 b% ~ B% n* p4 ?. H
ICT2(a)=IT2;2 U# b4 ^, m. I1 u/ e
ICT1=ICT1+1;9 q- [& x! B, f* H7 Y. L
end
+ k+ E8 D" y& h$ e1 e( Z% P; n2 N%用高斯消去法解"w=-J*V"* G4 A: d0 n5 ^2 X5 D
disp('迭代次数:');
/ N# Q b) n7 m7 c7 Rdisp(ICT1);0 ~$ G3 m) ]5 b7 ~/ W- [, }
disp('没有达到精度要求的个数:');
8 m3 R: }1 s6 z" |! O% `disp(ICT2);1 I/ z8 k! W. m3 u. [0 y2 I" L# q% o6 k
for k=1:n' [/ L0 ^& w% p; p d, K" I7 r
V(k)=sqrt(e(k)^2+f(k)^2);
! L* Y, j5 y% Q+ [ sida(k)=atan(f(k)./e(k))*180./pi;# J8 d# U. F k% L$ d
E(k)=e(k)+f(k)*j; V/ j/ K6 l2 o4 c
end) Z! R" ?, O0 y+ ]
%=============== 计算各输出量 ===========================5 w. m. t4 }+ z% q
disp('各节点的实际电压标幺值E为(节点号从小到大排列):');8 }, M/ O3 R0 E7 G2 N" W1 |& T! V
disp(E);- W" r; z; g4 J: ] x1 K* U/ d
EE=E*UB;
6 c, C& s9 g8 D5 s# xdisp(EE);5 B7 ]. a& M5 O1 n# @4 ~; [
disp('-----------------------------------------------------');. s6 T- {! V! x9 o
disp('各节点的电压大小V为(节点号从小到大排列):');
, l& O3 @0 ^ F. F# s. Rdisp(V);
+ e' i9 E( N. J- \6 EVV=V*UB;
: Y9 }) G h4 ^' b- W7 rdisp(VV);
5 K2 P# ~! k3 x: T# e1 `disp('-----------------------------------------------------');; `* w5 C; U, t0 I# ]4 T p5 Q& F
disp('各节点的电压相角sida为(节点号从小到大排列):');
9 f. Q0 V" C! y- ndisp(sida);5 m- N X& Q: M- b( `
for p=1:n q5 w* [3 h0 z' n
C(p)=0;
6 P# [2 j& q( p/ c) ]0 z for q=1:n% A* F' N0 }- O
C(p)=C(p)+conj(Y(p,q))*conj(E(q));
3 M' P9 H G7 @6 i, U' F% A end
( Z# f$ H0 T8 m6 B) M S(p)=E(p)*C(p);/ m6 J3 x( L8 C; {1 s+ q
end) y) u" U4 |# G k, N, P: ?
disp('各节点的功率S为(节点号从小到大排列):');
; {! `* d" n7 F0 T0 O. Idisp(S);; r8 q1 w8 R' r6 a
disp('~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~');
0 p* N3 [" z8 _SS=S*SB;* |( q9 d4 g# @' X/ q$ g7 z
disp(SS);
; W- N/ `+ i8 C- e! jdisp('-----------------------------------------------------');( H4 M' o! |! F- T, u# t e* C% z
disp('各条支路的首端功率Si为(顺序同您输入B1时一致):');
7 {5 t( V0 m% O3 S8 ]5 jfor i=1:nl
7 i$ q7 b, k; Y6 p+ F Z. h p=B1(i,1);q=B1(i,2);
% \1 i- M# @; P! k+ k! L% U6 P if B1(i,6)==0
7 [. V9 O+ X8 h# L% B1 ]6 N/ s0 @! b 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))));% C ?( B& {* T& y
Siz(i)=Si(p,q);1 d$ R1 V! z; h- C' O' z
else# |6 a o/ M0 Q `& }9 M6 e# K1 g3 W
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))));- A l& s" S6 {% |. Q3 X
Siz(i)=Si(p,q);* m! Y4 X1 f/ G, C. w' b7 p; D6 `1 n
end
4 h4 C0 \8 d9 W' V0 l P) `; B disp(Si(p,q));1 q; d6 F2 [$ M
SSi(p,q)=Si(p,q)*SB;4 C1 Q/ }) b I; g
ZF=['S(',num2str(p),',',num2str(q),')=',num2str(SSi(p,q))];
7 V' ~/ T! d8 w# C- W7 Q disp(ZF);
' K) N% C0 N2 l5 C+ [& a# J %disp(SSi(p,q));! R" d/ I/ D/ [0 [* D7 z% v
disp('-----------------------------------------------------');$ [' N4 g C3 T
end j6 m# k; S, o- Z! s. z3 A
disp('各条支路的末端功率Sj为(顺序同您输入B1时一致):');$ v! x6 {7 ~6 ?$ U& F0 `# m% `
for i=1:nl
/ x6 Q/ D! ~4 S0 M. R p=B1(i,1);q=B1(i,2);
G( |) G' C9 _+ c. \( x if B1(i,6)==00 _- ^' h1 Y5 Z8 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))));" W/ k7 K: `( w& @7 R s7 |
Sjy(i)=Sj(q,p);) x! f2 _7 ~. \& V: i) F' J, D
else2 }% L; y0 e7 Q! 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))));
. x9 N; B$ y* Y Sjy(i)=Sj(q,p);4 P3 G l" c1 I: E
end$ A! ?, J- P2 F. z
disp(Sj(q,p));. P+ b7 }3 | J# D( B! W
SSj(q,p)=Sj(q,p)*SB;
5 t9 |2 E$ i( S# c) E: Q ZF=['S(',num2str(q),',',num2str(p),')=',num2str(SSj(q,p))];; C4 x1 I3 O* e% b
disp(ZF);4 A: B, n: h1 m- z( ?& s: s
%disp(SSj(q,p));3 V+ B6 w! d: N; B$ _5 D
disp('-----------------------------------------------------');
$ F; t& [$ ^- P4 Nend+ k" U0 P) c; e8 u. r
disp('各条支路的功率损耗DS为(顺序同您输入B1时一致):');5 W% ?( k& V1 l& ^9 t7 Y9 G
for i=1:nl
1 e L" w3 q R7 P. _- d) Q p=B1(i,1);q=B1(i,2);9 d3 j) u2 `2 G* M- }4 @
DS(i)=Si(p,q)+Sj(q,p);
$ W+ k/ z$ c: d' C disp(DS(i));
# ?, Q. N0 I9 }& H$ c) [% x DDS(i)=DS(i)*SB;
# Q/ k& I4 I0 I9 B6 S. Z ZF=['DS(',num2str(p),',',num2str(q),')=',num2str(DDS(i))];
( ]# D" z) _7 w2 q disp(ZF);
+ O- @0 {& l' ~! {% R$ T. G %disp(DDS(i));) D* F k! c$ n0 s/ K* x& `
disp('-----------------------------------------------------');7 l8 \3 Q0 k, a4 U: ]
end
; n3 d& b% X9 A2 M1 C1 j* t Efigure(1);3 [- a, C& R! G( S
subplot(2,2,1);
: ^8 ?' O5 f' V0 x( U Iplot(V);9 u( t% l4 I" D
xlabel('节点号');ylabel('电压标幺值');% r9 c' j K. L! [/ }8 b
grid on;% z; l. P- m' L3 K- \6 S
subplot(2,2,2);
. O4 V" _* K- z. W; w6 \- wplot(sida);9 y" l3 J$ i: ?) {! s
xlabel('节点号');ylabel('电压角度');
" N, |' T' @" vgrid on; A7 b t) H! w- _; K
subplot(2,2,3);
# Z* z3 C$ W$ wbar(S);; D4 f7 ?0 L) _6 q1 o" T
ylabel('节点注入有功');( h* h# g" G, e# x7 R, `
grid on;7 v$ a9 j' ^3 _. ?+ l
subplot(2,2,4);# C# ^( A; h. e5 S5 q( f' S+ b
bar(Siz);5 ~8 ~; p, r4 n4 x
ylabel('支路首端无功');4 S# n4 W9 c6 ~! R
grid on; |
|