📄 gycall.m
字号:
function Gycall(a)
global Bus DAE
if ~a.n, return, end
bus1 = a.bus1;
bus2 = a.bus2;
V1 = DAE.V(bus1);
V2 = DAE.V(bus2);
a1 = DAE.a(bus1);
a2 = DAE.a(bus2);
ss = sin(a1-a2);
cc = cos(a1-a2);
den = ssscden(a);
c1 = DAE.x(a.vcs).*a.y./den;
c2 = DAE.x(a.vcs).*a.y./(den.^3);
M2 = c2.*V1.*V2.*ss;
M1 = -M2;
M3 = c2.*(V2.*cc-V1);
M4 = c2.*(V1.*cc-V2);
P1a1 = V1.*V2.*(M1.*ss+c1.*cc);
P1a2 = V1.*V2.*(M2.*ss-c1.*cc);
P1v1 = V2.*ss.*(M3.*V1+c1);
P1v2 = V1.*ss.*(M4.*V2+c1);
Q1a1 = -V1.*V2.*(M1.*cc-c1.*ss)+M1.*V1.^2;
Q1a2 = -V1.*V2.*(M2.*cc+c1.*ss)+M2.*V1.^2;
Q2a1 = -V1.*V2.*(M1.*cc-c1.*ss)+M1.*V2.^2;
Q2a2 = -V1.*V2.*(M2.*cc+c1.*ss)+M2.*V2.^2;
Q1v1 = M3.*V1.*(V1-V2.*cc)+c1.*(2.*V1-V2.*cc);
Q1v2 = M4.*V1.*(V1-V2.*cc)-c1.*V1.*cc;
Q2v1 = M3.*V2.*(V2-V1.*cc)-c1.*V2.*cc;
Q2v2 = M4.*V2.*(V2-V1.*cc)+c1.*(2.*V2-V1.*cc);
DAE.J11 = DAE.J11 ...
+ sparse(bus1,bus1,P1a1,Bus.n,Bus.n) ...
+ sparse(bus1,bus2,P1a2,Bus.n,Bus.n) ...
- sparse(bus2,bus1,P1a1,Bus.n,Bus.n) ...
- sparse(bus2,bus2,P1a2,Bus.n,Bus.n);
DAE.J12 = DAE.J12 ...
+ sparse(bus1,bus1,P1v1,Bus.n,Bus.n) ...
+ sparse(bus1,bus2,P1v2,Bus.n,Bus.n) ...
- sparse(bus2,bus1,P1v1,Bus.n,Bus.n) ...
- sparse(bus2,bus2,P1v2,Bus.n,Bus.n);
DAE.J21 = DAE.J21 ...
+ sparse(bus1,bus1,Q1a1,Bus.n,Bus.n) ...
+ sparse(bus1,bus2,Q1a2,Bus.n,Bus.n) ...
+ sparse(bus2,bus1,Q2a1,Bus.n,Bus.n) ...
+ sparse(bus2,bus2,Q2a2,Bus.n,Bus.n);
DAE.J22 = DAE.J22 ...
+ sparse(bus1,bus1,Q1v1,Bus.n,Bus.n) ...
+ sparse(bus1,bus2,Q1v2,Bus.n,Bus.n) ...
+ sparse(bus2,bus1,Q2v1,Bus.n,Bus.n) ...
+ sparse(bus2,bus2,Q2v2,Bus.n,Bus.n);
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -