📄 numjacs.m
字号:
fm_call('i')ffn = DAE.f;xa = DAE.x;anga = DAE.a;Va = DAE.V; tol = NLA.tol;A = zeros(DAE.n,Bus.n);B = zeros(DAE.n,Bus.n);Gx = zeros(2*Bus.n,DAE.n);Fx = zeros(DAE.n,DAE.n);fm_call('i')for j=1:Bus.n; deltaa = max(tol,abs(tol*DAE.a(j))); DAE.a(j)=DAE.a(j)+deltaa; fm_call('i') A(:,j)=(DAE.f-ffn)./deltaa; DAE.x = xa; DAE.a = anga; DAE.V = Va; endfm_call('i')for j=1:Bus.n; deltaV = max(tol,abs(tol*DAE.V(j))); DAE.V(j)=DAE.V(j)+deltaV; fm_call('i') B(:,j)=(DAE.f-ffn)./deltaV; DAE.x = xa; DAE.a = anga; DAE.V = Va; endFy = [A,B];fm_call('i')ggn = DAE.g;A = zeros(2*Bus.n,Bus.n);B = zeros(2*Bus.n,Bus.n);for j=1:Bus.n; deltaa = max(tol,abs(tol*DAE.a(j))); DAE.a(j)=DAE.a(j)+deltaa; fm_call('i') A(:,j)=(DAE.g-ggn)./deltaa; DAE.x = xa; DAE.a = anga; DAE.V = Va; endfm_call('i')for j=1:Bus.n; deltaV = max(tol,abs(tol*DAE.V(j))); DAE.V(j)=DAE.V(j)+deltaV; fm_call('i') B(:,j)=(DAE.g-ggn)./deltaV; DAE.x = xa; DAE.a = anga; DAE.V = Va; endJlfv = [A,B];fm_call('i')for j=1:DAE.n; deltaX = max(tol,abs(tol*DAE.x(j))); DAE.x(j)=DAE.x(j)+deltaX; fm_call('i') Gx(:,j)=(DAE.g-ggn)./deltaX; DAE.x = xa; DAE.a = anga; DAE.V = Va; fm_call('i')endfm_call('i')for j=1:DAE.n; deltaX = max(tol,abs(tol*DAE.x(j))); DAE.x(j)=DAE.x(j)+deltaX; if Oxl.n idx = find(Oxl.v == j); if idx, DAE.x(j)=DAE.x(j)-deltaX; end end fm_call('i') Fx(:,j)=(DAE.f-ffn)./deltaX; DAE.x = xa; DAE.a = anga; DAE.V = Va; fm_call('i')endGbus = Bus.n+[SW.bus;PV.bus];Jlfv(Gbus,:) = 0;Jlfv(:,Gbus) = 0;Jlfv(Gbus,Gbus) = eye(PV.n+SW.n);Jlfv(:,SW.bus) = 0;Jlfv(SW.bus,:) = 0;Jlfv(SW.bus,SW.bus) = eye(SW.n);Fy(:,SW.bus) = 0;Gx(SW.bus,:) = 0;Fy(:,Gbus) = 0;Gx(Gbus,:) = 0;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -