I tried the following code but the results are the same compared to
previous one.


nb = size(mpc.bus, 1);
ng = size(mpc.gen, 1);
pf = 0.8;
QPratio = sqrt(1/pf^2 -1);
%% add constraint that QPratio * Pg(i) - Qg(i) = 0, for i = 2 .. ng
mpc.A = sparse([1:ng 1:ng]', [2*nb+(1:ng) 2*nb+ng+(1:ng)]',
[QPratio*ones(ng,1); -ones(ng,1)], ng, 2*nb+2*ng);
% mpc.A = mpc.A(3:12, :);
% mpc.l = zeros(ng-1-31, 1);
mpc.A = mpc.A(2:16, :);
mpc.l = -0.8*ones(ng-29-1, 1);
mpc.u = -mpc.l;

​Best regards,​



​I found one of your posts below but I don't know how can I implement
A,l,u.​

---------- Forwarded message ----------
From: Ray Zimmerman <[email protected]>
Date: Wed, Mar 16, 2011 at 3:36 PM
Subject: Re: PF
To: MATPOWER discussion forum <[email protected]>


sparse is a built-in Matlab function, see the Matlab documentation for more
details. MATPOWER really does assume a basic knowledge of Matlab and there
are other forums for asking Matlab questions. So please make sure
you understand all of the Matlab commands involved before posting questions
here about MATPOWER.

The *A* matrix is from equation (5.25) in the User's Manual, where *x* is
defined in (5.5). So as it says in the example code I provided you, the
constraint we want to implement is ...

0 <= QPratio * Pg(i) - Qg(i) <= 0

This is an equality constraint that forces a constant ratio between Qg(i)
and Pg(i), in other words, a constant power factor. So we need to
define *A*such that
*A* * *x* = QPratio * Pg(i) - Qg(i), which means that *A* needs to have
QPratio in the column corresponding to Pg(i) and -1 in the column
corresponding to Qg(i). If you look at equation (5.5), you'll see that
Pg(i) is found in element (2*nb + i) of *x* and Qg(i) in element
(2*nb+ng+i). The sparse statement constructs this *A* matrix, and *l* and
*u* from (5.25) are set to zero.

Hope this finally makes everything clear.

 --
Ray Zimmerman
Senior Research Associate
211 Warren Hall, Cornell University, Ithaca, NY 14853
phone: (607) 255-9645


On Mar 15, 2011, at 10:46 AM, Carlos Gonzalez Almeida wrote:

Thank you very much dear Prof. Zimmerman

My problem is that I don't understand the sparse() function used to
construct the A matrix especially don't understand how the A matrix defined
in the example implements a constant power factor constraint. The latter is
very important for me. I will be greatly appreciated you if you explain me
further.

Best Regards

Carlos

On Tue, Mar 15, 2011 at 15:41, Ray Zimmerman <[email protected]> wrote:
In order to help you further, you're going to have to be more specific
about what it is that you are having trouble with. Is it that you don't
understand the sparse() function used to construct the A matrix? Or that
you don't understand how the A matrix is used? Or you don't understand how
the A matrix defined in the example implements a constant power factor
constraint?

Btw, if anyone else on the list can see something I'm missing in my
attempts to help Carlos get up to speed ... jump in, don't be shy.

-- 
Ray Zimmerman
Senior Research Associate
211 Warren Hall, Cornell University, Ithaca, NY 14853
phone: (607) 255-9645



On Mar 15, 2011, at 9:31 AM, Carlos Gonzalez Almeida wrote:

Dear Prof. Zimmerman

Once again I appreciate you for the file that you sent me. Where can I find
more information about the way of definition of A matrix. I have read the
manual but I didn't understand well, for example in the case you sent me
yesterday. If it is possible either please introduce me a book or explain a
little bit more about A matrix in general.

Best Wishes

C. Gonzalez Almeida


On Mon, Mar 14, 2011 at 19:05, Carlos Gonzalez Almeida <
[email protected]> wrote:
Thank you very very much.

On Mon, Mar 14, 2011 at 18:59, Ray Zimmerman <[email protected]> wrote:
Did you understand the previous example? If so, it's a trivial modification
(attached). If not, please go back and familiarize yourself with the
extended OPF formulation in the manual, the paper, the slides for the
paper, etc. This is about the most trivial example can think of for adding
a user-defined constraint to the OPF.



-- 
Ray Zimmerman
Senior Research Associate
211 Warren Hall, Cornell University, Ithaca, NY 14853
phone: (607) 255-9645



On Mar 14, 2011, at 12:16 PM, Carlos Gonzalez Almeida wrote:

With more details I want to do runmarket and I want to have PF=0.85 for
example in case9 for generators 2, 3. How can I do it?

Best Wishes

C. Gonzalez Almeida


On Mon, Mar 14, 2011 at 17:10, Carlos Gonzalez Almeida <
[email protected]> wrote:
Thank you.

I also have the Roberto's problem as well as in the case of runmarket to
set an specified power factor for generators except slack bus.

If it is possible please give an example. Because it can be useful for
other people who will use in the future MATPOWER.

Best Wishes

C. Gonzalez Almeida


On Mon, Mar 14, 2011 at 16:59, Ray Zimmerman <[email protected]> wrote:
1. You can constrain a generator to have a zero power factor by
setting PMIN = PMAX = 1. The generator reactive power is one of the
optimization variables in x, so it's value is determined by whatever solver
you happen to be using, MIPS by default. So I suppose if you need to know
which m-file computes its value, it would be mips.m. If you want to set the
reactive power of generator 2 to zero, simply set both
the QMIN and QMAX column in the corresponding row of the gen matrix to zero
(by the way, that is a power factor of 1, not 0).

Without more details I have no idea. Are you passing in any reactive power
offers?

-- 
Ray Zimmerman
Senior Research Associate
211 Warren Hall, Cornell University, Ithaca, NY 14853
phone: (607) 255-9645



On Mar 14, 2011, at 6:17 AM, Carlos Gonzalez Almeida wrote:

Dear Prof. Zimmerman

1.I studied the your response to Roberto Carvalini but I don't know how can
I define the PF for other generators to zero or other values when I do
runmarket and it doesn't work the code when I do runmarket. By which
formula you have computed the generator reactive power (in which m.file,
please address the m.file because I couldn't find it). For example, if I
want to set reactive power of generator 2 to zero, what should I do?

2. Why I cannot do runmarket for case30Q and case9Q? what is the reason?


Best Wishes

C. Gonzalez Almeida


On Fri, Mar 11, 2011 at 16:29, Ray Zimmerman <[email protected]> wrote:
See my response to Roberto Carvalini, posted only seconds ago. Am I fast or
what?  ;-)

-- 
Ray Zimmerman
Senior Research Associate
211 Warren Hall, Cornell University, Ithaca, NY 14853
phone: (607) 255-9645



On Mar 11, 2011, at 10:16 AM, Carlos Gonzalez Almeida wrote:

Thank you very much.

Could you please give me an example about defining power factor for
generators?

I cannot set it.

On Fri, Mar 11, 2011 at 16:09, Ray Zimmerman <[email protected]> wrote:
Carlos,

If you want the loads to have a power factor of 0.95, you need to set QD
such that PD/sqrt(PD^2 + QD^2) = 0.95, i.e. QD has to equal 0.108 * PD.
About the voltage constraint of 1.5 p.u., I don't see that anywhere, so I'm
not sure what you are referring to. The different lambdas at the two buses
are due to losses. The power factor of the generators is determined by the
solution algorithm within the bounds set for them. That is, each generator
has a feasible "box" defined by PMIN, PMAX, QMIN and QMAX. You don't
normally "set" the power factor of a generator as input to the OPF. I
suppose, if for some reason you have a strict power factor constraint on a
generator you could use some additional linear constraints to the OPF to
enforce it, but that would be unusual I think.

-- 
Ray Zimmerman
Senior Research Associate
211 Warren Hall, Cornell University, Ithaca, NY 14853
phone: (607) 255-9645



On Mar 10, 2011, at 8:10 AM, Carlos Gonzalez Almeida wrote:

Another question is this: when I have not fixed loads only I have
dispatchable loads how can I define power factor for generators and loads
separately?

Best Wishes

Carlos

On Thu, Mar 10, 2011 at 13:53, Carlos Gonzalez Almeida <
[email protected]> wrote:
Dear Prof. Zimmerman

Thanks a lot for your useful guidance.

For example, in the attached file for a simple case study with 2 loads and
generators I want to have a power factor 0.95. I have problem with
adjusting power factor in MATPOWER. How can I do it in the attached file?
Also I don't know why I have voltage constraint 1.5 pu. I think because of
these constraints I have a little bit difference in the value of lambda
I have done runmarket with the following offers and bids.
Could you please tell me why?

+++++++++++++++++++++
mpc0 = loadcase('case4gs1');
mpc = load2disp(mpc0);
mkt.OPF = 'AC';
offers.P.qty = [100;70];
offers.P.prc = [50;100];
bids.P.qty = [50 ;70 ];
bids.P.prc = [150 ;130 ];
[r, co, cb] = runmarket(mpc, offers, bids, mkt);
co.P.qty
co.P.prc
cb.P.qty
cb.P.prc
++++++++++++++++++++++++

Best Wishes

C. Gonzalez Almeida



On Wed, Mar 9, 2011 at 19:47, Ray Zimmerman <[email protected]> wrote:
Carlos,

I'm not sure what you mean by "test the example ... regarding zero power
factor". If you are going to change some of the existing dispatchable loads
to have a zero power factor, then the existing market structure for the
example, which includes only $/MW bids for active power, will not be
applicable. So you need to decide how you want to handle these
reactive-only loads. I suppose you'll need to specify reactive power bids
for them.

On your second question, the offers and bids are used to construct
a gencost matrix with negative costs for the negative generators that
represent dispatchable loads. The objective function is then to minimize
this "cost" of generation, which is computed in opf_costfcn.m. You are
correct that this is equivalent to maximizing social welfare.

-- 
Ray Zimmerman
Senior Research Associate
211 Warren Hall, Cornell University, Ithaca, NY 14853
phone: (607) 255-9645



On Mar 8, 2011, at 5:04 PM, Carlos Gonzalez Almeida wrote:

Dear Dr. Zimmerman

-Could you please test the example provided in the manual (t_auction_case)
regarding zero power factor. What changes should be carried out?

-Moreover, as you know, the objective function obtained in the runmarket is
Social welfare. Could you please address me the file that you
calculated objective function because I couldn't find it.  I want to know
in which file (the m file) you have calculated that?

Best Regards

Carlos



On Tue, Mar 8, 2011 at 22:34, Ray Zimmerman <[email protected]> wrote:
I'm not really sure without seeing the details of your example. I'm not
sure I've ever tested the runmarket code with pure reactive power loads.
It would require reactive power bids for those loads, but I'll need the
details to be able to help you further.

-- 
Ray Zimmerman
Senior Research Associate
211 Warren Hall, Cornell University, Ithaca, NY 14853
phone: (607) 255-9645



On Mar 7, 2011, at 10:42 AM, Carlos Gonzalez Almeida wrote:

Hi

I am new in MATPOWER abd I want to have zero power factor for example in
example case of manual in runmarket, but several error are occured. please
tell me why


Best Wishes

C. Gonzalez Almeida





Best Wishes

C. Gonzalez Almeida









Best Wishes

C. Gonzalez Almeida












Best Wishes

C. Gonzalez Almeida





Best Wishes

C. Gonzalez Almeida

Reply via email to