⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 t_pf.m

📁 用于潮流和最优潮流计算的最新版本 对于初学者很有用
💻 M
字号:
function t_pf(quiet)%T_PF  Tests for power flow.%   MATPOWER%   $Id: t_pf.m,v 1.4 2007/09/07 14:14:34 ray Exp $%   by Ray Zimmerman, PSERC Cornell%   Copyright (c) 2004 by Power System Engineering Research Center (PSERC)%   See http://www.pserc.cornell.edu/matpower/ for more info.if nargin < 1    quiet = 0;endt_begin(25, quiet);casefile = 't_case9_pf';if quiet    verbose = 0;else    verbose = 1;endmpopt = mpoption('OUT_ALL', 0, 'VERBOSE', verbose);[GEN_BUS, PG, QG, QMAX, QMIN, VG, MBASE, GEN_STATUS, PMAX, PMIN, ...    MU_PMAX, MU_PMIN, MU_QMAX, MU_QMIN, PC1, PC2, QC1MIN, QC1MAX, ...    QC2MIN, QC2MAX, RAMP_AGC, RAMP_10, RAMP_30, RAMP_Q, APF] = idx_gen;%% get solved AC power flow case from MAT-fileload soln9_pf;      %% defines bus_soln, gen_soln, branch_soln%% run Newton PFt = 'Newton PF : ';mpopt = mpoption(mpopt, 'PF_ALG', 1);[baseMVA, bus, gen, branch, success, et] = runpf(casefile, mpopt);t_ok(success, [t 'success']);t_is(bus, bus_soln, 6, [t 'bus']);t_is(gen, gen_soln, 6, [t 'gen']);t_is(branch, branch_soln, 6, [t 'branch']);%% run fast-decoupled PF (XB version)t = 'Fast Decoupled (XB) PF : ';mpopt = mpoption(mpopt, 'PF_ALG', 2);[baseMVA, bus, gen, branch, success, et] = runpf(casefile, mpopt);t_ok(success, [t 'success']);t_is(bus, bus_soln, 6, [t 'bus']);t_is(gen, gen_soln, 6, [t 'gen']);t_is(branch, branch_soln, 6, [t 'branch']);%% run fast-decoupled PF (BX version)t = 'Fast Decoupled (BX) PF : ';mpopt = mpoption(mpopt, 'PF_ALG', 3);[baseMVA, bus, gen, branch, success, et] = runpf(casefile, mpopt);t_ok(success, [t 'success']);t_is(bus, bus_soln, 6, [t 'bus']);t_is(gen, gen_soln, 6, [t 'gen']);t_is(branch, branch_soln, 6, [t 'branch']);%% run Gauss-Seidel PFt = 'Gauss-Seidel PF : ';mpopt = mpoption(mpopt, 'PF_ALG', 4);[baseMVA, bus, gen, branch, success, et] = runpf(casefile, mpopt);t_ok(success, [t 'success']);t_is(bus, bus_soln, 5, [t 'bus']);t_is(gen, gen_soln, 5, [t 'gen']);t_is(branch, branch_soln, 5, [t 'branch']);%% get solved AC power flow case from MAT-fileload soln9_dcpf;        %% defines bus_soln, gen_soln, branch_soln%% run DC PFt = 'DC PF : ';[baseMVA, bus, gen, branch, success, et] = rundcpf(casefile, mpopt);t_ok(success, [t 'success']);t_is(bus, bus_soln, 6, [t 'bus']);t_is(gen, gen_soln, 6, [t 'gen']);t_is(branch, branch_soln, 6, [t 'branch']);%% check Qg distribution, when Qmin = Qmaxt = 'check Qg : ';mpopt = mpoption(mpopt, 'PF_ALG', 1, 'VERBOSE', 0);mpc = loadcase(casefile);mpc.gen(1, [QMIN QMAX]) = [20 20];[baseMVA, bus, gen, branch, success, et] = runpf(mpc, mpopt);t_is(gen(1, QG), 24.07, 2, [t 'single gen, Qmin = Qmax']);mpc.gen = [mpc.gen(1, :); mpc.gen];mpc.gen(1, [QMIN QMAX]) = [10 10];mpc.gen(2, [QMIN QMAX]) = [0 50];[baseMVA, bus, gen, branch, success, et] = runpf(mpc, mpopt);t_is(gen(1:2, QG), [10; 14.07], 2, [t '2 gens, Qmin = Qmax for one']);mpc.gen(1, [QMIN QMAX]) = [10 10];mpc.gen(2, [QMIN QMAX]) = [-50 -50];[baseMVA, bus, gen, branch, success, et] = runpf(mpc, mpopt);t_is(gen(1:2, QG), [12.03; 12.03], 2, [t '2 gens, Qmin = Qmax for both']);mpc.gen(1, [QMIN QMAX]) = [0 50];mpc.gen(2, [QMIN QMAX]) = [0 100];[baseMVA, bus, gen, branch, success, et] = runpf(mpc, mpopt);t_is(gen(1:2, QG), [8.02; 16.05], 2, [t '2 gens, proportional']);mpc.gen(1, [QMIN QMAX]) = [-50 0];mpc.gen(2, [QMIN QMAX]) = [50 150];[baseMVA, bus, gen, branch, success, et] = runpf(mpc, mpopt);t_is(gen(1:2, QG), [-50+8.02; 50+16.05], 2, [t '2 gens, proportional']);t_end;return;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -