马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!
您需要 登录 才可以下载或查看,没有账号?立即加入
×
clear %清除工作空间原有的变量
# i- @$ M. I6 {5 ^ E) F4 W+ b. @clc
; {* S% v; V2 La=textread('IEEE14.dat'); %读数据文件# c# N+ ~9 F; i+ @7 x4 s3 D3 c7 Z
n=a(1,1); %节点数
, M. x. S$ f2 S8 lline=a(1,2); %支路数
& S, F/ b! W; T2 z. I# p( Yblance=a(1,3); %平衡节点! j3 I1 G7 W& I6 B
SB=a(1,4); %基准功率
5 ?% h9 m0 \! d ]kmax=a(1,5); %最大迭代次数
% @4 F6 T& r/ R4 u. Zab=a(2,1); %计算精度
' B' G/ N9 ?. a. E& m4 J3 V0 Ft=find(a(:,1)==0); ! c0 j" _; W6 W& Q
xianlu=a([3:t(1)-1],:); %形成线路参数矩阵; V! k7 U: {" Q4 ^
jiedi=a([t(1)+1:t(2)-1],:); %接地支路参数矩阵
0 c9 H* C# y% X2 C D# Fbianya=a([t(2)+1:t(3)-1],:); %形成变压器支路参数矩阵
+ @2 K! u% a8 Y% Hjiedian=a([t(3)+1:t(4)-1],:);%节点功率数据矩阵' A1 O( k) w1 R' Y: O6 F; t% f* m
pv=a([t(4)+1:t(5)-1],:); %pv节点数据矩阵$ X0 ]0 W1 h5 g4 ~% }2 ^, y
%读线路参数, V$ A, {& i! d8 V! B
linei=xianlu(:,2)';
9 ^1 Z- u2 R7 ^linej=xianlu(:,3)'; V# K+ d6 j! D t4 v2 D! j# ]2 z
r=xianlu(:,4)';) q* x! L: x3 z% q3 A
x=xianlu(:,5)';
4 E9 f7 R# w; ~+ `4 h' \b0=xianlu(:,6)';: \0 Q* E, `' z( F
7 h3 e0 s5 ^) W: C$ E
g=r./(r.*r+x.*x);
, T! b% x3 s/ E' lb=-x./(r.*r+x.*x);
8 ^/ Y* N& E% rG=sparse(linei,linej,-g,n,n)+sparse(linej,linei,-g,n,n)+sparse(linei,linei,g,n,n)+sparse(linej,linej,g,n,n);
8 F& P0 [1 w% z) d- w9 f( YB=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);) R! y+ H! t: D
% 读变压器参数
2 B8 L4 z: W! h( [2 f- e: J" Ulinei=bianya(:,2)';' b7 b$ d+ d& `* r
linej=bianya(:,3)';
, E+ M! D6 J& _- _r=bianya(:,4)';
; i* `9 `" g. R! L( r. u0 R. K6 px=bianya(:,5)';
/ Q# M9 L& i1 Q6 B) [k0=bianya(:,6)';
, g# Z2 M. p& Dg=r./(r.*r+x.*x);
! c6 s1 m+ X8 w; D- [b=-x./(r.*r+x.*x);9 z, `6 \8 c0 K& c
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);
: T% f5 x3 w. v; J! h" K% J4 LB=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);# K8 ^ w. a$ T4 p0 u7 v
% 读接地支路参数8 d- B2 X" |0 C! Y5 N2 D
jiedidian=jiedi(:,1)';
* l, W3 g( G, ^branchib=jiedi(:,2)';
/ S2 E( X2 [1 k' JB=B+sparse(jiedidian,jiedidian,branchib,n,n);
, v- e* `4 c7 O% i) ?1 ^! r$ w%节点导纳矩阵
u# l$ {6 {* K9 S' kY=sparse(G+i*B);# S Z0 R1 ~3 Y1 i: A/ D
% 读节点功率数据
0 @; w! s* E* Q4 vpg=jiedian(:,2)/SB;5 F3 \: f2 ^ q& u2 z: [
pd=jiedian(:,4)/SB;9 u" ]' f+ s8 N! u( Z
qg=jiedian(:,3)/SB;9 e2 y+ s o4 ~" z
qd=jiedian(:,5)/SB;- K( c. H) Q+ l x p4 r
* |: O x- @2 H: R! ?
p=zeros(n,1);0 f# b1 U F& n8 b. o; W4 @5 w
q=zeros(n,1);
' Q+ L! v: j* |9 J, U3 Yp(jiedian(:,1))=pg-pd;2 ^6 M) X1 e9 H: u
q(jiedian(:,1))=qg-qd;+ C4 K/ k1 b8 t3 K
% 读pv节点数据8 L5 a" c& x: Q6 ]( S& N4 N; D- Y
pvjiedian=pv(:,1);7 t: O/ d7 T3 x7 ?7 F
vpv=pv(:,2);( B6 g; i, F+ o8 j( x' p7 G: Y1 a
v=ones(n,1); %电压初始值
/ h' P% R$ E; s* J% t4 }; a) yv(pvjiedian)=vpv; %pv节点(及平衡节点)电压已知2 c2 z$ k1 M$ s$ ~
delt=zeros(n,1); %相角初始值
3 C8 C- z$ h/ _- v. hdeltp=zeros(n,1); % 失配有功功率初值+ S4 e. t; h" C( G. X% ^ x3 x7 i
deltq=zeros(n,1); % 失配无功功率初值. i+ t, ~: N6 L! z. a8 S
6 s x' `" n* o) V%迭代求潮流计算
+ R$ e6 p5 e i/ {& pfor diedai=1:10 %置最大循环次数' i/ _) n5 `* } m) P
clear i
( g. _3 D, a; z* [; i% r % 失配功率方程
7 |0 M: r% ]. z2 K7 R& ~$ ~ V=v.*cos(delt)+i*v.*sin(delt);
5 J4 N5 q4 a A, V$ E! Z% m0 x7 ] a2=conj(Y*V).*V; j7 }( N8 |, M! L1 u7 U
deltp=p-real(a2);
2 H% m9 c2 u/ Y7 r$ Z! { deltq=q-imag(a2);
) q: p! ~1 `' l8 K! `) C3 } 8 G+ Z: k0 ]& Y4 X4 g W. c) g
% 求雅可比矩阵
5 K& C! U: e& {2 ~, D for i=1:n
4 }; }) B+ P5 [ k for j=1:n/ N; `# D5 d. ]5 t
if i~=j
; D l& _4 s; T+ V3 [ H(i,j)=-v(i)*v(j)*(G(i,j)*sin(delt(i)-delt(j))-B(i,j)*cos(delt(i)-delt(j)));6 u0 D/ O0 Z. U( ]% N P: J
else! C) U; M; p, P- \- t
H(i,i)=v(i)*v(i)*B(i,i)+q(i)-deltq(i);3 U! x9 b# U2 b3 I8 B8 q- R, }5 O9 B
end1 }5 C+ c5 O! n" [) D1 ?% u
end5 H/ ?3 \1 X; ~# @
end 1 `: ~# v( B+ |: s+ A9 {
. H9 `5 R) z& x/ J
for i=1:n% {& T1 N( l/ h) v9 {4 v5 m7 F
for j=1:n3 {" x4 \) b% T. k
if i~=j
3 F L+ ^; q" y ]" `7 j8 X N(i,j)=-v(i)*(G(i,j)*cos(delt(i)-delt(j))+B(i,j)*sin(delt(i)-delt(j)));
8 [# @% F; i5 e. F2 r( V else& w6 Q+ v8 C: f/ C* F
N(i,i)=-v(i)*G(i,i)-(p(i)-deltp(i))/v(i);7 b( @. ]) g, W2 M
end ]8 b# F0 ^, O
end
: _ J1 D9 Y! ]5 N0 U: l; A end
$ E4 y2 Z* `8 L# K# L: h6 W* \
0 @6 V6 o( d1 X5 O! e for i=1:n. X$ Z& s! z' P7 ]4 z
for j=1:n0 w; j Q# F; m2 i
if i~=j
4 }' r4 i& s3 a! F. \* n/ B: U J(i,j)=v(i)*v(j)*(G(i,j)*cos(delt(i)-delt(j))+B(i,j)*sin(delt(i)-delt(j)));0 N, a6 n% M: [
else8 \- ^. p! M5 i% e
J(i,i)=v(i)*v(i)*G(i,i)-(p(i)-deltp(i));
( F6 h x7 H; U end
L6 ^+ B2 J7 t7 u, M4 @: S end
p# I' w* Y6 |/ w) j5 t% Y$ Q end
- v y0 U, K' [3 W5 _* C y! Q
4 j Z0 a9 w/ p, K+ s/ K; I. K for i=1:n
; W1 }2 l" |9 z7 Y for j=1:n( \6 D& ~* g. s
if i~=j
1 i; @# I g- z L(i,j)=-v(i)*(G(i,j)*sin(delt(i)-delt(j))-B(i,j)*cos(delt(i)-delt(j)));* w4 q0 P; {, I q+ H. g
else6 s6 V# c: j; X) Y5 e
L(i,i)=v(i)*B(i,i)-(q(i)-deltq(i))/v(i);; X& f3 t, ?* i2 O
end3 {$ Y) l# D; H7 S9 j. h
end
0 X- ?9 \% f; H end . [1 b, Y5 U" b- ]9 z' l7 L$ O
%修正雅克比矩阵
6 g3 j3 x# N8 i4 v! k" l Ya=[H N;J L];# r* C3 V' U/ L# q' W r
Ya([blance blance+n],:)=0;
- _: ~1 i0 E. E7 H+ G' h. K Ya(:,[blance blance+n])=0;. Y1 A5 {- M; B# q$ p0 B' j, ]
Ya(blance,blance)=1; %平衡节点
5 u8 J4 O$ l/ D( a+ }4 {* d2 } Ya(blance+n,blance+n)=1;' M+ v2 J" b, j( ]
Ya(pvjiedian+n,:)=0;) C$ \( b3 B7 Y( G) l' d( X
Ya(:,pvjiedian+n)=0;
$ r4 b, n, I7 \( _ for h=1:length(pvjiedian)* V/ O* F# ?5 P! I7 y
Ya(pvjiedian(h)+n,pvjiedian(h)+n)=1;
- a, {) c7 r- o end4 ?' i0 V% @3 M* [0 {9 @# X
; d- y9 o7 B \5 T% U0 o; |! U S % 1 n x, j- C1 o' L8 k. G
deltp(blance)=0; %平衡节点deltp=0
/ U) ^2 v9 }! B( t1 Q" Z deltq(blance)=0; %平衡节点deltq=09 B9 J/ Y3 {5 H( l8 H
; i/ K- p) H/ g2 e9 T3 I deltq(pvjiedian)=0; %pv节点deltq=0! T! j( }; _6 w& S% n b
deltpq=[deltp;deltq];
% ^) X/ z7 F. ], C6 X1 W if max(abs(deltpq))<ab % 如果结果满足精度8 g* v, G8 f3 G+ \- e
break % 退出循环 ) z$ c7 L/ M+ R( s1 P4 J5 X/ j
end
$ v6 c- |" F7 p1 G3 X- D R=Ya\(-deltpq);: W% R) G( [' l
delt=delt+R([1:n]);" z }# n- m/ `4 s/ [
deltt=delt*180/pi+ g: K( G, v) G3 {/ d5 \5 U# E
v=v+R([n+1:2*n])
; B# n' E; ^5 v4 }' M end * E2 f/ n% K# z' [; u
6 q2 \* T, q1 V! q) B9 H
' c! U! z8 U8 W v. }( i# K数据格式
& t9 y, o$ \6 A; I3 q3 e| 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' u0 M$ u1 _1 e" g1 g( C3 D
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 | | | | | | | | | | | | | |
|