pes2014-debug2-laplace/pf.asv

35 lines
1.8 KiB
Plaintext
Raw Normal View History

2012-05-22 11:33:21 +08:00
function [kmax,Precision,Uangle,U,Busnum,PVi,PVu,Balance,Y,Angle,P0,Q0,r,c,GB,Linei,Linej,Transfori,Transforj,GenU,GenL,GenC,PG,QG,PD,QD,CenterA,PGi,PVQU,PVQL]=pf(FileName)
%**************************************************************************
% <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD><C6A3><EFBFBD><EFBFBD><EFBFBD>ϵͳ<CFB5><CDB3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
% <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3B7A8><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD>ţ<EFBFBD><C5A3>-<2D><><EFBFBD><EFBFBD>ѷ<EFBFBD><D1B7>
% <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܣ<EFBFBD><DCA3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
% <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ߣ<EFBFBD>
% <20><><EFBFBD><EFBFBD>ʱ<EFBFBD>䣺2010.12
%**************************************************************************
clc;
tic;
%% <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD>ļ<EFBFBD>
[Busnum,Balance,PQstandard,Precision,Linei,Linej,Liner,Linex,Lineb,kmax,Transfori ,...
Transforj,Transforr,Transforx,Transfork0,Branchi,Branchb,Pointpoweri,PG,QG,PD,QD,PVi,PVu,Gen,GenU,GenL,GenC,CenterA,PGi,PVQU,PVQL]= openfile(FileName);
%% <20>γɽڵ㵼<DAB5>ɾ<EFBFBD><C9BE><EFBFBD>
[G,B,GB,Y,r,c,Angle] = admmatrix(Busnum,Linei,Linej,Liner,Linex,Lineb,Transfori,Transforj,Transforr,...
Transforx,Transfork0,Branchi,Branchb);
[P0,Q0,U,Uangle] = Initial(PG,PD,PQstandard,Pointpoweri,QG,QD,Busnum); %<25><><EFBFBD><EFBFBD><EFBFBD>ʲ<EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD>
disp('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>i <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD>');
%% ѭ<><D1AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
for i = 0:kmax
[Jacob,PQ,U,Uangle] = jacobian(Busnum,Balance,PVi,PVu,U,Uangle,Y,Angle,P0,Q0,r,c); %<25>γ<EFBFBD><CEB3>ſ˱Ⱦ<CBB1><C8BE><EFBFBD>
% disp('<27><>һ<EFBFBD><D2BB><EFBFBD>ſ˱<C5BF>');
%full(Jacob);
m = max(abs(PQ));
m = full(m);
fprintf(' %u %.8f \n',i,m);
if m > Precision %<25>жϲ<D0B6>ƽ<EFBFBD><C6BD><EFBFBD><EFBFBD><EFBFBD>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD><E3BEAB>Ҫ<EFBFBD><D2AA>
[Uangle,U] = solvefun(Busnum,Jacob,PQ,Uangle,U); %<25><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̣<EFBFBD><CCA3><EFBFBD><EFBFBD>µ<EFBFBD>ѹ<EFBFBD><D1B9><EFBFBD><EFBFBD>
else
disp(['<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ',num2str(i),'<27><>']);
break %<25><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><E3BEAB>Ҫ<EFBFBD><D2AA><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
end
end
toc;
end