61 lines
2.3 KiB
Mathematica
61 lines
2.3 KiB
Mathematica
|
|
function Jacob=jacobian_M(Busnum,Volt,Y,Angle,AngleIJMat)
|
|||
|
|
%**************************************************************************
|
|||
|
|
% <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> : <EFBFBD>Ӻ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>γ<EFBFBD><EFBFBD>ſɱȾ<EFBFBD><EFBFBD><EFBFBD>Jacobian
|
|||
|
|
% <EFBFBD><EFBFBD> <EFBFBD>ߣ<EFBFBD>
|
|||
|
|
% <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD>䣺2010.12
|
|||
|
|
%**************************************************************************
|
|||
|
|
%% <EFBFBD>ֱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ſ˱Ⱦ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>H,L,N,J<EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P,Q
|
|||
|
|
temp1=-Volt'*Volt.*Y;
|
|||
|
|
AngleIJ=AngleIJMat-Angle;
|
|||
|
|
temp11=Volt'*ones(1,Busnum).*Y;
|
|||
|
|
temp2=sum(temp1.*sin(AngleIJ),2);
|
|||
|
|
temp22 = sum(temp11.*sin(AngleIJ),2);
|
|||
|
|
temp3 = sum(temp1.*cos(AngleIJ),2);
|
|||
|
|
temp33 = sum(temp11.*cos(AngleIJ),2);
|
|||
|
|
temp4=diag(temp2);
|
|||
|
|
temp44=diag(temp22);
|
|||
|
|
temp5=diag(temp3);
|
|||
|
|
temp55=diag(temp33);
|
|||
|
|
%<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Lii<EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
t1=ones(Busnum,1)*Volt.*Y;
|
|||
|
|
t2=sum(t1.*sin(AngleIJ),2);
|
|||
|
|
t3=sum(t1.*cos(AngleIJ),2);
|
|||
|
|
t4=diag(t2);
|
|||
|
|
t5=diag(t3);
|
|||
|
|
H = temp1.*sin(AngleIJ)-temp4;%
|
|||
|
|
L = -temp11.*sin(AngleIJ);%
|
|||
|
|
%L(1:Busnum,1:Busnum)=-temp44+;
|
|||
|
|
L=L-t4;
|
|||
|
|
N=-temp11.*cos(AngleIJ);%
|
|||
|
|
%N(1:Busnum,1:Busnum)=-temp55-diag(diag(temp11.*cos(Angle) ) );
|
|||
|
|
N=N-t5;
|
|||
|
|
J = -temp1.*cos(AngleIJ)+temp5;%
|
|||
|
|
%%
|
|||
|
|
|
|||
|
|
|
|||
|
|
%Q = Q0+temp2'; %<EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>P
|
|||
|
|
%P = P0+temp3'; %<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Q
|
|||
|
|
%% <EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD>pv<EFBFBD>ڵ<EFBFBD>
|
|||
|
|
% H(:,Balance) = 0;
|
|||
|
|
% H(Balance,:) = 0;
|
|||
|
|
% H(Balance,Balance) = 100; % ƽ<EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ĶԽ<EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
% L(:,PVi) = 0;
|
|||
|
|
% L(PVi,:) = 0;
|
|||
|
|
% L = L+sparse(PVi,PVi,ones(1,length(PVi)),Busnum,Busnum); % PV<EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD>ĶԽ<EFBFBD>Ԫ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ1
|
|||
|
|
% J(:,Balance) = 0;
|
|||
|
|
% J(PVi,:) = 0;
|
|||
|
|
% N(:,PVi) = 0;
|
|||
|
|
% N(Balance,:) = 0;
|
|||
|
|
% Q(PVi) = 0; % <EFBFBD><EFBFBD>pv<EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
% P(Balance) = 0; % ƽ<EFBFBD><EFBFBD><EFBFBD>ڵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>й<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʲ<EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
%% <EFBFBD>ϳ<EFBFBD>PQ<EFBFBD><EFBFBD><EFBFBD>ſɱȾ<EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
t1=zeros(2*Busnum);
|
|||
|
|
t1(1:2:2*Busnum,1:2:2*Busnum)=H;
|
|||
|
|
t1(1:2:2*Busnum,2:2:2*Busnum)=N;
|
|||
|
|
t1(2:2:2*Busnum,1:2:2*Busnum)=J;
|
|||
|
|
t1(2:2:2*Busnum,2:2:2*Busnum)=L;
|
|||
|
|
% t1(1:)
|
|||
|
|
% PQ = cat(2,P,Q); % <EFBFBD>γɹ<EFBFBD><EFBFBD>ʲ<EFBFBD>ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
%Jacob = cat(1,cat(2,H,N),cat(2,J,L)); % <EFBFBD>γ<EFBFBD>Jacobian<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|||
|
|
Jacob=t1;
|
|||
|
|
end
|