目录
主要内容
部分代码
结果一览
下载链接
主要内容
该模型主要用于风电功率和光伏功率场景生成与缩减,利用多元高斯分布构建时间相关性,并采用蒙特卡洛方法进行仿真,风电功率采用Weibull分布,光伏功率采用Beta分布,程序充分考虑了单一风/光出力在相邻或相近时间区间内的相关性,并采用后向削减得到典型场景及其概率,程序注释清楚,出图效果较好,方便在此基础上进行创新。
部分代码
%% 导入数据及参数设置 paremeters = importdata('parameters.xlsx'); % 导入数据 pars.wtk = paremeters.data(:, 2); % Weibull形状系数 pars.wtc = paremeters.data(:, 3); % Weibull尺度系数 pars.pva = paremeters.data(:, 4); % Beta形状系数 pars.pvb = paremeters.data(:, 5); % Beta形状系数 NS = 200; % 原始场景数 T = 24; % 时段 reduced_num = 5; % 要削减的场景数 %% 场景生成 % 风电 speedsces = gen_scenarios(NS, T, pars, 'wind'); % 生成风速场景 figure plot(speedsces', 'linewidth', 1.2) xlabel('时间/h'); ylabel('风速'); title('原始风速场景'); windpowerscenario = speed2power(speedsces', T, NS); % 风速转换为风功率场景figure plot(windpowerscenario, 'linewidth', 1.2) xlabel('时间/h'); ylabel('功率/kW'); title('考虑时间相关性的风功率场景'); % 光伏 mS = 120; % 光伏系数 solarpowerscenario = gen_scenarios(NS, T, pars, 'solar')'; % 生成光伏场景 solarpowerscenario = solarpowerscenario * mS; figure plot(solarpowerscenario, 'linewidth', 1.2) xlabel('时间/h'); ylabel('功率/kW'); title('考虑时间相关性的原始光伏功率场景'); %% 场景削减 p = ones(NS, 1) * (1/NS); % 原始场景是等概率的