www.pudn.com > OPF.zip > ReadData.m, change:2013-01-24,size:6583b


%% *************************************************************** 
%             作者:陆镛 
%             原创日期:2012年11月24号 
%             修改日期:2012年12月2号 
%             函数说明:从潮流数据文件读取各相关数据 
%% *************************************************************** 
function [NodeNum,BranchNum,CapacityRef,IterationMax,Center,Precision,... 
    BalanceI,LineI,LineJ,LineR,LineX,LineB,GroundI,GroundB,TransformerI,... 
    TransformerJ,TransformerR,TransformerX,TransformerK,NodeI,NodePg,... 
    NodeQg,NodePl,NodeQl,PvI,PvV,PvQmin,PvQmax,GenI,GenC,GenB,GenA,GenPmin... 
    ,GenPmax,PvNum,GenNum]=ReadData(FileName) 
%% 变量说明:****************************************************** 
% 输入参数说明:FileName:数据文件名 
% 输出参数说明:NodeNum:节点数  BranchNum:支路数  CapacityRef:基准容量  IterationMax:迭代最大数 
% Center:中心参数  Precision:迭代精度  BalanceI:平衡节点号  LineI:线路节点i  LineJ:线路节点j 
% LineR:线路电阻  LineX:线路电抗  LineB:线路对地电纳  GroundI:接地支路节点i  GroundB:接地支路电纳  
% TransformerI:变压器节点i  TransformerJ:变压器节点j  TransformerR:变压器电阻  TransformerX:变压器电抗 
% TransformerK:变压器变比  NodeI:运行参数节点i   NodePg:有功出力  NodeQg:无功出力  NodePl:有功负荷  
% NodeQl:无功负荷  PvI:PV节点i  PvV:PV节点电压  PvQmin:无功出力下限  PvQmax:无功出力上限   
% GenI:发电机节点号  GenC:耗量特性零次项系数  GenB:耗量特性一次项系数  GenA:耗量特性二次项系数    
% GenPmin:有功出力下限  GenPmax:有功出力上限  PvNum:Pv节点数  GenNum:发电机节点数 
%% *************************************************************** 
M=dlmread(FileName);                                                        %从数据文件获取数据,整块赋值给M。 
z=find(M(:,1)==0);                                                          %从M的第一列数据找出0的位置,并赋值给z,以便分块处理。 
% 系统参数 
NodeNum=M(1,1);                                                             %获取节点数。 
BranchNum=M(1,2);                                                           %获取支路数。 
CapacityRef=M(1,3);                                                         %获取基准容量。 
IterationMax=M(1,4);                                                        %获取迭代最大次数。 
Center=M(1,5);                                                              %获取中心参数。 
Precision=M(2,1);                                                           %获取迭代精度。 
BalanceI=M(3,2);                                                            %获取平衡节点号。 
% 线路参数 
Line=M(z(1)+1:z(2)-1,1:6);                                                  %获取线路相关参数,赋值给Line。 
LineI=Line(:,2);                                                            %从Line中获取线路节点i。 
LineJ=Line(:,3);                                                            %从Line中获取线路节点j。 
LineR=Line(:,4);                                                            %从Line中获取线路电阻。 
LineX=Line(:,5);                                                            %从Line中获取线路电抗。 
LineB=Line(:,6);                                                            %从Line中获取线路对地电纳。 
% 接地支路参数 
Ground=M(z(2)+1:z(3)-1,1:2);                                                %获取接地支路相关参数,赋值给Ground。 
Ground=sortrows(Ground,1); 
GroundI=Ground(:,1);                                                        %从Ground中获取接地支路节点i。 
GroundB=Ground(:,2);                                                        %从Ground中获取接地支路电纳。 
% 变压器参数 
Transformer=M(z(3)+1:z(4)-1,1:6);                                           %获取变压器相关参数,赋值给Transformer。 
TransformerI=Transformer(:,2);                                              %从Transformer中获取变压器节点i。 
TransformerJ=Transformer(:,3);                                              %从Transformer中获取变压器节点j。 
TransformerR=Transformer(:,4);                                              %从Transformer中获取变压器电阻。 
TransformerX=Transformer(:,5);                                              %从Transformer中获取变压器电抗。 
TransformerK=Transformer(:,6);                                              %从Transformer中获取变压器变比。 
% 运行参数 
Node=M(z(4)+1:z(5)-1,1:5);                                                  %获取运行参数,赋值给Node。 
Node=sortrows(Node,1);                                                      %按节点号排序。 
NodeI=Node(:,1);                                                            %从Node中获取运行参数节点i。                                                           
NodePg=Node(:,2);                                                           %从Node中获取有功出力。 
NodeQg=Node(:,3);                                                           %从Node中获取无功出力。 
NodePl=Node(:,4);                                                           %从Node中获取有功负荷 。 
NodeQl=Node(:,5);                                                           %从Node中获取无功负荷 。 
% PV节点参数                                                           
Pv=M(z(5)+1:z(6)-1,1:4);                                                    %获取PV节点相关参数,赋值给Pv。 
Pv=sortrows(Pv,1); 
PvI=Pv(:,1);                                                                %从Pv中获取PV节点i。 
PvNum=length(Pv(:,1));                                                      %Pv节点数。 
PvV=Pv(:,2);                                                                %从Pv中获取PV节点电压。 
PvQmin=Pv(:,3);                                                             %从Pv中获取无功出力下限。 
PvQmax=Pv(:,4);                                                             %从Pv中获取无功出力上限。 
% 发电机耗量特性参数 
Gen=M(z(6)+1:z(7)-1,1:6);                                                   %获取发电机耗量特性参数。 
Gen=sortrows(Gen,1); 
GenI=Gen(:,1);                                                              %从Gen中获取发电机节点号。 
GenNum=length(Gen(:,1));                                                    %发电机节点数。 
GenC=Gen(:,2);                                                              %从Gen中获取耗量特性零次项系数。 
GenB=Gen(:,3);                                                              %从Gen中获取耗量特性一次项系数。 
GenA=Gen(:,4);                                                              %从Gen中获取耗量特性二次项系数。 
GenPmin=Gen(:,5);                                                           %从Gen中获取有功出力下限。 
GenPmax=Gen(:,6);                                                           %从Gen中获取有功出力上限。 
end