|
马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!
您需要 登录 才可以下载或查看,没有账号?立即加入
×
[讨论] 求助~~PQ法B1矩阵的形成7 I" i1 {* i* K
/ a4 I6 J* D/ L
求助, PQ分解法8 X* r- V( u) U
各位大牛,求助啊~~
( A% t3 p6 _! U1 S6 U我毕设的题目是交直流混联系统的潮流计算,自己编了交替迭代法的的PQ分解法程序,计算结果与书上算例结果误差最大有12%。* _. o) N, y* J! \3 r5 [. ^/ E
于是测试了纯交流部分的程序,也就是一般的PQ法,对照着现代电力系统分析P86上的例子,发现自己程序B1矩阵算到的结果跟书上的有差,致使第一次迭代时相角的修正量跟标准值就差了4%左右。但是查到我程序生成的B1矩阵跟自己手算的结果是一样的啊……& L1 n. c" ^/ t0 j. B, r
0 D1 J L' p, n1 X附上相关部分代码 Ps 我得到的节点导纳矩阵和B2矩阵都是和书上的一样的,真心搞不懂了,求解答啊~~~' [, K" n) W b9 l4 t( j% N8 \
# ]% ^/ X) s& y: b
$ ]3 F* u3 X& m( M+ ufunction [Bp, Bpp] = makeB(Node,Branch)
' s' I2 l4 R% l) \6 B$ a" W& J; e Q/ V4 D% S- ~
%% define named indices into node, branch matrices
1 H- M; a: h1 ^+ [8 T[PQ, PV, REF, ... ~3 f9 t7 a2 E4 w
TRANS, CAPAC, LINE,...
2 ]( R: e" d) x c5 d$ s3 W NODE_I, BUS_TYPE,PG,QG, PL, QL, V, THETA, ...3 E3 Y+ G2 v+ P, v; W5 n* c% G5 R' u- ^
BRANCHNUM, NODE1, NODE2, R, X, BORK, BRANCH_TYPE, STATUS, P1, Q1, P2, Q2] = index;5 ]' [2 x- o: E+ i4 ~: f) Y9 [" D& i' ^
% m# `' G% G$ z8 e7 H9 ?%% form index lists for slack, PV, and PQ buses
$ z9 M, A0 B4 J b* Kref = find(Node(:, 2) == 3); %% reference bus index
! ?: B9 C0 ~0 G; d5 hpv = find(Node(:, BUS_TYPE) == PV); %% PV bus indices" T4 n. ] \6 y/ ]0 }: x5 U
pq = find(Node(:, BUS_TYPE) == PQ); %% PQ bus indices
z( x6 h/ l; K; J" h f6 ^, B" Z# q H8 X' p1 |" F, z# F+ p
%*************************************************************************%/ v8 Y4 P6 @9 c/ V3 r6 T- k& U* u
% form Bp
5 P6 r, ?9 ^; U! j7 P%*************************************************************************%
) `; H+ W' w7 b# _' Z7 p- l# C' G, H6 y8 {% _
%找出非接地支路
/ g* v8 p" F2 R) M; E9 p x8 otemp = find( Branch(:,NODE2)~=0 );
& A$ A6 \; l" s6 n9 Z( v+ A" tNongroundingBranch = Branch(temp,:);
( k. A" }5 d. Z# n( B. b" {
8 t7 }( P: m) t: ^8 ?0 o$ G+ d%忽略线路充电电容
4 g4 x8 v! h0 F6 k; ^8 M/ eNongroundingBranch(:,BORK) = 0;
1 n( e8 |* ]$ X4 o; ^ w) J# u. H7 Q3 y/ t. E, ]1 x
%不考虑变压器非标准变比
: B4 h" j3 W" Q3 Q7 etemp = find( NongroundingBranch(:,BRANCH_TYPE)==TRANS );
# n6 r8 e; C/ uNongroundingBranch(temp,BORK) = 1;5 R; t7 Q6 e# M
Y = makeY(Node,NongroundingBranch);
0 `% }. M9 J0 z# @9 T7 @) P7 qBp = imag( Y );
l+ Q; B$ \/ d8 g' xBp = Bp([pq; pv], [pq; pv]) ; % reduce Bp matrices
% a3 m2 ^1 g6 P' w
, E4 F$ @" s/ y* S%*************************************************************************%. L( K2 M& d0 m# ]! v1 v
% form Bpp) ^7 T* D% o) v+ I h% T4 @
%*************************************************************************%" K& y0 o# S! X7 J$ p, U/ ~# g# ~1 Y F
Branch(:,4)=0;%忽略输电线路电阻
# c- d) _# B6 U% p! }: w! rY = makeY(Node,Branch);% R' U* S; _) ]6 R& |
Bpp = imag( Y );
# N5 A- a6 y0 l9 Y4 {( r* xBpp = Bpp(pq, pq); % reduce Bp matrices |
|