潮流计算的计算机算法PQ分解法潮流计算IEEE14.docx

上传人:b****6 文档编号:3307709 上传时间:2022-11-21 格式:DOCX 页数:23 大小:20.37KB
下载 相关 举报
潮流计算的计算机算法PQ分解法潮流计算IEEE14.docx_第1页
第1页 / 共23页
潮流计算的计算机算法PQ分解法潮流计算IEEE14.docx_第2页
第2页 / 共23页
潮流计算的计算机算法PQ分解法潮流计算IEEE14.docx_第3页
第3页 / 共23页
潮流计算的计算机算法PQ分解法潮流计算IEEE14.docx_第4页
第4页 / 共23页
潮流计算的计算机算法PQ分解法潮流计算IEEE14.docx_第5页
第5页 / 共23页
点击查看更多>>
下载资源
资源描述

潮流计算的计算机算法PQ分解法潮流计算IEEE14.docx

《潮流计算的计算机算法PQ分解法潮流计算IEEE14.docx》由会员分享,可在线阅读,更多相关《潮流计算的计算机算法PQ分解法潮流计算IEEE14.docx(23页珍藏版)》请在冰豆网上搜索。

潮流计算的计算机算法PQ分解法潮流计算IEEE14.docx

潮流计算的计算机算法PQ分解法潮流计算IEEE14

高等电力系统分析

(潮流计算的计算机算法)

PQ分解法潮流计算(IEEE14)

 

1、MATLAB源程序

2、对支路参数(B1)、节点参数(B2)的说明

3、带入数据,运行结果

一、MATLAB源程序

clear

closeall

n=input('请输入节点数:

n=');

n1=input('请输入支路数:

n1=');

isb=input('请输入平衡节点号:

isb=');

pr=input('请输入误差精度:

pr=');

B1=input('请输入支路参数:

B1=');

B2=input('请输入节点参数:

B2=');

n2=input('请输入PQ节点个数:

n2=');

Y=zeros(n);

fori=1:

n1

p=B1(i,1);

q=B1(i,2);

Y(p,q)=Y(p,q)-1/(B1(i,3)+B1(i,4)*1j);%非对角元

Y(q,p)=Y(p,q);

Y(p,p)=Y(p,p)+1/(B1(i,3)+B1(i,4)*1j)+B1(i,6)*1j;%对角元

Y(q,q)=Y(q,q)+1/(B1(i,3)+B1(i,4)*1j)+B1(i,6)*1j;

end

disp('导纳矩阵Y=');

disp(Y)

%---------------------------------------------

%---------------下面是求P,Q,V,O矩阵---------------

V=zeros(1,n);O=zeros(1,n);P=zeros(1,n);Q=zeros(1,n);

G=real(Y);B=imag(Y);

fori=1:

n

P(i)=B2(i,3);

Q(i)=B2(i,4);

V(i)=B2(i,5);

O(i)=B2(i,6);

end

B3=B(1:

n-1,1:

n-1);%不含平衡节点,由节点导纳虚部构成

B4=B(1:

n2,1:

n2);%所有PQ节点

%----------------------------------------------

%---------------下面是求ΔP,ΔQ矩阵---------------

DX=0;ICT=1;Mp=1;Mq=1;

whileICT~=0

m1=1;m2=1;

fori=1:

n

ifi~=isb

C(i)=0;

D(i)=0;

forj1=1:

n

C(i)=C(i)+V(i)*V(j1)*(G(i,j1)*cos(O(i)-O(j1))+B(i,j1)*sin(O(i)-O(j1)));

D(i)=D(i)+V(i)*V(j1)*(G(i,j1)*sin(O(i)-O(j1))-B(i,j1)*cos(O(i)-O(j1)));

end

DP(m1)=P(i)-C(i);

m1=m1+1;

ifB2(i,2)==1

DQ(m2)=Q(i)-D(i);

m2=m2+1;

end

end

end

m1=m1-1;%所有节点数

m2=m2-1;%PQ节点数

DPQ=[DP';DQ'];%求DP,DQ

V1=V(:

1:

m1);

V2=diag(V1);

V3=inv(V2);%对V矩阵求逆

H=V3*DP';%ΔP/V

K=-inv(B3)*H;%-ΔP/V/B3

deltO=V3*K;%Δ角=-ΔP/V/V/B3

max1=max(abs(DP));

fori=1:

m1

ifmax1

Mp=0;

else

O(i)=O(i)+deltO(i)';

Mq=1;

end

end

V4=V(:

1:

m2);

V5=diag(V4);

V6=inv(V5);

L=V6*DQ';

N=-inv(B4)*L;

deltV=N;%ΔV=-ΔQ/V/B

max2=max(abs(DQ));

fori=1:

m2

ifmax2

Mq=0;

else

ifB2(i,2)==1;

V(i)=V(i)+deltV(i)';

Mp=1;

end

end

end

ifMp==0&&Mq==0

ICT=0;

else

ICT=1;

end

DX=DX+1;

end

%-------------------------------------------

%----------------迭代结束,开始输出结果----------------

disp('----------------------------------------------');

disp('迭代次数为:

');

disp(DX);

fori=1:

n

E(i)=V(i)*cos(O(i))+1j*V(i)*sin(O(i));

o(i)=180*angle(E(i))/pi;

end

disp('---------------------------------------------');

disp('修正后各节点电压标么值为(节点号从小到大排列):

');

disp(V);

disp('---------------------------------------------');

disp('修正后各节点电压相角为(节点号从小到大排列):

');

disp(o);

%------------计算各个节点的功率----------------------

disp('----------------------------------------------');

disp('各节点的功率为:

');

forp=1:

n

C(p)=0;

forq=1:

n

C(p)=C(p)+conj(Y(p,q)*conj(E(q)));

end

S(p)=E(p)*C(p);

end

disp(S);

%------------计算各支路的功率----------------------

fori=1:

n1

p=B1(i,1);q=B1(i,2);

Si(p,q)=E(p)*(conj(E(p))*conj(Y(p,p)-Y(p,q))+(conj(E(p))-conj(E(q)))*conj(Y(p,q)));

disp('----------------------------------------------');

disp('各条支路的首端功率为:

');

disp(Si(p,q));

Si(q,p)=E(q)*(conj(E(q))*conj(Y(q,q)-Y(p,q))+(conj(E(q))-conj(E(p)))*conj(Y(p,q)));

disp('----------------------------------------------');

disp('各条支路的末端功率为:

');

disp(Si(q,p));

DS(i)=Si(p,q)+Si(q,p);

disp('----------------------------------------------');

disp('各条支路的功率损耗为:

');

disp(DS(i));

end

%----------------计算平衡节点功率-------------

Sp=0;

fori=1:

n

Sp=Sp+V(n)*conj(Y(n,i))*conj(V(i));

end

disp('----------------------------------------------');

disp('平衡节点功率为:

');

disp(Sp);

2、对支路参数(B1)、节点参数(B2)的说明

1.节点数:

14

2.支路数:

20

3.支路矩阵B1的各支路参数:

起点编号,终点编号,电阻,电抗,电导,电纳

[120.013350.0421100;

1300.2091200;

1400.5561800;

1100.058110.1763200.034;

1110.067010.1710300.0128;

2100.056950.1738800.0346;

21200.2520200;

2140.054030.2230400.0492;

3400.1100100;

31300.1761500;

450.031810.084500;

490.127110.2703800;

560.082050.1920700;

6120.094980.198900;

780.220920.1998800;

7120.122910.2558100;

890.170930.3480200;

8120.066150.1302700;

10110.046990.1979700.0438;

10140.019380.0591700.0528;]

4.节点参数矩阵B2的各节点参数:

(对应的每一列为)

节点编号,类型,注入有功,注入无功,电压幅值,电压相位

其中节点类型:

1=PQ节点,2=PV节点,0=平衡节点

[11-0.4780.03910;

21-0.076-0.01610;

310010;

41-0.295-0.16610;

51-0.09-0.05810;

61-0.035-0.01810;

71-0.061-0.01610;

81-0.135-0.05810;

91-0.149-0.0510;

1020.18301.0450;

112-0.94201.010;

122-0.1120.0471.70;

13200.1741.90;

140001.060;]

 

3、带入数据,运行结果

>>clear

closeall

n=input('请输入节点数:

n=');

n1=input('请输入支路数:

n1=');

isb=input('请输入平衡节点号:

isb=');

pr=input('请输入误差精度:

pr=');

B1=input('请输入支路参数:

B1=');

B2=input('请输入节点参数:

B2=');

n2=input('请输入PQ节点个数:

n2=');

Y=zeros(n);

fori=1:

n1

p=B1(i,1);

q=B1(i,2);

Y(p,q)=Y(p,q)-1/(B1(i,3)+B1(i,4)*1j);%非对角元

Y(q,p)=Y(p,q);

Y(p,p)=Y(p,p)+1/(B1(i,3)+B1(i,4)*1j)+B1(i,6)*1j;%对角元

Y(q,q)=Y(q,q)+1/(B1(i,3)+B1(i,4)*1j)+B1(i,6)*1j;

end

disp('导纳矩阵Y=');

disp(Y)

%---------------------------------------------

%---------------下面是求P,Q,V,O矩阵---------------

V=zeros(1,n);O=zeros(1,n);P=zeros(1,n);Q=zeros(1,n);

G=real(Y);B=imag(Y);

fori=1:

n

P(i)=B2(i,3);

Q(i)=B2(i,4);

V(i)=B2(i,5);

O(i)=B2(i,6);

end

B3=B(1:

n-1,1:

n-1);%不含平衡节点,由节点导纳虚部构成

B4=B(1:

n2,1:

n2);%所有PQ节点

%----------------------------------------------

%---------------下面是求ΔP,ΔQ矩阵---------------

DX=0;ICT=1;Mp=1;Mq=1;

whileICT~=0

m1=1;m2=1;

fori=1:

n

ifi~=isb

C(i)=0;

D(i)=0;

forj1=1:

n

C(i)=C(i)+V(i)*V(j1)*(G(i,j1)*cos(O(i)-O(j1))+B(i,j1)*sin(O(i)-O(j1)));

D(i)=D(i)+V(i)*V(j1)*(G(i,j1)*sin(O(i)-O(j1))-B(i,j1)*cos(O(i)-O(j1)));

end

DP(m1)=P(i)-C(i);

m1=m1+1;

ifB2(i,2)==1

DQ(m2)=Q(i)-D(i);

m2=m2+1;

end

end

end

m1=m1-1;%所有节点数

m2=m2-1;%PQ节点数

DPQ=[DP';DQ'];%求DP,DQ

V1=V(:

1:

m1);

V2=diag(V1);

V3=inv(V2);%对V矩阵求逆

H=V3*DP';%ΔP/V

K=-inv(B3)*H;%-ΔP/V/B3

deltO=V3*K;%Δ角=-ΔP/V/V/B3

max1=max(abs(DP));

fori=1:

m1

ifmax1

Mp=0;

else

O(i)=O(i)+deltO(i)';

Mq=1;

end

end

V4=V(:

1:

m2);

V5=diag(V4);

V6=inv(V5);

L=V6*DQ';

N=-inv(B4)*L;

deltV=N;%ΔV=-ΔQ/V/B

max2=max(abs(DQ));

fori=1:

m2

ifmax2

Mq=0;

else

ifB2(i,2)==1;

V(i)=V(i)+deltV(i)';

Mp=1;

end

end

end

ifMp==0&&Mq==0

ICT=0;

else

ICT=1;

end

DX=DX+1;

end

%-------------------------------------------

%----------------迭代结束,开始输出结果----------------

disp('----------------------------------------------');

disp('迭代次数为:

');

disp(DX);

fori=1:

n

E(i)=V(i)*cos(O(i))+1j*V(i)*sin(O(i));

o(i)=180*angle(E(i))/pi;

end

disp('---------------------------------------------');

disp('修正后各节点电压标么值为(节点号从小到大排列):

');

disp(V);

disp('---------------------------------------------');

disp('修正后各节点电压相角为(节点号从小到大排列):

');

disp(o);

%------------计算各个节点的功率----------------------

disp('----------------------------------------------');

disp('各节点的功率为:

');

forp=1:

n

C(p)=0;

forq=1:

n

C(p)=C(p)+conj(Y(p,q)*conj(E(q)));

end

S(p)=E(p)*C(p);

end

disp(S);

%------------计算各支路的功率----------------------

fori=1:

n1

p=B1(i,1);q=B1(i,2);

Si(p,q)=E(p)*(conj(E(p))*conj(Y(p,p)-Y(p,q))+(conj(E(p))-conj(E(q)))*conj(Y(p,q)));

disp('----------------------------------------------');

disp('各条支路的首端功率为:

');

disp(Si(p,q));

Si(q,p)=E(q)*(conj(E(q))*conj(Y(q,q)-Y(p,q))+(conj(E(q))-conj(E(p)))*conj(Y(p,q)));

disp('----------------------------------------------');

disp('各条支路的末端功率为:

');

disp(Si(q,p));

DS(i)=Si(p,q)+Si(q,p);

disp('----------------------------------------------');

disp('各条支路的功率损耗为:

');

disp(DS(i));

end

%----------------计算平衡节点功率-------------

Sp=0;

fori=1:

n

Sp=Sp+V(n)*conj(Y(n,i))*conj(V(i));

end

disp('----------------------------------------------');

disp('平衡节点功率为:

');

disp(Sp);

请输入节点数:

n=14

请输入支路数:

n1=20

请输入平衡节点号:

isb=14

请输入误差精度:

pr=0.00001

请输入支路参数:

B1=[120.013350.0421100;

1300.2091200;

1400.5561800;

1100.058110.1763200.034;

1110.067010.1710300.0128;

2100.056950.1738800.0346;

21200.2520200;

2140.054030.2230400.0492;

3400.1100100;

31300.1761500;

450.031810.084500;

490.127110.2703800;

560.082050.1920700;

6120.094980.198900;

780.220920.1998800;

7120.122910.2558100;

890.170930.3480200;

8120.066150.1302700;

10110.046990.1979700.0438;

10140.019380.0591700.0528;]

请输入节点参数:

B2=[11-0.4780.03910;

21-0.076-0.01610;

310010;

41-0.295-0.16610;

51-0.09-0.05810;

61-0.035-0.01810;

71-0.061-0.01610;

81-0.135-0.05810;

91-0.149-0.0510;

1020.18301.0450;

112-0.94201.010;

122-0.1120.0471.70;

13200.1741.90;

140001.060;]

请输入PQ节点个数:

n2=9

导纳矩阵Y=

Columns1through5

10.5130-38.2963i-6.8410+21.5786i0.0000+4.7819i0.0000+1.7980i0.0000+0.0000i

-6.8410+21.5786i9.5680-34.8916i0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i

0.0000+4.7819i0.0000+0.0000i0.0000-19.5490i0.0000+9.0901i0.0000+0.0000i

0.0000+1.7980i0.0000+0.0000i0.0000+9.0901i5.3261-24.2825i-3.9020+10.3654i

0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i-3.9020+10.3654i5.7829-14.7683i

0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i-1.8809+4.4029i

0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i

0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i

0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i-1.4240+3.0291i0.0000+0.0000i

-1.6860+5.1158i-1.7011+5.1939i0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i

-1.9860+5.0688i0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i

0.0000+0.0000i0.0000+3.9679i0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i

0.0000+0.0000i0.0000+0.0000i0.0000+5.6770i0.0000+0.0000i0.0000+0.0000i

0.0000+0.0000i-1.0259+4.2350i0.0000+0.0000i0.0000+0.0000i0.0000+0.0000i

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1