📄 fm_lines.m
字号:
function fm_lines(flag)% FM_LINES define transmission lines (PI circuit model)%% FM_LINES(FLAG)% FLAG 1 -> Algebraic Equations% 2 -> Algebraic Jacobians%%Author: Federico Milano%Date: 11-Nov-2002%Version: 1.0.0%%E-mail: fmilano@thunderbox.uwaterloo.ca%Web-site: http://thunderbox.uwaterloo.ca/~fmilano%% Copyright (C) 2002-2005 Federico Milano%% This toolbox is free software; you can redistribute it and/or modify% it under the terms of the GNU General Public License as published by% the Free Software Foundation; either version 2.0 of the License, or% (at your option) any later version.%% This toolbox is distributed in the hope that it will be useful, but% WITHOUT ANY WARRANTY; without even the implied warranty of% MERCHANDABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU% General Public License for more details.%% You should have received a copy of the GNU General Public License% along with this toolbox; if not, write to the Free Software% Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307,% USA.global Lines Bus DAEV1 = DAE.V(Lines.bus1);V2 = DAE.V(Lines.bus2);theta1 = DAE.a(Lines.bus1);theta2 = DAE.a(Lines.bus2);rl = Lines.con(:,6);xl = Lines.con(:,7);bl = Lines.con(:,8);cos12 = cos(theta1-theta2);sin12 = sin(theta1-theta2);zl = rl.*rl+xl.*xl;g12 = rl./zl;b12 = -xl./zl;bl2 = 0.5*bl;V12 = V1.*V2;% Algebraic Equations:switch flagcase 1 for i = 1:Lines.n DAE.gp(Lines.bus1(i)) = DAE.gp(Lines.bus1(i)) + (V1(i)*V1(i)*g12(i) - V12(i)*(g12(i)*cos12(i) + b12(i)*sin12(i))); DAE.gq(Lines.bus1(i)) = DAE.gq(Lines.bus1(i)) + (-V1(i)*V1(i)*(b12(i)+bl2(i)) - V12(i)*(g12(i)*sin12(i) - b12(i)*cos12(i))); DAE.gp(Lines.bus2(i)) = DAE.gp(Lines.bus2(i)) + (V2(i)*V2(i)*g12(i) - V12(i)*(g12(i)*cos12(i) - b12(i)*sin12(i))); DAE.gq(Lines.bus2(i)) = DAE.gq(Lines.bus2(i)) + (-V2(i)*V2(i)*(b12(i)+bl2(i)) + V12(i)*(g12(i)*sin12(i) + b12(i)*cos12(i))); end % Algebraic Jacobians:case 2 for i = 1:Lines.n a = g12(i)*cos12(i)+b12(i)*sin12(i); b = g12(i)*sin12(i)-b12(i)*cos12(i); c = g12(i)*cos12(i)-b12(i)*sin12(i); d = g12(i)*sin12(i)+b12(i)*cos12(i); e = b12(i)+bl2(i); DAE.J12(Lines.bus1(i),Lines.bus1(i)) = DAE.J12(Lines.bus1(i),Lines.bus1(i)) + 2*V1(i)*g12(i) - V2(i)*a; DAE.J12(Lines.bus1(i),Lines.bus2(i)) = DAE.J12(Lines.bus1(i),Lines.bus2(i)) - V1(i)*a; DAE.J11(Lines.bus1(i),Lines.bus1(i)) = DAE.J11(Lines.bus1(i),Lines.bus1(i)) + V12(i)*b; DAE.J11(Lines.bus1(i),Lines.bus2(i)) = DAE.J11(Lines.bus1(i),Lines.bus2(i)) - V12(i)*b; DAE.J22(Lines.bus1(i),Lines.bus1(i)) = DAE.J22(Lines.bus1(i),Lines.bus1(i)) - 2*V1(i)*e - V2(i)*b; DAE.J22(Lines.bus1(i),Lines.bus2(i)) = DAE.J22(Lines.bus1(i),Lines.bus2(i)) - V1(i)*b; DAE.J21(Lines.bus1(i),Lines.bus1(i)) = DAE.J21(Lines.bus1(i),Lines.bus1(i)) - V12(i)*a; DAE.J21(Lines.bus1(i),Lines.bus2(i)) = DAE.J21(Lines.bus1(i),Lines.bus2(i)) + V12(i)*a; DAE.J12(Lines.bus2(i),Lines.bus1(i)) = DAE.J12(Lines.bus2(i),Lines.bus1(i)) + (-V2(i)*c); DAE.J12(Lines.bus2(i),Lines.bus2(i)) = DAE.J12(Lines.bus2(i),Lines.bus2(i)) + 2*V2(i)*g12(i) - V1(i)*c; DAE.J11(Lines.bus2(i),Lines.bus1(i)) = DAE.J11(Lines.bus2(i),Lines.bus1(i)) + V12(i)*d; DAE.J11(Lines.bus2(i),Lines.bus2(i)) = DAE.J11(Lines.bus2(i),Lines.bus2(i)) - V12(i)*d; DAE.J22(Lines.bus2(i),Lines.bus1(i)) = DAE.J22(Lines.bus2(i),Lines.bus1(i)) + V2(i)*d; DAE.J22(Lines.bus2(i),Lines.bus2(i)) = DAE.J22(Lines.bus2(i),Lines.bus2(i)) - 2*V2(i)*e + V1(i)*d; DAE.J21(Lines.bus2(i),Lines.bus1(i)) = DAE.J21(Lines.bus2(i),Lines.bus1(i)) + V12(i)*c; DAE.J21(Lines.bus2(i),Lines.bus2(i)) = DAE.J21(Lines.bus2(i),Lines.bus2(i)) - V12(i)*c; endend
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -