Of course.
Ray
> On Apr 30, 2015, at 11:39 PM, Aruna Dharmala <[email protected]>
> wrote:
>
> can this code can be applicable for increasing load step by step slowly.....
>
> On Wed, Apr 29, 2015 at 1:09 PM, Ray Zimmerman <[email protected]
> <mailto:[email protected]>> wrote:
> 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]
>> <mailto:[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
>>>>>
>>>>>
>>>>
>>>>
>>>
>>>
>>
>>
>
>