Dear Yang H Y,
I need more code in Matlab about SUC or Unit commitment and optimal power flow
I thank you very much
Le mardi 14 janvier 2020 à 23:48:41 UTC+1, Ray Daniel Zimmerman
<[email protected]> a écrit :
I’ll do my best to address your questions, but please feel free to ask for
further clarification if I don’t get them all.
Reserve zones are unrelated to either the BUS_AREA orZONE columns in the bus
matrix. They are defined by the mpc.reserves.zones matrix and can be
overlapping (i.e. a given generator may be in multiple reserve zones).
The reserve prices come from the shadow prices on the reserve requirement
constraints for the various reserve zones. The Rmin mu, Rmax mu are shadow
prices on the lower and upper bounds on the reserve variable and the Pmax mu is
the shadow price on the upper bound on Pg + R.
You can certainly use the BUS_AREA column in the bus matrix to define areas
that correspond to your reserve zones if you find that useful. It is not
necessary however, unless you want a convenient way to modify parameters (see
scale_load() or apply_changes()) or print output summaries (see the
out.area_sum option) by area.
Hope this helps,
Ray
On Jan 7, 2020, at 9:26 PM, Yang <[email protected]> wrote:
Hi, everyone!I want to divide the 30 buses and 6 generators into 3 areas in
case 30.m, in earlier messages, I find 'areas' don't affect the runopf(), but
how in runopf_w_res? And what are differences between 'area' and 'zone'? After
reading messages, I think areas are about buses and zones are about generators.
Is it correct about my understand?
I have two questions:First, I do some modify in in the t_case30_userfcns.m,
gen1 and gen2 are in zone 1, gen5 and gen6 are in zone3, and gen3 and gen4 are
in zone2. And every zone's reserve requirements are 30MW." OutmailID:
124252370, List: 'matpower-l', MemberID: 6449049 SCRIPT: "reserve zones,
element i, j is 1 if gen j is in zone i, 0 otherwise
mpc.reserves.zones = [
1 1 0 0 0 0;
0 0 1 1 0 0;
0 0 0 0 1 1;
];" TCL MERGE ERROR ( 01/07/2020 23:27:02 ): "missing " reserve requirements
for each zone in MW
mpc.reserves.req = [30; 30; 30];
And results are:| Reserves
|
================================================================================
Gen Bus Status Reserves Price
# # (MW) ($/MW) Included in Zones ...
---- ----- ------ -------- -------- ------------------------
1 1 1 15.12 2.00 1
2 2 1 14.88 2.00 1
3 22 1 25.00 4.00 3
4 27 1 5.00 4.00 3
5 23 1 25.00 5.50 2
6 13 1 5.00 5.50 2
--------
Total: 90.00 Total Cost: $305.99Zone Reserves
Price
# (MW) ($/MW)
---- -------- --------
1 30.00 2.00
2 30.00 5.50
3 30.00
4.00================================================================================
| Reserve Limits |
================================================================================
Gen Bus Status Rmin mu Rmin Reserves Rmax Rmax mu Pmax mu
# # ($/MW) (MW) (MW) (MW) ($/MW) ($/MW)
---- ----- ------ -------- -------- -------- -------- -------- --------
1 1 1 - 0.00 15.12 25.00 - 0.10
2 2 1 - 0.00 14.88 25.00 - -
3 22 1 - 0.00 25.00 25.00 1.00 -
4 27 1 - 0.00 5.00 25.00 - -
5 23 1 - 0.00 25.00 25.00 0.50 -
6 13 1 - 0.00 5.00 25.00 - -
--------
Total: 90.00
And if I set every zone's reserve requirements are 20MW, the results are:|
Reserves |
================================================================================
Gen Bus Status Reserves Price
# # (MW) ($/MW) Included in Zones ...
---- ----- ------ -------- -------- ------------------------
1 1 1 15.12 2.00 1
2 2 1 4.88 2.00 1
3 22 1 20.00 3.00 2
4 27 1 0.00 3.00 2
5 23 1 20.00 5.00 3
6 13 1 0.00 5.00 3
--------
Total: 60.00 Total Cost: $198.49Zone Reserves
Price
# (MW) ($/MW)
---- -------- --------
1 20.00 2.00
2 20.00 5.00
3 20.00
3.00================================================================================
| Reserve Limits |
================================================================================
Gen Bus Status Rmin mu Rmin Reserves Rmax Rmax mu Pmax mu
# # ($/MW) (MW) (MW) (MW) ($/MW) ($/MW)
---- ----- ------ -------- -------- -------- -------- -------- --------
1 1 1 - 0.00 15.12 25.00 - 0.10
2 2 1 - 0.00 4.88 25.00 - -
3 22 1 - 0.00 20.00 25.00 - -
4 27 1 1.00 0.00 0.00 25.00 - -
5 23 1 - 0.00 20.00 25.00 - -
6 13 1 0.50 0.00 0.00 25.00 - -
--------
Total: 60.00
The prices for zones are different in the 30MW and 20MW, how do they change?
And I'm not clear aboutRmin mu, Rmax mu andPmax mu.
And the second question is I want to divide 30 buses into 3 areas or zones, in
corresponding with generators. I findscale_load(), and I don't know if it is
right, and if it is necessary to do this division. Also, if it is necessary,
how to connect them?load_zone = zeros(30, 1);
load_zone(1:9,11,28) = 1;
load_zone(12:20,23) = 2;
load_zone(10,21,22,24:27,29,30) = 3;
opt = struct('pq', 'P', 'scale', 'QUANTITY');
dmd = [30; 30; 30];
Thanks a lot!Yang.