📄 setx0.m
字号:
function a = setx0(a)
global Bus DAE PV Syn Line jay
if ~a.n, return, end
% reset transmission line reactance and admittance matrix
Line.con(a.line,9) = Line.con(a.line,9) + a.xcs;
fm_y;
V1 = DAE.V(a.bus1);
V2 = DAE.V(a.bus2);
a1 = DAE.a(a.bus1);
a2 = DAE.a(a.bus2);
vp_max = a.con(:,9);
vp_min = a.con(:,10);
vq_max = a.con(:,11);
vq_min = a.con(:,12);
iq_max = a.con(:,13);
iq_min = a.con(:,14);
kp = a.Cp./(1-a.Cp);
V = V1.*exp(jay.*a1)-V2.*exp(jay.*a2);
theta = angle(V)-pi/2;
% if vp = 0, gamma is as follows:
a.gamma = pi/2+theta-a1;
DAE.x(a.vp) = 0;
DAE.x(a.vq) = kp.*V1.*sin(a1-a2)./sin(a1-a2+a.gamma);
DAE.x(a.iq) = Bus.Qg(a.bus1)./V1;
idx = find(DAE.x(a.vp) > vp_max);
if idx, upfcwarn(idx,' Vp is over its max limit.'), end
idx = find(DAE.x(a.vp) < vp_min);
if idx, upfcwarn(idx,' Vp is under its min limit.'), end
idx = find(DAE.x(a.vq) > vq_max);
if idx, upfcwarn(idx,' Vq is over its max limit.'), end
idx = find(DAE.x(a.vq) < vq_min);
if idx, upfcwarn(idx,' Vq is under its min limit.'), end
idx = find(DAE.x(a.iq) > iq_max);
if idx, upfcwarn(idx,' Ish is over its max limit.'), end
idx = find(DAE.x(a.iq) < iq_min);
if idx, upfcwarn(idx,' Ish is under its min limit.'), end
DAE.x(a.vp) = max(DAE.x(a.vp),vp_min);
DAE.x(a.vp) = min(DAE.x(a.vp),vp_max);
DAE.x(a.vq) = max(DAE.x(a.vq),vq_min);
DAE.x(a.vq) = min(DAE.x(a.vq),vq_max);
DAE.x(a.iq) = max(DAE.x(a.iq),iq_min);
DAE.x(a.iq) = min(DAE.x(a.iq),iq_max);
% reference voltages
a.vp0 = DAE.x(a.vp);
a.vq0 = DAE.x(a.vq);
a.Vref = DAE.x(a.iq)./a.con(:,7) + V1;
% eliminate PV components used for initializing UPFC's
global Syn
for i = 1:a.n
idxg = find(Syn.bus == a.bus1(i));
if ~isempty(idxg)
upfcwarn(a,i,[' UPFC cannot be connected at the same bus as ' ...
'synchronous machines.'])
continue
end
idx = findbus(PV,a.bus1(i));
PV = remove(PV,idx);
if isempty(idx)
upfcwarn(a,i,' no PV generator found at the bus.')
end
end
fm_disp('Initialization of UPFC completed.')
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -