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,Gen,GenU,GenL,GenC,CenterA,PGi,PVQU,PVQL] = openfile(FileName) %************************************************************************** % 程序简介 : 子函数——读取潮流计算所需数据 % 编 者: % 编制时间 :2010.12 %************************************************************************** data = dlmread(FileName); % 一次读入全部数据 Busnum= data(1,1); % 节点数 PQstandard = data(1,3); % 基准容量 kmax = data(1,4); %最大迭代次数 Precision = data(2,1); % 精度 Balance = data(3,2); % 生成1到节点号的列向量 CenterA=data(1,5); %中心参数 LineNum=data(1,2); %支路数 Base=data(1,3); %% 各参数矩阵分块 zeroRow = find(data(:,1)==0); %查找第一列元素为零的行号 line = data(zeroRow(1)+1:zeroRow(2)-1,:); % 形成线路参数矩阵 ground = data(zeroRow(2)+1:zeroRow(3)-1,:); % 形成对地支路参数矩阵 tran = data(zeroRow(3)+1:zeroRow(4)-1,:); % 形成变压器参数矩阵 buspq = data(zeroRow(4)+1:zeroRow(5)-1,:); % 形成节点功率参数矩阵 PV = data(zeroRow(5)+1:zeroRow(6)-1,:); % 形成pv节点功率参数矩阵 Gen=data(zeroRow(6)+1:zeroRow(7)-1,:); %% 线路参数矩阵分块 Linei = line(:,2); % 节点i Linej= line(:,3); % 节点j Liner = line(:,4); % 线路电阻 Linex = line(:,5); % 线路电抗 Lineb = line(:,6); % b/2 %% 对地支路参数矩阵 Branchi = ground(:,1); % 对地支路节点号 Branchb = ground(:,2); % 对地支路的导纳 %% 变压器参数矩阵 Transfori = tran(:,2); % 节点i Transforj= tran(:,3); % 节点j Transforr = tran(:,4); % 变压器电阻 Transforx= tran(:,5); % 变压器电抗 Transfork0 = tran(:,6); % 变压器变比 %% 节点功率参数矩阵 Pointpoweri = buspq(:,1); PG=buspq(:,2); % 发电机有功 QG=buspq(:,3); % 发电机无功 PD=buspq(:,4); % 负荷有功 QD=buspq(:,5); % 负荷无功 %%除以基值 PG=PG/Base; QG=QG/Base; PD=PD/Base; QD=QD/Base; %% pv节点功率参数矩阵 PVi = PV(:,1); % PV节点的节点号 PVu = PV(:,2); % PV节点电压 PVQL=PV(:,3);%PV节点无功下限 PVQL=PVQL/Base; PVQU=PV(:,4); %PV节点无功上限 PVQU=PVQU/Base; %% 发电机参数 %GenU=Gen(:,[1 5 6]); %GenL=Gen(:,[1 7 8]); GenC=Gen(:,[1 2:4]); t=GenC(:,2); GenC(:,2)=GenC(:,4); GenC(:,4)=t; %%%%%%%%%%%%%%%%%%%% %GenC(:,2:4)=100*GenC(:,2:4); t=Gen(:,[1 5]); %GenL=[t,PVQL(PVi)]; GenL=t;%有功下界 GenL(:,2)=GenL(:,2)/Base; t=Gen(:,[1 6]); %GenU=[t,PVQU(PVi)]; GenU=t;%有功上届 GenU(:,2)=GenU(:,2)/Base; PGi=Gen(:,1);%发电机节点号 end