I agree with Ray. The base case dispatch being updated by OPF causes a 
reduction in generation, commensurate to the load reduction, and hence you are 
seeing a decrease in the load margin. What happens when you decrease the load 
at some other buses? Do you get the same behavior?

Shri

From: Ray Zimmerman <r...@cornell.edu<mailto:r...@cornell.edu>>
Reply-To: MATPOWER discussion forum 
<matpowe...@list.cornell.edu<mailto:matpowe...@list.cornell.edu>>
Date: Thursday, February 16, 2017 at 8:28 AM
To: MATPOWER discussion forum 
<matpowe...@list.cornell.edu<mailto:matpowe...@list.cornell.edu>>
Subject: Re: load reduction in continuation power flow (CPF)

The code looks correct to me. I’m not sure why the load margin decreases, but 
the changes in load (from positive to equally negative) may be forcing the OPF 
solution into generator dispatch solutions that somehow reduce the load margin.

    Ray


On Feb 15, 2017, at 10:45 PM, Majid Mehdizadeh 
<majidmeh....@gmail.com<mailto:majidmeh....@gmail.com>> wrote:

Dear sir and matpower committee
It is very strange for me that when the load of some PQ buses in IEEE 39 bus 
test system are reduced and then cpf is performed then the load margin of the 
system is becoming lower . It should be noted that i use the following code to 
estimate the load margin of the system using maximum lambda.:
clc
clear all
a=0;
for ii=1:20
    mpcb = loadcase(case39); % load base case
    for v=[1 3 4 7];
        mpcb.bus(v,3)=mpcb.bus(v,3)-a*mpcb.bus(v,3);
    end
    mpopt = mpoption('verbose',0,'out.all',0); %default
    result=runopf(mpcb,mpopt);%bayad print ro disable koni
    mpcb.gen(:,2)=result.gen(:,2);
    load=sum(mpcb.bus(:,3))
    generation=sum(mpcb.gen(:,2))
    mpopt = mpoption('out.all',0,'verbose',0);
    mpopt = mpoption(mpopt,'cpf.stop_at','NOSE','cpf.step', 0.2);
    mpopt = mpoption(mpopt,'cpf.plot.level',0,'cpf.plot.bus',8);
    mpct = mpcb; % set up target case with
    mpct.gen(:,[2 3]) = mpcb.gen(:,[2 3]) * 3.5; % increased generation
    mpct.bus(:,[3 4]) = mpcb.bus(:,[3 4]) * 3.5; % and increased load
    results = runcpf(mpcb, mpct, mpopt);
    landa(ii)=results.cpf.max_lam;%
    Pf= mpcb.bus(:,3) +landa(ii)*(mpct.bus(:,3)-mpcb.bus(:,3));
    Pinitial(ii)=sum(mpcb.bus(:,3));
    Pfinal(ii)=sum(Pf);
    loadmargin(ii)=Pfinal(ii)-Pinitial(ii);
    a=a+0.1;
end
bar(loadmargin)



Is there any wrong calculation of final or initial load with maximum lambda? as 
you see, the load margin is final load minus the initial load:
 Pf= mpcb.bus(:,3) +landa(ii)*(mpct.bus(:,3)-mpcb.bus(:,3));
    Pinitial(ii)=sum(mpcb.bus(:,3));
    Pfinal(ii)=sum(Pf);
    loadmargin(ii)=Pfinal(ii)-Pinitial(ii);

--

Best Regards
Majid Mehdizadeh

Ph.D Student of electrical engineering, Power Department,
Ferdowsi University of Mashhad

Substation and Transmission Line Expert, Engineering office,
Khorasan Regional Electric Co.

http://mehdizadeh.majid.student.um.ac.ir<http://mehdizadeh.majid.student.um.ac.ir/>



Reply via email to