潮流上机课程设计报告华电.docx
- 文档编号:11664513
- 上传时间:2023-03-29
- 格式:DOCX
- 页数:19
- 大小:133.75KB
潮流上机课程设计报告华电.docx
《潮流上机课程设计报告华电.docx》由会员分享,可在线阅读,更多相关《潮流上机课程设计报告华电.docx(19页珍藏版)》请在冰豆网上搜索。
潮流上机课程设计报告华电
《电力系统潮流上机》课程设计报告
院系
班级:
学号:
学生姓名:
指导教师:
设计周数
成绩:
日期:
年月日
一、课程设计的目的与要求
培养学生的电力系统潮流计算机编程能力,掌握计算机潮流计算的相关知识
二、设计正文(详细内容见附录)
1.手算:
要求应用牛顿-拉夫逊法或P-Q分解法手算求解,要求精度为0.001MW。
节点1为平衡节点,电压
,节点2为PQ节点,负荷功率
,节点3是PV节点,
,两条支路分别为
,
,对地支路
。
2.计算机计算:
编写潮流计算程序,要求如下:
2.1据给定的潮流计算任务书整理潮流计算的基础数据:
节点的分类,线路模型,等值变压器模型,电压等级的归算,标幺值的计算;
2.2基础数据的计算机存储:
节点数据,支路数据(包括变压器);
2.3用牛顿-拉夫逊法计算;
2.4根据所选潮流计算方法画流程图,划分出功能模块,有数据输入模块,导纳阵形成模块,解线性方程组模块,计算不平衡功率模块,形成雅可比矩阵模块,解修正方程模块,计算线路潮流,网损,PV节点无功功率和平衡节点功率,数据输出模块;
2.5据上述模块编制程序并上机调试程序,得出潮流计算结果;
2.6源程序及其程序中的符号说明集、程序流图
简单系统如下图所示,支路数据如下:
,
,
,
,
,
节点数据如下:
,
,
,
,
1)节点导纳阵
#include
#include
#include
#include"LF.h"
//formnodeconductancematrix
intMakeY(intnB,intnL,Line*sL,double**YG,double**YB)
{
inti,j,l;
doubler,x,d1,g,b,t;
for(i=0;i for(j=0;j {YG[i][j]=0.0; YB[i][j]=0.0;} for(i=0;i {r=sL[i].R; x=sL[i].X; g=r/(r*r+x*x); b=-x/(r*r+x*x); switch(sL[i].Type) {case1: //Line break; case2: //Transformer g*=1/sL[i].K; b*=1/sL[i].K; break;} YG[sL[i].NumI][sL[i].NumI]+=g; YG[sL[i].NumJ][sL[i].NumJ]+=g; YG[sL[i].NumI][sL[i].NumJ]-=g; YG[sL[i].NumJ][sL[i].NumI]-=g; YB[sL[i].NumI][sL[i].NumI]+=b+sL[i].B; YB[sL[i].NumJ][sL[i].NumJ]+=b+sL[i].B; YB[sL[i].NumI][sL[i].NumJ]-=b; YB[sL[i].NumJ][sL[i].NumI]-=b;} printf("实部: \n"); for(i=0;i {for(j=0;j printf("%lf\t",YG[i][j]); printf("\n");} printf("虚部: \n"); for(i=0;i {for(j=0;j printf("%lf\t",YB[i][j]); printf("\n");} /*ChecktheYmatrix*/ ofstreamfout("out.txt"); fout<<"--------------YMatrix--------------------"< for(i=0;i {for(j=0;j fout< fout< fout.close(); return0;} 2)计算功率不平衡量 #include #include #include #include"LF.h" //formdeltapanddeltaq intCalDeltaPQ(intnpv,intnpq,Bus*bus,double**YG,double**YB,int*p_Jtobus,double*deltaf) { intk,i,j; for(k=0;k {i=p_Jtobus[k]; if(k {deltaf[k]=bus[i].GenP-bus[i].LoadP; for(j=0;j {deltaf[k]-=bus[i].Volt*bus[j].Volt*(YG[i][j]*cos(bus[i].Phase-bus[j].Phase)+YB[i][j]*sin(bus[i].Phase-bus[j].Phase)); } printf("PV节点%d的有功功率是%lf\n",i,deltaf[k]);} if(k {deltaf[k]=bus[i].GenP-bus[i].LoadP; for(j=0;j {deltaf[k]-=bus[i].Volt*bus[j].Volt*(YG[i][j]*cos(bus[i].Phase-bus[j].Phase)+YB[i][j]*sin(bus[i].Phase-bus[j].Phase)); } printf("PQ节点%d的有功功率是%lf\n",i,deltaf[k]);} if(k {deltaf[k]=bus[i].GenQ-bus[i].LoadQ; for(j=0;j {deltaf[k]-=bus[i].Volt*bus[j].Volt*(YG[i][j]*sin(bus[i].Phase-bus[j].Phase)-YB[i][j]*cos(bus[i].Phase-bus[j].Phase)); } printf("PQ节点%d的无功功率是%lf\n",i,deltaf[k]);} } return0; } 3)雅各比矩阵的计算 /* Purpose: forundergraduatecourse Task: LoadFlow Copyright@NCEPU,LiuChongru */ #include #include #include #include"LF.h" //formJacobianmatrix intFormJacobian(intnpv,intnpq,Bus*bus,double**YG,double**YB,int*p_Jtobus,double**Jac) {intnp=npv+npq,j,k,i,m; //TODO doublea[14],q[14]; for(k=0;k { i=p_Jtobus[k]; a[i]=0; q[i]=0; if(k { for(j=0;j if(j! =i) {a[i]+=bus[j].Volt*(YG[i][j]*sin(bus[i].Phase-bus[j].Phase)-YB[i][j]*cos(bus[i].Phase-bus[j].Phase));q[i]+=bus[j].Volt*(YG[i][j]*cos(bus[i].Phase-bus[j].Phase)+YB[i][j]*sin(bus[i].Phase-bus[j].Phase)); } for(m=0;m { j=p_Jtobus[m]; if(j! =i) { if(m elseJac[k][m]=bus[i].Volt*bus[j].Volt*(YG[i][j]*cos(bus[i].Phase-bus[j].Phase)+YB[i][j]*sin(bus[i].Phase-bus[j].Phase));//FormN } elseif(j==i) {if(m Jac[k][m]=-bus[i].Volt*a[i];//FormH elseJac[k][m]=bus[i].Volt*q[i]+2*bus[i].Volt*bus[i].Volt*YG[i][j];//FormN} } } else { for(j=0;j if(j! =i) {a[i]+=bus[j].Volt*(YG[i][j]*sin(bus[i].Phase-bus[j].Phase)-YB[i][j]*cos(bus[i].Phase-bus[j].Phase));q[i]+=bus[j].Volt*(YG[i][j]*cos(bus[i].Phase-bus[j].Phase)+YB[i][j]*sin(bus[i].Phase-bus[j].Phase)); } for(m=0;m { j=p_Jtobus[m]; if(j! =i) {if(m elseJac[k][m]=bus[i].Volt*bus[j].Volt*(YG[i][j]*sin(bus[i].Phase-bus[j].Phase)-YB[i][j]*cos(bus[i].Phase-bus[j].Phase));//FormL} elseif(j==i) {if(m Jac[k][m]=bus[i].Volt*q[i]; else Jac[k][m]=bus[i].Volt*a[i]-2*bus[i].Volt*bus[i].Volt*YB[i][j];} } } } for(i=0;i {for(intj=0;j {printf("%d%d%f",i,j,Jac[i][j]);} printf("\n");} //OutputthematrixtochecktheJacobianmatrix ofstreamfout("out.txt",ios: : app); fout<<"--------------JacobianMatrix--------------------"< for(i=0;i {for(j=0;j fout< fout< fout.close(); return0; } 4)线路损耗 //8.calculatethepowerflow double*p_Pij,*p_Qij,*p_Pji,*p_Qji; p_Pij=newdouble[nL]; p_Qij=newdouble[nL]; p_Pji=newdouble[nL]; p_Qji=newdouble[nL]; intx1,x2; for(i=0;i {x1=line[i].NumI; x2=line[i].NumJ; if(line[i].Type==1) { p_Pij[i]=bus[x1].Volt*bus[x1].Volt*(-YG[x1][x2])-bus[x1].Volt*bus[x2].Volt*((-YG[x1][x2])*cos(bus[x1].Phase-bus[x2].Phase)+(-YB[x1][x2])*sin(bus[x1].Phase-bus[x2].Phase));p_Qij[i]=-bus[x1].Volt*bus[x1].Volt*(line[i].B+(-YB[x1][x2]))-bus[x1].Volt*bus[x2].Volt*((-YG[x1][x2])*sin(bus[x1].Phase-bus[x2].Phase)-(-YB[x1][x2])*cos(bus[x1].Phase-bus[x2].Phase));p_Pji[i]=bus[x2].Volt*bus[x2].Volt*(-YG[x2][x1])-bus[x2].Volt*bus[x1].Volt*((-YG[x2][x1])*cos(bus[x2].Phase-bus[x1].Phase)+(-YB[x2][x1])*sin(bus[x2].Phase-bus[x1].Phase));p_Qji[i]=-bus[x2].Volt*bus[x2].Volt*(line[i].B+(-YB[x2][x1]))-bus[x2].Volt*bus[x1].Volt*((-YG[x2][x1])*sin(bus[x2].Phase-bus[x1].Phase)-(-YB[x2][x1])*cos(bus[x2].Phase-bus[x1].Phase)); } else {p_Pij[i]=bus[x1].Volt*bus[x1].Volt*(-YG[x1][x2])/line[i].K-bus[x1].Volt*bus[x2].Volt*((-YG[x1][x2])*cos(bus[x1].Phase-bus[x2].Phase)+(-YB[x1][x2])*sin(bus[x1].Phase-bus[x2].Phase));p_Qij[i]=-bus[x1].Volt*bus[x1].Volt*((-YB[x1][x2])/line[i].K+line[i].B)-bus[x1].Volt*bus[x2].Volt*((-YG[x1][x2])*sin(bus[x1].Phase-bus[x2].Phase)-(-YB[x1][x2])*cos(bus[x1].Phase-bus[x2].Phase));p_Pji[i]=bus[x2].Volt*bus[x2].Volt*(-YG[x2][x1]*line[i].K)-bus[x2].Volt*bus[x1].Volt*((-YG[x2][x1])*cos(bus[x2].Phase-bus[x1].Phase)+(-YB[x2][x1])*sin(bus[x2].Phase-bus[x1].Phase));p_Qji[i]=-bus[x2].Volt*bus[x2].Volt*((-YB[x2][x1])*line[i].K+line[i].B)-bus[x2].Volt*bus[x1].Volt*((-YG[x2][x1])*sin(bus[x2].Phase-bus[x1].Phase)-(-YB[x2][x1])*cos(bus[x2].Phase-bus[x1].Phase)); } } //pandqofPHbusandPVbus ints=0; doublep[9],q[9],Ps[9],Qs[9],PS=0,QS=0; for(i=0;i {p[i]=0; q[i]=0; for(intj=0;j {p[i]+=(bus[j].Volt*(YG[i][j])*cos(bus[j].Phase)-bus[j].Volt*(YB[i][j])*sin(bus[j].Phase));q[i]-=(bus[j].Volt*(YG[i][j])*sin(bus[j].Phase)+bus[j].Volt*(YB[i][j])*cos(bus[j].Phase));} Ps[i]=bus[i].Volt*cos(bus[i].Phase)*p[i]-bus[i].Volt*sin(bus[i].Phase)*q[i]; Qs[i]=bus[i].Volt*cos(bus[i].Phase)*q[i]+bus[i].Volt*sin(bus[i].Phase)*p[i];} for(i=0;i {PS+=Ps[i]; QS+=Qs[i];} printf("PS=%7.7f,QS=%7.7f\n",PS,QS);} //loss doublePloss=0,Qloss=0; for(i=0;i {Ploss+=p_Pij[i]+p_Pji[i]; Qloss+=p_Qij[i]+p_Qji[i];} 5)程序流图如下 6)得到的数据(out.txt) --------------YMatrix-------------------- 0+j-17.36110+j00+j00+j17.36110+j00+j00+j00+j00+j0 0+j00+j-160+j00+j00+j00+j00+j160+j00+j0 0+j00+j00+j-17.06480+j00+j00+j00+j00+j00+j17.0648 0+j17.36110+j00+j03.30738+j-39.3089-1.36519+j11.6041-1.94219+j10.51070+j00+j00+j0 0+j00+j00+j0-1.36519+j11.60412.55279+j-17.33820+j0-1.1876+j5.975130+j00+j0 0+j00+j00+j0-1.94219+j10.51070+j03.2242+j-15.84090+j00+j0-1.28201+j5.58824 0+j00+j160+j00+j0-1.1876+j5.975130+j02.80473+j-35.4456-1.61712+j13.6980+j0 0+j00+j00+j00+j00+j00+j0-1.61712+j13.6982.77221+j-23.3032-1.15509+j9.78427 0+j00+j00+j17.06480+j00+j0-1.28201+j5.588240+j0-1.15509+j9.784272.4371+j-32.1539 --------------JacobianMatrix-------------------- 16.40000-16.400000000 017.491500000-17.4915000000 0040.1703-11.6041-10.51070003.30738-1.36519-1.94219000 00-11.604117.57920-5.9751300-1.365192.552790-1.187600 00-10.5107016.098900-5.58824-1.9421903.224200-1.28201 -16.400-5.97513036.0731-13.69800-1.187602.80473-1.617120 00000-13.69823.4822-9.78427000-1.617122.77221-1.15509 0-17.491500-5.588240-9.7842732.86400-1.282010-1.155092.4371 00-3.307381.365191.9421900038.4474-11.6041-10.5107000 001.36519-2.5527901.187600-11.604117.09720-5.9751300 001.942190-3.2242001.28201-10.5107015.582900-5.58824 0001.18760-2.804731.6171200-5.97513034.8181-13.6980 000001.61712-2.772211.15509000-13.69823.1242-9.78427 00001.2820101.15509-2.437100-5.588240-9.7842731.4437 --------------JacobianMatrix-------------------- 16.92690000-16.9269000001.6879300 018.169100000-18.1691000000.883627 0041.9297-12.1301-11.15360003.54272-1.0628-1.76646000 00-12.045518.060
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 潮流 上机 课程设计 报告
![提示](https://static.bdocx.com/images/bang_tan.gif)