📄 gsdf_ieee30_1.m
字号:
% function [B,D]=gsdf_ieee30_1 %定义计算发电转移分布因子的函数
clear;
clc;
%采用直流潮流,忽略r,Q
%[MVAbase, bus, gen, branch, success, et]=rundcpf('case_ieee30'); %运行matpower中直流潮流程序,branch增加四列元素
[baseMVA, bus, gen, branch] = case_ieee30; %调用原始30节点系统数据
for i=1:41
b(i)=-1/branch(i,4); %相应电纳为负值(电感型)
end
Bline=diag(b); %形成对角元素是线路导纳的对角矩阵(直流潮流忽略r)
M=zeros(30,41); %初始化节点支路关联矩阵;
% for i=1:41 %根据潮流方向形成节点支路关联矩阵
% if branch(i,12)>0 %潮流计算后新生成的12列表示线路潮流
% M(branch(i,1),i)=1;
% M(branch(i,2),i)=-1;
% else
% M(branch(i,1),i)=-1;
% M(branch(i,2),i)=1;
% end
% end
for i=1:41
M(branch(i,1),i)=1;
M(branch(i,2),i)=-1;
end
Mr=M(2:30,:); %节点1做为平衡节点
bb=zeros(1,30);
%形成以节点自导纳为对角元素的对角矩阵
for i=1:30
for j=1:41
if branch(j,1)==i|branch(j,2)==i
bb(i)=bb(i)+b(j);
bb(i)=bb(i)+branch(j,5)/2; %加上相应节点所对应的支路对地导纳
end
end
end
B=diag(bb);
%形成全节点导纳矩阵
x=0;
y=0;
for i=1:41
x=branch(i,1);
y=branch(i,2);
B(x,y)=-b(i); %互阻抗为相应导纳的负值
B(y,x)=B(x,y);
end
Br=B(2:30,2:30); %形成删去参考节点的节点电纳矩阵
Dr=Bline*Mr'*inv(Br); %根据直流潮流计算GSDF
D0=zeros(41,1);
D=[D0,Dr]; %添加一列全零列,得到全维的GSDF
return
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -