📄 printpf.m
字号:
fprintf(fd, '\n================================================================================'); fprintf(fd, '\n| 所 进 行 计 算 系 统 概 况 |'); fprintf(fd, '\n================================================================================'); %%fprintf(fd, '\n\n基本情况 How much? P (MW) Q (MVAr)'); %% fprintf(fd, '\n--------------------- ------------------- ------------- -----------------'); fprintf(fd, '\n节点 %6d 个 其中含发电机节点 %5d 个 ', nb,length(allg)); %%fprintf(fd, '\ On-line Capacity %7.1f %7.1f to %.1f', , sum(gen(ong, PMAX)), sum(gen(ong, QMIN)), sum(gen(ong, QMAX))); %%fprintf(fd, '\nCommitted Gens %5d Generation (actual) %7.1f %7.1f', length(ong), sum(gen(ong, PG)), sum(gen(ong, QG))); %% fprintf(fd, '\n负荷 %5d 负荷 %7.1f %7.1f', length(nzld)+length(onld), sum(bus(nzld, PD))-sum(gen(onld, PG)), sum(bus(nzld, QD))-sum(gen(onld, QG))); %%fprintf(fd, '\n Fixed %5d Fixed %7.1f %7.1f', length(nzld), sum(bus(nzld, PD)), sum(bus(nzld, QD))); %%fprintf(fd, '\n Dispatchable %5d Dispatchable %7.1f of %-7.1f%7.1f', length(onld), -sum(gen(onld, PG)), -sum(gen(onld, PMIN)), -sum(gen(onld, QG))); %%fprintf(fd, '\nShunts %5d Shunt (inj) %7.1f %7.1f', length(nzsh), ... %% -sum(bus(nzsh, VM) .^ 2 .* bus(nzsh, GS)), sum(bus(nzsh, VM) .^ 2 .* bus(nzsh, BS)) ); fprintf(fd,' \n支路 %5d条 其中变压器支路 %5d条', nl, length(xfmr)); %% fprintf(fd, '\n 支路充电功率 (inj) - %7.1f', , sum(fchg) + sum(tchg) ); %%fprintf(fd, '\nInter-ties %5d Total Inter-tie Flow %7.1f %7.1f', length(ties), sum(abs(branch(ties, PF)-branch(ties, PT))) / 2, sum(abs(branch(ties, QF)-branch(ties, QT))) / 2); %%fprintf(fd, '\nAreas %5d', length(s_areas)); fprintf(fd, '\n'); fprintf(fd, '\n 最小值 最大值'); fprintf(fd, '\n ------------------------- --------------------------------'); [minv, mini] = min(bus(:, VM)); [maxv, maxi] = max(bus(:, VM)); fprintf(fd, '\n电压幅值 %7.3f p.u. @ 节点 %-4d %7.3f p.u. @ 节点 %-4d', minv, bus(mini, BUS_I), maxv, bus(maxi, BUS_I)); [minv, mini] = min(bus(:, VA)); [maxv, maxi] = max(bus(:, VA)); fprintf(fd, '\n电压相角 %8.2f deg @节点 %-4d %8.2f deg @ 节点 %-4d', minv, bus(mini, BUS_I), maxv, bus(maxi, BUS_I)); if ~dc [maxv, maxi] = max(real(loss)); fprintf(fd, '\n有功损耗 (I^2*R) - %8.2f MW @ 线路 %d-%d', maxv, branch(maxi, F_BUS), branch(maxi, T_BUS)); [maxv, maxi] = max(imag(loss)); fprintf(fd, '\n无功损耗 (I^2*X) - %8.2f MVAr @ 线路 %d-%d', maxv, branch(maxi, F_BUS), branch(maxi, T_BUS)); end if isOPF [minv, mini] = min(bus(:, LAM_P)); [maxv, maxi] = max(bus(:, LAM_P)); fprintf(fd, '\nLambda P %8.2f $/MWh @ bus %-4d %8.2f $/MWh @ bus %-4d', minv, bus(mini, BUS_I), maxv, bus(maxi, BUS_I)); [minv, mini] = min(bus(:, LAM_Q)); [maxv, maxi] = max(bus(:, LAM_Q)); fprintf(fd, '\nLambda Q %8.2f $/MWh @ bus %-4d %8.2f $/MWh @ bus %-4d', minv, bus(mini, BUS_I), maxv, bus(maxi, BUS_I)); end fprintf(fd, '\n');enddisp(' ')disp(' ')disp(' ****按任意键继续,显示节点潮流计算结果**** ')pause %% bus dataif OUT_BUS fprintf(fd, '\n================================================================================'); fprintf(fd, '\n| 节 点 潮 流 计 算 结 果 |'); fprintf(fd, '\n================================================================================'); fprintf(fd, '\n 节 点 电 压 发 电 机 负 荷 '); if isOPF, fprintf(fd, ' Lambda($/MVA-hr)'); end fprintf(fd, '\n # Mag(pu) Ang(deg) P (MW) Q (MVAr) P (MW) Q (MVAr)'); if isOPF, fprintf(fd, ' P Q '); end fprintf(fd, '\n----- ------- -------- -------- -------- -------- --------'); if isOPF, fprintf(fd, ' ------- -------'); end for i = 1:nb fprintf(fd, '\n%5d%7.3f%9.3f', bus(i, [BUS_I, VM, VA])); g = find(gen(:, GEN_STATUS) > 0 & gen(:, GEN_BUS) == bus(i, BUS_I) & ... ~isload(gen)); ld = find(gen(:, GEN_STATUS) > 0 & gen(:, GEN_BUS) == bus(i, BUS_I) & ... isload(gen)); if ~isempty(g) fprintf(fd, '%10.2f%10.2f', sum(gen(g, PG)), sum(gen(g, QG))); else fprintf(fd, ' - - '); end if bus(i, PD) | bus(i, QD) | ~isempty(ld) if ~isempty(ld) fprintf(fd, '%10.2f*%9.2f*', bus(i, PD) - sum(gen(ld, PG)), ... bus(i, QD) - sum(gen(ld, QG))); else fprintf(fd, '%10.2f%10.2f ', bus(i, [PD, QD])); end else fprintf(fd, ' - - '); end if isOPF fprintf(fd, '%9.3f', bus(i, LAM_P)); if abs(bus(i, LAM_Q)) > 1e-6 fprintf(fd, '%8.3f', bus(i, LAM_Q)); else fprintf(fd, ' -'); end end end fprintf(fd, '\n -------- -------- -------- --------'); fprintf(fd, '\n 合计: %9.2f %9.2f %9.2f %9.2f', ... sum(gen(ong, PG)), sum(gen(ong, QG)), ... sum(bus(nzld, PD)) - sum(gen(onld, PG)), ... sum(bus(nzld, QD)) - sum(gen(onld, QG))); fprintf(fd, '\n');end fprintf(fd, '\n');%disp(' ****按任意键继续显示,支路潮流计算结果**** ')pauseif OUT_BRANCH fprintf(fd, '\n================================================================================'); fprintf(fd, '\n| 支 路 潮 流 结 果 |'); fprintf(fd, '\n================================================================================'); fprintf(fd, '\n支路 首节点 末节点 首节点功率 末节点功率 线路损耗 (I^2 * Z) '); fprintf(fd, '\n # Bus Bus P (MW) Q (MVAr) P (MW) Q (MVAr) P (MW) Q (MVAr)'); fprintf(fd, '\n----- ----- ----- -------- -------- -------- -------- -------- --------'); fprintf(fd, '\n%4d%7d%7d%10.2f%10.2f%10.2f%10.2f%10.3f%10.2f', ... [ [1:nl]', branch(:, [F_BUS, T_BUS]), ... branch(:, [PF, QF]), branch(:, [PT, QT]), ... real(loss), imag(loss) ... ]'); fprintf(fd, '\n -------- --------'); fprintf(fd, '\n 合计:%10.3f%10.2f', ... sum(real(loss)), sum(imag(loss))); fprintf(fd, '\n');end disp(' ')disp(' ') disp(' ****本次潮流计算已经结束,请进行选择**** ')disp(' -------------------------- ')disp(' [1].继 续 进 行 潮 流 计 算 ' )%disp('|参考文献: H. Wang, C. E. Murillo-Sánchez, R. D. Zimmerman, R. J. Thomas, “On Computational Issues of |')%disp('| Market-Based Optimal Power Flow”, IEEE Transactions on Power Systems, Vol. 22, No. 3,Aug. 2007, pp. 1185-1193. \ |')disp(' -------------------------- ')disp(' [2].退 出 潮 流 计 算 程 序 ')%%disp(' 参考文献: W. F. Tinney and C. E. Hart, “Power Flow Solution by Newton’s Method”, IEEE Transactions on')%%disp (' Power Apparatus and Systems, Vol. PAS-86, No. 11, Nov. 1967, pp. 1449-1460. ')disp(' -------------------------- ')disp(' ')disp(' ')choice = input(' *** \输入您的选择[1--2之间]*** : ');disp(' ')disp(' ')switch choice case 1 hhu_runpf case 2 disp(' **** 谢谢使用Power Flow Calculation Packages,使用过程中有问题,联系e-mail:hhusgq@hhu.edu.cn **** ');end
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -