马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!
您需要 登录 才可以下载或查看,没有账号?立即加入
×
clear %清除工作空间原有的变量1 L, c" s; e- m2 h7 d
clc0 _2 B1 e. x, M
a=textread('IEEE14.dat'); %读数据文件' Z G: l& N+ Q7 F# o% Q, d
n=a(1,1); %节点数
; n: S2 `3 A2 S% Mline=a(1,2); %支路数( Z# `6 f$ J9 P. o2 Z7 m
blance=a(1,3); %平衡节点, y" _+ B. Y' j+ O6 y G b
SB=a(1,4); %基准功率
* X5 Y7 S. m1 B2 L3 Okmax=a(1,5); %最大迭代次数4 v# J8 O4 A; R( O
ab=a(2,1); %计算精度) w- [; a) {% Y3 x
t=find(a(:,1)==0);
3 x, [% W- ~3 @: Ixianlu=a([3:t(1)-1],:); %形成线路参数矩阵
; |4 I/ P* d) ]1 p" U9 m$ {jiedi=a([t(1)+1:t(2)-1],:); %接地支路参数矩阵
8 t* w$ V3 C4 U3 d- j, j( Xbianya=a([t(2)+1:t(3)-1],:); %形成变压器支路参数矩阵
( V5 z0 R5 z+ @jiedian=a([t(3)+1:t(4)-1],:);%节点功率数据矩阵! w* o7 p+ M9 ^: Z, S0 Y( z
pv=a([t(4)+1:t(5)-1],:); %pv节点数据矩阵
' u3 W. c9 s* r7 r: \$ }3 w( W( r%读线路参数 b7 I& }, ~: F4 p/ e) A
linei=xianlu(:,2)';& g7 f) L+ `/ l; T1 {5 W
linej=xianlu(:,3)';' `1 W5 v- S4 E& l% Y6 r
r=xianlu(:,4)';" A, u# P! M' s, B
x=xianlu(:,5)';1 g2 d, N% M& K5 h9 p9 e
b0=xianlu(:,6)';
, r8 W: [+ o i4 N! l' E* X/ F
: v) h, M: A5 t: g- pg=r./(r.*r+x.*x);. K: e7 i" r& K( ]4 C' `# B& a/ y
b=-x./(r.*r+x.*x);
4 q* }4 B) v' \$ sG=sparse(linei,linej,-g,n,n)+sparse(linej,linei,-g,n,n)+sparse(linei,linei,g,n,n)+sparse(linej,linej,g,n,n);1 r$ D" U# r1 c& F, F; P: e
B=sparse(linei,linej,-b,n,n)+sparse(linej,linei,-b,n,n)+sparse(linei,linei,b+b0,n,n)+sparse(linej,linej,b+b0,n,n);
1 K; B9 | n$ f& I: h. I% 读变压器参数
; j) }# s, Q- Ulinei=bianya(:,2)';
/ m! h2 S3 g. [2 zlinej=bianya(:,3)';* v5 l2 N: o7 ]! ]0 m1 @
r=bianya(:,4)';
% |; G8 _$ A `7 `6 P' ~% Tx=bianya(:,5)';
; k8 P& Q' J: o0 n) n9 Y9 C, O. rk0=bianya(:,6)';+ e. R4 V6 b' f
g=r./(r.*r+x.*x);) D3 S0 d# A" k- \8 C' Q' J0 g9 J5 x
b=-x./(r.*r+x.*x);7 [5 V+ E1 L8 c5 J& S" `1 D1 q
G=G+sparse(linei,linej,-g./k0,n,n)+sparse(linej,linei,-g./k0,n,n)+sparse(linei,linei,g./k0./k0,n,n)+sparse(linej,linej,g,n,n);
0 c7 A9 [3 P- a" N3 jB=B+sparse(linei,linej,-b./k0,n,n)+sparse(linej,linei,-b./k0,n,n)+sparse(linei,linei,b./k0./k0,n,n)+sparse(linej,linej,b,n,n);
% C% h& H6 a0 s. h7 O% 读接地支路参数
" X' d& R' w* o1 H! gjiedidian=jiedi(:,1)';. `7 _- D+ T& ]; @, V' Q; j
branchib=jiedi(:,2)';
0 I- y- l; w- S0 z" ?- |B=B+sparse(jiedidian,jiedidian,branchib,n,n);
4 @# `* ]1 o1 f! U' ^%节点导纳矩阵
# V4 S, C& v6 R: NY=sparse(G+i*B);
" `9 ~: R8 h: B. s% J% 读节点功率数据& `/ R8 v3 O6 G% F. [1 w/ M9 m
pg=jiedian(:,2)/SB;
/ U5 P, G0 @9 Jpd=jiedian(:,4)/SB;4 o# q. \: A8 P# m8 i
qg=jiedian(:,3)/SB;
# v$ h- t: B" ~! u3 a( Cqd=jiedian(:,5)/SB;
/ E( h) C) D* y& L$ x
: y0 [; t ~7 \: D" Ep=zeros(n,1);
6 Z; O1 O9 p" f1 I, i. H; [- Cq=zeros(n,1);
3 O U1 N9 z" ]$ P& H8 q2 P5 c/ \p(jiedian(:,1))=pg-pd;
- r/ M: J) a1 j0 y5 H0 V6 Jq(jiedian(:,1))=qg-qd;' n8 K4 m! E8 F
% 读pv节点数据" g$ _$ m' f5 P: F1 }( O e- c
pvjiedian=pv(:,1);! d- b v4 S/ A" M. K
vpv=pv(:,2);& h3 T: w. E, i7 i9 S7 h* H
v=ones(n,1); %电压初始值
* k" @- n, u/ a5 |+ E& d, }) Hv(pvjiedian)=vpv; %pv节点(及平衡节点)电压已知
5 Y; y3 O$ ~: {0 E% V* G1 Idelt=zeros(n,1); %相角初始值
/ r, e/ c& C; v8 j! U0 z( Ndeltp=zeros(n,1); % 失配有功功率初值, e+ M' A. N! A! }
deltq=zeros(n,1); % 失配无功功率初值- Y& y& ]# b- ]: x! Q \! Q
9 V- N% A$ k& i; _* v$ v) L
%迭代求潮流计算
9 l( `! S4 n( [1 r4 @for diedai=1:10 %置最大循环次数; J" z) I8 q/ ^ j' `4 q. `% Q
clear i
* M1 b& o, [7 K& ?* Y2 y % 失配功率方程4 l! O6 ] ]. Y% O/ e: ^ C
V=v.*cos(delt)+i*v.*sin(delt);
9 A3 z2 b# L0 N7 F) x a2=conj(Y*V).*V;- Y& g- x' M6 B5 ^
deltp=p-real(a2);
3 U$ ?: Y- E" D& ` deltq=q-imag(a2);- r3 x. E2 j3 @8 H: x7 ~/ A
# L+ Q5 s) z, G. K% K$ V/ _ V" } % 求雅可比矩阵
0 H4 l! `5 w9 `8 d9 |0 f4 m for i=1:n. A' D" X* t. C P2 B
for j=1:n
5 z8 q7 N. Y5 l, j% T) [% p if i~=j- V+ a W* X7 D. i" f1 D0 k
H(i,j)=-v(i)*v(j)*(G(i,j)*sin(delt(i)-delt(j))-B(i,j)*cos(delt(i)-delt(j)));1 T0 C5 r' L; p0 q4 J3 U6 d
else
& }7 b+ o! {5 u7 o4 P H(i,i)=v(i)*v(i)*B(i,i)+q(i)-deltq(i);
" j3 f* i0 W, B+ U end6 B! S, e* _6 {' I1 v' C
end0 S' v- |3 S0 ]. u
end
) N8 r/ ^ { W0 ~
" _+ D" Z$ M- W H; D, c for i=1:n
9 k: c, E- w4 k/ L" Q. W for j=1:n, v# d$ b, [0 q" c
if i~=j; B6 }: i; t8 n6 e3 N5 T
N(i,j)=-v(i)*(G(i,j)*cos(delt(i)-delt(j))+B(i,j)*sin(delt(i)-delt(j)));
8 s, D' h- {" z& D3 U else
* H- T2 ^0 Z0 t3 v, B: u N(i,i)=-v(i)*G(i,i)-(p(i)-deltp(i))/v(i);( p2 Q2 ^# @. Z, i
end# |4 r7 G* {/ a; A: B3 x! i C
end9 H) M. o& @1 i/ J
end
- b K. _7 o) x$ N 8 l$ V) q P; p' `
for i=1:n
% |1 R, e! [7 c6 C% z& U for j=1:n) s7 r1 I$ ^9 S0 u
if i~=j; ^( G/ B6 U$ A2 d- x6 D* m
J(i,j)=v(i)*v(j)*(G(i,j)*cos(delt(i)-delt(j))+B(i,j)*sin(delt(i)-delt(j)));5 e* J4 S9 Y U) u6 i- M: k- i; T) [
else
h: E( T- p- j7 `* e2 o J(i,i)=v(i)*v(i)*G(i,i)-(p(i)-deltp(i));
7 F0 k+ b& X# ?) @1 @! R end
j- @. h4 s7 F1 j. o end3 G% j3 Y* A# R& m" `+ c* E
end
% ^9 l O' U& ^" I' E( s- K# s $ N* \; f) i5 g8 {4 a1 | p! m$ R5 u
for i=1:n
; d4 J9 _9 N* V4 Q for j=1:n
. a! Y/ }3 ~& N2 i o/ T if i~=j
2 D" @5 C m) p* A* ` L(i,j)=-v(i)*(G(i,j)*sin(delt(i)-delt(j))-B(i,j)*cos(delt(i)-delt(j)));3 F8 I( I, }# A& }/ b% J+ f8 F
else
) T. {" O. z# [1 j# M, X' a L(i,i)=v(i)*B(i,i)-(q(i)-deltq(i))/v(i);
7 c% q* x8 w! W) K" c end
+ W0 \. X' x1 `. g+ A) m- D end
0 c8 |* f: |3 }% Q end
5 q* ^; f/ Q$ E6 q9 E- @ %修正雅克比矩阵 D, p( W. b+ j& _3 f p
Ya=[H N;J L];
; v) b) z! l' r- S# R$ R Ya([blance blance+n],:)=0;
1 l% N3 C& T( G7 e# Y Ya(:,[blance blance+n])=0;
" V9 a' e$ O4 k/ I) c, ~& D/ ]& J* b Ya(blance,blance)=1; %平衡节点
/ Z& O# M3 |3 m- k, h( J4 J) w Ya(blance+n,blance+n)=1;. `6 I, O6 v7 K" }! v; @5 p
Ya(pvjiedian+n,:)=0;
' n. o) l1 `+ I* A6 P- p Ya(:,pvjiedian+n)=0;+ N% G" [- b1 Y4 {8 c2 X6 I# K
for h=1:length(pvjiedian)
& p- t7 [8 s) T4 _$ S- ~ Ya(pvjiedian(h)+n,pvjiedian(h)+n)=1; r, ?' S L( y8 R7 r5 Z
end
0 d- h% o3 e- \' o, c/ `3 ` / x8 N! n% y7 w; W2 P/ t- D4 r9 i2 N
%
6 o' y' q4 S* f1 s+ ? deltp(blance)=0; %平衡节点deltp=06 f) J) H" Q/ ^; X! d8 A& \
deltq(blance)=0; %平衡节点deltq=0) y% s1 [6 e* ^* H: [
: L& H2 h4 Z3 C3 T0 r6 r7 [# I# o |
deltq(pvjiedian)=0; %pv节点deltq=0
( P- v9 u/ p7 _6 ?8 N7 S deltpq=[deltp;deltq];
; v1 o( Q+ ~3 ]8 i% T- A8 H# q6 W if max(abs(deltpq))<ab % 如果结果满足精度+ F# b4 U2 ~# r( X% P$ G- B
break % 退出循环
7 F) S" @# v) d: C end
$ s$ n' O0 c: ~9 s R=Ya\(-deltpq);
) K! o9 x0 {& D* ~/ D! S delt=delt+R([1:n]);
" S9 l7 C% l4 x* W deltt=delt*180/pi/ V7 d# [8 E6 {) S( U3 E
v=v+R([n+1:2*n])
8 z6 A/ P$ U% P7 F* c" H end 7 E6 Y8 W: T5 Z/ T% x
9 ]; I9 l0 c, l) D3 C3 R( Q0 P* ~7 F6 {
数据格式% N; s7 B. ?% z1 J5 o/ y! p
| 14 | 20 | 1 | 100 | 20 | 0.1 | | | 1.00E-06 | 1 | | | | | | | 1 | 1 | 2 | 0.01938 | 0.05917 | 0.0264 | | | 2 | 1 | 5 | 0.05403 | 0.22304 | 0.0246 | | | 3 | 2 | 3 | 0.04699 | 0.19797 | 0.0219 | | | 4 | 2 | 4 | 0.05811 | 0.17632 | 0.017 | | | 5 | 2 | 5 | 0.05695 | 0.17388 | 0.0173 | | | 6 | 3 | 4 | 0.06701 | 0.17103 | 0.0064 | | | 7 | 4 | 5 | 0.01335 | 0.04211 | 0 | | | 11 | 6 | 11 | 0.09498 | 0.1989 | 0 | | | 12 | 6 | 12 | 0.12291 | 0.25581 | 0 | | | 13 | 6 | 13 | 0.06615 | 0.13027 | 0 | | | 14 | 7 | 8 | 0 | 0.17615 | 0 | | | 15 | 7 | 9 | 0 | 0.11001 | 0 | | | 16 | 9 | 10 | 0.03181 | 0.0845 | 0 | | | 19 | 12 | 13 | 0.22092 | 0.19988 | 0 | | | 20 | 13 | 14 | 0.17093 | 0.34802 | 0 | | | 4 | 14 | 9 | 0.12711 | 0.27038 | 0 | | | 5 | 10 | 11 | 0.08205 | 0.19207 | 0 | | | 0 | | | | | | | | 9 | 0.19 | | | | | | | 0 | | | | | | | | 1 | 4 | 7 | 0 | 0.20912 | 0.978 | 0.9 | | 2 | 4 | 9 | 0 | 0.55618 | 0.969
# |% a& h- I9 O ^0.9 | 1.1 | | 3 | 5 | 6 | 0 | 0.25202 | 0.932 | 0.9 | | 0 | | | | | | | | 1 | 60 | 0 | 0 | 0 | | | | 2 | 65 | 42.4 | 21.7 | 12.7 | | | | 3 | 0 | 23.39 | 94.2 | 19 | | | | 4 | 0 | 0 | 47.8 | -3.9 | | | | 5 | 0 | 0 | 7.6 | 1.6 | | | | 6 | 85 | 12.24 | 11.2 | 7.5 | | | | 7 | 0 | 0 | 0 | 0 | | | | 8 | 0 | 17.36 | 0 | 0 | | | | 9 | 0 | 0 | 29.5 | 16.6 | | | | 10 | 0 | 0 | 9 | 5.8 | | | | 11 | 0 | 0 | 3.5 | 1.8 | | | | 12 | 0 | 0 | 6.1 | 1.6 | | | | 13 | 0 | 0 | 13.5 | 5.8 | | | | 14 | 0 | 0 | 14.9 | 5 | | | | 0 | | | | | | | | 1 | 1.06 | -40 | 50 | | | | | 2 | 1.045 | -40 | 50 | | | | | 3 | 1.01 | 0 | 40 | | | | | 6 | 1.07 | -30 | 40 | | | | | 8 | 1.09 | -30 | 45 | | | | | 0 | | | | | | | | 1 | 105 | 2.45 | 0.005 | 50 | 200 | | | 2 | 44.4 | 3.51 | 0.005 | 20 | 100 | | | 6 | 40.6 | 3.89 | 0.005 | 20 | 100 | | | 0 | | | | | | | | 0 | | | | | | | | 0 | | | | | | | | | | | | | |
|