function mloss=yue(tt) %chaoliu
mloss=0;
%disp('tt(1)');
%disp(tt(1));
b1=tt(1);
u2=tt(2);
u3=tt(3);
u4=tt(4);
u5=tt(5);
%u6=tt(6);
%q10=tt(7);
q9=tt(6);
t1=tt(7);
t2=tt(8);
t3=tt(9);
qc9=0.1*q9;
ta1=1+0.025*t1;
ta2=1+0.025*t2;
ta3=1+0.025*t3;
%n=input('请输入节点数:n=');
%n1=input('输入支路数:n1=');
%isb=input('输入平衡母线接线号:isb=');
%pr=input('输入误差精度:pr=');
%B1=input('输入由支路参数形成的矩阵:B1=');
%B2=input('输入由节点参数形成的矩阵:B2=');
%X=input('输入由节点号及其对地阻抗形成的矩阵:X=');
n=14;
n1=20;
isb=1;
pr=0.00001;
B1=[1 2 0.01938+0.05917i 0.0264 1 0;1 5 0.05403+0.22304i 0.01700 1 0;2 3 0.04699+0.19797i 0.02190 1 0;2 4 0.05811+0.17632i 0.01870 1 0;2 5 0.05695+0.17388 0.01730 1 0;3 4 0.06701+0.17103i 0.00640 1 0;4 5 0.01335+0.04211i 0 1 0;5 6 0.25202i 0 ta3 0;4 7 0.20912i 0 ta1 0;7 8 0.17615i 0 1 0;4 9 0.55618i 0 ta2 0;7 9 0.11001i 0 1 0;9 10 0.03181+0.08450i 0 1 0;6 11 0.09498+0.19890i 0 1 0;6 12 0.12291+0.15581i 0 1 0;6 13 0.06615+0.13027i 0 1 0;9 14 0.12711+0.27038i 0 1 0;10 11 0.08205+0.19207i 0 1 0;12 13 0.22092+0.19988i 0 1 0;13 14 0.17093+0.34802i 0 1 0];
B2=[2.324-0.169i 0 1.05 b1 0 1;0.4+0.424i 0.217+0.127i 1.045 u2 0 3;0 0.942+0.19i 0.9644 u3 0 3;0 0.478-0.039i 0.9766 0 0 2;0 0.076+0.016i 0.9852 0 0 2;0 0.112+0.075i 0.9758 u4 0 3;0 0 0.9656 0 0 2;0 0 0.9656 u5 0 3;0 0.295+0.166i 0.9508 0 0 2;0 0.09+0.058i 0.9470 0 qc9 2;0 0.035+0.018i 0.9575 0 0 2;0 0.061+0.016i 0.9608 0 0 2;0 0.135+0.058i 0.953 0 0 2;0 0.149+0.05i 0.9317 0 0 2];
%disp('导纳矩阵 B1=');
%disp(B1)
%B1
%disp('导纳矩阵 B2=');
%disp(B2)
X=[1 0;2 0;3 0;4 0;5 0;6 0;7 0;8 0;9 0;10 0;11 0;12 0;13 0;14 0;15 0;16 0;17 0;18 0;19 0;20 0;21 0;22 0;23 0;24 0;25 0;26 0;27 0;28 0;29 0;30 0;];
%if s<2
Y=zeros(n);e=zeros(1,n);f=zeros(1,n);V=zeros(1,n);O=zeros(1,n);S1=zeros(n1);
for i=1:20
if B1(i,6)==0
p=B1(i,1);q=B1(i,2);
else
p=B1(i,2);q=B1(i,1);
end
Y(p,q)=Y(p,q)-1./(B1(i,3)*B1(i,5));
Y(q,p)=Y(p,q);
Y(q,q)=Y(q,q)+1./(B1(i,3)*B1(i,5)^2)+B1(i,4)./4;
Y(p,p)=Y(p,p)+1./B1(i,3)+B1(i,4)./4;
end
%求导纳矩阵
%disp('导纳矩阵 Y=');
%disp(Y);
G=real(Y);B=imag(Y);
%end
%s=s+1;
for i=1:n
e(i)=real(B2(i,3));
f(i)=imag(B2(i,3));
V(i)=B2(i,4);
end
for i=1:n
S(i)=B2(i,1)-B2(i,2);
B(i,i)=B(i,i)+B2(i,5);
end
P=real(S);Q=imag(S);
ICT1=0;IT2=1;N0=2*n;N=N0+1;a=0;
while IT2~=0
IT2=0;a=a+1;
for i=1:n
if i~=isb
C(i)=0;D(i)=0;
for j1=1:n
C(i)=C(i)+G(i,j1)*e(j1)-B(i,j1)*f(j1);
D(i)=D(i)+G(i,j1)*f(j1)+B(i,j1)*e(j1);
end
P1=C(i)*e(i)+f(i)*D(i);
Q1=C(i)*f(i)-e(i)*D(i);
%求'P,Q'
V2=e(i)^2+f(i)^2;
if B2(i,6)~=3
DP=P(i)-P1;
DQ=Q(i)-Q1;
for j1=1:n
if j1~=isb&j1~=i
X1=-G(i,j1)*e(i)-B(i,j1)*f(i);
X2=B(i,j1)*e(i)-G(i,j1)*f(i);
X3=X2;
X4=-X1;
p=2*i-1;q=2*j1-1;J(p,q)=X3;J(p,N)=DQ;
m=p+1;
J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X4;
J(m,q)=X2;
elseif j1==i&j1~=isb
X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);
X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);
X3=D(i)+B(i,i)*e(i)-G(i,i)*f(i);
X4=-C(i)+G(i,i)*e(i)+B(i,i)*f(i);
p=2*i-1;q=2*j1-1;J(p,q)=X3;J(p,N)=DQ;
m=p+1;
J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X4;
J(m,q)=X2;
end
end
else
DP=P(i)-P1;
DV=V(i)^2-V2;
for j1=1:n
if j1~=isb&j1~=i
X1=-G(i,j1)*e(i)-B(i,j1)*f(i);
X2=B(i,j1)*e(i)-G(i,j1)*f(i);
X5=0;X6=0;
p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV;
m=p+1;
J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;
J(m,q)=X2;
elseif j1==i&j1~=isb
X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i);
X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i);
X5=-2*e(i);
X6=-2*f(i);
p=2*i-1;q=2*j1-1;J(p,q)=X5;J(p,N)=DV;
m=p+1;
J(m,q)=X1;J(m,N)=DP;q=q+1;J(p,q)=X6;
J(m,q)=X2;
end
end
end
end
end
%disp('导纳矩阵 J=');
%disp(J)
%求雅可比矩阵
for k=3:N0
k1=k+1;N1=N;
for k2=k1:N1
J(k,k2)=J(k,k2)./J(k,k);
end
J(k,k)=1;
if k~=3
k4=k-1;
for k3=3:k4
for k2=k1:N1
J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);
end
J(k3,k)=0;
end
if k==N0
break;
end
for k3=k1:N0
for k2=k1:N1
J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);
end
J(k3,k)=0;
end
else
for k3=k1:N0
for k2=k1:N1
J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);
end
J(k3,k)=0;
end
end
end
for k=3:2:N0-1
L=(k+1)./2;
e(L)=e(L)-J(k,N);
k1=k+1;
f(L)=f(L)-J(k1,N);
end
for k=3:N0
DET=abs(J(k,N));
if DET>=pr
IT2=IT2+1;
end
end
ICT2(a)=IT2;
ICT1=ICT1+1;
end
%用高斯消去法解"w=-J*V"
%disp('迭代次数:');
%disp(ICT1);
%disp('没有达到精度要求的个数:');
%disp(ICT2);
for k=1:n
V(k)=sqrt(e(k)^2+f(k)^2);
sida(k)=atan(f(k)./e(k))*180./pi;
E(k)=e(k)+f(k)*j;
end
%disp('各节点的实际电压标幺值E为(节点号从小到大排列):');
%disp(E);
%disp('各节点的电压大小V为(节点号从小到大排列):');
%disp(V);
%disp('各节点的电压相角sida为(节点号从小到大排列):');
%disp(sida);
for p=1:n
C(p)=0;
for q=1:n
C(p)=C(p)+conj(Y(p,q))*conj(E(q));
end
S(p)=E(p)*C(p);
end
%disp('各节点的功率S为(节点号从小到大排列):');
%disp(S);
%disp('各条支路的首端功率Si为(顺序同您输入B1时一致):');
for i=1:20
if B1(i,6)==0
p=B1(i,1);q=B1(i,2);
else
p=B1(i,2);q=B1(i,1);
end
Si(p,q)=E(p)*(conj(E(p))*conj(B1(i,4)./4)+(conj(E(p)*B1(i,5))-conj(E(q)))*conj(1./(B1(i,3)*B1(i,5))));
% disp(Si(p,q));
end
%disp('各条支路的末端功率Sj为(顺序同您输入B1时一致):');
for i=1:20
if B1(i,6)==0
p=B1(i,1);q=B1(i,2);
else
p=B1(i,2);q=B1(i,1);
end
Sj(q,p)=E(q)*(conj(E(q))*conj(B1(i,4)./4)+(conj(E(q)./B1(i,5))-conj(E(p)))*conj(1./(B1(i,3)*B1(i,5))));
% disp(Sj(q,p));
end
%disp('各条支路的功率损耗DS为(顺序同您输入B1时一致):');
for i=1:20
if B1(i,6)==0
p=B1(i,1);q=B1(i,2);
else
p=B1(i,2);q=B1(i,1);
end
DS(i)=Si(p,q)+Sj(q,p);
% disp(DS(i));
%mloss=mloss+20*B1(i,5)+10*real(DS(i));
%mloss=mloss+real(DS(i));
end
for i=1:20
if B1(i,6)==0
p=B1(i,1);q=B1(i,2);
else
p=B1(i,2);q=B1(i,1);
end
mloss=mloss+((-G(p,q))*(V(p)^2+V(q)^2-2*V(p)*V(q)*cos((sida(p)-sida(q))*pi/180.)));
end
%disp('mloss=');
%disp(mloss);