电网潮流计算C++程序Word格式文档下载.docx

上传人:b****1 文档编号:1223429 上传时间:2023-04-30 格式:DOCX 页数:13 大小:17.02KB
下载 相关 举报
电网潮流计算C++程序Word格式文档下载.docx_第1页
第1页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第2页
第2页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第3页
第3页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第4页
第4页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第5页
第5页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第6页
第6页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第7页
第7页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第8页
第8页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第9页
第9页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第10页
第10页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第11页
第11页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第12页
第12页 / 共13页
电网潮流计算C++程序Word格式文档下载.docx_第13页
第13页 / 共13页
亲,该文档总共13页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

电网潮流计算C++程序Word格式文档下载.docx

《电网潮流计算C++程序Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《电网潮流计算C++程序Word格式文档下载.docx(13页珍藏版)》请在冰点文库上搜索。

电网潮流计算C++程序Word格式文档下载.docx

doublep=lin.P_in;

doubleq=lin.Q_in;

doubleu=lin.f_node.U;

lin.D_U=(p*lin.R+q*lin.X)/u;

lin.d_U=(p*lin.X-q*lin.R)/u;

lin.s_node.U=sqrt(pow(lin.f_node.U-lin.D_U,2)+pow(lin.d_U,2));

//子节点电压

lin.s_node.delta=lin.f_node.delta-atan(lin.d_U/(lin.f_node.U-lin.D_U));

voidfun3(line&

lin){//由前往后推电压不计横向分量

 

lin.s_node.U=lin.f_node.U-lin.D_U,2;

voidmain(){

intnum_l;

intnum_n;

//支路数节点数

ifstreamfin;

fin.open("

E:

\\data.txt"

);

fin>

>

num_n>

num_l;

//输入节点数支路数

ofstreamfout;

fout.open("

\\databak.txt"

node*nod;

nod=newnode[num_n];

//节点数目

line*lin;

lin=newline[num_l];

//线路数目

nod[0].delta=0;

double*u;

//节点额定电压

u=newdouble[num_n];

for(inti=0;

i<

num_n;

i++){

u[i];

double*p;

//节点有功功率

p=newdouble[num_n];

p[i];

double*q;

//节点无功功率

q=newdouble[num_n];

q[i];

i++){//设定节点标号参数

nod[i].i=i;

nod[i].P=p[i];

nod[i].Q=q[i];

nod[i].U=u[i];

double*r;

//线路电阻

r=newdouble[num_l];

r[i];

double*x;

//线路电抗

x=newdouble[num_l];

x[i];

double*b;

//线路电纳

b=newdouble[num_l];

b[i];

i++){//设定线路参数

lin[i].R=r[i];

lin[i].X=x[i];

lin[i].B=b[i];

i++){//确定线路节点关系

lin[i].f_node.i;

lin[i].s_node.i;

i++){//计算节点运算负荷

nod[lin[i].f_node.i].Q-=lin[i].B*nod[lin[i].f_node.i].U*nod[lin[i].f_node.i].U;

nod[lin[i].s_node.i].Q-=lin[i].B*nod[lin[i].s_node.i].U*nod[lin[i].s_node.i].U;

double*P_c,*Q_c;

//保存运算负荷数据

P_c=newdouble[num_n];

Q_c=newdouble[num_n];

for(inttc=0;

tc<

tc++){

P_c[tc]=nod[tc].P;

Q_c[tc]=nod[tc].Q;

i++){//设定线路节点数据

lin[i].Set_node(nod[lin[i].f_node.i],nod[lin[i].s_node.i]);

for(intre=0;

re<

3;

re++){//迭代运算开始

fout<

<

"

第"

re+1<

次迭代"

endl;

doubleto_P(0),to_dP(0);

for(inti=1;

to_P+=nod[i].P;

tc++){//重置运算负荷

nod[tc].P=P_c[tc];

nod[tc].Q=Q_c[tc];

for(intts=0;

ts<

ts++){//置各线路初始输出功率为子节点运算负荷

lin[ts].P_out=lin[ts].s_node.P;

lin[ts].Q_out=lin[ts].s_node.Q;

intj=num_l-1;

//反向求各支路功率损耗和功率分布

for(j=num_l-1;

j>

0;

j--){

fun1(lin[j]);

nod[lin[j].f_node.i].P+=lin[j].P_in;

nod[lin[j].f_node.i].Q+=lin[j].Q_in;

ts++){

intt=0;

//求线路各点电压

for(t=0;

t<

num_l-1;

t++){

fun2(lin[t]);

nod[lin[t].s_node.i].U=lin[t].s_node.U;

nod[lin[t].s_node.i].delta=lin[t].s_node.delta;

支路信息:

i++){//输出线路信息

支路"

lin[i].f_node.i+1<

-"

lin[i].s_node.i+1<

:

始端功率:

lin[i].P_in<

+j"

lin[i].Q_in<

末端功率:

lin[i].P_out<

lin[i].Q_out<

功率损耗:

lin[i].d_P<

lin[i].d_Q<

电压损耗"

lin[i].f_node.U-lin[i].s_node.U<

节点信息:

i++){//输出节点信息

节点"

i+1<

电压:

nod[i].U<

相角:

nod[i].delta*180/3.14<

double*lu;

//求最低电压及最低电压点

lu=newdouble[num_n];

int*lua;

lua=newint[num_n];

lu[i]=nod[i].U;

lua[i]=i;

num_n-1;

if(lu[i]<

lu[i+1]){

doublest;

inta;

st=lu[i];

a=lua[i];

lu[i]=lu[i+1];

lua[i]=lua[i+1];

lu[i+1]=st;

lua[i+1]=a;

to_dP+=lin[i].d_P;

全网信息:

总电源有功:

lin[0].P_in<

总负荷有功:

to_P<

总有功损耗:

to_dP<

网损率:

to_dP/(to_P+lin[0].P_in)<

最低电压:

lu[num_n-1]<

最低电压点:

lua[num_n-1]+1<

delete[]lu;

delete[]lua;

delete[]nod;

delete[]lin;

delete[]u;

delete[]p;

delete[]q;

delete[]r;

delete[]x;

delete[]b;

}

附:

3-4的data文件

32

113110100

00.1720

01.715

8.51.22

20.520.2

0.0002820

01

12输出为:

第1次迭代

支路1-2:

1.02165+j0.693296

1.00434+j0.658675

0.0173106+j0.0346211

电压损耗0.274063

支路2-3:

0.5034+j0.3068

0.5+j0.3

0.0034+j0.0068

电压损耗0.109

支路2-4:

0.200938+j0.151875

0.2+j0.15

0.0009375+j0.001875

电压损耗0.0739643

节点1

10.5相角:

0

节点2

10.2259相角:

-0.864932

节点3

10.1169相角:

-1.25281

节点4

10.152相角:

-1.072

1.02165

1

0.0216481

0.0107081

10.1169最低电压点:

3

第2次迭代

1.02078+j0.69156

1.00423+j0.658463

0.0165484+j0.0330969

电压损耗0.273567

0.503322+j0.306644

0.00332186+j0.00664371

电压损耗0.108957

0.20091+j0.151819

0.000909642+j0.00181928

电压损耗0.0739403

10.2264相角:

-0.86489

10.1175相角:

-1.25273

10.1525相角:

-1.07194

1.02078

1.70434

0.0207799

0.00762533

10.1175最低电压点:

第3次迭代

1.02078+j0.691556

1.00423+j0.658462

0.0165468+j0.0330936

电压损耗0.273566

0.503322+j0.306643

0.0033215+j0.00664301

0.000909549+j0.0018191

电压损耗0.0739402

1.70423

0.0207778

0.00762487

3

例3-2的data:

43

10.5101010

00.30.50.2

00.20.30.15

1.211.5

2.423

000

12

13

输出:

第1次迭代

1.02165+j0.693296

1.00434+j0.658675

0.0173106+j0.0346211

电压损耗0.275227

0.5034+j0.3068

0.5+j0.3

0.0034+j0.0068

电压损耗0.109244

0.200938+j0.151875

0.2+j0.15

0.0009375+j0.001875

电压损耗0.0740389

节点1

节点2

10.2248相角:

-0.864932

节点3

10.1155相角:

-1.2529

节点4

10.1507相角:

-1.07205

1.02165

1

0.0216481

0.0107081

10.1155最低电压点:

第2次迭代

1.02078+j0.69157

1.00423+j0.658465

0.0165523+j0.0331045

电压损耗0.274734

0.503323+j0.306646

0.00332278+j0.00664556

电压损耗0.109201

0.20091+j0.15182

0.000909864+j0.00181973

电压损耗0.0740151

10.2253相角:

-0.86489

10.1161相角:

-1.25282

10.1513相角:

-1.07199

1.02078

1.70434

0.0207849

0.00762714

10.1161最低电压点:

第3次迭代

1.02078+j0.691566

1.00423+j0.658464

0.0165506+j0.0331013

电压损耗0.274733

0.503322+j0.306645

0.00332243+j0.00664486

0.000909771+j0.00181954

电压损耗0.074015

1.70423

0.0207828

0.00762669

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 人文社科 > 法律资料

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2