⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fm_wcall.m

📁 电力系统的psat
💻 M
📖 第 1 页 / 共 2 页
字号:
    count = fprintf(fid,[space,Comp.funct{i},'(4);\n']);  endend% ------------------------------------------------------------------------% call the complete set of eqns and Jacs for distributed slack bus% ------------------------------------------------------------------------count = fprintf(fid,'\n case ''kg''\n\n');if Line.n > 0;  count = fprintf(fid,['  fm_lf(1);\n']);endfor i = 1:Comp.n-1  ncompi = eval(Comp.number{i});  flag1i = 1; %Comp.prop(i,1);  lf = 1; %Comp.prop(i,6);  if ncompi > 0 & flag1i  & lf;    count = fprintf(fid,[space,Comp.funct{i},'(1);\n']);  endendcount = fprintf(fid,'\n  DAE.g = [DAE.gp; DAE.gq];\n\n');if Line.n > 0  count = fprintf(fid,[space,'fm_lf(2);\n']);endcount = fprintf(fid,'  DAE.Jlf = [DAE.J11, DAE.J12; DAE.J21, DAE.J22];\n');for i = 1:Comp.n-2  ncompi = eval(Comp.number{i});  flag2i = 1; %Comp.prop(i,2);  lf = 1; %Comp.prop(i,6);  if ncompi > 0 & flag2i  & lf    count = fprintf(fid,[space,Comp.funct{i},'(2);\n']);  endendcount = fprintf(fid,'\n  DAE.Jlfv = [DAE.J11, DAE.J12; DAE.J21, DAE.J22];\n\n');for i = 1:Comp.n-2  ncompi = eval(Comp.number{i});  flag3i = 1; %Comp.prop(i,3);  lf = 1; %Comp.prop(i,6);  if ncompi > 0 & flag3i  & lf    count = fprintf(fid,[space,Comp.funct{i},'(3);\n']);  endendcount = fprintf(fid,'\n');if Settings.octave  count = fprintf(fid,'\n  DAE.Fx = zeros(DAE.n,DAE.n);');  count = fprintf(fid,'\n  DAE.Fy = zeros(DAE.n,2*Bus.n);');  count = fprintf(fid,'\n  DAE.Gx = zeros(2*Bus.n,DAE.n);\n');else  count = fprintf(fid,'\n  DAE.Fx = sparse(DAE.n,DAE.n);');  count = fprintf(fid,'\n  DAE.Fy = sparse(DAE.n,2*Bus.n);');  count = fprintf(fid,'\n  DAE.Gx = sparse(2*Bus.n,DAE.n);\n');endcount = fprintf(fid,'\n');for i = 1:Comp.n-2  ncompi = eval(Comp.number{i});  flag4i = 1; %Comp.prop(i,4);  lf = 1; %Comp.prop(i,6);  if ncompi > 0 & flag4i  & lf    count = fprintf(fid,[space,Comp.funct{i},'(4);\n']);  endend% ------------------------------------------------------------------------% call the complete set of eqns and Jacs for distributed slack bus% ------------------------------------------------------------------------count = fprintf(fid,'\n case ''kgpf''\n\n');if Line.n > 0;  count = fprintf(fid,['  fm_lf(1);\n']);endfor i = 1:Comp.n-1  ncompi = eval(Comp.number{i});  flag1i = Comp.prop(i,1);  lf = Comp.prop(i,6);  if ncompi > 0 & flag1i  & lf;    count = fprintf(fid,[space,Comp.funct{i},'(1);\n']);  endendcount = fprintf(fid,'\n  DAE.g = [DAE.gp; DAE.gq];\n\n');if Line.n > 0  count = fprintf(fid,[space,'fm_lf(2);\n']);endcount = fprintf(fid,'  DAE.Jlf = [DAE.J11, DAE.J12; DAE.J21, DAE.J22];\n');for i = 1:Comp.n-2  ncompi = eval(Comp.number{i});  flag2i = Comp.prop(i,2);  lf = Comp.prop(i,6);  if ncompi > 0 & flag2i  & lf    count = fprintf(fid,[space,Comp.funct{i},'(2);\n']);  endendcount = fprintf(fid,'\n  DAE.Jlfv = [DAE.J11, DAE.J12; DAE.J21, DAE.J22];\n\n');for i = 1:Comp.n-2  ncompi = eval(Comp.number{i});  flag3i = Comp.prop(i,3);  lf = Comp.prop(i,6);  if ncompi > 0 & flag3i  & lf    count = fprintf(fid,[space,Comp.funct{i},'(3);\n']);  endendcount = fprintf(fid,'\n');if Settings.octave  count = fprintf(fid,'\n  DAE.Fx = zeros(DAE.n,DAE.n);');  count = fprintf(fid,'\n  DAE.Fy = zeros(DAE.n,2*Bus.n);');  count = fprintf(fid,'\n  DAE.Gx = zeros(2*Bus.n,DAE.n);\n');else  count = fprintf(fid,'\n  DAE.Fx = sparse(DAE.n,DAE.n);');  count = fprintf(fid,'\n  DAE.Fy = sparse(DAE.n,2*Bus.n);');  count = fprintf(fid,'\n  DAE.Gx = sparse(2*Bus.n,DAE.n);\n');endcount = fprintf(fid,'\n');for i = 1:Comp.n-2  ncompi = eval(Comp.number{i});  flag4i = Comp.prop(i,4);  lf = Comp.prop(i,6);  if ncompi > 0 & flag4i  & lf    count = fprintf(fid,[space,Comp.funct{i},'(4);\n']);  endend% ------------------------------------------------------------------------% calling algebraic equations and Jacobians% ------------------------------------------------------------------------count = fprintf(fid,'\n case ''n''\n\n');if Line.n > 0  count = fprintf(fid,['  fm_lf(1);\n']);endfor i = 1:Comp.n  ncompi = eval(Comp.number{i});  flag1i = Comp.prop(i,1);  %lf = Comp.prop(i,6);  if ncompi > 0 & flag1i    count = fprintf(fid,[space,Comp.funct{i},'(1);\n']);  endendcount = fprintf(fid,'\n  DAE.g = [DAE.gp; DAE.gq];\n\n');if Line.n > 0  count = fprintf(fid,['  fm_lf(2);\n']);endcount = fprintf(fid,'  DAE.Jlf = [DAE.J11, DAE.J12; DAE.J21, DAE.J22];\n');for i = 1:Comp.n  ncompi = eval(Comp.number{i});  flag2i = Comp.prop(i,2);  %lf = Comp.prop(i,6);  if ncompi > 0 & flag2i    count = fprintf(fid,[space,Comp.funct{i},'(2);\n']);  endendcount = fprintf(fid,'\n  DAE.Jlfv = [DAE.J11, DAE.J12; DAE.J21, DAE.J22];\n');% ------------------------------------------------------------------------% call all the functions for setting initial point% ------------------------------------------------------------------------count = fprintf(fid,'\n case ''i''\n\n');if Line.n > 0  count = fprintf(fid,['  fm_lf(1);\n']);endfor i = 1:Comp.n  ncompi = eval(Comp.number{i});  flag1i = Comp.prop(i,1);  if ncompi > 0 & flag1i == 1    count = fprintf(fid,[space,Comp.funct{i},'(1);\n']);  endendcount = fprintf(fid,'\n  DAE.g = [DAE.gp; DAE.gq];\n\n');if Line.n > 0  count = fprintf(fid,['  fm_lf(2);\n']);endcount = fprintf(fid,'  DAE.Jlf = [DAE.J11, DAE.J12; DAE.J21, DAE.J22];\n');for i = 1:Comp.n  ncompi = eval(Comp.number{i});  flag2i = Comp.prop(i,2);  if ncompi > 0 & flag2i == 1    count = fprintf(fid,[space,Comp.funct{i},'(2);\n']);  endendcount = fprintf(fid,'\n  DAE.Jlfv = [DAE.J11, DAE.J12; DAE.J21, DAE.J22];\n\n');for i = 1:Comp.n  ncompi = eval(Comp.number{i});  flag3i = Comp.prop(i,3);  if ncompi > 0 & flag3i == 1    count = fprintf(fid,[space,Comp.funct{i},'(3);\n']);  endendcount = fprintf(fid,'\n');count = fprintf(fid,'\n  if DAE.n > 0');if Settings.octave  count = fprintf(fid,'\n  DAE.Fx = zeros(DAE.n,DAE.n);');  count = fprintf(fid,'\n  DAE.Fy = zeros(DAE.n,2*Bus.n);');  count = fprintf(fid,'\n  DAE.Gx = zeros(2*Bus.n,DAE.n);\n');else  count = fprintf(fid,'\n  DAE.Fx = sparse(DAE.n,DAE.n);');  count = fprintf(fid,'\n  DAE.Fy = sparse(DAE.n,2*Bus.n);');  count = fprintf(fid,'\n  DAE.Gx = sparse(2*Bus.n,DAE.n);\n');endcount = fprintf(fid,'\n  end \n');for i = 1:Comp.n  ncompi = eval(Comp.number{i});  flag4i = Comp.prop(i,4);  if ncompi > 0 & flag4i == 1    count = fprintf(fid,[space,Comp.funct{i},'(4);\n']);  endend% ------------------------------------------------------------------------% call saturation functions% ------------------------------------------------------------------------count = fprintf(fid,'\n case ''5''\n\n');for i = 1:Comp.n  ncompi = eval(Comp.number{i});  flag5i = Comp.prop(i,5);  if ncompi > 0 & flag5i == 1    count = fprintf(fid,[space,Comp.funct{i},'(5);\n']);  endend% ------------------------------------------------------------------------%  close "fm_call.m"% ------------------------------------------------------------------------count = fprintf(fid,'\nend\n');count = fclose(fid);cd(Path.local);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -