91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 12KB
    文件類型: .m
    金幣: 1
    下載: 0 次
    發布日期: 2021-05-15
  • 語言: Matlab
  • 標簽: 代碼??

資源簡介

此代碼為在matlab中運用牛頓-拉夫迅方法進行潮流計算。程序中每步的運行都有注釋,對潮流計算方面有需求的用戶可以下載。

資源截圖

代碼片段和文件信息

function?[bus_resS_res]?=?PowerFlow_NR_2??????????%?牛頓-拉夫遜法解潮流方程的主程序
?????????????????????????
bus?=?[???1????1??0???????0???????0?????3;
??????????2????1??0???????-0.4????-0.3???1;
??????????3????1??0???????-0.5????-0.3???1;
??????????4????1??0??????-0.147??-0.27??1;
??????????5????1??0??????-0.344??-0.17??1;
??????????6????1??0??????-0.8????-0.36??1;??????
??????????7????1??0??????-0.3????-0.12??1;
??????????8????1??0??????-0.6????-0.3???1;
??????????9????1??0??????-0.18???-0.4???1;
?????????10????1??0???????1????0?????2??];
line=[??1???????2 0.245 0.399 0 0 25;
????????2 3 0.233 0.379 0 0 1;
????????3 4 0.196 0.319 0 0 1;
????????4 5 0.196 0.319 0 0 1;
????????5 6 0.221 0.359???0 0 1;
????????5 9 0.453 0.738 0 0 1;
????????4 6 0.392 0.638 0 0 1;
????????6 3 0.576 0.938 0 0 1;
????????6 7 0.343 0.559 0 0 1;
????????7 8 0.294 0.479 0 0 1;
????????9 8 0.282 0.459 0 0 1;
????????7 1 0.882 1.436 0 0 0.04;
????????9 1 0.380 0.619 0 0 0.04];

[nbmb]=size(bus);
[nlml]=size(line);????????????????????????????????%?計算bus和line矩陣的行數和列數
[buslinenPQnPVnodenum]?=?Num_(busline);???????%?對節點重新排序的子程序
Y?=?y_(busline);??????????????????????????????????%?計算節點導納矩陣的子程序
myf?=?fopen(‘Result.m‘‘w‘);
fprintf(myf‘--?by?tongchao?----\n\n‘);
fclose(myf);???????????????????????????????????????%?在當前目錄下生成“Result.m”文件,寫入節點導納矩陣
format?long
EPS?=?1.0e-5;?????????????????????????????????????%?設定誤差精度
for?t?=?1:100??????????????????????????????????????%?開始迭代計算,設定最大迭代次數為100,以便不收斂情況下及時跳出
?
????[dPdQ]?=?dPQ_(YbusnPQnPV);?????????????????%?計算功率偏差dP和dQ的子程序
????J?=?Jac_(busYnPQ);???????????????????????????%?計算雅克比矩陣的子程序
????UD?=?zeros(nPQnPQ);
?
????for?i?=?1:nPQ
????????UD(ii)?=?bus(i2);????????????????????????%?生成電壓對角矩陣
????end
????dAngU?=?J?\?[dP;dQ];
????dAng?=?dAngU(1:nb-11);????????????????????????%?計算相角修正量
????dU?=?UD*(dAngU(nb:nb+nPQ-11));????????????????%?計算電壓修正量
?
????bus(1:nPQ2)?=?bus(1:nPQ2)?-?dU;??????????????%?修正電壓
????bus(1:nb-13)?=?bus(1:nb-13)?-?dAng;??????????%?修正相角
??
????if?(max(abs(dU))????????break
????end????????????????????????????????????????????%?判斷是否滿足精度誤差,如滿足則跳出,否則返回繼續迭代
?
end
bus?=?PQ_(busYnPQnPV);??????????????????????????%?計算每個節點的有功和無功注入的子程序
?
[busline]?=?ReNum_(buslinenodenum);?????????????%?對節點恢復編號的子程序
YtYm?=?YtYm_(line);????????????????????????????????%?計算線路的等效Yt和Ym的子程序,以計算線路潮流
bus_res?=?bus_res_(bus);???????????????????????????%?計算節點數據結果的子程序
S_res?=?S_res_(buslineYtYm);?????????????????????%?計算線路潮流的子程序
myf?=?fopen(‘Result.m‘‘a‘);
fprintf(myf‘----牛頓-拉夫遜法潮流計算結果------\n\n?節點計算結果:\n節點?????節點電壓?????節點相角(角度)?????節點注入功率\n‘);
for?i?=?1:nb
????fprintf(myf‘%f??‘bus_res(i1));
????fprintf(myf‘%f?‘bus_res(i2));
????fprintf(myf‘%f?‘bus_res(i3));
????fprintf(myf‘%f?+?j?%f\n‘real(bus_res(i4))imag(bus_res(i4)));
end
????fprintf(myf‘\n線路計算結果:\n節點I????節點J??????????線路功率S(IJ)???????????????線路功率S(JI)???????????????線路損耗dS(IJ)\n‘)

評論

共有 條評論