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

 找回密码
 立即加入
搜索
查看: 1969|回复: 3

[分享] 潮流程序matlab

[复制链接]

该用户从未签到

尚未签到

发表于 2010-10-28 11:30:47 | 显示全部楼层 |阅读模式

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

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

×
clear                       %清除工作空间原有的变量
3 W! L) q+ Q. L- \7 Gclc
+ o7 H1 V7 O, g' Va=textread('IEEE14.dat');        %读数据文件
- I, ~( y9 C' ]n=a(1,1);                   %节点数' l! U: t7 S8 K5 g9 z3 f
line=a(1,2);                %支路数9 N9 H3 p5 E5 S# V( m. K
blance=a(1,3);              %平衡节点. b9 M  y5 Z8 f, x
SB=a(1,4);                  %基准功率
. O# r( G# W5 f2 z* x4 lkmax=a(1,5);                %最大迭代次数
) u; _6 B2 a9 I" }) fab=a(2,1);                  %计算精度: X" C' l5 e+ R- l& ?4 ~% {5 p
t=find(a(:,1)==0);          & j8 b* P2 l) k2 z
xianlu=a([3:t(1)-1],:);      %形成线路参数矩阵
( P- |+ r8 U& H3 W' J- E% D' hjiedi=a([t(1)+1:t(2)-1],:);  %接地支路参数矩阵
8 l! L8 d: D0 d( Ubianya=a([t(2)+1:t(3)-1],:); %形成变压器支路参数矩阵$ h- g3 g4 R8 b9 o; }2 H
jiedian=a([t(3)+1:t(4)-1],:);%节点功率数据矩阵1 z) j0 U3 ]. w- P$ o
pv=a([t(4)+1:t(5)-1],:);     %pv节点数据矩阵: j( \6 z9 [  H6 M0 C, y4 W
%读线路参数$ f5 x& y* n' Y3 J! k
linei=xianlu(:,2)';. T  y2 y8 ^8 p+ K# ^8 s- r
linej=xianlu(:,3)';
' M* m+ f/ B5 B4 m  [r=xianlu(:,4)';/ C6 Z0 r' a9 j' D
x=xianlu(:,5)';
+ ]* K7 p. a& `, V$ k: q6 sb0=xianlu(:,6)';
' t9 Y% R/ o/ v/ e/ {8 x 1 V* t/ b8 p- P: O9 Z) d8 v2 h0 h
g=r./(r.*r+x.*x);
5 m9 U8 s* V# d: ]' ?) Eb=-x./(r.*r+x.*x);
+ }* v2 n* G$ k1 I3 q  v$ @- kG=sparse(linei,linej,-g,n,n)+sparse(linej,linei,-g,n,n)+sparse(linei,linei,g,n,n)+sparse(linej,linej,g,n,n);# i, X* b$ m* ]# B/ G- c
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);3 W3 C  R% [9 A% W
% 读变压器参数
' W8 p2 s6 g5 N8 L+ F4 Wlinei=bianya(:,2)';" R) O4 O5 N& v+ O6 q3 r
linej=bianya(:,3)';3 g+ r/ M0 N, X$ t7 Q' g3 _
r=bianya(:,4)';
7 l: M  V" C" c3 Q% ex=bianya(:,5)';
$ @! \8 [2 a5 P5 ~% a3 ]k0=bianya(:,6)';
* i3 L7 L% U: a" V$ Rg=r./(r.*r+x.*x);
  _) a& Z; A0 q( }b=-x./(r.*r+x.*x);# t5 _4 ]2 ?, ^, |$ I5 ^  a
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);
2 f1 x4 Q7 e+ U3 j" _B=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);
% y! ]. W0 q. D$ C+ s% 读接地支路参数( U9 Q& R& B7 M/ R2 e# C' k
jiedidian=jiedi(:,1)';3 i. J  }9 H* C4 g
branchib=jiedi(:,2)';& A6 S, {+ R7 {- ?2 O
B=B+sparse(jiedidian,jiedidian,branchib,n,n);9 Y: E5 X7 R5 n
%节点导纳矩阵1 J" B9 g) O) ]$ Y
Y=sparse(G+i*B);7 k0 @5 S5 n: l1 {6 ?/ s, n& j
% 读节点功率数据% k3 C- ^* H" E" X% O( B
pg=jiedian(:,2)/SB;
- K4 x; ]3 g6 Ipd=jiedian(:,4)/SB;
( c0 s! w0 G2 Yqg=jiedian(:,3)/SB;% a# K% r6 i( K
qd=jiedian(:,5)/SB;! ~' F. t. s( H. C' Q
; }6 B- K7 L( i/ K) e% m) v
p=zeros(n,1);  `/ u8 B; @' B* L
q=zeros(n,1);
4 `3 g3 D" A5 M* V4 `2 Z3 hp(jiedian(:,1))=pg-pd;
* I% t  o2 _- \" Tq(jiedian(:,1))=qg-qd;. `- {+ C+ `6 W
% 读pv节点数据! x8 C5 Q3 X  G) H
pvjiedian=pv(:,1);
/ n% j. }% w1 \& t/ Z8 z  Yvpv=pv(:,2);
2 j+ `" V# U7 c0 o( v4 I, g3 Hv=ones(n,1);                  %电压初始值+ m$ l! T/ _" b) |2 n; F4 C) N+ W
v(pvjiedian)=vpv;   %pv节点(及平衡节点)电压已知: i! B# |2 G& F; N/ D# X9 s
delt=zeros(n,1);     %相角初始值7 n: O; T6 @! [4 w5 G! Q
deltp=zeros(n,1);     % 失配有功功率初值
% r3 x3 m% R$ P2 ^2 q% D+ bdeltq=zeros(n,1);      % 失配无功功率初值/ \! G7 G/ Y, |8 g6 V$ h3 n

. O6 d) ]" O5 ]' G  F. l6 ~%迭代求潮流计算! t9 L$ L" h( ~4 j# Z6 ^! o8 ^5 |
for diedai=1:10                %置最大循环次数7 c% o/ x0 s* z+ Z) {4 j4 y/ U
    clear i1 M7 X2 ?0 p3 [: j6 i6 z
    % 失配功率方程+ x, T# K8 I* d/ F& V: W
       V=v.*cos(delt)+i*v.*sin(delt);
0 I6 E2 ?. G: K4 {7 T+ L       a2=conj(Y*V).*V;
" t% I7 j* J4 N, _! A       deltp=p-real(a2);- {/ ^+ S: X2 v
       deltq=q-imag(a2);
1 v. u! o3 ?8 @, U     
5 Q4 }9 t8 t9 r& e& G       % 求雅可比矩阵, }" ~( i$ W5 T! U$ H& j
      for i=1:n
; b* b3 a/ Z" y! T% k          for j=1:n- Q' p: E; E, I( v8 i6 `
              if i~=j
, Z! a3 \& I  I+ l* t0 J3 m                  H(i,j)=-v(i)*v(j)*(G(i,j)*sin(delt(i)-delt(j))-B(i,j)*cos(delt(i)-delt(j)));
  q1 p6 H  k5 _              else
# Z, i9 g4 w- R' m# t& o6 m  b7 c                  H(i,i)=v(i)*v(i)*B(i,i)+q(i)-deltq(i);
0 _. P& z# D, S2 x; C4 a4 f              end& Y* N% {& a+ t% w+ Z8 I. u
          end7 k; w* k# o+ e, ]( G6 Z
      end ) C' J8 y8 w2 n* v
      3 c8 f9 l/ y: x4 r5 n8 o, p
       for i=1:n0 ~, y! N- @6 A! I$ L( T! {. Y) n
          for j=1:n7 l% [2 G7 x; ~& {* n2 K, s5 i
              if i~=j
$ j5 @, s4 j* X* U8 K                  N(i,j)=-v(i)*(G(i,j)*cos(delt(i)-delt(j))+B(i,j)*sin(delt(i)-delt(j)));
% Q0 {, Q9 ~: F3 u+ {' z              else
8 S- u9 C% E  ~8 K* ~5 {                  N(i,i)=-v(i)*G(i,i)-(p(i)-deltp(i))/v(i);1 ~3 W3 d. t8 Z  D$ E
              end
$ c- E# {/ H4 }+ v- e5 @7 i; {. ]7 g          end
3 Z; O% ]" \2 \3 w1 n. l      end
3 [! F1 T' |( c$ W6 [' V      
% {0 ?: {9 \( S       for i=1:n4 J- v8 c$ ]" ^, M
          for j=1:n
2 w* L8 Z& n1 c( @0 v9 q              if i~=j
4 A* `' z5 o, |" T& C8 {                  J(i,j)=v(i)*v(j)*(G(i,j)*cos(delt(i)-delt(j))+B(i,j)*sin(delt(i)-delt(j)));- A& Q' R6 Q* f- K) S  F2 t
              else6 R4 I# Z) n5 m
                  J(i,i)=v(i)*v(i)*G(i,i)-(p(i)-deltp(i));* U4 K. t7 r* z+ N9 d4 g5 o' E
              end
: @  D! ~+ n2 ^$ {8 p% _5 T' y5 F          end- P% O' V7 B5 B, h
      end : ?# A7 L- R3 B3 X$ S
      & g. G' P- d* r0 f0 D0 N" e, G
     for i=1:n
" ]6 [' Z* ~# N1 l/ b3 `          for j=1:n
. m/ B. z$ x4 S1 R2 w              if i~=j$ p& f% o+ |4 ^. G
                  L(i,j)=-v(i)*(G(i,j)*sin(delt(i)-delt(j))-B(i,j)*cos(delt(i)-delt(j)));
4 A4 O& c# B% k2 P) Z              else( K* Q. L7 x+ V1 W
                  L(i,i)=v(i)*B(i,i)-(q(i)-deltq(i))/v(i);
! L8 ]* r8 S+ z6 z9 y3 F              end
  {! v3 E/ r0 l6 P9 Z          end
( e% U; u$ k( g0 f- T# o" l9 a     end
# j5 p4 D! s) C4 s* n1 }* r9 C     %修正雅克比矩阵
# U- `. C6 u: }       Ya=[H N;J L];8 p9 \! z+ H! I7 M
       Ya([blance blance+n],:)=0;
' d& T1 ~" f8 k5 k$ r; |. r- X       Ya(:,[blance blance+n])=0;
+ n) @, x, V. f: k       Ya(blance,blance)=1;    %平衡节点2 v8 Y( h9 z; S9 M( A( e7 O$ ]2 X
       Ya(blance+n,blance+n)=1;9 X& ~. W; y9 u' @  V. G7 X6 q
       Ya(pvjiedian+n,:)=0;+ i' S1 y! e5 N1 l4 G1 ^9 P, d
       Ya(:,pvjiedian+n)=0;3 `' |% e; w0 u
       for h=1:length(pvjiedian)
& X* Y5 g+ B! t+ k7 Z  ^) N           Ya(pvjiedian(h)+n,pvjiedian(h)+n)=1;
7 A! a! f: P! @1 e( ?7 h, G        end
; A$ i+ I9 Q+ a' k        6 f# ^3 y+ S3 ]. M) I" w" O
      % 9 @; f* P- T4 H& d' v. i
       deltp(blance)=0;        %平衡节点deltp=0
1 |6 o4 p! m$ Y/ `       deltq(blance)=0;        %平衡节点deltq=0
( H2 X0 Q: L% m6 v7 B: k& x- |1 D8 X   
3 E1 ~$ S3 `6 O2 ?/ q5 t2 e; j8 s       deltq(pvjiedian)=0;     %pv节点deltq=0
7 F* B+ t  @! [5 x6 s1 ~" B) v       deltpq=[deltp;deltq];
7 z6 [3 \. b/ u+ ?8 i# R        if max(abs(deltpq))<ab     % 如果结果满足精度
" z  h  @1 A0 d7 H; h              break                  % 退出循环 . g2 {4 v2 G6 D/ L$ V% a4 J3 e
        end   
. k1 m9 ^; {) c' C) b          R=Ya\(-deltpq);
- u  k4 K; C' V4 i+ \          delt=delt+R([1:n]);  P; ]( |$ v0 [# R7 U8 v7 W
          deltt=delt*180/pi" w4 u5 d$ n4 y- C
          v=v+R([n+1:2*n])* X' P$ C" O+ r3 x
   end , B5 Q3 T' I# N2 a
! ^+ h: _8 k4 H* O

: B6 `8 i3 J" ]' x, L5 H! {3 i, S  Y数据格式
$ }( |, V* z( r
14201100200.1
1.00E-061
1120.019380.059170.0264
2150.054030.223040.0246
3230.046990.197970.0219
4240.058110.176320.017
5250.056950.173880.0173
6340.067010.171030.0064
7450.013350.042110
116110.094980.19890
126120.122910.255810
136130.066150.130270
147800.176150
157900.110010
169100.031810.08450
1912130.220920.199880
2013140.170930.348020
41490.127110.270380
510110.082050.192070
0
90.19
0
14700.209120.9780.9
24900.556180.969) ~3 G9 \& ^3 D. b5 `  g
0.9
1.1
35600.252020.9320.9
0
160000
26542.421.712.7
3023.3994.219
40047.8-3.9
5007.61.6
68512.2411.27.5
70000
8017.3600
90029.516.6
100095.8
11003.51.8
12006.11.6
130013.55.8
140014.95
0
11.06-4050
21.045-4050
31.01040
61.07-3040
81.09-3045
0
11052.450.00550200
244.43.510.00520100
640.63.890.00520100
0
0
0
"真诚赞赏,手留余香"
还没有人打赏,支持一下
楼主热帖
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

该用户从未签到

尚未签到

发表于 2010-10-28 20:56:33 | 显示全部楼层
很有用!jixuzheyangyigechengxu a!
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

该用户从未签到

尚未签到

 楼主| 发表于 2010-10-29 11:35:12 | 显示全部楼层
希望能有帮助,呵呵
"真诚赞赏,手留余香"
还没有人打赏,支持一下
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】

该用户从未签到

尚未签到

发表于 2010-12-24 11:03:53 | 显示全部楼层
修正雅可比矩阵没有看懂
帖文化:【文明发帖 和谐互动】 社区精神:【创新、交流、互助、共享】
您需要登录后才可以回帖 登录 | 立即加入

本版积分规则

招聘斑竹

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

GMT+8, 2025-2-22 23:25

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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