课 程 设 计 任 务 书(5)

2019-06-02 13:02

D(i)=D(i)+G(i,j1)*f(j1)+B(i,j1)*e(j1); %Σ(Gij*fj+Bij*ej) end

P1=C(i)*e(i)+f(i)*D(i); %节点功率P计算eiΣ(Gij*ej-Bij*fj)+fiΣ(Gij*fj+Bij*ej)

Q1=C(i)*f(i)-e(i)*D(i); %节点功率Q计算fiΣ(Gij*ej-Bij*fj)-eiΣ(Gij*fj+Bij*ej)

%求i节点有功和无功功率P',Q'的计算值

V2=e(i)^2+f(i)^2; %电压模平方

%========= 以下针对非PV节点来求取功率差及Jacobi矩阵元素 =========

if B2(i,6)~=3 %非PV节点

DP=P(i)-P1; %节点有功功率差 DQ=Q(i)-Q1; %节点无功功率差 %============ 以上为除平衡节点外其它节点的功率计算 =================

%================= 求取Jacobi矩阵 =================== for j1=1:n

if j1~=isb&j1~=i %非平衡节点&非对角元 X1=-G(i,j1)*e(i)-B(i,j1)*f(i); % dP/de=-dQ/df -Nij

X2=B(i,j1)*e(i)-G(i,j1)*f(i); % dP/df=dQ/de -Hij

X3=X2; % X2=dp/df X3=dQ/de -Lij

X4=-X1; % X1=dP/de X4=dQ/df -Jij

p=2*i-1;q=2*j1-1;

J(p,q)=X1;J(p,N)=DP;m=p+1; % X1=dP/de J(m,N)=DP节点有功功率差

J(m,q)=X3;J(m,N)=DQ;q=q+1; % X3=dQ/de J(p,N)=DQ节点无功功率差

J(p,q)=X2;J(m,q)=X4; % X4=dQ/df X2=dp/df

elseif j1==i&j1~=isb %非平衡节点&对角元 X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i); % dP/de X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i); % dP/df X3=D(i)+B(i,i)*e(i)-G(i,i)*f(i); % dQ/de X4=-C(i)+G(i,i)*e(i)+B(i,i)*f(i); % dQ/df

p=2*i-1;q=2*j1-1;J(p,q)=X1;J(p,N)=DP; %扩展列△P=-Nij m=p+1;

J(m,q)=X3;q=q+1;J(p,q)=X2;J(m,N)=DQ; %扩展列△Q=-Hij

J(m,q)=X4;

end end Else

%=============== 下面是针对PV节点来求取Jacobi矩阵的元素 ===========

DP=P(i)-P1; % PV节点有功误差 DV=V(i)^2-V2; % PV节点电压误差 for j1=1:n

if j1~=isb&j1~=i %非平衡节点&非对角元 X1=-G(i,j1)*e(i)-B(i,j1)*f(i); % dP/de

X2=B(i,j1)*e(i)-G(i,j1)*f(i); % dP/df X5=0;X6=0;

p=2*i-1;q=2*j1-1;J(p,q)=X1;J(p,N)=DP; % PV节点有功误差 m=p+1;

J(m,q)=X5;J(m,N)=DV;q=q+1;J(p,q)=X2; % PV节点电压误差 J(m,q)=X6; elseif j1==i&j1~=isb %非平衡节点&对角元 X1=-C(i)-G(i,i)*e(i)-B(i,i)*f(i); % dP/de X2=-D(i)+B(i,i)*e(i)-G(i,i)*f(i); % dP/df X5=-2*e(i); X6=-2*f(i);

p=2*i-1;q=2*j1-1;J(p,q)=X1;J(p,N)=DP; %PV节点有功误差 m=p+1;

J(m,q)=X5;J(m,N)=DV;q=q+1;J(p,q)=X2; % PV节点电压误差 J(m,q)=X6; end end end end

end

%求JACOB矩阵

disp('JACOB矩阵 J='); disp(J)

%===== 以上为求雅可比矩阵的各个元素及扩展列的功率差或电压差 ========

for k=3:N0 % N0=2*n (从第三行开始,第一、二行是平衡节点)

k1=k+1;N1=N; % N=N0+1 即 N=2*n+1扩展列△P、△Q 或 △U

for k2=k1:N1 % 从k+1列的Jacobi元素到扩展列的△P、△Q 或 △U J(k,k2)=J(k,k2)./J(k,k); % 用K行K列对角元素去除K行K列后的非对角元素进行规格化

end

J(k,k)=1; % 对角元规格化K行K列对角元素赋1

%================= 回代运算 =======================================

if k~=3 % 不是第三行 k > 3 k4=k-1; for k3=3:k4 % 用k3行从第三行开始到当前行的前一行k4行消去for k2=k1:N1 % k3行后各行上三角元素

J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算(当前行k列元素消为0) end %用当前行K2列元素减去当前行k列元素乘以第k行K2列元素

J(k3,k)=0; %当前行第k列元素已消为0 end

if k==N0 %若已到最后一行 break; end %================== 前代运算 ==================================

for k3=k1:N0 % 从k+1行到2*n最后一行 for k2=k1:N1 % 从k+1列到扩展列消去k+1行后各行下三角元素

J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算 end %用当前行K2列元素减去当前行k列元素乘以第k行K2列元素

J(k3,k)=0; %当前行第k列元素已消为0 end

else %是第三行k=3 %====================== 第三行k=3的前代运算 ========================

for k3=k1:N0 %从第四行到2n行(最后一行)

for k2=k1:N1 %从第四列到2n+1列(即扩展列) J(k3,k2)=J(k3,k2)-J(k3,k)*J(k,k2);%消去运算(当前行3列元素消为0)

end %用当前行K2列元素减去当前行3列元素乘以第三行K2列元素 J(k3,k)=0; %当前行第3列元素已消为0

end

end end

%====上面是用线性变换方式高斯消去法将Jacobi矩阵化成单位矩阵===== 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; %不满足要求的节点数加1 end end

ICT2(a)=IT2; %不满足要求的节点数 ICT1=ICT1+1; %迭代次数 end

%用高斯消去法解\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); %显示各节点的实际电压标幺值E用复数表示

disp('-----------------------------------------------------'); disp('各节点的电压大小V为(节点号从小到大排列):');

disp(V); %显示各节点的电压大小V的模值

disp('-----------------------------------------------------'); 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); %计算各节点的功率 S = 电压 X 注入电流的共轭值

end

disp('各节点的功率S为(节点号从小到大排列):');

disp(S); %显示各节点的注入功率

disp('-----------------------------------------------------'); disp('各条支路的首端功率Si为(顺序同您输入B1时一致):'); for i=1:nl

p=B1(i,1);q=B1(i,2); if B1(i,6)==0

Si(p,q)=E(p)*(conj(E(p))*conj(B1(i,4))+(conj(E(p)*B1(i,5))...

-conj(E(q)))*conj(1./(B1(i,3)*B1(i,5)))); Siz(i)=Si(p,q); else

Si(p,q)=E(p)*(conj(E(p))*conj(B1(i,4))+(conj(E(p)./B1(i,5))...

-conj(E(q)))*conj(1./(B1(i,3)*B1(i,5)))); Siz(i)=Si(p,q); end

disp(Si(p,q)); SSi(p,q)=Si(p,q);

ZF=['S(',num2str(p),',',num2str(q),')=',num2str(SSi(p,q))]; disp(ZF);

disp('-----------------------------------------------------');

end

disp('各条支路的末端功率Sj为(顺序同您输入B1时一致):');

for i=1:nl

p=B1(i,1);q=B1(i,2); if B1(i,6)==0


课 程 设 计 任 务 书(5).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:2016年新版人教版八年级上英语单词默写表doc

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: