📄 ymatrixconstruct.m
字号:
function [Y_B]=YmatrixConstruct(para_line,para_trans2,para_trans3,para_capac,SB,NodeNum)
% 自动生成节点导纳矩阵程序
% SB为功率基准值,NodeNum是电力系统网络节点数(含三绕组变压器增加的节点数)
Y_B=zeros(NodeNum,NodeNum);
% 对线路
for i=1:size(para_line,1)
[Y,Z]=LineModel(para_line(i,:),SB);
act_node=para_line(i,2:3);
Y_B(act_node(1),act_node(1))=Y_B(act_node(1),act_node(1))+1/Z+Y;
Y_B(act_node(2),act_node(2))=Y_B(act_node(2),act_node(2))+1/Z+Y;
Y_B(act_node(1),act_node(2))=Y_B(act_node(1),act_node(2))-1/Z;
end
% 对两绕组变压器
for i=1:size(para_trans2,1)
[Y,Z,Gt,Bt]=Trans2Model(para_trans2(i,:),SB);
act_node=para_trans2(i,2:3);
Y_B(act_node(1),act_node(1))=Y_B(act_node(1),act_node(1))+1/Z+Y(1);
Y_B(act_node(2),act_node(2))=Y_B(act_node(2),act_node(2))+1/Z+Y(2);
Y_B(act_node(1),act_node(2))=Y_B(act_node(1),act_node(2))-1/Z;
end
% 对三绕组变压器
for i=1:size(para_trans3,1)
[Y_out,Z_out]=Trans3Model(para_trans3(i,:),SB);
Y_B(para_trans3(5),para_trans3(5))=Y_B(para_trans3(5),para_trans3(5))+sum(1./Z_out)+Y_out(4);
act_node=para_trans3(i,2:4);
M_sequence=1;
for j=act_node
Y_B(j,j)=Y_B(j,j)+1/Z_out(M_sequence)+Y_out(M_sequence);
Y_B(j,para_trans3(5))=Y_B(j,para_trans3(5))-1/Z_out(M_sequence);
M_sequence=M_sequence+1;
end
end
% construct Y_B
temp_triu=triu(Y_B,1)
Y_B=Y_B+(triu(Y_B,1)).';
Y_B=Y_B+(tril(Y_B,-1)).';
Y_B=Y_B-temp_triu;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -