With any new MATPOWER function, such as scale_load()
<http://www.pserc.cornell.edu//matpower/docs/ref/matpower5.1/scale_load.html>,
or any Matlab function for that matter, always start by reading the help to
understand the input and output arguments and the purpose of the function. For
scale_load()
<http://www.pserc.cornell.edu//matpower/docs/ref/matpower5.1/scale_load.html>
you can’t just pass in case file name and assume it knows what you want it to
do.
If you want to double the active and reactive power load (for a fixed, i.e.
non-dispatchable, load) at bus k, for example, you can change the values of the
PD and QD columns in the bus matrix directly (this is basic Matlab, so go find
a good Matlab tutorial if this still looks mysterious) …
mpc = loadcase('mycase');
mpc.bus(k, PD) = mpc.bus(k, PD) * 2;
mpc.bus(k, QD) = mpc.bus(k, QD) * 2;
… or ...
nb = size(mpc.bus, 1);
load_zone = zeros(nb, 1);
load_zone(k) = 1;
mpc.bus = loadcase(2, mpc.bus, [], load_zone);
Both methods accomplish the same thing, though scale_load()
<http://www.pserc.cornell.edu//matpower/docs/ref/matpower5.1/scale_load.html>
can also handle dispatchable loads, etc. (see the opt argument).
Ray
> On Apr 29, 2015, at 12:02 AM, Aruna Dharmala <[email protected]>
> wrote:
>
> This the error by giving scale_load()
> scale_load('case4arunmod.m')
> Error using scale_load (line 119)
> Not enough input arguments.
>
> how to fixed the load at given bus and how to change the PD column in the bus
> matrix
>
> On Tue, Apr 28, 2015 at 2:13 PM, Ray Zimmerman <[email protected]
> <mailto:[email protected]>> wrote:
> See scale_load()
> <http://www.pserc.cornell.edu//matpower/docs/ref/matpower5.1/scale_load.html>.
> Or if it’s a simple fixed load at a given bus, just change the value of the
> PD column in the bus matrix.
>
> Ray
>
>
>
>> On Apr 28, 2015, at 4:55 AM, Aruna Dharmala <[email protected]
>> <mailto:[email protected]>> wrote:
>>
>> Dear all,
>> For available transfer capability calculations i have to
>> increase load(sink) at single bus and check the system performance
>> by increasing load if their is any voilation in line
>> limit that is taken as TTC candidate
>> can you please suggest code for increasing load at single
>> bus that can implement in matpower
>> please help
>>
>> On Mon, Apr 6, 2015 at 1:07 PM, Ray Zimmerman <[email protected]
>> <mailto:[email protected]>> wrote:
>> I’m not sure I understand what you want to do. You could certainly create a
>> new function with the appropriate inputs and outputs, that wraps the code
>> below and use it to compute ATC.
>>
>> Ray
>>
>>
>>> On Apr 6, 2015, at 1:06 AM, Aruna Dharmala <[email protected]
>>> <mailto:[email protected]>> wrote:
>>>
>>> Respected sir,
>>> how to add the given below program to existing
>>> inbuilt opf code in matpower software.....?
>>> % get indices of generators
>>> ga = find(ismember(mpc.gen(:, GEN_BUS), mpc.bus(a, BUS_I))); % area A gens
>>> gb = find(ismember(mpc.gen(:, GEN_BUS), mpc.bus(b, BUS_I))); % area B gens
>>> gother = find(~ismember((1:ng)', [ga; gb])); % remaining gens
>>>
>>> % fix dispatches of all gens outside areas A and B
>>> mpc.gen(gother, PMIN) = mpc.gen(gother, PG);
>>> mpc.gen(gother, PMAX) = mpc.gen(gother, PG);
>>>
>>> % scale down prices in area A by factor of 10
>>> % scale up prices in area B by factor of 10
>>> % (important thing is to make everything in A cheaper than
>>> % everything in B to maximize transfer from A to B)
>>> mpc.gencost(ga, :) = modcost(mpc.gencost(ga, :), 0.1);
>>> mpc.gencost(gb, :) = modcost(mpc.gencost(gb, :), 10);
>>>
>>> % re-run the OPF and compute ATC as total decrease in area B dispatch
>>> r = runopf(mpc);
>>> ATC = sum(mpc.gen(gb, PG)) - sum(r.gen(gb, PG));
>>>
>>>
>>> On Thu, Apr 2, 2015 at 1:52 PM, Ray Zimmerman <[email protected]
>>> <mailto:[email protected]>> wrote:
>>> I’ll assume you have a base case power flow (or OPF) solution in a MATPOWER
>>> case struct mpc and want to find the maximum additional power that can be
>>> transferred from area A to area B without violating constraints, where the
>>> areas are defined via two vectors of bus indices (a and b), possibly by
>>> using a = find(mpc.bus(:, BUS_AREA) == A), etc. Then you’ll just modify the
>>> case, something like this …
>>>
>>> % get indices of generators
>>> ga = find(ismember(mpc.gen(:, GEN_BUS), mpc.bus(a, BUS_I))); % area A gens
>>> gb = find(ismember(mpc.gen(:, GEN_BUS), mpc.bus(b, BUS_I))); % area B gens
>>> gother = find(~ismember((1:ng)', [ga; gb])); % remaining gens
>>>
>>> % fix dispatches of all gens outside areas A and B
>>> mpc.gen(gother, PMIN) = mpc.gen(gother, PG);
>>> mpc.gen(gother, PMAX) = mpc.gen(gother, PG);
>>>
>>> % scale down prices in area A by factor of 10
>>> % scale up prices in area B by factor of 10
>>> % (important thing is to make everything in A cheaper than
>>> % everything in B to maximize transfer from A to B)
>>> mpc.gencost(ga, :) = modcost(mpc.gencost(ga, :), 0.1);
>>> mpc.gencost(gb, :) = modcost(mpc.gencost(gb, :), 10);
>>>
>>> % re-run the OPF and compute ATC as total decrease in area B dispatch
>>> r = runopf(mpc);
>>> ATC = sum(mpc.gen(gb, PG)) - sum(r.gen(gb, PG));
>>>
>>> Hope this helps,
>>>
>>> Ray
>>>
>>>
>>>> On Apr 2, 2015, at 12:10 AM, Aruna Dharmala <[email protected]
>>>> <mailto:[email protected]>> wrote:
>>>>
>>>> Respected sir,
>>>> I am doing ATC computation by optimal power flow
>>>> method..
>>>> By using matpower software i run the load flow
>>>> solution by optimal power flow.by <http://flow.by/> doing load flow i am
>>>> not geting how to take a group of buses as an area and how to interface
>>>> between areas for available transfer capability calculation..?
>>>>
>>>> On Wed, Apr 1, 2015 at 6:34 PM, Ray Zimmerman <[email protected]
>>>> <mailto:[email protected]>> wrote:
>>>> Another possible approach is to use an OPF and shift the prices down for
>>>> the sending group of generators and up for the receiving group.
>>>>
>>>> Ray
>>>>
>>>>
>>>>> On Apr 1, 2015, at 8:02 AM, Abhyankar, Shrirang G. <[email protected]
>>>>> <mailto:[email protected]>> wrote:
>>>>>
>>>>> Although Matpower does not have a function for ATC, it has all the
>>>>> required building blocks for doing the calculations You can take a look
>>>>> at the continuation power flow feature in the MatPower manual as a
>>>>> starting point.
>>>>>
>>>>> Shri
>>>>>
>>>>> On Apr 1, 2015, at 5:07 AM, "Aruna Dharmala" <[email protected]
>>>>> <mailto:[email protected]>> wrote:
>>>>>
>>>>>> Respected sir,
>>>>>> can we do available transfer capability
>>>>>> calculation using matpower it is possible..?
>>>>>> if it possible in this software how the
>>>>>> interfacing between two areas of available transfer capability takes
>>>>>> place for group of buses
>>>>
>>>>
>>>
>>>
>>
>>
>
>