|
|
马上加入,结交更多好友,共享更多资料,让你轻松玩转电力研学社区!
您需要 登录 才可以下载或查看,没有账号?立即加入
×
[讨论] 求助~~PQ法B1矩阵的形成! j% B9 g$ _- I$ {3 F% r0 Y! r6 Z" t
4 f7 ?0 @7 }( Y" W# R8 O) W4 o; a
求助, PQ分解法5 B% m5 g- ?4 S+ }8 r( H- _; q" i- P
各位大牛,求助啊~~
b& {$ {0 F5 `' K" }5 b M! ^" p我毕设的题目是交直流混联系统的潮流计算,自己编了交替迭代法的的PQ分解法程序,计算结果与书上算例结果误差最大有12%。/ ~7 j# E' | J
于是测试了纯交流部分的程序,也就是一般的PQ法,对照着现代电力系统分析P86上的例子,发现自己程序B1矩阵算到的结果跟书上的有差,致使第一次迭代时相角的修正量跟标准值就差了4%左右。但是查到我程序生成的B1矩阵跟自己手算的结果是一样的啊……
: C2 k1 W, c) I! ?% a4 Z( n( m+ b2 O1 J; X
附上相关部分代码 Ps 我得到的节点导纳矩阵和B2矩阵都是和书上的一样的,真心搞不懂了,求解答啊~~~! G- M8 r0 P, N+ K1 `. y, V% z5 ]
: S$ ]' {2 o! [
8 q; a: j* ]) }. f- X9 S, o% |$ K
function [Bp, Bpp] = makeB(Node,Branch)
$ C- R4 @2 O5 ^' a4 g; H9 e& s% m8 `4 _# c: u2 r: z
%% define named indices into node, branch matrices( j1 t" m, \* j: _5 I
[PQ, PV, REF, ...7 U: z+ J" l& E) H
TRANS, CAPAC, LINE,...! L8 m8 ~4 k$ A* c5 a
NODE_I, BUS_TYPE,PG,QG, PL, QL, V, THETA, ...; E) S) a6 {. x R3 z" U" Q3 B
BRANCHNUM, NODE1, NODE2, R, X, BORK, BRANCH_TYPE, STATUS, P1, Q1, P2, Q2] = index;
% L2 ]7 s) T, I( c/ }% r' I
) C/ T% g3 ^+ ?%% form index lists for slack, PV, and PQ buses; U* [) v t, j3 _* c2 Y
ref = find(Node(:, 2) == 3); %% reference bus index
& J8 N$ ^4 ?: Q N' A$ Z8 fpv = find(Node(:, BUS_TYPE) == PV); %% PV bus indices7 K9 A3 O: K+ q5 ?5 d8 L6 a$ t/ z
pq = find(Node(:, BUS_TYPE) == PQ); %% PQ bus indices. ~2 R5 ]% D2 v( X7 U! z% B! \* l$ p
$ A% M4 c; C1 f0 C- s
%*************************************************************************%
1 Y2 T' Q4 u! S# R3 z% X, p5 ]+ C% form Bp+ m$ h0 J: H& B& e
%*************************************************************************%. o: }$ f7 }, X* F, ?, x& c& C
^. b* \! D4 H: c! Q, d+ r%找出非接地支路+ r8 D; @4 h; Z, Y5 G# z
temp = find( Branch(:,NODE2)~=0 );9 H8 m1 ~# T; R; {
NongroundingBranch = Branch(temp,:);
4 y/ h4 B, X: @! |/ S6 L5 R
- v9 t- c' Q# ^ W%忽略线路充电电容( k$ c& O4 c, V1 f2 }7 p
NongroundingBranch(:,BORK) = 0;: f9 N1 J0 Z' T$ n
% t- |0 a( w/ p%不考虑变压器非标准变比
" a- B* j# T3 |* c' Ctemp = find( NongroundingBranch(:,BRANCH_TYPE)==TRANS );
N b, N! p" _# cNongroundingBranch(temp,BORK) = 1;
: y- I% ~" H" y9 dY = makeY(Node,NongroundingBranch);
9 t% ?; _/ [9 O0 M/ J, DBp = imag( Y );
' m+ m+ U f# R( K- N5 Y& K% hBp = Bp([pq; pv], [pq; pv]) ; % reduce Bp matrices7 z- U& a( D# ?0 a T, o4 p
( G; c& P9 k$ ? J4 G/ l4 _
%*************************************************************************%
$ b" m" E; J t% form Bpp
% Z% q, O' i# k' h+ L%*************************************************************************%* H G; Y- S* ]- c; |, B
Branch(:,4)=0;%忽略输电线路电阻
$ h: f5 @7 G* y& A' _& }Y = makeY(Node,Branch);
* r. O U9 S/ m; V' ^Bpp = imag( Y );
) ?% K) r$ P# n" d' JBpp = Bpp(pq, pq); % reduce Bp matrices |
|