潮流计算的计算机算法

合集下载

(完整word版)潮流计算方法

(完整word版)潮流计算方法

由于本人参加我们电气学院的电气小课堂,主讲的是计算机算法计算潮流这章,所以潜心玩了一个星期,下面整理给大家分享下。

本人一个星期以来的汗水,弄清楚了计算机算法计算潮流的基础,如果有什么不懂的可以发信息到邮箱:zenghao616@接下来开始弄潮流的优化问题,吼吼!电力系统的潮流计算的计算机算法:以MATLAB为环境这里理论不做过多介绍,推荐一本专门讲解电力系统分析的计算机算法的书籍---------《电力系统分析的计算机算法》—邱晓燕、刘天琪编著。

这里以这本书上的例题【2-1】说明计算机算法计算的过程,分别是牛顿拉弗逊算法的直角坐标和极坐标算法、P-Q分解算法。

主要是简单的网络的潮流计算,其实简单网络计算和大型网络计算并无本质区别,代码里面只需要修改循环迭代的N即可,这里旨在弄清计算机算法计算潮流的本质。

代码均有详细的注释.其中简单的高斯赛德尔迭代法是以我们的电稳教材为例子讲,其实都差不多,只要把导纳矩阵Y给你,节点的编号和分类给你,就可以进行计算了,不必要找到原始的电气接线图。

理论不多说,直接上代码:简单的高斯赛德尔迭代法:这里我们只是迭代算出各个节点的电压值,支路功率并没有计算。

S_ij=P_ij+Q_ij=V_i(V_i* - V_j*) * y_ij*可以计算出各个线路的功率在显示最终电压幅角的时候注意在MATLAB里面默认的是弧度的形式,需要转化成角度显示。

clear;clc;%电稳书Page 102 例题3-5%计算网络的潮流分布 --- 高斯-赛德尔算法%其中节点1是平衡节点%节点2、3是PV节点,其余是PQ节点% 如果节点有对地导纳支路%需将对地导纳支路算到自导纳里面%------------------------------------------------%%输入原始数据,每条支路的导纳数值,包括自导和互导纳;y=zeros(5,5);y(1,2)=1/(0.0194+0.0592*1i);y(1,5)=1/(0.054+0.223*1i);y(2,3)=1/(0.04699+0.198*1i);y(2,4)=1/(0.0581+0.1763*1i);%由于电路网络的互易性,导纳矩阵为对称的矩阵for i=1:1:5for j=1:1:5y(j,i)=y(i,j);endend%节点导纳矩阵的形成Y=zeros(5,5);%求互导纳for i=1:1:5for j=1:1:5if i~=jY(i,j)=-y(i,j);endendend%求自导纳for i=1:1:5%这句话是说将y矩阵的第i行的所有元素相加,得到自导纳的值 Y(i,i)=sum(y(i,:));end%上面求得的自导纳不包含该节点的对地导纳数值,需要加上Y(2,2)=Y(2,2)+0.067*1i;Y(3,3)=Y(3,3)+0.022*1i;Y(4,4)=Y(4,4)+0.0187*1i;Y(5,5)=Y(5,5)+0.0246*1i;%导纳矩阵的实部和虚部G = real(Y);B = imag(Y);Qc2=0;Qc3=0;%原始节点功率%这里电源功率为正,负荷功率为负S(1)=0;S(2)=-0.217-0.121*1i+Qc2*1i;S(3)=-0.749-0.19*1i+Qc3*1i;S(4)=-0.658+0.039*1i;S(5)=-0.076-0.016*1i;%节点功率的P QP = real(S);Q = imag(S);%下面是两个PV节点的无功初始值Q(2) = 0;Q(3) = 0;U=ones(5,1); %1列5行的‘1’矩阵%节点电压初始值U(1)=1.06;U(2)=1.045;U(3)=1.01;U_reg=U;Sum_YU0=0;%中间变量Sum_YU1=0;%中间变量for cont=1:1:6 %这里的cont是迭代次数for i=2:1:5for j=1:1:iif i~=jSum_YU0 = Sum_YU0 + Y(i,j)*U_reg(j);endendfor j=i+1:1:5Sum_YU1 = Sum_YU1 + Y(i,j)*U(j);endU(i)=( (P(i)-Q(i)*1i ) / conj(U(i)) - Sum_YU0 - Sum_YU1 ) / Y(i,i); U_reg(i)=U(i);%PV节点计算%下面是把求出的U2、U3只保留其相位,幅值不变if i==2angle_U2 = angle(U(2));U(2)=1.045*cos(angle_U2)+1.045*sin(angle_U2)*1i;Q(2)=imag( U(2)*( conj(Sum_YU0) + conj(Sum_YU1) + conj(Y(2,2)*U(2)) ) );endif i==3angle_U3 = angle(U(3));U(3)=1.01*cos(angle_U3)+1.01*sin(angle_U3)*1i;Q(3)=imag( U(3)*( conj(Sum_YU0) + conj(Sum_YU1) + conj(Y(3,3)*U(3)) ) );end% 下面做越界检查%if Q(4)>Q_Max% Q(4) = Q_Max;%end%if Q(4)<Q_Min% Q(4) = Q_Min;%end%下面可以做PV节点收敛判断Sum_YU0 = 0;Sum_YU1 = 0;endend%节点注入无功,流入为正,流出为负Qc2=Q(2)+0.121-1.045^2 * 0.067;Qc3=Q(3)+0.19-1.01^2 * 0.022;%电压幅值和相角angle_U=angle(U)*180/pi;U=abs(U);S_Line=zeros(5,5);%计算平衡节点功率S_BalanceNode=0;for j=1:1:5S_BalanceNode = S_BalanceNode + U(1) * conj(Y(1,j)*U(j));end%下面由上面算出的电压值求线路的功率%这里计算出来的线路功率的有功、无功%for i=1:1:5% for j=i:1:5% if i~=j% S_Line(i,j)=U(i)*( conj(U(i))-conj(U(j)) ) * conj(y(i,j));% end% if i==2% %S_Line(2,j)=S_Line(2,j)+U(2)*conj(0.067*1i);% end% if i==3% %S_Line(3,j)=S_Line(3,j)+U(3)*conj(0.022*1i);% end% end%end计算网络的潮流分布 ---- Newton算法(直角坐标)clear;clc;%电稳书Page 102 例题3-5%计算网络的潮流分布 ---- Newton算法(直角坐标)%其中节点1是平衡节点%节点2、3是PV节点,其余是PQ节点% 如果节点有对地导纳支路%需将对地导纳支路算到自导纳里面%------------------------------------------------%%输入原始数据,每条支路的导纳数值,包括自导和互导纳;y=zeros(5,5);y(1,2)=1/(0.0194+0.0592*1i);y(1,5)=1/(0.054+0.223*1i);y(2,3)=1/(0.04699+0.198*1i);y(2,4)=1/(0.0581+0.1763*1i);%由于电路网络的互易性,导纳矩阵为对称的矩阵for i=1:1:5for j=1:1:5y(j,i)=y(i,j);endend%节点导纳矩阵的形成Y=zeros(5,5);%求互导纳for i=1:1:5for j=1:1:5if i~=jY(i,j)=-y(i,j);endendend%求自导纳for i=1:1:5%这句话是说将y矩阵的第i行的所有元素相加,得到自导纳的值Y(i,i)=sum(y(i,:));end%上面求得的自导纳不包含该节点的对地导纳数值,需要加上Y(2,2)=Y(2,2)+0.067*1i;Y(3,3)=Y(3,3)+0.022*1i;Y(4,4)=Y(4,4)+0.0187*1i;Y(5,5)=Y(5,5)+0.0246*1i;%导纳矩阵的实部和虚部G = real(Y);B = imag(Y);%节点2、3需补偿的无功Qc2=0;Qc3=0;%原始节点功率%这里电源功率为正,负荷功率为负S(1)=0;S(2)=-0.217-0.121*1i+Qc2*1i;S(3)=-0.749-0.19*1i+Qc3*1i;S(4)=-0.658+0.039*1i;S(5)=-0.076-0.016*1i;%节点功率的P QP = real(S);Q = imag(S);%下面是两个PV节点的无功初始值Q(2) = 0;Q(3) = 0;%给点电压初始值e=[1.06,1.045,1.01,1,1];f=[0,0,0,0,0];U=e+f*1i;delta_U=zeros(1,5);delta_P=zeros(1,5);delta_Q=zeros(1,5);delta_PQV=ones(8,1);Sum_GB1=0;Sum_GB2=0;cont=0;while max(delta_PQV > 1e-6),cont=cont+1;%for cont=1:1:3%下面开始计算delta_P/delta_Q/delta_Ufor i=2:1:5for j=1:1:5Sum_GB1=Sum_GB1 + ( G(i,j)*e(j) - B(i,j)*f(j) );Sum_GB2=Sum_GB2 + ( G(i,j)*f(j) + B(i,j)*e(j) );enddelta_P(i)=P(i)-e(i)*Sum_GB1-f(i)*Sum_GB2;if i~=2 && i~=3 %不为节点2,3则计算无功delta_Q(i)=Q(i)-f(i)*Sum_GB1+e(i)*Sum_GB2;endif i==2 || i==3 %这里计算delta_U的值,始终为零delta_U(i)=U(i)^2-( e(i)^2 + f(i)^2 );endSum_GB1=0;Sum_GB2=0;end%___________________________________%%下面计算雅克比矩阵J=zeros(8,8);for ii=2:1:5i=ii-1;for j=1:1:5Sum_GB1=Sum_GB1 + ( G(ii,j)*e(j) - B(ii,j)*f(j) );Sum_GB2=Sum_GB2 + ( G(ii,j)*f(j) + B(ii,j)*e(j) );endfor jj=2:1:5j=jj-1;if ii~=2 && ii~=3 %PQ节点if ii==jjJ(2*i-1,2*i-1)=-Sum_GB1-G(ii,ii)*e(ii)-B(ii,ii)*f(ii);J(2*i-1,2*i)=-Sum_GB2+B(ii,ii)*e(ii)-G(ii,ii)*f(ii);J(2*i,2*i-1)=Sum_GB2+B(ii,ii)*e(ii)-G(ii,ii)*f(ii);J(2*i,2*i)=-Sum_GB1+G(ii,ii)*e(ii)+B(ii,ii)*f(ii);elseJ(2*i-1,2*j-1)=-(G(ii,jj)*e(ii)+B(ii,jj)*f(ii)); J(2*i-1,2*j)=B(ii,jj)*e(ii)-G(ii,jj)*f(ii);J(2*i,2*j-1)=B(ii,jj)*e(ii)-G(ii,jj)*f(ii);J(2*i,2*j)=(G(ii,jj)*e(ii)+B(ii,jj)*f(ii));endelse%PV节点if ii==jjJ(2*i-1,2*i-1)=-Sum_GB1-G(ii,ii)*e(ii)-B(ii,ii)*f(ii);J(2*i-1,2*i)=-Sum_GB2+B(ii,ii)*e(ii)-G(ii,ii)*f(ii);J(2*i,2*i-1)=-2*e(ii);J(2*i,2*i)=-2*f(ii);elseJ(2*i-1,2*j-1)=-(G(ii,jj)*e(ii)+B(ii,jj)*f(ii)); J(2*i-1,2*j)=B(ii,jj)*e(ii)-G(ii,jj)*f(ii);J(2*i,2*j-1)=0;J(2*i,2*j)=0;endendendSum_GB1=0;Sum_GB2=0;end%在求解修正方程之前建议把delta_P和delta_Q,delta_U全部放在一个矩阵delta_PQV=[delta_P(2);delta_U(2);delta_P(3);delta_U(3);delta_P(4) ;delta_Q(4);delta_P(5);delta_Q(5)];%下面求解修正方程;注意矩阵运算时候的左除和右除的区别delta_ef=-J\delta_PQV;%下面修正各个节点的电压for i=2:1:5e(i)=e(i)+delta_ef(2*(i-1)-1);f(i)=f(i)+delta_ef(2*(i-1));end%到这里第一轮迭代完成end%电压幅值和相角U=e+f*1i;angle_U=angle(U)*180/pi;%节点注入无功,流入为正,流出为负Sum_YU=0;for i=2:1:3for j=1:1:5Sum_YU = Sum_YU + Y(i,j)*U(j);endQ(i)=imag( U(i)*conj( Sum_YU ) );Sum_YU=0;endQc2=Q(2)+0.121-1.045^2 * 0.067;Qc3=Q(3)+0.19-1.01^2 * 0.022;U=abs(U);disp(['Iteration times : ' num2str(cont)]);%显示最终的迭代次数牛顿算法求解潮流 (极坐标):clear;clc;%牛顿算法求解潮流 (极坐标)%计算网络的潮流分布%其中节点5是平衡节点%节点1、2、3是PQ节点,节点4是PV节点% 如果节点有对地导纳支路%需将对地导纳支路算到自导纳里面%------------------------------------------------%%输入原始数据,每条支路的导纳数值,包括自导和互导纳;Y=[0.8381-3.7899*1i,-0.4044+1.6203*1i,0,0,-0.4337+2.2586*1i;...-0.4044+1.6203*1i,0.7769-3.3970*1i,-0.3726+1.8557*1i,0,0;...0,-0.3726+1.8557*1i,1.1428-7.0210*1i,-0.5224+4.1792*1i,-0.2739+1. 2670*1i;...0,0,-0.5224+4.1792*1i,0.5499-4.3591*1i,0;...-0.4337+2.2586*1i,0,-0.2739+1.2670*1i,0,0.7077-3.4437*1i];%导纳矩阵的实部和虚部G = real(Y);B = imag(Y);%给点电压初始值U = [1,1,1,1,1.05];angle_U=[0,0,0,0,0];%for i=1:1:5% U(i)=U_abs(i)*cos(angle_U(i))+U_abs(i)*sin(angle_U(i))*1i;%end%原始节点功率%这里电源功率为正,负荷功率为负%下面给点PQ PV节点功率值S=[-0.22-0.14*1i,-0.18-0.09*1i,-0.27-0.13*1i,0.35,0];%节点功率的P QP = real(S);Q = imag(S);%下面是PV节点的无功初始值Q(4) = 0;delta_P=zeros(1,5);delta_Q=zeros(1,5);%delta_angleU=zeros(1,4);%delta_absU=zeros(1,4);delta_PQ=ones(8,1);Sum_GB1=0;Sum_GB2=0;cont=0;%最外层循环,cont代表迭代的次数,这里可以用约束条件来代替%for cont=1:1:4while max(delta_PQ)>1e-6,%下面计算delta_P/delta_Q/delta_Ucont=cont+1;for i=1:1:4for j=1:1:5Sum_GB1=Sum_GB1 + U(j)*( G(i,j)*cos(angle_U(i)-angle_U(j)) + B(i,j)*sin(angle_U(i)-angle_U(j)) );Sum_GB2=Sum_GB2 + U(j)*( G(i,j)*sin(angle_U(i)-angle_U(j)) - B(i,j)*cos(angle_U(i)-angle_U(j)) );enddelta_P(i)=P(i)-U(i)*Sum_GB1;if i~=4 %不为节点四则计算无功delta_Q(i)=Q(i)-U(i)*Sum_GB2;endSum_GB1=0;Sum_GB2=0;end%_______________________________________________________%%下面计算雅克比矩阵J=zeros(7,7);for ii=1:1:4for jj=1:1:4if ii ~= 4 %PQ节点if ii==jjJ(2*ii-1,2*ii-1)=U(ii)^2*B(ii,ii)+Q(ii);J(2*ii-1,2*ii)=-U(ii)^2*G(ii,ii)-P(ii);J(2*ii,2*ii-1)=U(ii)^2*G(ii,ii)-P(ii);J(2*ii,2*ii)=U(ii)^2*B(ii,ii)-Q(ii);elseJ(2*ii-1,2*jj-1)=-U(ii)*U(jj)*( G(ii,jj)*sin(angle_U(ii)-angle_U( jj)) - B(ii,jj)*cos(angle_U(ii)-angle_U(jj)) );J(2*ii-1,2*jj)=-U(ii)*U(jj)*( G(ii,jj)*cos(angle_U(ii)-angle_U(jj)) + B(ii,jj)*sin(angle_U(ii)-angle_U(jj)) );J(2*ii,2*jj-1)=U(ii)*U(jj)*( G(ii,jj)*cos(angle_U(ii)-angle_U(jj)) + B(ii,jj)*sin(angle_U(ii)-angle_U(jj)) );J(2*ii,2*jj)=-U(ii)*U(jj)*( G(ii,jj)*sin(angle_U(ii)-angle_U(jj)) - B(ii,jj)*cos(angle_U(ii)-angle_U(jj)) );endelse%PV节点if ii==jjJ(2*ii-1,2*ii-1)=U(ii)^2*B(ii,ii)+Q(ii);J(2*ii-1,2*ii)=-U(ii)^2*G(ii,ii)-P(ii);elseJ(2*ii-1,2*jj-1)=-U(ii)*U(jj)*( G(ii,jj)*sin(angle_U(ii)-angle_U( jj)) - B(ii,jj)*cos(angle_U(ii)-angle_U(jj)) );J(2*ii-1,2*jj)=-U(ii)*U(jj)*( G(ii,jj)*cos(angle_U(ii)-angle_U(jj)) + B(ii,jj)*sin(angle_U(ii)-angle_U(jj)) );endendendend%在求解修正方程之前建议把delta_ef和delta_ef全部放在一个矩阵delta_PQ=[delta_P(1);delta_Q(1);delta_P(2);delta_Q(2);delta_P(3); delta_Q(3);delta_P(4)];%下面求解修正方程;注意矩阵运算时候的左除和右除的区别J=J(1:7,1:7);delta_ef=-J\delta_PQ;%下面修正各个节点的电压for i=1:1:4if i~=4U(i)=U(i)+delta_ef(2*i)*U(i);endangle_U(i)=angle_U(i)+delta_ef(2*i-1);end%到这里第一轮迭代完成end%下面显示出满足条件后的迭代的次数disp(['Iteration times : ' num2str(cont)]);%下面计算平衡节点5的功率PQfor j=1:1:5Sum_GB1=Sum_GB1 + U(j)*( G(5,j)*cos(angle_U(5)-angle_U(j)) + B(5,j)*sin(angle_U(5)-angle_U(j)) );Sum_GB2=Sum_GB2 + U(j)*( G(5,j)*sin(angle_U(5)-angle_U(j)) - B(5,j)*cos(angle_U(5)-angle_U(j)) );endP(5)=U(5)*Sum_GB1;Q(5)=U(5)*Sum_GB2;%下面将相角用角度表示for i=1:1:5angle_U(i)=angle_U(i)*180/pi;End计算计算法P-Q算法计算潮流:这个算法是由牛顿算法的极坐标形式简化而来。

电力系统潮流计算机算法

电力系统潮流计算机算法

电力系统潮流计算机算法电力系统潮流计算是电力系统分析中最基本的一项计算,其目的是确定电力系统中各母线电压的幅值和相角、各元件中的功率以及整个系统的功率损耗等。

随着计算机技术的发展,电力系统潮流计算算法也在不断更新和完善。

以下是电力系统潮流计算的一些常用算法:1. 牛顿-拉夫逊法(Newton-Raphson Method):这是一种求解非线性方程组的方法,应用于电力系统潮流计算中。

该方法在多数情况下没有发散的危险,且收敛性较强,可以大大节约计算时间,因此得到了广泛的应用。

2. 快速迪科法(Fast Decoupled Method):这是一种高效的电力系统潮流计算方法,将电力系统分为几个子系统进行计算,从而提高了计算速度。

3. 最小二乘法(Least Squares Method):这是一种用于求解线性方程组的方法,通过最小化误差平方和来获得最优解。

在电力系统潮流计算中,可用于优化电压幅值和相角。

4. 遗传算法(Genetic Algorithm):这是一种全局优化搜索算法,应用于电力系统潮流计算中,可以解决一些复杂和非线性问题。

5. 粒子群优化算法(Particle Swarm Optimization):这是一种启发式优化算法,通过模拟鸟群觅食行为来寻找最优解。

在电力系统潮流计算中,可用于优化网络参数和运行条件。

6. 模拟退火算法(Simulated Annealing):这是一种全局优化搜索算法,应用于电力系统潮流计算中,可以在较大范围内寻找最优解。

7. 人工神经网络(Artificial Neural Network):这是一种模拟人脑神经网络的计算模型,可用于电力系统潮流计算。

通过训练神经网络,可以实现对电力系统中复杂非线性关系的建模和预测。

以上所述算法在电力系统潮流计算中起着重要作用,为电力系统运行、设计和优化提供了有力支持。

同时,随着计算机技术的不断发展,未来还将出现更多高效、精确的电力系统潮流计算算法。

第四章 潮流的计算机算法new-教材

第四章 潮流的计算机算法new-教材

y34 4 y440
7
将接在同一节点上的接 地导纳进行并联,得
I1
y12 y10 y13 y23 y20
I2
y10 = y120 + y130
⎫ ⎪ y20 = y210 + y230 ⎪ ⎬ y30 = y310 + y320 + y340 ⎪ ⎪ y40 = y440 + y430 ⎭
3 y30 y34 4 y40 I4
& ⎤ L Y1i L Y1 j L Y1n ⎤ ⎡U 1 ⎢ ⎥ ⎥ O M O M O M ⎥⎢ M ⎥ & ⎥ L Yii L Yij L Yin ⎥ ⎢U i ⎥⎢ ⎥ O M O M O M ⎥⎢ M ⎥ & ⎥ L Y ji L Y jj L Y jn ⎥ ⎢U ⎥⎢ j⎥ O M O M O M ⎥⎢ M ⎥ ⎢U ⎥ & L Yni L Ynj L Ynn ⎥ ⎥ ⎦⎢ ⎣ n⎥ ⎦
&⎤ L Z1i L Z1 j L Z1n ⎤ ⎡ I 1 ⎢ ⎥ O M O M O M ⎥ ⎥⎢ M ⎥ &⎥ L Z ii L Z ij L Z in ⎥ ⎢ I i ⎥⎢ ⎥ O M O M O M ⎥⎢ M ⎥ &⎥ L Z ji L Z jj L Z jn ⎥ ⎢ I ⎥⎢ j⎥ O M O M O M ⎥⎢ M ⎥ ⎢I &⎥ L Z ni L Z nj L Z nn ⎥ ⎥ ⎢ ⎦⎣ n⎥ ⎦
22
节点阻抗矩阵
Z =Y
−1
节点阻抗矩阵
Z ii
Z ij
对角元素,称为节点i的自阻抗 非对角元素称为节点i和节点j之间的互阻抗
⎡ Z11 ⎢ M ⎢ ⎢ Z i1 ⎢ ⎢ M ⎢ Z j1 ⎢ ⎢ M ⎢Z ⎣ n1

潮流计算的计算机方法

潮流计算的计算机方法

一、潮流计算的计算机方法对于复杂网络的潮流计算,一般必须借助电子计算机进行。

其计算步骤是:建立电力网络的数学模型,确定计算方法、制定框图和编制程序。

本章重点介绍前两部分,并着重阐述在电力系统潮流实际计算中常用的、基本的方法。

1,电力网络的数学模型电力网络的数学模型指的是将网络有关参数相变量及其相互关系归纳起来所组成的.可以反映网络性能的数学方程式组。

也就是对电力系统的运行状态、变量和网络参数之间相互关系的—种数学描述。

电力网络的数学模型有节点电压方程和回路电流方程等,前者在电力系统潮流计算中广泛采用。

节点电压方程又分为以节点导纳矩阵表示的节点电压方程和以节点阻抗矩阵表示的节点电压方程。

(1)节点导纳矩阵在电路理论课中。

已讲过了用节点导纳矩阵表示的节点电压方程:对于n个节点的网络其展开为:上式中,I是节点注入电流的列向量。

在电力系统计算中,节点注入电流可理解为节点电源电流与负荷电流之和,并规定电源向网络节点的注人电流为正。

那么,只有负荷节点的注入电流为负,而仅起联络作用的联络节点的注入电流为零。

U是节点电压的列向量。

网络中有接地支路时,通常以大地作参考点,节点电压就是各节点的对地电压。

并规定地节点的编号为0。

y是一个n×n阶节点导纳矩阵,其阶数n就等于网络中除参考节点外的节点数。

物理意义:节点i单位电压,其余节点接地,此时各节点向网络注入的电流就是节点i 的自导纳和其余节点的与节点i之间的互导纳。

特点:对称矩阵,稀疏矩阵,对角占优(2) 节点阻抗矩阵对导纳阵求逆,得:其中称为节点阻抗矩阵,是节点导纳矩阵的逆阵。

物理意义:节点i注入单位电流,其余节点不注入电流,此时各节点的电压就是节点i 的自阻抗和其余节点的与节点i之间的互阻抗。

特点:满阵,对称,对角占优2,功率方程、变量和节点分类(1)功率方程已知的是节点的注入功率,因此,需要重新列写方程: **==B B B B B U S I U Y其展开式为: i i i nj j ij U jQ P U Y ~1-=∑= 所以:∑=**=+nj jij i i i U Y U jQ P 1 展开写成极坐标方程的形式:)cos sin ()sin cos (11ij ij ij ij n j j i i ij ij ij ij n j j i i B G U U Q B G U U P δδδδ-=+=∑∑==所以节点的功率方程为:)cos sin ()sin cos (11ij ij ij ij n j j i di Gi i ij ij ij ij nj j i di Gi i B G U U Q Q Q B G U U P P P δδδδ---=∆+--=∆∑∑==(2) 变量分类负荷消耗的有功、无功功率取决于用户,因而是无法控制的,故称为不可控变量或扰动变量。

潮流算法——精选推荐

潮流算法——精选推荐

配电网的前推回推法潮流计算的计算机算法一、用途潮流计算是电力系统非常重要的分析计算,用以研究系统规划和运行中提出的各种问题。

对规划中的电力系统,通过潮流计算可以检验所提出的电力系统规划方案能否满足各种运行方式的要求:对运行中的电力系统,通过潮流计算可以预知各种负荷变化和网络结构的改变会不会危机系统的安全,系统中所有母线的电压是否在允许的范围以内,系统中各种元件(线路、变压器等)是否会出现过负荷,以及可能出现过负荷时应事先采取哪些预防措施等。

潮流计算是电力系统分析最基本的计算。

除他自身的重要作用之外,潮流计算还是网损计算、静态安全分析、暂态稳定计算、小干扰静态稳定计算、短路计算、静态和动态等值计算的基础。

二、技术特点在辐射状配电网的潮流计算中,采用基于支路电流或支路功率的前推回推法进行潮流计算,其中在寻找节点的计算顺序时采用关于节点邻接表的广度优先搜索方法,或者其他更加简洁的方法。

1、原理配电网潮流有很多算法,主要包括牛顿法、快速解耦法、Z法、bus 回路阻抗法和前推回推法,其中前推回推法具有更大的优势,更适于求解配电网的潮流计算。

它具有编程简单、数值稳定性好、计算效率高等优点。

辐射型配电网的接线方式可以分为辐射式、链式、干线式三种网络。

辐射型配电网潮流计算有如下特点:(1)辐射型配电网支路数一定小于节点数。

因此,网络节点导纳矩阵稀疏度很高。

(2)低压配电网由于线路电阻较大,一般不满足R<<X,因此在配电网中采用P-Q解耦法进行网络潮流计算难以收敛;由于配电网络直接面向用户,所以网络节点众多,如采用传统的潮流算法(牛顿拉夫逊法、快速解耦法)会导致导纳矩阵非常庞大,处理的工作量较大,占用的资源也较多。

(3)对于末端负荷节点前的支路电流就只是由于末端运算负荷功率产生的,所以可以直接用于末端支路的电流,依次往前推。

因此,可以采用前推回推法进行网络潮流计算。

前推回推法有基于支路电流和基于支路功率两种形式。

潮流计算的主要方法

潮流计算的主要方法

潮流计算的主要方法
最近几年,随着计算机仿真技术和复杂系统全面发展,潮流计算也受到越来越多的重视。

潮流计算是研究不同电力网络的物理特性和操作规律的一项重要工作。

针对潮流计算的主要方法,总结如下:
一、基于动力学的方法
1. 碰撞模型:根据动力学方法,计算电力系统的运行稳定性。

基于动力学的碰撞模型能够快速而精确地预测两个潮流的变化情况。

2. 时变快速收敛:在碰撞模型的基础上,为快速求解电力系统潮流,提出了时变快速收敛算法。

可以更快地获得潮流解。

二、基于牛顿迭代法的方法
1.牛顿迭代潮流计算方法:根据牛顿迭代法,采用迭代算法,求解电力系统潮流运行状态。

2. 功率流计算方法:计算机基于牛顿迭代法,快速求解节点电能的功率流公式。

可以有效的缩短潮流计算的时间,提高计算效率。

三、基于模糊聚类算法的方法
1. 基于模糊聚类的潮流计算方法:采用模糊聚类算法,对潮流计算进行多维度分析,可以得出最优的潮流结果。

2. 基于模糊划分的多目标模糊控制:根据模糊聚类理论,对潮流算法进行最佳控制,以满足电力网不同优化目标。

四、基于期望最大化的方法
1、基于粒子群优化的潮流计算方法:采用粒子群优化算法,将电力网潮流计算定义为多目标最优化问题,以期望最大化来求解潮流值,提高计算效率。

2、基于遗传算法的潮流计算方法:遗传算法利用进化过程来搜索全局最优解,使用遗传变异原则来改变候选解,以期望最大化来求解潮流计算问题。

潮流计算方法

潮流计算方法
潮流计算方法 —计算机算法
————
需求分析:
使用MATLAB软件计算美国电气服务公司 IEEE30节点系统(图见课本P136页图6.16) 各节点的电压幅值和相角的潮流分布,并比较 各种算法的优劣。
总体思路:
1.直接使用“牛顿——拉夫逊”法,通过图像 显示每次迭代后的误差并记录程序运行时间。 2.直接使用“PQ分解法”,通过图像显示每次 迭代后的误差并记录程序运行时间。 3.首先使用直流潮流计算,计算各节点电压的 相角,并将计算结果作为 “牛顿——拉夫逊” 法的初值,通过图像显示每次迭代后的误差并 记录程序运行时间。
迭代步骤:
1.根据各节点电压幅值及相角初值,计算电压 相量。 2.计算各PQ节点的复功率。 3.计算各节点流出的电流初值。 4.根据S=VI*计算出各节点复功率,并与已知复 程序 功率相减得到误差。 5.当误差小于设定值时,迭代结束。
雅克比矩阵的形成
当 j≠i 时
Pi H ij Vi V j (Gij sin ij Bij cos ij ) j Pi N ij V j Vi V j (Gij cos ij Bij sin ij ) Vj
形成导纳矩阵



2.对角线元素: for n=1:nbus for k=1:nbr if n1(k)==n Y(n,n) = Y(n,n)+Y1(k)/(a(k)^2) + Bc(k); elseif n2(k)==n Y(n,n) = Y(n,n)+Y1(k) +Bc(k); else, end end end
Qi Lii Vi Vi V j (Gij sin ij Bij cos ij ) 2Vi 2 Bii Vi 2 Bii Qi ji i j i

课程设计潮流计算的计算机算法

课程设计潮流计算的计算机算法

潮流计算是电力系统非常重要的分析计算,用以研究系统规划和运行中提出的各种问题。

对规划中的电力系统,通过潮流计算可以检验所提出的电力系统规划方案能否满足各种运行方式的要求;对运行中的电力系统,通过潮流计算可以预知各种负荷变化和网络结构的改变会不会危及系统的安全,系统中所有母线的电压是否在允许的范围以内,系统中各种元件(线路、变压器等)是否会出现过负荷,以及可能出现过负荷时应事先采取哪些预防措施等。

潮流计算是电力系统分析最基本的计算。

除它自身的重要作用之外,在《电力系统分析综合程序》(PSASP)中,潮流计算还是网损计算、静态安全分析、暂态稳定计算、小干扰静态稳定计算、短路计算、静态和动态等值计算的基础。

传统的潮流计算程序缺乏图形用户界面,结果显示不直接难与其他分析功能集成。

网络原始数据输入工作大量且易于出错。

本文采用MATLAB语言运行WINDOWS操作系统的潮流计算软件。

而采用MATLAB界面直观,运行稳定,计算准确。

关键词:电力系统潮流计算;牛顿—拉夫逊法潮流计算;MATLAB一、概述1.1设计目的与要求.................................................1.1.1 设计目的......................................................1.1.2 设计要求.....................................................1.2 设计题目......................................................1.3 设计内容.....................................................二、电力系统潮流计算概述.....................2.1 电力系统简介..........................................2.2 潮流计算简介..........................................2.3 潮流计算的意义及其发展..................... ..............三、潮流计算设计题目..........................3.1 潮流计算题目........................................3.2 对课题的分析及求解思路........................四、潮流计算算法及手工计算...........................4.1 变压器的∏型等值电路..............................4.2 节点电压方程..............................4.3节点导纳矩阵.............................4.4 导纳矩阵在潮流计算中的应用.......................4.5 潮流计算的手工计算..........................五、Matlab概述....................................5.1 Matlab简介............................................5.2 Matlab的应用............................................5.3 矩阵的运算...........................................5.3.1 与常数的运算.............................................5.3.2 基本数学运算..................................5.3.3 逻辑关系运算....................................5.4 Matlab中的一些命令.................................六、潮流计算流程图及源程序................................6.1 潮流计算流程图..............................6.2 潮流计算源程序图...............................6.3 运行计算结果.......................................总结参考文献1.1 设计目的与要求1.1.1设计目的1.掌握电力系统潮流计算的基本原理;2.掌握并能熟练运用一门计算机语言(MATLAB语言或C语言或C++语言);3.采用计算机语言对潮流计算进行计算机编程。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第四章潮流计算的计算机算法第一节概述潮流计算是电力系统最基本、最常用的计算。

根据系统给定的运行条件、网络接线及元件参数,通过潮流计算可以确定各母线的电压(幅值及相角),各元件中流过的功率、整个系统的功率损耗等。

潮流计算是实现电力系统安全经济发供电的必要手段和重要工作环节。

因此潮流计算在电力系统的规划设计、生产运行、调度管理及科学研究中都有着广泛的应用。

电力系统潮流计算分为离线潮流计算和在线潮流计算。

前者主要用于系统规划设计和安排系统的运行方式,后者则用于正在运行系统的经常监视及实时控制。

本章主要讨论离线潮流计算问题,它的基本算法同样适用于在线潮流计算。

潮流计算在数学上是多元非线性方程组的求解问题,求解的方法有很多种。

自从五十年代计算机应用于电力系统以来,当时求解潮流的方法是以节点导纳矩阵为基础的逐次代入法(导纳法),后来为解决导纳法的收敛性较差的问题,出现了以阻抗矩阵为基础的逐次代入法(阻抗法)。

到六十年代,针对阻抗法占用计算机内存大的问题又出现了分块阻抗法及牛顿-拉夫逊(Newton-Raphson)法。

Newton —Raphson法是数学上解非线形方程式的有效方法,有较好的收敛性。

将N-R法用于潮流计算是以导纳矩阵为基础的,由于利用了导纳矩阵的对称性、稀疏性及节点编号顺序优化等技巧,使N-R法在收敛性、占用内存、计算速度方面的优点都超过了阻抗法,成为六十年代末期以后普遍采用的方法。

同时国内外广泛研究了诸如非线形规划法、直流法、交流法等各种不同的潮流计算方法。

七十年代以来,又涌现出了更新的潮流计算方法。

其中有1974年由B、Stott、O、Alsac 提出的快速分解法以及1978年由岩本伸一等提出的保留非线性的高129速潮流计算法。

其中快速分解法(Fast decoupled load flow)从1975年开始已在国内使用,并习惯称之为PQ分解法。

由于PQ分解法在计算速度上大大超过N-R法,不但能应用于离线潮流计算,而且也能应用于在线潮流计算。

本章主要介绍最常用的N—R法和PQ分解两种潮流计算的计算机算法的原理框图及程序。

第二节潮流计算的基本方程一、节点的分类用一般的电路理论求解网络方程,目的是给出电压源(或电流源)研究网络内的电流(或电压)分布:作为基础的方程式,一般用线性代数方程式表示。

然而在电力系统中,给出发电机或负荷连接母线上电压或电流(都是向量)的情况是很少的,一般是给出发电机母线上发电机的有功功率(P)和母线电压的幅值(V),给出负荷母线上负荷消耗的有功功率(P)和无功功率(Q)。

我们的目的是由这此已知量去求电力系统内的各种电气量。

所以,根据电力系统中各节点性质的不同,很自然地把节点分成三种类型。

1、PQ节点这一类节点,我们事先给定的是节点功率(P、Q),待求的未知量是节点电压向量(V、θ)。

所以叫“PQ节点”。

通常变电所母线都是PQ节点。

当某些发电机的出力P、Q给定时,也作为PQ节点。

PQ节点上的发电机称之为PQ机(或PQ给定型发电机。

在潮流计算中,系统大部分节点属于PQ节点)。

2、PV节点这类节点给出的参数是该节点的有功功率P及电压幅值V,待求量为该节点的无功功率Q及电压向量的相角θ。

这种节点在运行中往往要有一定可调节的无功电源,用以维持给定的电压值。

通常选择有一定无功功率贮备的发电机母线或者变电所有无功补偿设备的母130线作PV节点处理。

PV节点上的发电机称之为PV机(或PV给定型发电机)。

3、平衡节点在潮流计算中,这类节点一般只设一个。

对该节点,给定其电压值,并在计算中取该节点电压向量的方向作为参考轴,相当于给定该点电压向量的角度为零。

也就是说,对平衡节点给定的运行参数是V 和θ,因此又称为Vθ节点,而待求量是该节点的P、Q,整个系统的功率平衡由这一节点承担。

关于平衡节点的选择,一般选择系统中担任调频调压的某一发电厂(或发电机)。

有时也可能按其它原则选择,例如,为提高计算的收敛性,可以选择出线数多或者靠近电网中心的发电厂母线作平衡节点。

以上三种节点四个运行参数P、Q、V、θ中已知量都是两个,待求量也是两个,只是类型不同而已。

二、基本方程式在潮流问题中,任何复杂的电力系统都可以归结为以下元件(参数)组成:(1)发电机(住入电流或功率)(2)负荷(负的注入电流或功率)(3)输电线支路(电阻、电抗)(4)变压器支路(电阻、电抗、变比)(5)母线上的对地支路(阻抗和导纳)(6)线路上的对地支路(一般为线路充电电容导纳)集中了以上各种类型的元件的简单网络如图4-1(a)所示。

131132必须指出,如果仅研究稳态情况下的潮流而不涉及暂态过程的计算则不需要发电机和负荷的阻抗参数,只需要给出发电机和负荷的注入功率或电流,并且规定发电机和负荷的注入功率或电流取正,而负荷取负。

将图4—1(a )中的发电机和负荷节点用无阻抗线从网络中抽出(为不失一般性,将既非发电机又非负荷的浮动节点当作零注入功率的母线抽出网络之外),剩下的部分即由接地和不接地支路组成一个无源线性网络(图4-1(b ))对于这个无源线性网络可用相应的导纳矩阵(或阻抗矩阵)来描述,采用导纳矩阵焊时,节点注入电流和节点电压构成以下线性方程组YV I =P g1+jQ g11I •P g2+jQ g22I •0+j0 3I •4I •-P R4-jQ R4 5I •-P R5-jQ R5 6I •-P R6-jQ R6无源线性网络(可用导纳 矩阵或阻抗 矩阵表示)图4-1(b )潮流计算等值网络③ ④⑤① ⑥ ②133其中 ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=321I I I I &&& ⎥⎥⎥⎦⎤⎢⎢⎢⎣⎡=321V V V V &&&可展开为如下形式:⎪⎭⎫ ⎝⎛===∑n , , 2 , 1i Y 1ΛΛΛΛΛΛ&&j nj ij i V I (4-1) 若 ZI V = 可展开如下形式:()n , , 2 , 1i Z 1ΛΛΛΛΛΛ&&==∑=nj j ij i I V (4-2) 式中n 为网络节点数由于实际电网中测量的节点注入量一般不是电流而功率,因此必须将式(4-1)中的注入电流I &用节点注入功率来表示。

根据电工理论,节点功率与节点电流之间的关系为:*=+=ii i i i I V &jQ P S (4-3) 式中 LDi Gi i P P P -= LDi Gi i Q Q Q -=因此用导纳矩阵(4-1)式时,PQ 节点可以表示为***==ii i i i i V V S I jQ -P & (4-4) 把帝个关系式代入式(4-1)中,得()n , , ,2 1i jQ P 1ΛΛΛΛΛΛ&==-∑=*nj jij iii V Y V (4-5) 比较式(4-1)和(4-5),由于功率代替电流的结果,使式(4-1)电流电压的线性方程组变量为功率和电压的非线性方程组,这134个非线性方程组就是潮流计算的基本方程。

式(4-5)是一组共有n 个非线性方程组成的复数方程式,如果把实部和虚部分开便得到2n 个实数方程,因此由该方程组可解出2n 个运行参数。

但是我们知道每一个节点都有4 个运行变量,即:节点的功率P i 、Q i ,以及节点电压的幅值和相位(或对应于某一选定参考直角坐标的实部和虚部)。

记作(P i 、Q i 、V i 、θi )或(P i 、Q i 、e i 、fi ),当节点数为n 时,则共有4n 个运行参数。

由2n 个方程式要求出4n 个运行参数是不可能的,只能求出2n 个运行参数,而其余2n 个应作为原始数据事先给定。

这就得根据节点的分类,对每个节点的4个运行参数中的两个作为原始数据,而另外两个则作为待求量。

第三节 牛顿-拉夫逊法潮流计算一、 牛顿-拉夫逊法概要首先对一般的牛顿-拉夫逊法作一简单说明。

已知一个变量X 的函数()0X f = (4-6) 解此方程式时,由适当的近似值X()出发,根据()()()()()()() , ,2 1n XX XX'1ΛΛΛΛΛΛ=-=+n n n n f f (4-7)反复进行计算,当X (n )满足适当的收敛判定条件时就是(4-6)式的根。

这样的方法就是所谓的牛顿-拉夫逊法。

式(4-7)就是取第n 次近似解X (n )在曲线()X f y =上的点()()()[]nnX f , X 处的切线与X 轴的交点作下一次X(n+1)值的方法。

参考图4-2(a )。

在这一方法中为了能收敛于真解,初值X (0)的选取及函数f (X )必须满足适当的条件,如图4-2(b )所示的那种情况就不能收敛或收敛到别的根上去。

这一方法还可以做下面的解释,设第n 次迭代得到的解与真值之135差,即)(n X的误差为ε时,则0)()(=+εn X f (4—8)把)()(ε=n X f 在)(n X 附近对ε用泰勒级数展开 0)(!2)()()()(''2)(')()(=++++=+ΛΛn n n n X f Xf Xf Xf εεε (4—9)上式略去2ε以下的项0)()()(')(≈+n n X f X f ε (4—10))(n X 的误差可近似由上式计算出来图4-2)()()(')(n n X f X f -≈ε (4—11)比较式(4—7)和(4—11),可以看出牛顿—拉夫逊法的修正量和)(n x 的误差的一次项相等。

用同样的方法考虑,给出对n 个变量n 21X , ,X ,X ΛΛΛ的n 个方程式()()()⎪⎪⎩⎪⎪⎨⎧===0X , X , X f 0X , X , X f 0X , X , X f n 21n n212n 211ΛΛΛΛΛΛΛΛΛΛΛΛΛΛΛΛΛ (4-12)对其近似解'n'2'1X , , X , ΛΛΛΛΛΛX 的修正量n 21X , ,X , X ∆∆∆ΛΛ,可以解下面的方程式来确定xX (t+1)X (t))1(+∆n x136()()()⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎣⎡∆∆∆⎥⎥⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎢⎢⎣⎡∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂∂-=⎥⎥⎥⎥⎥⎥⎦⎤⎢⎢⎢⎢⎢⎢⎣⎡n 21n n 2n 1n n 22212n 12111'n '2'1'n'2'12'n '2'11X X X x f x f x f x f x f x f x f x f x f X , X , X fn X , X , X f X , X , X f M M ΛΛM ΛΛΛΛΛΛM M ΛΛΛΛ (4-13) 式(4-13)的右边的矩阵的jix f ∂∂等都是对于'n '2'1X , , X , ΛΛX 的值。

相关文档
最新文档