parent
8c79065f82
commit
a3fb4e2222
|
|
@ -5,7 +5,7 @@ tic
|
|||
[kmax,Precision,UAngel,Volt,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, ...
|
||||
Liner,Linex,Lineb,Transforr,Transforx,Transfork0]= ...
|
||||
pf('ieee30.dat');
|
||||
pf('E:/炬절/진쏜<EFBFBD>926_21671693_2012-09-06/newFIle20.txt');
|
||||
|
||||
%% ³±Á÷µÈʽ
|
||||
AngleIJ=sparse(r,c,UAngel(r)-UAngel(c)-Angle',Busnum,Busnum);
|
||||
|
|
@ -33,7 +33,6 @@ dQD=abs(dQ./QD);
|
|||
maxdPQ=max([dPD(dPD<10);dQD(dQD<10)]);
|
||||
|
||||
[Volt,UAngel,Init_Z,Init_W,Init_L,Init_U,Init_Y,PG,QG,RestraintCount,wPG,wQG,wPD,wQD,PD,PD0,QD,randPDind,Loadi,notLoadi]=OPF_Init(Busnum,Balance,PG,QG,Volt,GenU,GenL,PVi,PGi,PVQU,PVQL,PD0,QD0,QD,PD);
|
||||
|
||||
%% ¶¨Òå±äÁ¿
|
||||
BalVolt=Volt(Balance);
|
||||
Volt=sdpvar(Busnum,1);
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
function [GB,Y,r,c,Angle] = admmatrix(Busnum,Linei,Linej,Liner,Linex,Lineb,Transfori...
|
||||
,Transforj,Transforr,Transforx,Transfork0,Branchi,Branchb)
|
||||
,Transforj,Transforr,Transforx,Transfork0,Branchi,Branchg,Branchb)
|
||||
%**************************************************************************
|
||||
% 程序功能 : 子函数——形成节点导纳矩阵Y
|
||||
% 编 者:
|
||||
|
|
@ -22,6 +22,7 @@ end
|
|||
%% 接地支路计算
|
||||
if Branchi>0 % 判断有无接地支路
|
||||
B = B+sparse(Branchi,Branchi,Branchb,Busnum,Busnum);
|
||||
G = G+sparse(Branchi,Branchi,Branchg,Busnum,Busnum);
|
||||
end
|
||||
%% 化作极坐标形式
|
||||
GB = G+B.*1i; %将电导,电纳合并,写成复数形式
|
||||
|
|
|
|||
|
|
@ -1,5 +1,5 @@
|
|||
function [Busnum,Balance,PQstandard,Precision,Linei,Linej,Liner,Linex,Lineb,kmax,Transfori ,...
|
||||
Transforj,Transforr,Transforx,Transfork0,Branchi,Branchb,Pointpoweri,PG,QG,PD,QD,PVi,PVu,GenU,GenL,GenC,CenterA,PGi,PVQU,PVQL] = openfile2(FileName)
|
||||
Transforj,Transforr,Transforx,Transfork0,Branchi,Branchg,Branchb,Pointpoweri,PG,QG,PD,QD,PVi,PVu,GenU,GenL,GenC,CenterA,PGi,PVQU,PVQL] = openfile2(FileName)
|
||||
%**************************************************************************
|
||||
% 程序简介 : 子函数——读取潮流计算所需数据
|
||||
% 编 者:
|
||||
|
|
@ -34,6 +34,7 @@ Lineb = line(:,6); %
|
|||
%% 对地支路参数矩阵
|
||||
Branchi = ground(:,2); % 对地支路节点号
|
||||
Branchb = ground(:,4); % 对地支路的导纳
|
||||
Branchg = ground(:,3); % 对地支路的导纳
|
||||
%% 变压器参数矩阵
|
||||
Transfori = tran(:,3); % 节点i
|
||||
Transforj= tran(:,4); % 节点j
|
||||
|
|
@ -54,6 +55,7 @@ QD=QD/Base;
|
|||
%%
|
||||
PD=sparse(PD);
|
||||
QD=sparse(QD);
|
||||
%QD=PD*sqrt(1-.85^2)/.85;
|
||||
PG=sparse(PG);
|
||||
QG=sparse(QG);
|
||||
%% pv节点功率参数矩阵
|
||||
|
|
|
|||
14
pf.m
14
pf.m
|
|
@ -1,4 +1,4 @@
|
|||
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,Liner,Linex,Lineb,Transforr,Transforx,Transfork0]=pf(FileName)
|
||||
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,Liner,Linex,Lineb,Transforr,Transforx,Branchi,Branchg,Branchb,Transfork0]=pf(FileName)
|
||||
%**************************************************************************
|
||||
% 程序名称:电力系统潮流计算程序
|
||||
% 程序算法:极坐标下的牛顿-拉夫逊法
|
||||
|
|
@ -10,10 +10,10 @@ function [kmax,Precision,Uangle,U,Busnum,PVi,PVu,Balance,Y,Angle,P0,Q0,r,c,GB,Li
|
|||
tic;
|
||||
%% 读取数据文件
|
||||
[Busnum,Balance,PQstandard,Precision,Linei,Linej,Liner,Linex,Lineb,kmax,Transfori ,...
|
||||
Transforj,Transforr,Transforx,Transfork0,Branchi,Branchb,Pointpoweri,PG,QG,PD,QD,PVi,PVu,GenU,GenL,GenC,CenterA,PGi,PVQU,PVQL]= openfile(FileName);
|
||||
Transforj,Transforr,Transforx,Transfork0,Branchi,Branchg,Branchb,Pointpoweri,PG,QG,PD,QD,PVi,PVu,GenU,GenL,GenC,CenterA,PGi,PVQU,PVQL]= openfile2(FileName);
|
||||
%% 形成节点导纳矩阵
|
||||
[GB,Y,r,c,Angle] = admmatrix(Busnum,Linei,Linej,Liner,Linex,Lineb,Transfori,Transforj,Transforr,...
|
||||
Transforx,Transfork0,Branchi,Branchb);
|
||||
Transforx,Transfork0,Branchi,Branchg,Branchb);
|
||||
[P0,Q0,U,Uangle] = Initial(PG,PD,PQstandard,Pointpoweri,QG,QD,Busnum); %求功率不平衡量
|
||||
%disp('迭代次数i 最大不平衡量');
|
||||
%% 循环体计算
|
||||
|
|
@ -26,13 +26,9 @@ for i = 0:kmax
|
|||
if m > Precision %判断不平衡量是否满足精度要求
|
||||
[Uangle,U] = solvefun(Busnum,Jacob,PQ,Uangle,U); %求解修正方程,更新电压变量
|
||||
else
|
||||
%disp(['ÊÕÁ²£¬µü´ú´ÎÊýΪ',num2str(i),'´Î']);
|
||||
disp(['ÊÕÁ²£¬µü´ú´ÎÊýΪ',num2str(i),'´Î']);
|
||||
break %若满足精度要求,则计算收敛
|
||||
end
|
||||
end
|
||||
toc;
|
||||
PG=PG/PQstandard;
|
||||
QG=QG/PQstandard;
|
||||
PD=PD/PQstandard;
|
||||
QD=QD/PQstandard;
|
||||
end
|
||||
end
|
||||
|
|
|
|||
Loading…
Reference in New Issue