当前位置:首页 > 电力系统课设报告 - 图文
电力系统分析课程设计
}
\\n\
for(i=1;i<=n;i++) { }
fprintf(fp2,\
fprintf(fp2,\for(j=1;j<=n;j++) { }
if(Z0[i][j]>=0)
fprintf(fp2,\else { }
if(Z1[i][j]>=0)
fprintf(fp2,\fprintf(fp2,\else
fprintf(fp2,\零序导纳矩阵:
fprintf(fp2,\
}
/****************************************************************** 导纳矩阵变换成阻抗矩阵(高斯消去法)
*******************************************************************/ void Form_Z() {
int i,j,k; float Z;
float ZZ[50][50];
//求正序阻抗矩阵 for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
ZZ[i][j]=0; for(k=1;k<=n;k++) {
ZZ[k][k]=-1/Z1[k][k]; for(i=1;i<=n;i++)
for(j=1;j<=n;j++) {
20
电力系统分析课程设计
if(i!=k&&j!=k) {
ZZ[i][k]=-Z1[i][k]/Z1[k][k]; ZZ[k][j]=-Z1[k][j]/Z1[k][k]; Z=Z1[i][k]*Z1[k][j]/Z1[k][k]; ZZ[i][j]=Z1[i][j]-Z;
}
}
for(i=1;i<=n;i++) for(j=1;j<=n;j++)
Z1[i][j]=ZZ[i][j];
}
//求零序阻抗矩阵 for(i=1;i<=n;i++) for(j=1;j<=n;j++) ZZ[i][j]=0; for(k=1;k<=n;k++)
{ ZZ[k][k]=-1/Z0[k][k]; for(i=1;i<=n;i++) for(j=1;j<=n;j++) { if(i!=k&&j!=k) { ZZ[i][k]=-Z0[i][k]/Z0[k][k];
ZZ[k][j]=-Z0[k][j]/Z0[k][k];
Z=Z0[i][k]*Z0[k][j]/Z0[k][k]; ZZ[i][j]=Z0[i][j]-Z; }
}
for(i=1;i<=n;i++)
for(j=1;j<=n;j++)
Z0[i][j]=ZZ[i][j]; }
fprintf(fp2,\正序阻抗矩阵:
for(i=1;i<=n;i++) { fprintf(fp2,\
for(j=1;j<=n;j++)
21
\\n\
电力系统分析课程设计
}
/************************************************************************* 串联型故障
**************************************************************************/ void CHUAN() {
float zp;
printf(\请输入发生单相接地短路故障的节点:\scanf(\
printf(\请输入发生单相接地短路故障的相:\scanf(\k1=getchar();
}
fprintf(fp2,\零序阻抗矩阵: for(i=1;i<=n;i++) { }
fprintf(fp2,\
fprintf(fp2,\for(j=1;j<=n;j++) {
if(Z0[i][j]>=0) }
fprintf(fp2,\fprintf(fp2,\else
\\n\
{ }
if(Z1[i][j]>=0)
fprintf(fp2,\fprintf(fp2,\else
printf(\请输入过渡电阻zp:\ scanf(\ Zf1=Z1[F][F]; Zf2=Z1[F][F]; Zf0=Z0[F][F];
If1=-1/(Zf1+Zf2+Zf0+3*zp); //阻抗有个j If2=If1;
22
电力系统分析课程设计
If0=If1;
If=3*If1;
Uf1=1+If1*Zf1; //本身有个j,因为j*j=-1,所以减号变加号 Uf2=If2*Zf2; Uf0=If0*Zf0; }
/************************************************************************** 并联型故障
***************************************************************************/ void BING() {
float zp;
{
printf(\请输入发生两相短路或两相接地短路故障的节点:\printf(\请输入发生两相短路或两相接地短路故障相:\scanf(\k2=getchar(); scanf(\ k3=getchar();
if(L==2||L==3)
scanf(\
printf(\请输入过渡电阻zp:\ scanf(\
Zf1=Z1[F][F]; Zf2=Z1[F][F]; Zf0=Z0[F][F];
if(L==3)
23
if(L==2) {
If1=-1/(2*Zf1+zp);
If2=-If1; If0=0;
If=sqrt(3)*If1;
Uf1=1+If1*Zf1; Uf2=If2*Zf2; Uf0=0;
}
共分享92篇相关文档