Matlab牛拉法潮流計算程序_第1頁
Matlab牛拉法潮流計算程序_第2頁
Matlab牛拉法潮流計算程序_第3頁
Matlab牛拉法潮流計算程序_第4頁
Matlab牛拉法潮流計算程序_第5頁
已閱讀5頁,還剩2頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、精選優(yōu)質文檔-傾情為你奉上%本程序的功能是用牛頓拉夫遜法進行潮流計算% B1矩陣:1、支路首端號;2、末端號;3、支路阻抗;4、支路對地電納% 5、支路的變比;6、支路首端處于K側為1,1側為0% B2矩陣:1、該節(jié)點發(fā)電機功率;2、該節(jié)點負荷功率;3、節(jié)點電壓初始值% 4、PV節(jié)點電壓V的給定值;5、節(jié)點所接的無功補償設備的容量% 6、節(jié)點分類標號:1為平衡節(jié)點(應為1號節(jié)點);2為PQ節(jié)點;% 3為PV節(jié)點;clear;n=input('請輸入節(jié)點數:n=');nl=input('請輸入支路數:nl=');isb=input('請輸入平衡母線節(jié)點號:

2、isb=');pr=input('請輸入誤差精度:pr=');B1=input('請輸入由各支路參數形成的矩陣:B1=');B2=input('請輸入各節(jié)點參數形成的矩陣:B2=');Y=zeros(n);e=zeros(1,n);f=zeros(1,n);V=zeros(1,n);sida=zeros(1,n);S1=zeros(nl);% % %-for i=1:nl%支路數 if B1(i,6)=0%左節(jié)點處于1側 p=B1(i,1);q=B1(i,2); else %左節(jié)點處于K側 p=B1(i,2);q=B1(i,1);end

3、Y(p,q)=Y(p,q)-1./(B1(i,3)*B1(i,5);%非對角元 Y(q,p)=Y(p,q); %非對角元 Y(q,q)=Y(q,q)+1./(B1(i,3)*B1(i,5)2)+B1(i,4)./2;%對角元K側 Y(p,p)=Y(p,p)+1./B1(i,3)+B1(i,4)./2;%對角元1側end%求導納矩陣disp('導納矩陣 Y=');disp(Y)%-G=real(Y);B=imag(Y);%分解出導納陣的實部和虛部for i=1:n%給定各節(jié)點初始電壓的實部和虛部e(i)=real(B2(i,3);f(i)=imag(B2(i,3); V(i)=B

4、2(i,4);%PV節(jié)點電壓給定模值endfor i=1:n%給定各節(jié)點注入功率 S(i)=B2(i,1)-B2(i,2); %i節(jié)點注入功率SG-SL B(i,i)=B(i,i)+B2(i,5);%i節(jié)點無功補償量end%=P=real(S);Q=imag(S); %分解出各節(jié)點注入的有功和無功功率ICT1=0;IT2=1;N0=2*n;N=N0+1;a=0; %迭代次數ICT1、a;不滿足收斂要求的節(jié)點數IT2while IT2=0 % N0=2*n 雅可比矩陣的階數;N=N0+1擴展列 IT2=0;a=a+1;for i=1:n if i=isb%非平衡節(jié)點C(i)=0;D(i)=0;f

5、or j1=1:n C(i)=C(i)+G(i,j1)*e(j1)-B(i,j1)*f(j1);%(Gij*ej-Bij*fj) D(i)=D(i)+G(i,j1)*f(j1)+B(i,j1)*e(j1);%(Gij*fj+Bij*ej)end P1=C(i)*e(i)+f(i)*D(i);%節(jié)點功率P計算ei(Gij*ej-Bij*fj)+fi(Gij*fj+Bij*ej) Q1=C(i)*f(i)-e(i)*D(i);%節(jié)點功率Q計算fi(Gij*ej-Bij*fj)-ei(Gij*fj+Bij*ej)%求i節(jié)點有功和無功功率P',Q'的計算值 V2=e(i)2+f(i)2

6、;%電壓模平方 %= 以下針對非PV節(jié)點來求取功率差及Jacobi矩陣元素 = if B2(i,6)=3%非PV節(jié)點 DP=P(i)-P1;%節(jié)點有功功率差 DQ=Q(i)-Q1; %節(jié)點無功功率差%= 以上為除平衡節(jié)點外其它節(jié)點的功率計算 =%= 求取Jacobi矩陣 =for j1=1:n if j1=isb&j1=i%非平衡節(jié)點&非對角元 X1=-G(i,j1)*e(i)-B(i,j1)*f(i);% dP/de=-dQ/df X2=B(i,j1)*e(i)-G(i,j1)*f(i);% dP/df=dQ/de X3=X2; % X2=dp/df X3=dQ/de X4=

7、-X1; % X1=dP/de X4=dQ/df p=2*i-1;q=2*j1-1; J(p,q)=X3;J(p,N)=DQ;m=p+1; % X3=dQ/de J(p,N)=DQ節(jié)點無功功率差 J(m,q)=X1;J(m,N)=DP;q=q+1; % X1=dP/de J(m,N)=DP節(jié)點有功功率差J(p,q)=X4;J(m,q)=X2; % X4=dQ/df X2=dp/dfelseif j1=i&j1=isb%非平衡節(jié)點&對角元 X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);% dP/de X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(

8、i);% dP/df X3=D(i)+B(i,i)*e(i)-G(i,i)*f(i); % dQ/de X4=-C(i)+G(i,i)*e(i)+B(i,i)*f(i);% dQ/df p=2*i-1;q=2*j1-1;J(p,q)=X3;J(p,N)=DQ;%擴展列Q m=p+1; J(m,q)=X1;q=q+1;J(p,q)=X4;J(m,N)=DP;%擴展列PJ(m,q)=X2;endendelse %= 下面是針對PV節(jié)點來求取Jacobi矩陣的元素 = DP=P(i)-P1;% PV節(jié)點有功誤差 DV=V(i)2-V2;% PV節(jié)點電壓誤差for j1=1:n if j1=isb&a

9、mp;j1=i%非平衡節(jié)點&非對角元 X1=-G(i,j1)*e(i)-B(i,j1)*f(i); % dP/de X2=B(i,j1)*e(i)-G(i,j1)*f(i); % dP/df X5=0;X6=0; p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV; % PV節(jié)點電壓誤差 m=p+1; J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6; % PV節(jié)點有功誤差J(m,q)=X2;elseif j1=i&j1=isb%非平衡節(jié)點&對角元 X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);% dP/d

10、e X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);% dP/df X5=-2*e(i); X6=-2*f(i); p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV; % PV節(jié)點電壓誤差 m=p+1; J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6; % PV節(jié)點有功誤差J(m,q)=X2;endendendendend%= 以上為求雅可比矩陣的各個元素及擴展列的功率差或電壓差 = for k=3:N0 % N0=2*n (從第三行開始,第一、二行是平衡節(jié)點) k1=k+1;N1=N; % N=N0+1 即 N=2*n+1擴展

11、列P、Q 或U for k2=k1:N1% 從k+1列的Jacobi元素到擴展列的P、Q 或U J(k,k2)=J(k,k2)./J(k,k);% 用K行K列對角元素去除K行K列后的非對角元素進行規(guī)格化end J(k,k)=1; % 對角元規(guī)格化K行K列對角元素賦1 %= 回代運算 = if k=3 % 不是第三行 k > 3 k4=k-1; for k3=3:k4% 用k3行從第三行開始到當前行的前一行k4行消去 for k2=k1:N1% k3行后各行上三角元素 J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去運算(當前行k列元素消為0) end %用當前行

12、K2列元素減去當前行k列元素乘以第k行K2列元素 J(k3,k)=0; %當前行第k列元素已消為0end if k=N0 %若已到最后一行break;end %= 前代運算 = for k3=k1:N0 % 從k+1行到2*n最后一行 for k2=k1:N1 % 從k+1列到擴展列消去k+1行后各行下三角元素 J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去運算 end %用當前行K2列元素減去當前行k列元素乘以第k行K2列元素 J(k3,k)=0; %當前行第k列元素已消為0end else %是第三行k=3 %= 第三行k=3的前代運算 = for k3=k1:

13、N0 %從第四行到2n行(最后一行) for k2=k1:N1 %從第四列到2n+1列(即擴展列) J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去運算(當前行3列元素消為0) end %用當前行K2列元素減去當前行3列元素乘以第三行K2列元素 J(k3,k)=0; %當前行第3列元素已消為0endendend%=上面是用線性變換方式高斯消去法將Jacobi矩陣化成單位矩陣=for k=3:2:N0-1 L=(k+1)./2; e(L)=e(L)-J(k,N); %修改節(jié)點電壓實部 k1=k+1; f(L)=f(L)-J(k1,N); %修改節(jié)點電壓虛部end %-修

14、改節(jié)點電壓-for k=3:N0 DET=abs(J(k,N); if DET>=pr %電壓偏差量是否滿足要求 IT2=IT2+1; %不滿足要求的節(jié)點數加1endend ICT2(a)=IT2; %不滿足要求的節(jié)點數 ICT1=ICT1+1; %迭代次數end%用高斯消去法解"w=-J*V"disp('迭代次數:');disp(ICT1);disp('沒有達到精度要求的個數:');disp(ICT2);for k=1:n V(k)=sqrt(e(k)2+f(k)2); %計算各節(jié)點電壓的模值sida(k)=atan(f(k)./e(

15、k)*180./pi; %計算各節(jié)點電壓的角度 E(k)=e(k)+f(k)*j; %將各節(jié)點電壓用復數表示end%= 計算各輸出量 =disp('各節(jié)點的實際電壓標幺值E為(節(jié)點號從小到大排列):');disp(E); %顯示各節(jié)點的實際電壓標幺值E用復數表示disp('-');disp('各節(jié)點的電壓大小V為(節(jié)點號從小到大排列):');disp(V); %顯示各節(jié)點的電壓大小V的模值disp('-');disp('各節(jié)點的電壓相角sida為(節(jié)點號從小到大排列):');disp(sida); %顯示各節(jié)點的電

16、壓相角for p=1:nC(p)=0;for q=1:n C(p)=C(p)+conj(Y(p,q)*conj(E(q); %計算各節(jié)點的注入電流的共軛值end S(p)=E(p)*C(p); %計算各節(jié)點的功率 S = 電壓 X 注入電流的共軛值enddisp('各節(jié)點的功率S為(節(jié)點號從小到大排列):');disp(S); %顯示各節(jié)點的注入功率disp('-');disp('各條支路的首端功率Si為(順序同您輸入B1時一致):');for i=1:nl p=B1(i,1);q=B1(i,2);if B1(i,6)=0 Si(p,q)=E(p

17、)*(conj(E(p)*conj(B1(i,4)./2)+(conj(E(p)*B1(i,5). -conj(E(q)*conj(1./(B1(i,3)*B1(i,5);Siz(i)=Si(p,q);else Si(p,q)=E(p)*(conj(E(p)*conj(B1(i,4)./2)+(conj(E(p)./B1(i,5). -conj(E(q)*conj(1./(B1(i,3)*B1(i,5);Siz(i)=Si(p,q);enddisp(Si(p,q);SSi(p,q)=Si(p,q); ZF='S(',num2str(p),',',num2str(

18、q),')=',num2str(SSi(p,q);disp(ZF);disp('-');enddisp('各條支路的末端功率Sj為(順序同您輸入B1時一致):');for i=1:nl p=B1(i,1);q=B1(i,2);if B1(i,6)=0 Sj(q,p)=E(q)*(conj(E(q)*conj(B1(i,4)./2)+(conj(E(q)./B1(i,5). -conj(E(p)*conj(1./(B1(i,3)*B1(i,5);Sjy(i)=Sj(q,p);elseSj(q,p)=E(q)*(conj(E(q)*conj(B1(i

19、,4)./2)+(conj(E(q)*B1(i,5). -conj(E(p)*conj(1./(B1(i,3)*B1(i,5);Sjy(i)=Sj(q,p);enddisp(Sj(q,p);SSj(q,p)=Sj(q,p); ZF='S(',num2str(q),',',num2str(p),')=',num2str(SSj(q,p);disp(ZF);disp('-');enddisp('各條支路的功率損耗DS為(順序同您輸入B1時一致):');for i=1:nl p=B1(i,1);q=B1(i,2);DS(i)=Si(p,q)+Sj(q,p);disp(DS(i);DDS(i)=DS(i); ZF='DS(

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論