opfsparse/func_deltG.m

35 lines
1.0 KiB
Matlab

function deltG=func_deltG(Busnum,PVi,PGi)
%dg1_dPg=eye(size(PGi,1));
sizePGi=size(PGi,1);
sizePVi=size(PVi,1);
%%
dg1_dPg=sparse(1:sizePGi,1:sizePGi,ones(sizePGi,1),sizePGi,sizePGi);
%dg2_dPg=zeros(size(PGi,1),size(PVi,1));
dg2_dPg=sparse(sizePGi,sizePVi);
%dg3_dPg=zeros(size(PGi,1),Busnum);
dg3_dPg=sparse(sizePGi,Busnum);
%%
% dg1_dQr=zeros(size(PVi,1),size(PGi,1));
% dg2_dQr=eye(size(PVi,1));
% dg3_dQr=zeros(size(PVi,1),Busnum);
dg1_dQr=sparse(sizePVi,sizePGi);
dg2_dQr=sparse(1:sizePVi,1:sizePVi,ones(sizePVi,1),sizePVi,sizePVi);
dg3_dQr=sparse(sizePVi,Busnum);
%%
% dg1_dx=zeros(2*Busnum,size(PGi,1));
% dg2_dx=zeros(2*Busnum,size(PVi,1));
% dg3_dx=zeros(2*Busnum,Busnum);
% for I=1:Busnum
% %dg3_dx(2*I,I)=1;ÔÝĘą¸ÄŇťĎÂ
% dg3_dx(I,I)=1;
% end
dg1_dx=sparse(2*Busnum,sizePGi);
dg2_dx=sparse(2*Busnum,sizePVi);
dg3_dx=[sparse(1:Busnum,1:Busnum,ones(Busnum,1),Busnum,Busnum);
sparse(Busnum,Busnum);
];
%%
deltG=[dg1_dPg,dg2_dPg,dg3_dPg;
dg1_dQr,dg2_dQr,dg3_dQr;
dg1_dx,dg2_dx,dg3_dx;
];