程序简介
本程序参考SCI期刊论文《Optimal dispatch of zero-carbon-emission micro Energy Internet integrated with non-supplementary fired compressed air energy storage system》,程序中有详细的热网模型,温度控制模块,压缩机模块,综合能源系统规模较大,非常具有可扩展性,算例丰富,注释清晰,干货满满,下面对文章和程序做简要介绍!
为了以清洁和集成的方式利用热和电,通过引入非补充燃烧压缩空气储能(NSF-CAES)技术,提出了零碳排放综合能源系统(ZCE-MEI)架构。本文考虑了一种典型的ZCE-MEI,它将配电网(PDN)和区域供热网(DHN)与NSF-CAES相结合。NSF-CAES架构的制定考虑了热动态和压力行为,以增强调度灵活性。利用改进的DistFlow模型允许几个离散和连续的无功功率补偿器来维持PDN的电压质量。首先将ZCE-MEI的最优操作建模为混合整数非线性规划(MINLP)。通过多次变换和简化,将该问题转化为混合整数线性规划(MILP),利用CPLEX高效求解。采用由NSF-CAES母线、33节点PDN和8节点DHN组成的典型测试系统来验证所提出的ZCE-MEI在降低运营成本和弃风方面的有效性。
文章介绍
结果对比
程序结果:程序图片共25张,包括文章中所展示的,限于篇幅,仅列出部分图片。该程序稍加修改就可以出新的算例文章!!!
部分程序
NT = 24; % total dispatch period
Nc = 2; % total stages of compressor
Ne = 2; % total stages of turbine
Sb = 10; % Base power MW
Vb= 12.66; % Base Voltage kV
Zb = Vb^2/Sb; % Base impedence
Ib = Sb/(sqrt(3)*Vb); % kA
%% Power BusNo.(1)|Type(2)|Pd(3)|Qd(4)
N_bus1 = size(powerbus,1);
Pd_ratio = powerbus(:,3)/sum(powerbus(:,3)); % Active load ratio
Qd_ratio = powerbus(:,4)/sum(powerbus(:,4)); % Reactive load ratio
Pd0 = [63 62 60 58 59 65 72 85 95 99 100 99 93 92 90 88 90 92 96 98 96 90 80 70]/15-1.5;% MW
Qd0 = [18 16 15 14 15.5 15 16 17 18 19 20 20.5 21 20.5 21 19.5 20 20 19.5 19.5 18.5 18.5 18 18]/10; % system load MVar
Pd = Pd_ratio * Pd0; Qd = Qd_ratio * Qd0;
Pd = Pd/Sb; Qd = Qd/Sb; % p.u
U2_min = 0.95^2; U2_max = 1.05^2;
%% Compensator
% Location(1)|Max(2)|Min(3)|Step(4)
v = 2; % Step number for linearization
N_ComCap = size(ComCap,1); % Number of compensator
Ind_ComCap = ComCap(:,1);
S = ComCap(:,4);
%% SVG
Ind_SVG = SVG(:,1);
SVG(:,2:3) = SVG(:,2:3)/Sb; % SVG p.u
%% Heat Node
% No(1)|Hd(2)|Pr_SR_min(3)|tao_S_max(4)|tao_S_min(5)|tao_R_max(6)|tao_R_min(7)|mass flow(8)
heatnode = [ %kW %par %℃
N_bus2 = size(heatnode,1);
H_ratio = heatnode(:,2)/sum(heatnode(:,2));
H_hd0 = [1250*ones(1,4), 1150*ones(1,4), 1000*ones(1,4), 800*ones(1,4), 1150*ones(1,4), 1250*ones(1,4)]; % kW
H_Hd = H_ratio * H_hd0;Nd_Hd = find(heatnode(:,2)>0);
m_Hd = heatnode(Nd_Hd,8); % Mass flow ratio of heat load
tao_NS_max = heatnode(:,4);tao_NS_min = heatnode(:,5);
tao_NR_max = heatnode(:,6);tao_NR_min = heatnode(:,7);
%% Power Gen
Ind_gen = [2 7 19 26];
% Wg1 = [11.7 11.3 11.3 12.3 13.5 14.9 16.4 17.2 17.7 18 17.9 17.4 ...
% 16.3 16.1 16.2 16.6 16.8 16.9 16.8 16.6 16.4 16.5 16.6 16.8]/10;% Wind Gen #2(MW) 1.8 MW
N_line = size(branch,1);line_i = branch(:,2);line_j = branch(:,3);
r = branch(:,4)/Zb;x = branch(:,5)/Zb;Pmax = branch(:,6)/Sb; Pmin = branch(:,7)/Sb;
%% OLTC
% Line No.(1)|K_max(2)|K_min(3)|K_Step(4)|%t_OLTC = 0.95:0.01:1.05; % available tap value
T_OLTC = repmat(t_OLTC',1,NT);n_OLTC= length(t_OLTC); % num of total tap value
N_OLTC = size(OLTC,1);% num of OLTC Ind_OLTC = OLTC(:,1);
Ind_subline = zeros(N_line,2); % Index of Children line of power netwrok
Ind_subline(i,1:length(temp)) = temp;
Pg_min = zeros(N_bus1,NT); Pg_max = zeros(N_bus1,NT);
部分内容源自网络,侵权联系删除!
欢迎感兴趣的小伙伴点击文末阅读原文获取完整版代码,小编会不定期更新高质量的学习资料、文章和程序代码,为您的科研加油助力!
更多创新性预测及优化程序请点击公众号首页:《预测优化》|《综合能源》链接!