|
|
发表于 2010-7-28 12:24:23
|
显示全部楼层
%本程序采用牛顿-拉夫讯法对一个五节点电力系统进行潮流计算
m ~' A, Q) u" c% n=input('请输入系统节点数目:n=');3 m1 D0 Q. V/ j/ D# S! Z
% nl=input('请输入系统支路数目:nl=');- R/ S$ m8 Q9 N1 h n
% ph=input('请输入平衡节点号:ph=');7 ^7 c) E! y3 m' V+ s7 z
% jd=input('请输入误差精度:jd=');
3 J4 g0 d" R6 g) `% B=input('请输入由支路参数形成的矩阵:B=');. x4 o" u+ C: f& p1 R: T7 {9 k
% A=input('请输入各节点参数形成的矩阵:A=');- e+ P9 p5 q& s3 r" O6 C
clear all
: Q6 s$ V" v+ d( Yn=5;% R Q) z4 J$ a1 P% t3 r
nl=5;
/ t' m, _' y @0 r# ~ph=5;1 _( V6 u2 v0 c0 T
jd=1E-6;7 b. N/ @& @$ F2 L
%支路参数矩阵
8 b5 A/ J: Y6 V$ p& r7 nBr=[1 2 0.04+0.25*j 0.25j 1;
1 {* B# E0 {9 J 1 3 0.1+0.35*j 0 1;1 \3 ~& T. u" G1 [9 y
2 3 0.08+0.30*j 0.25*j 1;2 J6 Z! @+ x/ w. E Q3 n+ r1 C
2 4 0.015*j 0 1.05;* `- q l9 W$ O2 G+ d/ e: s2 d D
3 5 0.03*j 0 1.05];
7 V" P" n; |1 A. K5 Z%节点参数矩阵:2-PQ节点,3-PV节点,4-平衡节点
. _0 w. `$ c# v: s: c( H- |1 tA=[-1.6-0.8*j 1 0 2;
$ s b7 T, E( l3 K* |+ b! {% t( z& C -2-1*j 1 0 2;; \; n4 e$ b# Y ]5 q" I
-3.7-1.3*j 1 0 2;
1 f3 u4 \" Z# Z( T 5 1.05 1.05 3;" B- c1 M- O& F& p
0 1.05 0 4];
2 u& ~$ q3 W G0 F
0 l# {7 _% U) n3 ~! y8 @5 s8 O, c2 ?6 I%雅克比矩阵形成
) R6 r4 z! f; r, ^2 j- G9 wY=zeros(n);3 }) w% x* j& `* o/ A9 k* `0 a4 {
e=zeros(1,n);1 G3 [: G8 }! S" b( E/ C6 z7 c2 C
f=zeros(1,n);
' `4 Q( m" f7 p2 F7 AV=zeros(1,n);
- f% _- u( b& T/ P) R! ]* c r# hfor i=1:nl; k7 O) T5 c% S6 @0 C
p=Br(i,1);4 j, m# c7 Z. K7 c' ^8 X
q=Br(i,2);
8 b0 W, o" l% y' A: _" b1 p; f: l Y(p,q)=Y(p,q)-1./(Br(i,3)*Br(i,5));
3 @0 d$ R& ]+ o0 t Y(q,p)=Y(p,q);+ p l% s1 B' C) x" V2 Q( l
Y(q,q)=Y(q,q)+1./(Br(i,3))+Br(i,4);
# [2 Q4 f; Y5 S g1 @ Y(p,p)=Y(p,p)+1./(Br(i,3)*Br(i,5)^2)+Br(i,4);2 n7 b6 o& N V/ G! y" |
end ' j, D0 p9 z9 k+ Z1 X* h( W
disp('节点导纳矩阵为:Y=');5 ?9 \' r+ D# h5 F1 r6 z( Q
disp(Y);
* Z7 m# B# J. W: Y; |6 aG=real(Y);
8 j3 c0 C; z$ N# aB=imag(Y);: x( k5 i, g! g& B/ ~' H& G) r2 f
for i=1:n4 }( s% V: {8 ~3 i
e(i)=real(A(i,2));4 S5 B* o6 r# Q$ `7 w
f(i)=imag(A(i,2));
' n5 i J0 g* n! d( z V(i)=A(i,3);. Q& k4 j3 k" q8 }3 R
end8 Q0 l. ~( A, {/ d3 ?3 b/ k
for i=1:n7 |* x% Q q @8 \0 {6 O
S(i)=A(i);( D/ ?. b. l2 k' l
end; i/ \' s) E/ R9 H8 x' D1 V
P=real(S);
. e8 _2 ~4 U% F9 ~% {Q=imag(S);
+ a! u' e0 X6 G: x%雅克比矩阵求取4 n8 ?! z9 [3 K! Z- S0 X- X
Ci=0;8 J, B- x1 ]1 k$ b
a=1;
# b; [6 r& M: T5 B% V7 RNO=2*n;
8 p( v; ^+ P' [9 }N=NO-1;& H+ R( H6 d/ T: ^
while a~=0. U/ ^- N& c' V) T1 w
a=0;
/ g: {9 @( J/ g' f& m. o for i=1:n: I# ~" e0 c, Q: t2 K
if i~=ph
1 `0 E8 ^7 E$ @. e8 B; q C(i)=0;( K* ]( H5 s n0 e
D(i)=0;
! ]1 ^$ E, X% j. ?& ]' d5 z% E2 X6 ]0 S" R for p=1:n
% Y! P7 K/ ?8 u J& | C(i)=C(i)+G(i,p)*e(p)-B(i,p)*f(p);
9 p- b; Q& D: m0 O D(i)=D(i)+G(i,p)*f(p)+B(i,p)*e(p);
- @ ^( e+ t7 N- N$ q; Q5 y: D% q end5 R& S% m6 Z5 X6 N
P1=e(i)*C(i)+f(i)*D(i);! K; L* k# m. H: I1 M/ N
Q1=f(i)*C(i)-e(i)*D(i);, O+ j$ a2 [+ R7 y( ?7 s
V2=e(i)^2+f(i)^2;( B4 q- G! K7 U4 P; R
if A(i,4)~=3
0 `8 ]3 @! N/ \, J8 {7 g7 X- r DP=P(i)-P1;; l& e2 `" `- V! N) C7 W
DQ=Q(i)-Q1;
) b. P+ c* y! E3 g x1 ]! Z for k=1:n
! C: w1 u* z5 t%非平衡节点时,非对角线元素7 V4 K* A2 n3 c7 u
if k~=ph & k~=i ; t, V; q5 H; s. E6 x( z9 w1 l
X1=-G(i,k)*f(i)+B(i,k)*e(i);
1 ?( @! a7 X, r3 N2 P X2=-G(i,k)*e(i)-B(i,k)*f(i);# ^9 R8 z' _/ I7 y5 q- l0 W( F
X3=-X2;6 x9 m) w+ W9 z, R* P' s; `
X4=X1;) Z5 _+ q) G* h3 C( V
p=2*i-1;# z5 t9 y! C& l$ o, l4 G
q=2*k-1;7 V1 X3 v9 I# Y6 Q( y) h
J(p,q)=X1;
0 U* Z2 L9 | q z1 x% {# Z* ] J(p,N)=DP;! p0 S# g2 z: [4 o' p0 `% R
m=p+1;
8 h1 \) {* {4 d( c5 { h) E) n: X6 V- P$ _ J(m,q)=X3;
, x+ {6 k- l0 I* O* S) k0 _7 o* u J(m,N)=DQ;
8 x* i3 a; _9 K q=q+1;. b8 D& T9 d& G
J(p,q)=X2;, v( U# J. Y7 x! {/ J
J(m,q)=X4; 9 o( M& \, m) s% j4 X6 o- d( h
%非平衡节点时对角线元素- c: g# ^8 H: q% I2 T
elseif k~=ph & k==i
1 Q4 N% v+ n: ~. |+ m! L X1=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);$ `" p! R" ~. k
X2=-C(i)-G(i,i)*e(i)-B(i,i)*f(i); " ] A4 W) }! d( K
X3=-C(i)+G(i,i)*e(i)+B(i,i)*f(i);
' ^) Z& P1 w$ H, n. ? X4=D(i)+B(i,i)*e(i)-G(i,i)*f(i); t2 H$ V: z) Y& P4 c9 g
p=2*i-1;; U; o$ ~9 e% e8 d a
q=2*k-1;7 ^1 [: D5 u, q# W4 H" A2 j5 r
J(p,q)=X1;& x5 a: d' {" y% M' R+ N
J(p,N)=DP;
3 {' M$ h6 q$ R5 x W8 I m=p+1;
3 R* P6 N/ P4 X8 S* e J(m,q)=X3;
6 w# Z% ^* q) w' O& c8 G) M" `- s$ W J(m,N)=DQ;
' n$ u9 N- {2 J+ a5 Y! Z0 z/ k8 e q=q+1;' ]' R* y6 l9 {3 h/ b
J(p,q)=X2;8 P! N& W' @: h: i z: t
J(m,q)=X4;0 k* b0 k2 c2 r7 j1 }+ F% z
end
# A& A& f6 k4 z* z4 `! G/ |9 S end O# G$ ^$ m7 H" |" o. h& B& l
else/ l! i- v8 w# |0 \( t
DP=P(i)-P1;
) k4 i, r6 Q0 F: H DV=V(i)^2-V2;
# N. n( Z; F& D8 T n* r for s=1:n
& P2 E3 M/ N; Q1 r. s, n% u- b& ^ if s~=ph & s~=i
$ [% g/ `* d6 A8 P1 k X1=-G(i,s)*f(i)+B(i,s)*e(i);
+ f% A+ J7 `3 [% R7 ^ X2=-G(i,s)*e(i)-B(i,s)*f(i);
: B7 X; K' [& w1 i) ^9 Z X5=0;
& n; h* [, @# n X6=0;9 l6 @, O/ {! P' a' g8 g& v: h
p=2*i-1;9 l, x" p3 O( W5 L2 t3 o- b* s
q=2*s-1;! M; S6 R2 S) G& W4 b" K6 B' a
J(p,q)=X1;: `6 @% M7 [& p* q+ N
J(p,N)=DP;4 z& [& t4 v+ B( R
m=p+1;' ?% B! f, W2 p. ]5 I
J(m,q)=X5;# E' z A5 T! }( s Z) H/ K# M7 o8 ^
J(m,N)=DV;/ X2 l D: v6 o6 e5 Z6 ^6 o) e6 D
q=q+1;
7 K- D# P1 s- F# w* r& M J(p,q)=X2;% Q Y4 z$ J% }6 c; S
J(m,q)=X6;
( m2 L6 ~, O1 O, _8 \+ d2 r elseif s~=ph & s==i
7 k' ]7 ^4 @6 ^+ d( m X1=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);
# _7 x" x0 X6 e2 j X2=-C(i)-G(i,s)*e(i)-B(i,s)*f(i);
! P8 K/ O9 ?% W+ h+ X+ t* M X5=-2*f(i);5 O' v/ f" t) ]9 L) _
X6=-2*e(i); . i5 m/ c- [+ Y0 O t. I
p=2*i-1;
/ p1 C8 C& I+ K( R q=2*s-1;8 J+ K% s" t% d6 v5 g
J(p,q)=X1;/ I, y& E% ~% p. R) H
J(p,N)=DP;1 G/ L" L. ^+ l$ J
m=p+1;
3 _, f/ M6 n) A* w; d9 o; m J(m,q)=X5;
! w# _+ C+ n0 L% k+ @ y- t( c J(m,N)=DV;
+ w$ g) G! A" i q=q+1;+ f) c) L" I+ B, }+ E0 f/ c
J(p,q)=X2;
% ~! |$ M/ A" ?) x4 Q J(m,q)=X6;0 I) D7 Q0 o% x
end
" s9 R) B; m- p {+ i+ g# ~ end# M" l3 d5 c. V( d s
end
1 L$ R5 a& y* t2 ]4 h end
5 S2 F% |$ q5 @ a8 k( M3 f end
+ ~: ]0 @# x- N6 X" a disp('系统雅克比矩阵为:J=');- m A) r* w# h/ [
disp(J);6 n( N4 T9 y- ~2 _# `1 S0 {
%对于高压电力系统,最大元素出现在对角线位置,简单计算如下9 l# a# a( [. O2 N
DJ=J(:,[1:NO-2]);
8 _+ L( F, _" H% q/ K/ P DP=J([1:NO-2],N);
|9 o1 V7 T$ H3 O* |% o3 M) r DU=DJ\DP; x- U5 A; e$ {2 H) Z
disp('************************************');
" T9 c7 A: u# `+ N) | disp(' '); L, _5 [4 @) `1 l
disp('第几次的修正值DU?');( v: g7 i* f! j7 o+ v
disp(Ci);8 w& o% F+ N/ J' r* \( \: e9 R. V
disp('***********************************');
" e) E/ v8 p, `+ Y$ @ disp(DU);
" J. T( m @; H5 x ]3 k6 Y7 ? for i=1:NO-29 j) r8 [# y$ K" l S c1 W
eps=abs(DP(i));
3 C$ a3 @8 T3 k0 g. Y" ` if eps>=jd;
) h |5 Q& q# r$ W8 R3 w a=a+1;) O6 W5 U$ |' \- q: s
end
4 q( Y7 q% ]' o& { end
9 A. o5 `0 }7 @9 a: V( ^) n Ci=Ci+1;
; o1 Y& S' I! |7 N2 k for i=1:n-1; ?9 J" _# U9 O% f ^$ T
e(i)=e(i)-DU(2*i);9 W* v8 [$ q( Q/ H' \8 f
f(i)=f(i)-DU(2*i-1);
( V: Y, |, ^* Y. c5 B1 } end! ?- I/ ^. M# T; E! R
E=e+j*f;
: t. Z3 @1 [1 X# }% Y- @ disp('&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&');* c% E4 k0 E8 {& p6 m, q
disp(' ');
% w; q5 F* d: C& [9 k# a$ u disp('第几次迭代后的近似计算值');& [7 N; F9 `. i0 X2 Q
disp(Ci);
+ R2 F& R0 u. O, I; s1 z disp('&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&');
9 i8 c: }5 Q l t' F for i1=1:n
$ M, U& U# _' K( l- d v# o V(i1)=sqrt(e(i1)^2+f(i1)^2);9 X7 p9 ]. h: ?' b8 N7 T5 J( v
ANGLE(i1)=atan(f(i1)./e(i1))*(180./pi);" f# M) Q7 Q$ |7 M
end) `+ t4 o! n M. H% |/ M. h8 a
%下列输出结果均按节点号从小到大排列
5 M# a* x% y* b m; @/ F disp('各个节点的电压实际值为:E=');
# V$ R. d+ ?! ^0 m S disp(E);
' X" z6 S! M! A( C disp('各个节点电压幅值为:V=');
( z5 J! _5 H* l0 S7 L disp(V);, \3 v$ n! e% G5 t
disp('各个节点的电压相交为:ANGLE=');
" m2 Q5 z& S8 G9 L. C5 I9 Y disp(ANGLE); X8 \% T+ G/ A" F0 d, C
disp('各个节点的功率误差变化');5 Q. M3 i# y# b4 q" V9 Z8 s
disp(J([1:8],9)');
0 M' o- R* a0 h6 r MDU(Ci)=max(abs(J([1:8],9)'));1 h$ k7 e4 {( b% H/ r$ Z
for p=1:n3 H4 i& V- a' o% P+ B
Sm(p)=0;
) v6 U4 n# P6 D: D+ ~$ \ for q=1:n, `$ _, ]8 E4 S- R' X
Sm(p)=Sm(p)+conj(Y(p,q))*conj(E(q));
1 ~+ N, L, I; b end
9 E5 `$ ]& n# a3 D, }: g, W8 N S(i)=E(p)*Sm(p);
/ Q& z3 X! P) u j end
! \ t* P! g9 r; F3 D- Q* P6 Wend
% h7 z0 U' n. H8 U0 `disp('@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @');
% }7 p; M4 z/ {% A6 Fdisp(' ');, K- c! z3 H# [- g; B
disp('计算的最终功率近似值如下各项值');
' f; m7 z" ]0 G" l+ l) n+ W/ T0 _disp(' ');
! N$ ~2 u& N) z: Qdisp('@ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @ @');
) C. C5 Y) @" j4 x) qdisp('各个节点功率为:S=');
8 e& n' s/ W# c& h% G+ A; k# tdisp(S);) i+ C8 {/ m# |8 b
disp('各条支路的首端功率Si为:');+ V- d/ u9 ?( I3 b; d2 K
for i=1:nl
/ @. C0 b: s9 t0 e" U0 ] p=Br(i,1);q=Br(i,2);2 l Q$ O% T. T0 K' J0 }
A(i)=E(p)*[conj(E(p))-conj(E(q))]*conj(1./(Br(i,3)));
1 H3 g" D. R' S3 r4 G5 q+ X# I( `" ? SBS(i)=[abs(E(p))]^2*conj(Br(i,4))+A(i);
4 v" l$ C+ k$ l* d4 E" xend
& [) ]7 L8 ?$ Rdisp(SBS);
2 k& i4 L& a g1 s! y4 Sdisp('各条支路的末端功率Sj为:');, o% l, m7 r3 b7 |
for i=1:nl8 m- ]6 J2 n# G+ }# }3 O# c
p=Br(i,1);q=Br(i,2);
& o2 b$ C! J5 k- [ A2=E(q)*[conj(E(q))-conj(E(p))]*conj(1./(Br(i,3)));: T% ?3 \" g j8 f6 ]) c! h5 K9 D$ [0 h
SBE(i)=[abs(E(q))]^2*conj(Br(i,4))+A2;
3 y/ z z, R$ q) k+ Oend
+ a1 P- h) L d/ Y: t) ^+ z- Fdisp(SBE);
/ K8 ?: A, x/ V; T! @. Wdisp('各条支路的功率损耗为:');
# S# Y; S5 |/ W! f) n3 ^for i=1:nl
& o, {1 r0 h" M% r1 Q: z, K p=Br(i,1);q=Br(i,2);
1 w/ }& y( m0 o" i0 \ SBL(i)=SBS(i)+SBE(i);. U) t% a6 B8 B+ W* m( V' ~3 E
end
4 h! E) n1 }7 }6 s/ Z) jdisp(SBL);
4 f4 A$ t' t0 ~5 x" t%绘制功率误差曲线,先用最小二乘法进行曲线拟合7 d# `) ^/ f; I0 O+ r) r) O
for i=1:Ci: R6 n; ^+ m# p, b z$ m$ ^0 {
CSH(i)=i;
& K9 v0 u- ?: o5 a. v; F) Iend0 \" O) S2 v5 {2 F# b+ m
P=polyfit(CSH,MDU,3);+ l! J( R8 R* S; ?/ W/ i* i# L5 Q
plot(CSH,MDU,'-O'); |
|