- 0
- 0
- 约2.03千字
- 约 4页
- 2024-05-18 发布于浙江
- 举报
潮流计算代码c直角坐标
在电力系统中,潮流计算是一种基本的电力系统分析方法,是指对系统中各节点的电压和电流进行计算分析的过程。本文中将介绍在直角坐标下进行潮流计算的代码。
在直角坐标下进行潮流计算时,需要先求解系统的导纳矩阵Y。一般来说,在直角坐标下,导纳矩阵可以通过节点导纳法或支路导纳法来求解。
当导纳矩阵求解完成后,可以通过发电机节点电压标幺值和负荷节点功率标幺值来求解各节点电压标幺值和功率标幺值。
下面是基于直角坐标下进行潮流计算的代码实现:
#includeiostream
#includecmath
usingnamespacestd;
constintMAXN=1005;
intn,m;
doubleP[MAXN],Q[MAXN],Vm[MAXN],Va[MAXN],G[MAXN][MAXN],B[MAXN][MAXN];
doubleP0[],Q0[];
voidinput(){
cinnm;//输入系统节点数和支路数
for(inti=1;i=n;i++){
cinP0[i]Q0[i];//输入负荷节点的有功功率和无功功率
Vm[i]=1;//初始电压标幺值均为1
Va[i]=0;//初始电压相角均为0
}
for(inti=1;i=m;i++){
intu,v;
doubler,x;
cinuvrx;//输入两端节点和支路电阻、电抗
doubleg=b=(double)1/x;
G[u][u]+=g,B[u][u]+=b;//填充导纳矩阵
G[v][v]+=g,B[v][v]+=b;
G[u][v]-=g,B[u][v]+=b;
G[v][u]-=g,B[v][u]+=b;
}
}
voidsolve(){
boolok=1;
while(ok){
ok=0;
for(inti=1;i=n;i++){
doubletmpP=0,tmpQ=0;
for(intj=1;j=n;j++){
tmpP+=Vm[i]*(G[i][j]*cos(Va[i]-Va[j])+B[i][j]*sin(Va[i]-Va[j]));
tmpQ+=Vm[i]*(G[i][j]*sin(Va[i]-Va[j])-B[i][j]*cos(Va[i]-Va[j]));
}
tmpP-=P0[i];
tmpQ-=Q0[i];
if(abs(tmpP)1e-6||abs(tmpQ)1e-6){
doubledeltaV,tmpVa;
deltaV=((B[i][i]*tmpP-G[i][i]*tmpQ)/(G[i][i]*G[i][i]+B[i][i]*B[i][i]));
tmpVa=(tmpP-G[i][i]*deltaV)/B[i][i];
if(abs(deltaV)1e-6||abs(tmpVa)1e-6){
ok=1;
Vm[i]-=deltaV;
Va[i]-=tmpVa;
}
}
}
}
}
intmain(){
input();
solve();
for(inti=1;i=n;i++){
cout节点i:电压标幺值=Vm[i],电压相角=Va[i]endl;
}
return0;
}
以上是使用C++语言实现的直角坐标下进行潮流计算的代码。在使用时,需要先输入系统的节点数、支路数、负荷节点的有功功率和无功功率以及支路电阻、电抗等参数,即可计算出各节点的电压标幺值和电压相角。
总的来说,直角坐标下进行潮流计算是一种简单而有效的电力系统分析方法,能够帮助电力系统工程师更好地了解系统的电力特性和优化系统的运行。通过学习本文中的代码,读者可以更深入地了解直角坐标下潮流计算的原理和实现方法。
原创力文档

文档评论(0)