Commit 7dc61ff4 by dongshufeng

refactor: string should be `content`

parent 7aadb192
......@@ -2,34 +2,70 @@
#include ../lib/idx_gen.txt
#include ../lib/idx_bus.txt
#include ../lib/idx_brch.txt
#include ../lib/make_y_bus.txt
#include ../lib/dsbus_dv.txt
#include ../lib/make_sdzip.txt
#include ../lib/make_sbus.txt
#include ../lib/make_y_bus.txt
#include ../lib/make_jac.txt
#include ../lib/newtonpf.txt
#include ../lib/runpf.txt
info("Running make_sbus on case141 2000 times...");
// ----------------- test make sbus ---------------
info(`Running make_sbus on case141 2000 times...`);
for i in 0..2000 {
make_sbus(baseMVA, bus, gen);
}
info("Run make_sbus case141 end");
info("Running make_y_bus on case141 2000 times...");
info(`Run make_sbus case141 end`);
// ----------------- test make_y_bus ---------------
info(`Running make_y_bus on case141 2000 times...`);
for i in 0..2000 {
make_y_bus(baseMVA, bus, branch);
}
info("Run make_y_bus case141 end");
info("Running make_jac on case141 2000 times...");
for i in 0..2000 {
info(`Run make_y_bus case141 end`);
// ----------------- test make_jac ---------------
info(`Running make_jac on case141 10000 times...`);
for i in 0..10000 {
make_jac(baseMVA, bus, branch, gen, 1);
}
info("Run make_jac case141 end");
info(`Run make_jac case141 end`);
// ----------------- test prepare ---------------
info(`Running prepare on case141 2000 times...`);
for i in 0..2000 {
nb = size(bus, 0);
ng = size(gen, 0);
g_i = slice(gen, [0], [GEN_BUS-1,GEN_BUS]) - 1; // generator bus indices
Cg = full(sparse(g_i, range(0, ng), slice(gen, [0], [GEN_STATUS-1,GEN_STATUS]) > 0, nb, ng)); // gen connection matrix
// element i, j is 1 if, generator j at bus i is ON
bus_gen_status = Cg * ones(ng, 1); // number of generators at each bus that are ON
// form index lists for slack, PV, and PQ buses
bus_type = slice(bus, [0], [BUS_TYPE-1,BUS_TYPE]); // bus type column
ref = find(bus_type == REF && bus_gen_status); // reference bus index
pv = find(bus_type == PV && bus_gen_status); // PV bus indices
pq = find(bus_type == PQ || ~~bus_gen_status); // PQ bus indices
// generator info
on = find(slice(gen, [0], [GEN_STATUS-1, GEN_STATUS]) > 0); // which generators are on?
gbus = get_multi(slice(gen, [0], [GEN_BUS-1, GEN_BUS]), on) - 1; // what buses are they at?
info("Running 2000 times power flow case141...");
// initial state
//V0 = ones(nb, 1); // flat start
V0 = slice(bus, [0], [VM-1,VM]) .* exp(c(0,1) * pi/180 * slice(bus, [0], [VA-1,VA]));
vcb = set(ones(size(V0)), pq, zeros(size(pq))); // create mask of voltage-controlled buses
k = find(get_multi(vcb, gbus)); // in-service gens at v-c buses
gbus_index = get_multi(gbus, k); // indices of in-service generators at v-c buses
on_k = get_multi(on, k);
gen_vg = get_multi(slice(gen, [0], [VG-1,VG]), on_k);
gbus_k = get_multi(gbus, k);
voltage_g = get_multi(V0, gbus_k);
V_init = set(V0, gbus_k, gen_vg ./ abs(voltage_g) .* voltage_g);
// build admittance matrices
Ybus = make_y_bus(baseMVA, bus, branch);
}
info(`Run prepare case141 end`);
// ----------------- test runpf ---------------
info(`Running 2000 times power flow case141...`);
for i in 0..2000 {
r = runpf();
}
info("Run power flow on case141 end");
return r;
\ No newline at end of file
info(`Run power flow on case141 end`);
\ No newline at end of file
......@@ -9,9 +9,8 @@
#include ../lib/newtonpf.txt
#include ../lib/runpf.txt
info("Running 2000 times power flow case145...");
info(`Running 2000 times power flow case145...`);
for i in 0..2000 {
r = runpf();
}
info("Run power flow on case145 end");
return r;
\ No newline at end of file
info(`Run power flow on case145 end`);
\ No newline at end of file
......@@ -22,5 +22,3 @@ assert_relative_eq(i2e, [
[13],
[14]
]);
\ No newline at end of file
return i2e;
\ No newline at end of file
......@@ -42,5 +42,3 @@ assert_relative_eq(jac, [
[c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(3.5937,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(2.7611,0), c(-7.5528,0), c(1.1980,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(-3.3536,0), c(0,0), c(0,0), c(15.4657,0), c(0,0), c(-2.3605,0), c(11.1439,0), c(-2.4488,0) ],
[c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(1.6212,0), c(0,0), c(0,0), c(0,0), c(1.2754,0), c(-2.8966,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(-3.1092,0), c(-4.6646,0), c(0,0), c(0,0), c(-2.3799,0), c(5.4915,0) ]
],4);
return jac;
......@@ -22,4 +22,3 @@ assert_relative_eq(r, [
[c(-0.135,-0.058)],
[c(-0.149,-0.050)]
]);
\ No newline at end of file
return r;
\ No newline at end of file
......@@ -21,5 +21,3 @@ assert_relative_eq(sdzip, [
[c(0,0), c(0,0), c(0.1350,0.0580)],
[c(0,0), c(0,0), c(0.1490,0.0500)]
],4);
\ No newline at end of file
return sdzip;
\ No newline at end of file
......@@ -22,5 +22,3 @@ assert_relative_eq(ybus, [
[c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(-3.0989,6.1028), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(-2.4890,2.2520), c(6.7249,-10.6697), c(-1.1370,2.3150) ],
[c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(0,0), c(-1.4240,3.0291), c(0,0), c(0,0), c(0,0), c(-1.1370,2.3150), c(2.5610,-5.3440) ]
],4);
\ No newline at end of file
return ybus;
\ No newline at end of file
......@@ -14,11 +14,11 @@
#include ../lib/total_load.txt
info("Running power flow on case14...");
info(`Running power flow on case14...`);
for i in 0..5 {
r = runpf();
}
info("Run power flow on case14 end");
info(`Run power flow on case14 end`);
Ybus = make_y_bus(baseMVA, bus, branch);
Yf = make_y_bus_Yf(baseMVA, bus, branch);
......@@ -84,6 +84,6 @@ assert_relative_eq(bus_output, [
],4);*/
return bus_output;
//return bus_output;
//return gen_output;
//return branch_output;
\ No newline at end of file
......@@ -9,11 +9,11 @@
#include ../lib/newtonpf.txt
#include ../lib/runpf.txt
info("Running power flow on case14...");
info(`Running power flow on case14...`);
for i in 0..100 {
r = runpf();
}
info("Run power flow on case14 end");
info(`Run power flow on case14 end`);
assert_relative_eq(r, [
[c(1.0600,0)],
......@@ -31,5 +31,3 @@ assert_relative_eq(r, [
[c(1.0138,-0.2746)],
[c(0.9952,-0.2860)]
],4);
\ No newline at end of file
return r;
\ No newline at end of file
......@@ -20,5 +20,3 @@ assert_relative_eq(Pd_Qd, [
[c(11.2,0), c(7.5,0)],
[c(0,0), c(0,0)]
]);
\ No newline at end of file
return Pd_Qd;
\ No newline at end of file
......@@ -13,9 +13,9 @@
#include ../lib/pfsoln.txt
#include ../lib/total_load.txt
info("Running power flow on case14...");
info(`Running power flow on case14...`);
V = runpf();
info("Run power flow on case14 end");
info(`Run power flow on case14 end`);
bus = assign(bus, abs(V), [0], [VM-1, VM] );
bus = assign(bus, angle(V) * 180 / pi, [0], [VA-1, VA] );
......
......@@ -30,7 +30,7 @@
fn make_sbus(baseMVA, bus, gen) {
nb = size(bus, 0);
Sd = make_sdzip(baseMVA, bus, mpopt);
Sd = make_sdzip(baseMVA, bus, []);
on = find(slice(gen, [0], [GEN_STATUS-1, GEN_STATUS]) > 0); // which generators are on?
gbus = get_multi(slice(gen, [0], [GEN_BUS-1, GEN_BUS]), on) - 1; // what buses are they at?
ngon = size(on, 0);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论