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

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

[分享] 潮流程序matlab

[复制链接]

该用户从未签到

尚未签到

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

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

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

×
clear                       %清除工作空间原有的变量3 b5 o" u9 s4 s# v- u
clc4 }6 U6 H) v  K+ f% l
a=textread('IEEE14.dat');        %读数据文件' |- U4 q0 ]- `: j% S  N
n=a(1,1);                   %节点数
% T4 z; j; u  N: e8 k2 |line=a(1,2);                %支路数
' P8 t: {8 w+ q0 ~  b+ qblance=a(1,3);              %平衡节点
% [' f3 ?' C* |! Q) ^  xSB=a(1,4);                  %基准功率
: ?; s- q" N: H) D( L; S# K: Ukmax=a(1,5);                %最大迭代次数
" ?( @" W, l' c. s4 Uab=a(2,1);                  %计算精度( w" `7 l7 X1 Z% n/ b8 L
t=find(a(:,1)==0);          ) w0 @8 u6 n6 S+ G1 g+ q! ?0 E
xianlu=a([3:t(1)-1],:);      %形成线路参数矩阵0 a2 m* H+ k0 y0 f% z* w) d
jiedi=a([t(1)+1:t(2)-1],:);  %接地支路参数矩阵" l& w5 h( |# h; D3 S$ G% A, {/ r. b
bianya=a([t(2)+1:t(3)-1],:); %形成变压器支路参数矩阵6 I; S( f6 l8 l6 e5 m( S: v9 I1 |
jiedian=a([t(3)+1:t(4)-1],:);%节点功率数据矩阵8 K4 E8 t. t8 x  Q& u
pv=a([t(4)+1:t(5)-1],:);     %pv节点数据矩阵
# X" v" Y0 x0 N, F" Y5 {" q%读线路参数1 h% S  n1 I- s# ]$ W. Z6 c
linei=xianlu(:,2)';9 C  V: _( F1 `  N7 I
linej=xianlu(:,3)';
; M9 z- K+ w, N& ~6 W) mr=xianlu(:,4)';- ^8 O, v( [. f1 `1 l8 _) T8 X
x=xianlu(:,5)';
7 v# ~% O6 m& @6 a0 Wb0=xianlu(:,6)';0 c5 G1 T; |% W, d( j. d4 p# ~
/ c# v, N: l& @0 |/ R4 t( a
g=r./(r.*r+x.*x);5 B! e+ i: o- J2 K/ a. T6 n
b=-x./(r.*r+x.*x);1 A) C- J" @2 Y, H
G=sparse(linei,linej,-g,n,n)+sparse(linej,linei,-g,n,n)+sparse(linei,linei,g,n,n)+sparse(linej,linej,g,n,n);- L: j8 H7 I) P. Y; v: B
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);
7 l; W+ M+ _; k, E  t/ q" e% 读变压器参数
- ^7 i- \- A- K& T4 k- [linei=bianya(:,2)';
; P5 H5 V. p; b8 l% W: alinej=bianya(:,3)';2 N) Q1 o0 q% ^2 F8 H7 ^
r=bianya(:,4)';
: V  L7 U  b4 L0 A6 O3 h$ Ix=bianya(:,5)';8 Y  B) a# m2 a# z7 W9 y
k0=bianya(:,6)';
$ h% p$ n' V' Z$ Mg=r./(r.*r+x.*x);
' Z, b! v  y7 I: l! q$ wb=-x./(r.*r+x.*x);9 N5 J9 [/ ]- I/ d2 B4 ]/ V6 _1 ~
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);$ B" Y9 ^3 ?% V; O
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);8 j* a' G! H9 D7 E9 x& q) b# r
% 读接地支路参数5 e3 G/ B1 g0 d+ h0 }
jiedidian=jiedi(:,1)';/ q4 O3 ~, c8 n. d. J
branchib=jiedi(:,2)';( B) h" B6 o- T! y$ L+ S+ J+ g3 Q  b( Q
B=B+sparse(jiedidian,jiedidian,branchib,n,n);
( y! \+ b' D3 c& k%节点导纳矩阵6 |( `$ `6 D# H' l" e1 v
Y=sparse(G+i*B);
1 u# d  \, k; |$ x2 N: b# v# l$ J% 读节点功率数据5 l! R. n) O( k' a. p  P& A
pg=jiedian(:,2)/SB;
9 ?' ^' Z( q' Xpd=jiedian(:,4)/SB;0 L# p" I. J' W+ a. ]6 g/ M# p2 d
qg=jiedian(:,3)/SB;
2 \% C8 p7 S. s+ [: E7 ~5 ]9 `qd=jiedian(:,5)/SB;
' V" O; T6 [9 K- i: P
: Q! _$ f' y! S0 e9 }# |4 T3 }! Yp=zeros(n,1);0 R, ~7 ?3 G$ K# v
q=zeros(n,1);/ d2 I0 ]+ u9 r3 f) {' u
p(jiedian(:,1))=pg-pd;5 w, _2 X" o- F+ A  K) }2 U
q(jiedian(:,1))=qg-qd;/ S5 R; z) A. X9 }5 n
% 读pv节点数据- J- Q: ?& J( b) p* S4 M1 \
pvjiedian=pv(:,1);
$ v  Y8 E9 D# Bvpv=pv(:,2);
$ s5 k' j/ p0 [: H9 [; Hv=ones(n,1);                  %电压初始值
- N4 I4 L  N! \2 ]& b& N2 I" Hv(pvjiedian)=vpv;   %pv节点(及平衡节点)电压已知
# W2 V! E4 r$ E. Xdelt=zeros(n,1);     %相角初始值
7 F' ?' y: T: U- }! C! E: Odeltp=zeros(n,1);     % 失配有功功率初值
( H) n2 B! w- w& m8 V1 c0 m7 ddeltq=zeros(n,1);      % 失配无功功率初值* L+ L; F) g; e* @3 w1 q# Q, m3 {' Y! L# k

: _) @. F+ O$ F. l%迭代求潮流计算
! T% V! Y1 ?" a7 Jfor diedai=1:10                %置最大循环次数3 f& i. ^4 q" ?+ u
    clear i
# c) u8 n8 q6 E: ~    % 失配功率方程
- [. v# k- f# r3 |! F( y       V=v.*cos(delt)+i*v.*sin(delt);: F( d! z8 z1 M! Y- {- u& Z' z/ b! C
       a2=conj(Y*V).*V;
3 `  ]. ]1 ~3 I. z. M/ r7 p: \! @       deltp=p-real(a2);
% G* p2 ~/ @6 k' r! U       deltq=q-imag(a2);
: X. U2 [5 s$ J" j     
' b' ~- B4 k& k: g5 X       % 求雅可比矩阵) W9 O1 \: u4 B0 @9 n8 j
      for i=1:n
3 L: H! C6 f! a* V: k# p# L1 X; Q          for j=1:n8 e9 [9 _( \' D" f
              if i~=j3 A8 _5 @' ~5 i+ Y/ I
                  H(i,j)=-v(i)*v(j)*(G(i,j)*sin(delt(i)-delt(j))-B(i,j)*cos(delt(i)-delt(j)));9 s1 i6 s. [5 B6 {' O/ _2 z" v! P
              else% w0 S% W1 Z1 V& {0 a
                  H(i,i)=v(i)*v(i)*B(i,i)+q(i)-deltq(i);
% \# m# i- E% B5 q" R0 A3 T9 j              end
, z( Q9 m5 U1 a9 W          end
- h8 ]3 l+ [1 e# l! d      end
! `! b5 H" D3 b" h% G2 m      # y) j( _" s! g! H0 m6 {
       for i=1:n
9 y4 g7 h" M7 q% P1 o8 {8 Z  v# r          for j=1:n
" o5 ^% {( D! {0 L              if i~=j  W0 F: K- o5 \
                  N(i,j)=-v(i)*(G(i,j)*cos(delt(i)-delt(j))+B(i,j)*sin(delt(i)-delt(j)));
4 t) y! {$ y5 e              else( L: P! m# f6 W, x# ]7 }( {
                  N(i,i)=-v(i)*G(i,i)-(p(i)-deltp(i))/v(i);
! \7 N/ x6 V3 z1 z) W) v) b. |              end/ O; k9 d! W# k1 E5 ^
          end
! z- R3 n  X' j, c, A% M+ ?, g7 D! i      end 9 @! ~6 I  x6 ], ^" m* b
      
& T4 c" W7 L( p" z       for i=1:n
; Z1 H3 R! [2 l* b- L2 c          for j=1:n2 M. S3 ~, z. |9 i; p- G
              if i~=j
  n& o9 }! u1 f- q+ j' O3 J                  J(i,j)=v(i)*v(j)*(G(i,j)*cos(delt(i)-delt(j))+B(i,j)*sin(delt(i)-delt(j)));
" N, @4 `- j$ K& y( {/ h              else5 ?) ~5 J" f- q" R
                  J(i,i)=v(i)*v(i)*G(i,i)-(p(i)-deltp(i));4 e- b- b) u* [9 x( ~2 `, ~# D" L( a
              end( }( B2 [; x9 G; _! S) Y! [
          end
2 L' B% Y- d  ~/ Z* [, k      end % C" |/ i  ]1 x4 i4 F% E
      
/ l6 c, _6 n! g4 P/ V. C( B     for i=1:n3 u2 w) P3 i+ M) u) E
          for j=1:n
3 p% K+ D; ~0 y0 r; t              if i~=j: r3 F2 b$ x0 k# Y: o& X
                  L(i,j)=-v(i)*(G(i,j)*sin(delt(i)-delt(j))-B(i,j)*cos(delt(i)-delt(j)));
+ N, v3 E' w* d3 ^' l              else
6 {0 `6 ~2 y) s* w( ?+ Q                  L(i,i)=v(i)*B(i,i)-(q(i)-deltq(i))/v(i);
- O6 q4 U. u! D! u              end3 p4 s& p  m% k) G" ]
          end& D& R! X8 I$ ~3 R
     end
0 d9 y' v" o* i3 K' {8 g& T+ n- {     %修正雅克比矩阵9 S' U* z- x/ z' M6 Y, F6 D+ x
       Ya=[H N;J L];& s) O/ G# z  L$ N" S
       Ya([blance blance+n],:)=0;
8 J: w0 D1 u( f# T       Ya(:,[blance blance+n])=0;
) B- R& O/ f% ~       Ya(blance,blance)=1;    %平衡节点# q' w3 v0 m  B1 N8 F
       Ya(blance+n,blance+n)=1;, x! c4 R! K) Y; X, t! _
       Ya(pvjiedian+n,:)=0;) o7 [& N! a) b' [
       Ya(:,pvjiedian+n)=0;
3 E) Y; ~  [& ]5 k7 O+ j# F       for h=1:length(pvjiedian)3 t- M0 d5 @" ~. K- L% [
           Ya(pvjiedian(h)+n,pvjiedian(h)+n)=1;
- I! `; q8 o  a, x        end! G5 e4 V9 J8 G* ?1 p+ y/ n. M- y0 s
        0 y5 S" N) x& F8 D
      %
# N$ x& ~3 a: p% W       deltp(blance)=0;        %平衡节点deltp=0% H. O; O3 j- K5 N# y7 J
       deltq(blance)=0;        %平衡节点deltq=0. u/ V: W$ e! {1 R8 N
   
" {, [9 k/ n$ \  V       deltq(pvjiedian)=0;     %pv节点deltq=0
6 e; X2 }8 M7 e, S# T       deltpq=[deltp;deltq];6 t6 m7 v' ^8 m2 N8 T$ i: ^
        if max(abs(deltpq))<ab     % 如果结果满足精度) ?- w; c; b9 P4 n
              break                  % 退出循环
1 M6 L: ^$ {# d4 Y        end    ' n" B: Q& k% O: D
          R=Ya\(-deltpq);" k& o6 y2 k7 i# [
          delt=delt+R([1:n]);9 d3 T' M6 M, ]' i3 @7 ~- x
          deltt=delt*180/pi
4 Q4 e5 s- \2 @0 [* i. H$ J          v=v+R([n+1:2*n])- U% M8 Y+ q) G  a
   end $ p6 P0 I6 b6 l$ L" ?' z
1 l" A$ g2 \$ x: Y# L+ s

0 p# n; s9 @) f0 v( {7 A数据格式% i1 v3 w4 o$ F# t7 q2 {) ^
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& i0 T& [% D8 ~/ D
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-4-24 22:16

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

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