潮流上机
电气工程及其自动化专业(二学位)人才培养方案2011版
电气工程及其自动化专业(二学位)人才培养方案学科门类工学代码08
类别电气信息类代码0806
专业名称电气工程及其自动化代码080601 一、学制与学位
学制:二年
学位:第二学士学位
二、培养目标
培养基础扎实,知识面宽,具有较强的综合素质和一定的创新精神,能够从事电气工程及其自动化领域相关的工程设计、生产制造、系统运行、系统分析、技术开发、教育科研、经济管理等方面工作的特色鲜明的复合型高级工程技术人才。
三、专业培养基本要求
1.了解本专业领域的理论前沿和发展动态;
2.获得较好的工程实践训练,具有综合解决工程实际问题的能力;
3.具有较强的知识获取与运用能力,具备创新意识和从事科学研究、科技开发的能力;
4.具有较强的工作适应性、人际交往能力和团队协作精神,具有一定的组织管理才能。
四、学时与学分
五、专业主干课程
1.学科技术基础骨干课:工程制图、电路理论、模拟电子技术基础、数字电子技术基础、网络与通信技术
2.学科专业基础骨干课:电机学、工程电磁场、电力电子技术
3.学科专业骨干课:电力系统分析基础、电力系统暂态分析、电力系统继电保护原理、发电厂电气部分、高电压技术
Table of Teaching Schedule for Required Course
Table of Teaching Schedule for Specialty Elective Course
独立开设的实践教学环节进程
Table of Teaching Schedule for Major Practical Training。
潮流上机实验报告
《电力系统潮流上机》课程设计报告院系班级:学号:学生姓名:指导教师:设计周数成绩:日期:年月日一、课程设计的目的与要求培养学生的电力系统潮流计算机编程能力,掌握计算机潮流计算的相关知识二、设计正文(详细内容见附录)1.手算: 要求应用牛顿-拉夫逊法或P-Q 分解法手算求解,要求精度为0.001MW 。
节点1为平衡节点,电压︒∠=00.11U ,节点2为PQ 节点,负荷功率6.08.0~2j S +=,节点3是PV 节点,1.1,4.033==U P ,两条支路分别为04.001.013j Z +=,2.005.012j Z +=,对地支路33.030j y =。
2.计算机计算:编写潮流计算程序,要求如下:2.1据给定的潮流计算任务书整理潮流计算的基础数据:节点的分类,线路模型,等值变压器模型,电压等级的归算,标幺值的计算;2.2基础数据的计算机存储:节点数据,支路数据(包括变压器); 2.3用牛顿-拉夫逊法计算;2.4根据所选潮流计算方法画流程图,划分出功能模块,有数据输入模块,导纳阵形成模块,解线性方程组模块,计算不平衡功率模块,形成雅可比矩阵模块,解修正方程模块,计算线路潮流,网损,PV 节点无功功率和平衡节点功率,数据输出模块; 2.5据上述模块编制程序并上机调试程序,得出潮流计算结果; 2.6源程序及其程序中的符号说明集、程序流图简单系统如下图所示,支路数据如下:41.01.012j z +=,3.013j z =,5.012.014j z +=,40.008.024j z +=01528.01,202,10j y y ==,0192.01,404,10j y y ==,01413.02,404,20j y y == 1.1=k节点数据如下:18.030.01j S --= ,13.055.02j S --= , 5.03=S ,10.13=U ,o U 005.14∠=1)节点导纳阵#include <stdio.h> #include <math.h> #include <fstream.h> #include "LF.h"//form node conductance matrixintMakeY( intnB, intnL, Line* sL, double** YG, double** YB ) { inti,j,l;double r,x,d1,g,b,t; for(i=0;i<nB;i++) for(j=0;j<nB;j++) { YG[i][j]=0.0;YB[i][j]=0.0;} for(i=0;i<nL;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){case 1://Linebreak;case 2://Transformerg*=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<nB;i++){for(j=0;j<nB;j++)printf("%lf\t",YG[i][j]);printf("\n");}printf("虚部:\n");for(i=0;i<nB;i++){for(j=0;j<nB;j++)printf("%lf\t",YB[i][j]);printf("\n");}/* Check the Y matrix */ofstreamfout("out.txt");fout<< "--------------Y Matrix--------------------" <<endl;for(i=0;i<nB;i++){for(j=0;j<nB;j++)fout<< YG[i][j] << "+j" << YB[i][j] << "\t";fout<<endl;}fout.close();return 0;}2)计算功率不平衡量#include <stdio.h>#include <math.h>#include <fstream.h>#include "LF.h"//form delta p and delta qintCalDeltaPQ( intnpv, intnpq, Bus* bus, double** YG, double** YB, int* p_Jtobus, double* deltaf ){intk,i,j;for(k=0;k<npv+npq*2;k++){ i=p_Jtobus[k];if(k<npv){ deltaf[k]=bus[i].GenP-bus[i].LoadP;for(j=0;j<npv+npq+1;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<npq+npv&&k>=npv){ deltaf[k]=bus[i].GenP-bus[i].LoadP;for(j=0;j<npv+npq+1;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<npq*2+npv&&k>=npv+npq){deltaf[k]=bus[i].GenQ-bus[i].LoadQ;for(j=0;j<npv+npq+1;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]);}}return 0;}3)雅各比矩阵的计算/*Purpose: for undergraduate courseTask: Load FlowCopyright @ NCEPU, Liu Chongru*/#include <stdio.h>#include <math.h>#include <fstream.h>#include "LF.h"//form Jacobian matrixintFormJacobian( intnpv, intnpq, Bus* bus, double** YG, double** YB, int* p_Jtobus, double** Jac ){ intnp = npv+npq,j,k,i,m;//TODOdouble a[14],q[14];for(k=0;k<npv+npq*2;k++){i=p_Jtobus[k];a[i]=0;q[i]=0;if(k<np)//H N{for(j=0;j<np+1;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-bu s[j].Phase));q[i]+=bus[j].Volt*(YG[i][j]*cos(bus[i].Phase-bus[j].Phase)+YB[i][j]*sin(bus[i].Phase-bu s[j].Phase));}for(m=0;m<npv+npq*2;m++){j=p_Jtobus[m];if(j!=i){if(m<np)Jac[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));//Form HelseJac[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));//Form N}else if(j==i){if(m<np)Jac[k][m]=-bus[i].Volt*a[i];//Form HelseJac[k][m]=bus[i].Volt*q[i]+2*bus[i].Volt*bus[i].Volt*YG[i][j];//Form N}}}else{for(j=0;j<np+1;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-bu s[j].Phase));q[i]+=bus[j].Volt*(YG[i][j]*cos(bus[i].Phase-bus[j].Phase)+YB[i][j]*sin(bus[i].Phase-bu s[j].Phase));}for(m=0;m<npv+npq*2;m++){j=p_Jtobus[m];if(j!=i){if(m<np)Jac[k][m]=-bus[i].Volt*bus[j].Volt*(YG[i][j]*cos(bus[i].Phase-bus[j].Phase)+YB[i][j]*si n(bus[i].Phase-bus[j].Phase)); //Form JelseJac[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)); //Form L }else if(j==i){ if(m<np)Jac[k][m]=bus[i].Volt*q[i];elseJac[k][m]=bus[i].Volt*a[i]-2*bus[i].Volt*bus[i].Volt*YB[i][j];} }}}for(i=0;i<np+npq;i++){for(int j=0;j<np+npq;j++){printf("%d %d %f ",i,j,Jac[i][j]);}printf("\n");}//Output the matrix to check the Jacobian matrixofstreamfout("out.txt",ios::app);fout<< "--------------Jacobian Matrix--------------------" <<endl;for(i=0; i<np+npq;i++ ){for(j=0; j<np+npq; j++ )fout<<Jac[i][j] << "\t";fout<<endl;}fout.close();return 0;}4)线路损耗//8.calculate the power flowdouble* p_Pij, *p_Qij, *p_Pji, *p_Qji;p_Pij = new double[nL];p_Qij = new double[nL];p_Pji = new double[nL];p_Qji = new double[nL];int x1,x2;for( i=0; i<nL; 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-bu s[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-bu s[x1].Phase));}else{p_Pij[i]=bus[x1].Volt*bus[x1].Volt*(-YG[x1][x2])/line[i].K-bus[x1].Volt*bus[x2].Vol t*((-YG[x1][x2])*cos(bus[x1].Phase-bus[x2].Phase)+(-YB[x1][x2])*sin(bus[x1].Phase-bus[x 2].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].Ph ase-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].P hase));p_Qji[i]=-bus[x2].Volt*bus[x2].Volt*((-YB[x2][x1])*line[i].K+line[i].B)-bus[x2].Volt*bu s[x1].Volt*((-YG[x2][x1])*sin(bus[x2].Phase-bus[x1].Phase)-(-YB[x2][x1])*cos(bus[x2].Ph ase-bus[x1].Phase)); }}//p and q of PH bus and PV bus int s=0;double p[9],q[9],Ps[9],Qs[9],PS=0,QS=0; for( i=0; i<nB; i++ ){p[i]=0;q[i]=0; for(int j=0; j<nB; j++ ){p[i]+=(bus[j].Volt*(YG[i][j])*cos(bus[j].Phase)-bus[j].Volt*(YB[i][j])*sin(bus[j].Phas e));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<nB;i++) { PS+=Ps[i]; QS+=Qs[i];}printf("PS=%7.7f,QS=%7.7f\n",PS,QS);}//lossdoublePloss=0, Qloss=0; for( i=0; i<nB; i++ ){Ploss+=p_Pij[i]+p_Pji[i]; Qloss+=p_Qij[i]+p_Qji[i];} 5)程序流图如下6--------------Y Matrix--------------------0+j-17.3611 0+j0 0+j0 0+j17.3611 0+j0 0+j0 0+j0 0+j0 0+j00+j0 0+j-16 0+j0 0+j0 0+j0 0+j0 0+j16 0+j0 0+j00+j0 0+j0 0+j-17.0648 0+j0 0+j0 0+j0 0+j0 0+j0 0+j17.06480+j17.3611 0+j0 0+j0 3.30738+j-39.3089 -1.36519+j11.6041 -1.94219+j10.5107 0+j0 0+j0 0+j0 0+j0 0+j0 0+j0 -1.36519+j11.6041 2.55279+j-17.3382 0+j0 -1.1876+j5.97513 0+j0 0+j00+j0 0+j0 0+j0 -1.94219+j10.5107 0+j0 3.2242+j-15.8409 0+j0 0+j0 -1.28201+j5.588240+j0 0+j16 0+j0 0+j0 -1.1876+j5.97513 0+j0 2.80473+j-35.4456 -1.61712+j13.698 0+j00+j0 0+j0 0+j0 0+j0 0+j0 0+j0 -1.61712+j13.698 2.77221+j-23.3032 -1.15509+j9.784270+j0 0+j0 0+j17.0648 0+j0 0+j0 -1.28201+j5.58824 0+j0 -1.15509+j9.78427 2.4371+j-32.1539 --------------Jacobian Matrix--------------------16.4 0 0 0 0 -16.4 0 0 0 0 0 0 0 00 17.4915 0 0 0 0 0 -17.4915 0 0 0 0 0 00 0 40.1703 -11.6041 -10.5107 0 0 0 3.30738 -1.36519 -1.94219 0 0 00 0 -11.6041 17.5792 0 -5.97513 0 0 -1.36519 2.55279 0 -1.1876 0 00 0 -10.5107 0 16.0989 0 0 -5.58824 -1.94219 0 3.2242 0 0 -1.28201-16.4 0 0 -5.97513 0 36.0731 -13.698 0 0 -1.1876 0 2.80473 -1.61712 00 0 0 0 0 -13.698 23.4822 -9.78427 0 0 0 -1.61712 2.77221 -1.155090 -17.4915 0 0 -5.58824 0 -9.78427 32.864 0 0 -1.28201 0 -1.15509 2.43710 0 -3.30738 1.36519 1.94219 0 0 0 38.4474 -11.6041 -10.5107 0 0 00 0 1.36519 -2.55279 0 1.1876 0 0 -11.6041 17.0972 0 -5.97513 0 00 0 1.94219 0 -3.2242 0 0 1.28201 -10.5107 0 15.5829 0 0 -5.588240 0 0 1.1876 0 -2.80473 1.61712 0 0 -5.97513 0 34.8181 -13.698 00 0 0 0 0 1.61712 -2.77221 1.15509 0 0 0 -13.698 23.1242 -9.784270 0 0 0 1.28201 0 1.15509 -2.4371 0 0 -5.58824 0 -9.78427 31.4437--------------Jacobian Matrix--------------------16.9269 0 0 0 0 -16.9269 0 0 0 0 0 1.68793 0 00 18.1691 0 0 0 0 0 -18.1691 0 0 0 0 0 0.8836270 0 41.9297 -12.1301 -11.1536 0 0 0 3.54272 -1.0628 -1.76646 0 0 00 0 -12.0455 18.0609 0 -6.01539 0 0 -1.78138 1.30819 0 -2.10262 0 00 0 -11.0484 0 16.8144 0 0 -5.76607 -2.33608 0 2.42598 0 0 -1.97778-16.9269 0 0 -6.36224 0 37.9476 -14.6585 0 0 -0.357534 0 3.05959 -0.930027 00 0 0 0 0 -14.4721 24.8873 -10.4152 0 0 0 -2.509 1.86088 -1.473890 -18.1691 0 0 -6.05157 0 -10.4721 34.6928 0 0 -0.733327 0 -0.9919732.66270 0 -3.52149 1.0628 1.76646 0 0 0 42.0299 -12.1301 -11.1536 0 0 00 0 1.78138 -3.884 0 2.10262 0 0 -12.0455 17.2037 0 -6.01539 0 00 0 2.33608 0 -4.31386 0 0 1.97778 -11.0484 0 16.2993 0 0 -5.766071.68793 0 0 0.357534 0 -2.97549 0.930027 0 0 -6.36224 0 38.3226 -14.6585 00 0 0 0 0 2.509 -3.98289 1.47389 0 0 0 -14.4721 24.2355 -10.41520 0.883627 0 0 0.733327 0 0.991973 -2.60893 0 0 -6.05157 0 -10.4721 34.8585 --------------Jacobian Matrix--------------------16.7457 0 0 0 0 -16.7457 0 0 0 0 0 1.63043 0 00 18.0388 0 0 0 0 0 -18.0388 0 0 0 0 0 0.8501960 0 41.3695 -11.8919 -10.9686 0 0 0 3.48069 -1.02775 -1.73712 0 0 00 0 -11.8057 17.6918 0 -5.8861 0 0 -1.7602 1.28091 0 -2.0217 0 00 0 -10.8651 0 16.5476 0 0 -5.68251 -2.29737 0 2.40655 0 0 -1.91027-16.7457 0 0 -6.21183 0 37.3041 -14.3465 0 0 -0.382862 0 2.95313 -0.937485 00 0 0 0 0 -14.1704 24.4052 -10.2348 0 0 0 -2.42909 1.86079 -1.433530 -18.0388 0 0 -5.94693 0 -10.2872 34.273 0 0 -0.757656 0 -0.9892082.598470 0 -3.48089 1.02775 1.73712 0 0 0 41.3703 -11.8919 -10.9686 0 0 00 0 1.7602 -3.78189 0 2.0217 0 0 -11.8057 16.6941 0 -5.8861 0 00 0 2.29737 0 -4.20764 0 0 1.91027 -10.8651 0 15.9488 0 0 -5.682511.63043 0 0 0.382862 0 -2.95077 0.937485 0 0 -6.21183 0 37.3083 -14.3465 00 0 0 0 0 2.42909 -3.86262 1.43353 0 0 0 -14.1704 23.7059 -10.23480 0.850196 0 0 0.757656 0 0.989208 -2.59706 0 0 -5.94693 0 -10.2872 34.2743 --------------Jacobian Matrix--------------------16.7435 0 0 0 0 -16.7435 0 0 0 0 0 1.63 0 00 18.0374 0 0 0 0 0 -18.0374 0 0 0 0 0 0.850 0 41.3625 -11.8888 -10.9664 0 0 0 3.48016 -1.02713 -1.73662 0 0 00 0 -11.8026 17.6871 0 -5.8845 0 0 -1.76008 1.28053 0 -2.02045 0 00 0 -10.8628 0 16.5444 0 0 -5.68158 -2.29703 0 2.40632 0 0 -1.90929-16.7435 0 0 -6.20987 0 37.296 -14.3426 0 0 -0.383399 0 2.95114 -0.937742 00 0 0 0 0 -14.1667 24.3994 -10.2326 0 0 0 -2.42794 1.86097 -1.433020 -18.0374 0 0 -5.94567 0 -10.285 34.2681 0 0 -0.758139 0 -0.9892032.597340 0 -3.48016 1.02713 1.73662 0 0 0 41.3625 -11.8888 -10.9664 0 0 00 0 1.76008 -3.78053 0 2.02045 0 0 -11.8026 16.6871 0 -5.8845 0 00 0 2.29703 0 -4.20632 0 0 1.90929 -10.8628 0 15.9444 0 0 -5.681581.63 0 0 0.383399 0 -2.95114 0.937742 0 0 -6.20987 0 37.296 -14.3426 00 0 0 0 0 2.42794 -3.86097 1.43302 0 0 0 -14.1667 23.6994 -10.23260 0.85 0 0 0.758139 0 0.989203 -2.59734 0 0 -5.94567 0 -10.285 34.2681--------------iteration---------------iteration = 4--------------voltage magnitude and angle--------------------1.04 0 01.025 0.161967 9.280011.025 0.0814153 4.664761.02579 -0.0386902 -2.216790.995631 -0.0696178 -3.988811.01265 -0.0643572 -3.68741.02577 0.064921 3.71971.01588 0.0126979 0.7275371.03235 0.0343257 1.96672-------------bus P and Q------------------1 0.71641 0.2704592 1.63 0.06653663 0.85 -0.1085974 0 05 -1.25 -0.56 -0.9 -0.37 0 08 -1 -0.359 0 0----------------line flow--------------------NUM------i-------j-----------begin------------end--------------1 4 1 -0.71641+j-0.239232 0.71641+j0.270462 7 2 -1.63+j0.0917816 1.63+j0.06653653 9 3 -0.85+j0.149553 0.85+j-0.1085974 7 8 0.763799+j-0.00797398 -0.759046+j-0.1070415 9 8 0.241834+j0.0311946 -0.240954+j-0.2429586 7 5 0.866201+j-0.0838079 -0.843202+j-0.1131287 9 6 0.608166+j-0.180748 -0.594627+j-0.1345668 5 4 -0.406798+j-0.386872 0.409373+j0.2289319 6 4 -0.305372+j-0.165433 0.307037+j0.0102993--------------------Ploss and Qloss-----------------Ploss = 0.0471901 Qloss = -0.9574833.思考题3.1潮流计算的方法有哪些?各有何特点?答:潮流计算分为手算和机算两大类,其中机算又有高斯-赛德尔迭代法、牛顿-拉夫逊迭代法、P-Q 分解法等算法。
潮流能发电及潮流能发电装置汇总
潮流能发电及潮流能发电装置戴庆忠摘要潮流能发电是利用潮汐动能的一种发电方式。
由于潮流能发电不需要筑坝拦水,具有对环境影响小等许多优点。
因此,近年来潮流能发电引起许多国家重视,潮流能发电技术发展很快。
本文从分析潮流能的特点入手,介绍了国内外潮流能发电的近况,重点介绍目前出现的各种潮流能发电装置,包括水平轴潮流能水轮机、竖井潮流能水轮机、振荡水翼式潮流能装置等。
关键词潮汐潮流能潮流能水轮机潮流能发电1前言1.1潮流能的特点潮流主要是指伴随潮汐现象而产生的有规律的海水流,潮流每天两次改变其大小和方向。
而潮流能发电则是直接利用涨落潮水的水流冲击叶轮等机械装置进行发电。
众所周知,潮汐是海水在月球、太阳等引力作用下形成的周期性海水涨落现象。
潮汐现象伴随两种运动形态:一是涨潮和落潮引起的海水垂直升降,即通常所指的潮汐;二是海水的水平运动,即潮流。
前者(海水垂直升降)所携带的能量(潮汐能)为势能;而后者所携带的能量(潮流能)为动能。
可以说,两者是与潮汐涨落相伴共生的孪生兄弟。
对前者,可以采用类似河川水力发电的方式,筑坝蓄水发电;而对本文所介绍的潮流能,可以采用类似于海流发电方式,利用潮流的动能发电。
与常规能源比较,潮流能有以下特点:(1) 潮流能是一种可再生的清洁能源。
(2) 潮流能的能量密度较低(但远大于风能和太阳能),但总储量较大。
(3) 与海流能不同,潮流能是一种随时间、空间而变化的能源,但其变化有规律可循,并可提前预测预报。
(4) 潮流能发电不拦海建坝,且发电机组通常浸没在海中,对海洋生物影响较小,也不会对环境产生三废污染,不存在常规水电建设中头疼的占用农田、移民安置等诸多问题。
(5) 与陆地电力建设相比,潮流能开发环境恶劣,一次性投资大,设备费用高,安装维护和电力输送等都存在一系列关键技术问题。
1.2 潮流能水轮机输出功率的计算潮流能机组输出功率的计算公式为:a :AV 3p=一2式中P——功率,W3P ——海水密度,1025kg/mA ――潮流水轮机转子扫掠面积,卅V ――潮流速度,m/sn ----- 效率从上述可以看出,潮流能机组的输出功率很大程度决定于潮流速度。
华北电力大学课程表
班级:电力实10
12至13学年第一学期 节 次 星期一 星期二 星期三 星期四 1-22周 星期五 星期六 星期日
电力电子技术A
第 教十一楼 A323(130) 孙丽玲
网络与通信技术
电力电子技术A
网络与通信技术
电力电子技术A
一 上 大
教九楼B座 教十一楼 教九楼B座 教十一楼 501(200) A323(130) 501(200) A323(130) 任惠 孙丽玲 任惠 孙丽玲 1-6,8-9周上(2学 1-6,8-9周上(2学 11-18周上(2学时) 时) 11-18周上(2学时) 时) 11-18周上(2学时)
第 临教楼203(70) 何玉钧 1-6,8-13周上(2学 时)
自动控制理论B
教十一楼 A208(130) 牛成林 6,8-18周上(2学 时)
数字电子技术基础 T
临教楼203(70) 何玉钧 1-6,8-13周上(2学 时)
电力系统分析基础 T
教十一楼 A302(130) 梁海峰 1-6,8-17周上(2学 时)
许伯强 梁海峰 郭以贺
8学时 16学时 32学时 16学时
分散进行 21周 19-20周 22周
教务处 2012-9-14 18:14
华北电力大学课表
End 时间
第一小节 8:00~8:50
第二小节 9:00~9:50
第三小节 10:10~11:00
第四小节 11:10~12:00
第五小节 夏15:00~15:50 冬14:30~15:20
实验楼数电实验室 3,5,9,11,13,15,1 7,19周上
二 午 大 节
教十一楼 教八楼403(144) A302(130) 教八楼403(144) 苑东伟 梁海峰 苑东伟 3-6,8-15周上(2学 1-6,8-17周上(2学 3-6,8-15周上(2学 时) 时) 时)
潮流能发电原理
潮流能发电原理潮流能发电是一种利用海洋潮汐能转化为电能的可再生能源技术。
潮汐是由于地球受到月球和太阳的引力作用而产生的规律性海洋水位变化。
潮汐是一种相对固定的自然现象,能够稳定地提供能量。
因此,利用潮汐能发电具有持续稳定的特点,被视为一种可靠的清洁能源。
潮流能发电的原理是利用海洋潮汐能转化为动力能,再将动力能转化为电能。
具体来说,主要包括潮汐动力装置和发电装置两部分。
潮汐动力装置是将潮汐能转化为机械能的装置。
一种常见的潮汐动力装置是潮流涡轮机。
潮流涡轮机通过将水流引入涡轮机,利用水流的动能带动涡轮旋转,进而驱动涡轮机内部的发电机发电。
涡轮机通常设在海底,以最大限度地利用潮流能。
发电装置是将机械能转化为电能的装置。
一般情况下,潮流涡轮机会通过传动系统将动力传递给内部的发电机。
发电机利用电磁感应原理,将旋转的机械能转化为电能。
由于潮流涡轮机的运行受到潮汐的影响,因此发电装置需要具备一定的调节和控制系统,以保证发电的稳定性和可控性。
潮流能发电具有一些独特的优势。
首先,潮汐能是一种可再生的能源,不会像化石能源一样耗尽。
其次,潮汐能是一种稳定的能源,潮汐的周期性和规律性使得发电系统能够提前计划和调度发电。
再次,潮流能发电是一种清洁能源,不会产生二氧化碳等温室气体和污染物,对环境没有直接的负面影响。
此外,潮流能发电的设备通常位于海洋中,不会占用大量陆地资源。
然而,潮流能发电也存在一些挑战和问题。
首先,由于潮汐能的利用需要特定的地理环境和条件,因此潮流能发电的可行性和适用性受到一定限制。
其次,潮流能发电设备的建设和维护成本较高,需要大量的投资。
此外,潮流能发电还面临着对海洋生态环境的影响和冲击,需要进行充分的环境评估和监测。
潮流能发电技术还处于发展初期,尚未广泛商业化应用。
但随着清洁能源的需求和发展,潮流能发电作为一种可持续的能源选择,具有重要的发展前景。
未来,随着技术的进一步突破和经济的进一步成熟,潮流能发电有望成为海洋能源领域的重要组成部分。
智能电网信息工程专业人才培养方案
智能电网信息工程专业人才培养方案Undergraduate Program for Smart Grid InformationEngineering Major学科门类工学代码08Discipline Type: Engineering Code:08专业类电气类代码0806 Type: Electrical Information Code: 0806 专业名称智能电网信息工程代码080602T Title of the Major: Smart Grid Information Engineering Code: 080602T一、学制与学位Length of Schooling and Degree学制:四年Duration:Four years学位:工学学士Degree:Bachelor of Engineering二、培养目标Educational Objectives培养具有扎实的专业理论和专业技能,具备较强的综合素质和一定的创新精神,掌握信息采集和处理的基本理论和电力系统通信技术,掌握电力系统生产、运行的规律和特点,并对智能电网体系结构和关键技术有一定认识,可以在信息化、自动化、互动化的电力系统领域从事研究、开发、设计、制造、运行维护与管理等工作的复合型高级工程技术人才。
To cultivate advanced and vertisale enginerring talents with solid theoretical knowledge and professional skills, having strong comprehensive qualities and a certain spirit of innovation, mastersing basic theory of information collection and processing, power system communication techniques and the characteristics of power production and operation. At the same time, the architecture and key techniques of smart grid are also learned. Upon the graduation, the students are expected to be comprehensive senior engineers with dominant speciality characteristic, and be capable for all information, automation, interactive areas of electrical engineering such as engineering design, electrical production, technology development, education and research etc.三、专业培养基本要求Skills Profile本专业学生主要学习电工电子技术, 计算机应用技术, 信息通信技术,同时掌握电气工程的基本知识和理论,使学生具备跨学科的综合素质和专业技能。
潮流能发电(一)
潮流能发电技术(一)Tidal Current Power Generation(1) 在浅海、海峡、海湾或河口一带,涨潮与退潮会引起较强的潮流,水流速度较高,可直接利用潮流前进的动能来推动水轮机发电,方法类似于风力发电机,称之为潮流发电机。
风力机可用的形式基本上都可用于潮汐动能发电,比较典型的的是采用与水平轴风力机相似的结构与原理,下面举两个例子介绍一下。
敞水型水平轴桨叶潮流发电装置图1是一种潮汐动能发电机示意图,与顺风式风力机工作原理相同,也叫桨叶式潮流发电机。
转轮的叶片与风力机类似,由于水的密度约为空气的800多倍,相同功率下的叶片面积与长度可大大缩小,不过潮汐水流速一般没有风速快。
叶轮通过增速齿轮箱与发电机连接,一同安装在机舱内,机舱安装在支柱上,可绕支柱旋转,支柱固定在海底,属坐底式安装。
水流推动叶轮旋转,并保持叶轮面与水流方向垂直。
由于叶轮在敞开的水中旋转,属敞水式结构。
图1 桨叶式潮流发电机图2 水下的桨叶式潮流发电机桨叶式潮流发电机可安装多个组成潮流发电站,图2是六个桨叶式潮流发电机的水下模拟图。
桨叶式潮流发电机在国外已有成功的产品,比较典型的是英国研制的一种桨叶式潮流发电机,名为“SeaGen”,形似倒置的风车,由一对涡轮组成,每个涡轮直径20米,容量1200千瓦。
涡轮安装在柱桩上,柱桩固定在海底。
图3是该潮流发电机的图片。
图3 SeaGen桨叶式潮流发电机(图片来自网络)扩张型涡轮潮流发电装置还有一种是把叶轮安装在水平扩张导流管内,扩张导流管在风力机中称为扩散器,利用导流管对水流进行加速,可明显提高叶轮的输出功率。
叶轮由多个叶片组成,这是一种导流管增速涡轮机结构,或称为导流管增速水轮机,见图4。
图4 导管涡轮式潮流发电机图中浅蓝色箭头线表示水流走向,水流推动发电机发电,涡轮机采用双向对称结构,反方向水流同样推动发电机发电,适用于潮流发电。
导流管增速涡轮发电机可安装多个组成潮流发电站,图5是五个导管涡轮式潮流发电机水下模拟图。
大学生的个人SWOT分析。
大学生的个人SWOT分析。
第一篇:大学生的个人SWOT分析。
大学生的个人SWOT分析SWOT分析方法是一种企业内部分析方法,即根据企业自身的既定内在条件进行分析,找出企业的优势,劣势及核心竞争力之所在。
其中,S代表strength(优势),W代表weakness(弱势),O代表opportunity(机会),T代表threat(威胁),其中,S、W是内部因素,O、T是外部因素。
近来,SWOT分析已广被应用在许多领域上,如学校的自我分析,个人的能力自我分析等方面,本文将对自身进行SWOT分析,从而正确认识自己,了解自己,完善自己。
一、个人优劣势分析1、个人优点(Strengths):性格上,做事认真,待人真诚,乐于助人,有强烈的责任感,言行举止得体,做人安分守己;能力上,有一定的分析能力,并有寻根究底的兴趣,一定要将事情想清楚;生活上,勤俭节约,不与别人攀比,生活态度比较乐观积极向上,自控能力强,意志坚定;学习上,努力勤奋,不易受外界环境的影响,成绩良好,上课专心致志,已经通过计算机二级。
2、个人缺点(Weakness):性格大体倾向于内向,做事不果断,经常犹豫不决;在大众面前显得不够热情大方,说话不稳重,也没幽默感;有时不够积极参加学校和学院的各项活动。
在大学习没有结合长远目标,创新能力有待提高;写作能力差,语言表达不够流利和简洁;竞争意识不强,不够主动地利用校园资源,比如学校图书馆和电脑室等,很少借阅书和到电脑室利用英语资源。
二、环境外界分析1、环境优势(Opportunities):现在我处于大三的第二学期期末,还有一年的时间来改进自身的缺点和锻炼各方面的能力。
正所谓二十一世纪是效率至上的社会,这说明作为管理学院的一员,我在二十一世纪将有一个大好的发展前途。
另一方面,国家振兴物流产业政策的实施,这又为我的就业提供了好机会。
国家出台了相关的政策来解决大学生就业的问题,我同样也受益在其中。
我住在一个和谐的宿舍里,舍友们个个勤奋好学,有他们的帮助与支持。
【国家自然科学基金】_情绪理解_基金支持热词逐年推荐_【万方软件创新助手】_20140801
2010年 序号 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
科研热词 面孔表情 资源配置效率 语言 认知调节 认知共情 认知 行为抑制 脑机制 求医行为 投资者情绪 情绪理解 情绪分享 情绪共情 情绪 心理理论 学前儿童 婴儿 医患互动 医学无法解释的症状 功能磁共振成像 共情 企业投资行为 事件相关电位
科研热词 心理理论 幼儿 音乐 阿尔茨海默病患者 镜像神经元系统 错误信念 逢迎行为 辱虐管理 语言 访谈 记忆 认知过程 认知评价 认知活动 认知 观点采择 自我建构 脑功能 肿瘤 考古学 羞耻感 美国 纵向研究 离职倾向 社会认知 疾病感知 疼痛 生气 模仿 政治技能 投资者情绪指数 投资者情绪 慢性疾病 情绪认知 情绪表情 情绪耗竭 情绪理解 情绪与收益假说 情感计算 情感编码 情感度量 心理理论量表 心理学 当期收益 应激 应对方式 实验设计 定性研究 学前儿童 孤独症 大学生 发展次序
1 1 1 1 1 1 1 1
2011年 科研热词 情绪 面部表情识别 轻度认知损伤 跨文化研究 语音意图理解 记忆 认知障碍 认知重评 认知理论基础 认知模式 认知心理学 认知冲突 自我意识情绪理解 美国人 网络游戏 网络教育 积极情绪 积极心理学 特质理解 消极情绪 沉默行为 效价线索 执行控制 情绪调节 情绪线索 情绪冲突 情感计算 情感缺失 情感建模 心理治疗 心理影响因素 归因 建言行为 帕金森病 小学儿童 多模态信息融合 多模态信息抽取 基底神经节 同伴接纳 发展过程 印象管理 动机 功能性磁共振成像 儿童 亲社会行为 中国人 中医辨证过程 推荐指数 2 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1
2022年最新高等教育本科专业课程及就业方向
大学本科各大专业及学习课程详细介绍大全1.【专业名称】中药资源与开发本专业主要学习中药的基本理论和基本知识,学习获得调查分析中药资源和中药材生产加工、中药资源的综合开发和利用以及保护更新等方面的知识和技能。
学生将受到系统的中药资源与开发的专业基本训练,具有中药资源调查,中药原料的生产、加工,中药资源的综合开发和中药新药开发的基本能力。
毕业后能从事中药资源调查、中药材培养、中药材鉴定、中药原料采购、中药资源的综合开发和合理利用、中药新药研究开发等方面工作。
主要课程:计算机应用基础、程序设计语言、大学英语,高等数学(ⅠⅡ)、线性代数、概率统计、物理学、无机化学、分析化学、有机化学、物理化学、法律基础、中医药基础理论、基础生物学、药用植物学、药用动物学、植物生理和生态学、生药学(中药鉴定学)、药用植物栽培学、中药资源学、天然药物资源化学、植物化学分类学、中药分析化学、中药生物技术、中药药理学、中药材加工和炮制学、中药药剂学、中药新药和保健食品开发概论、药事法规。
2.【专业名称】包装工程业务培养目标:本专业培养具备包装系统设计与管理等方面的能力,能在商品生产与流通部门、包装企业、科研机构、外贸、商检等部门从事包装系统设计、质量检测、技术管理和科学研究的高级工程技术人才。
业务培养要求:本专业学生要学习保护产品、方便流通、促进销售的包装基础理论.包装设计原理和方法、包装材料、包装印刷、包装测试、包装艺术设计、包装设计等基本知识。
毕业生应获得以下几方面的知识和能力:1.掌握工程力学、材料学、生物学、设计美学等包装工程的基础理论;2.掌握包装工艺、包装结构设计方法和包装测试、包装管理技术;3.具有制定包装工艺、合理选择包装材料和包装设备的初步能力;4.熟悉国家有关包装的方针、政策和法规;5.了解包装学前沿和发展趋势;6.掌握文献检索、资料查询的基本方法,具有分析解决包装工程技术问题,研究、开发包装新材料、新结构、新工艺、新设备和技术管理的初步能力。
基于极限编程的潮流上机实践教学探索
A s a tT ep p r nrd csteet m r rm n ( P e oooyit tetahn rci fh rc b t c :h ae t u e xr epo a mig X )m t d l o h c igpat eo t pa— r i o h e g h g n e c e
aea he e ,a dtahn u l h sb e n a c d s nf a t . r c iv d n e c igq ai a e n e h nห้องสมุดไป่ตู้e i ic nl  ̄ g i y
Ke wo d :p we o c lu a in p a t e e c i g mo e ;e t me p o a y r s o rf w ac l t r ci ;ta h n d l xr l o c e r g mmi g r n
t a h n u l y o e p a t e c u s r lo i r v d e c i g q ai ft r c i o re a e a s mp o e .T a h n r cie r s l h w t a o d t a h n e u t t h c e c ig p a t e u t s o h tg o e c i g r s l c s s
tc o re o o u e i e o rfo c lu ai n A tp— y se e c i g se sc r f ly d sg e ie c u s fc mp tra d d p we w a c l t . l o se b —t p t a h n tp i a eu l e i n d,a d s me n o
SUN n y Yi g- un,DONG i Le ,LI Ba z u,AI Xi U o- h n
华北电力大学本科专业介绍 电力工程系 电力系统及其自动化 培养目标
华北电力大学本科专业介绍电力工程系电力系统及其自动化培养目标:培养从事电力系统及其自动化领域的科研、设计、运行、试验和管理等方面的高级工程技术人才。
培养要求:本专业学生主要学习电力系统及其自动化和发电厂的电力生产、输送和配电等方面的基础理论、基本知识和基本技能。
主干学科:电力系统、电气工程、自动化。
主要课程:电路理论、电机学、电子技术基础、自动控制原理、微机原理及应用、电力系统分析基础、发电厂电气部分、电力系统暂态分析、电力系统继电保护原理、高电压技术、电力系统自动化、电力系统调度运行与控制、电力系统规划与可靠性、直流输电与FACTS技术等。
实践环节:金工实习、机械制图、电路实验、电机实验、电子技术综合实验、电力系统潮流上机计算、电力系统暂态上机计算、计算方法上机计算、电力系统综合实验(动模实验)、计算机应用及上机实践、认识实习、生产实习、电力系统课程设计、发电厂电气部分课程设计、毕业设计。
毕业生适应的工作领域:毕业生主要到电力系统科研、生产、运行、试验、设计、制造、管理、教育以及其他行业从事电气工程及相关领域的专门技术工作。
继电保护与自动远动技术培养目标:培养从事电力系统继电保护、自动化远程监控领域内的科研、设计、运行、试验、管理等方面的高级工程技术人才。
培养要求:本专业学生主要学习电力系统继电保护、自动化和远程监控等方面设计和运行的基本理论、基本知识和基本技能。
主干学科:电力系统、继电保护、自动化、远程监控。
主要课程:电路、电机学、电子技术基础、自动控制理论、微机原理及接口技术、电力系统基础、电力系统故障分析、电力系统继电保护原理与运行、电力系统自动化、电力系统远程监控等。
主要实践环节:机械制图、金工实习、电子技术综合实验、电机、电路实验、计算机应用及上机实践、课程设计、专业综合实验、认识实习、生产实习、毕业设计。
毕业生适应的工作领域:毕业生主要到电力系统科研、生产、运行、试验、设计、制造、管理、教育以及其他行业从事电气工程领域的专门技术工作。
潮流上机(19-20)安排new
批改试卷、实验报告
7月15日(星期五)
批改试卷、实验报告
录入成绩
请各位老师将实验时间通知学生。如果各位老师上课时间有困难,请相互协调后告知电力系统仿真试验室。
请老师提醒每天最后一个班负责将纸篓倾倒干净!
上课地点:教五楼c201
老师所带班级列表:
刘宝柱
电气1301,电气1302、电气1303
陈艳波
2015-2016(二)潮流上机时间安排
8:00-10:00
10:00-12:00
12:00-14:00
14:00-16:00
16:00-18:00
18:30-20:00
7月4日(星期一)
孙英云
刘宝柱
陈艳波
王莉丽
毛安家
齐郑
7月5日(星期二)
孙英云
毛安家
王莉丽
刘宝柱
陈艳波
齐郑
7月6日(星期三)
孙英云
齐郑
电气1311,电气1312、电气1313
孙英云
电气1304,电气1305、电气1306
王莉丽
电气1310、电气1314、电气1315
齐郑
电气1307,电气1308,电气1309
毛安家
电网1301,电网1302、电网1303
毛安家
王莉丽
刘宝柱
陈艳波
7月7日(星期四)
孙英云
毛安家
王莉丽
齐郑
刘宝柱
陈艳波
7月8日(星期五)
孙英云
陈艳波
齐郑
王莉丽
毛安家
刘宝柱
7月11日(星期一)
孙英云
王莉丽
陈艳波
毛安家
齐郑
刘宝柱
7月12日(星期二)
华电潮流上机程序(含网损计算)最终版2015.1.11
// flow.cpp: 主项目文件。
#include"stdafx.h"#include"NEquation.h"#include"math.h"#include"stdio.h"#include"config.h"using namespace System;void test(){NEquation ob1;ob1.SetSize(2);ob1.Data(0,0)=1;ob1.Data(0,1)=2;ob1.Data(1,0)=2;ob1.Data(1,1)=1;ob1.Value(0)=4;ob1.Value(1)=6;ob1.Run();printf("x1=%f\n",ob1.Value(0));printf("x2=%f\n",ob1.Value(1));printf("Test OK!\n");}void GetData() //读取数据{int i;FILE *fp;fp=fopen("E:\\1121180617邵天赐\\data\\data.txt","r");if(fp==NULL){printf("Can not open the file named 'data.txt' \n");return;}for(i=0;i<=Bus_Num-1;i++){fscanf(fp,"%d,%f,%f,%f,%f,%f,%f,%d",&gBus[i].No,&gBus[i].Voltage,&gBus[i].P &gBus[i].GenP,&gBus[i].GenQ,&gBus[i].LoadP,&gBus[i].LoadQ,&gBus[i].Typ }for(i=0;i<=Line_Num-1;i++){fscanf(fp,"%d,%d,%d,%f,%f,%f,%f",&gLine[i].No,&gLine[i].No_I,&gLine[i].No_J &gLine[i].R,&gLine[i].X,&gLine[i].B,&gLine[i].k);}printf("Open the file OK! \n");fclose(fp);}void GetYMatrix()// 由Z阵计算Y阵{int i,j,bus1,bus2;FILE *fp;float r,x,d,g,b,g1,b1,g2,b2,g3,b3;for(i=0;i<=Bus_Num-1;i++){for(j=0;j<=Bus_Num-1;j++){gY_G[i][j]=0;gY_B[i][j]=0;}}for(i=0;i<=Line_Num-1;i++){if(gLine[i].k==0){bus1=gLine[i].No_I-1;bus2=gLine[i].No_J-1;r=gLine[i].R;x=gLine[i].X;d=r*r+x*x;g=r/d;b=-x/d;gY_G[bus1][bus1]=gY_G[bus1][bus1]+g;gY_G[bus2][bus2]=gY_G[bus2][bus2]+g;gY_G[bus1][bus2]=gY_G[bus1][bus2]-g;gY_G[bus2][bus1]=gY_G[bus2][bus1]-g;gY_B[bus1][bus1]=gY_B[bus1][bus1]+b+gLine[i].B;gY_B[bus2][bus2]=gY_B[bus2][bus2]+b+gLine[i].B;gY_B[bus1][bus2]=gY_B[bus1][bus2]-b;gY_B[bus2][bus1]=gY_B[bus2][bus1]-b;}else{bus1=gLine[i].No_I-1;bus2=gLine[i].No_J-1;r=gLine[i].R;x=gLine[i].X;d=r*r+x*x;g=r/d;b=-x/d;g1=g/gLine[i].k;b1=b/gLine[i].k;g2=g*(gLine[i].k-1)/gLine[i].k;b2=b*(gLine[i].k-1)/gLine[i].k;g3=g*(1-gLine[i].k)/(gLine[i].k*gLine[i].k);b3=b*(1-gLine[i].k)/(gLine[i].k*gLine[i].k);gY_G[bus1][bus1]=gY_G[bus1][bus1]+g1+g2;gY_G[bus2][bus2]=gY_G[bus2][bus2]+g1+g3;gY_G[bus1][bus2]=gY_G[bus1][bus2]-g1;gY_G[bus2][bus1]=gY_G[bus2][bus1]-g1;gY_B[bus1][bus1]=gY_B[bus1][bus1]+b1+b2;gY_B[bus2][bus2]=gY_B[bus2][bus2]+b1+b3;gY_B[bus1][bus2]=gY_B[bus1][bus2]-b1;gY_B[bus2][bus1]=gY_B[bus2][bus1]-b1;}}// 输出Y矩阵fp=fopen("E:\\1121180617邵天赐\\data\\ymatrix.txt","w");if(fp==NULL){printf("Can not open the file named 'ymatrix.txt' \n");return ;}fprintf(fp,"----Y Matrix----\n");for(i=0;i<=Bus_Num-1;i++){for(j=0;j<=Bus_Num-1;j++){fprintf(fp,"Y(%d,%d)=(%10.5f,%10.5f)\n",i+1,j+1,gY_G[i] [j],gY_B[i][j]);}}fclose(fp);}void SetInitial(){int i;for(i=0;i<=Bus_Num-1;i++){if(gBus[i].Type==3){gf[i]=gBus[i].Voltage*sin(gBus[i].Phase);ge[i]=gBus[i].Voltage*cos(gBus[i].Phase);}else{gf[i]=0;ge[i]=1;}}}void GetUnbalance(){int i,j,k;k=0;FILE *fp;for(i=0;i<=Bus_Num-1;i++){if(gBus[i].Type==1){gDelta_P[k]=0;gDelta_Q[k]=0;for(j=0;j<=Bus_Num-1;j++){gDelta_P[k]=gDelta_P[k]+ge[i]*(gY_G[i][j]*ge[j]-gY_B[i] [j]*gf[j])+gf[i]*(gY_G[i][j]*gf[j]+gY_B[i][j]*ge[j]);gDelta_Q[k]=gDelta_Q[k]+gf[i]*(gY_G[i][j]*ge[j]-gY_B[i] [j]*gf[j])-ge[i]*(gY_G[i][j]*gf[j]+gY_B[i][j]*ge[j]);}gDelta_P[k]=gBus[i].GenP-gBus[i].LoadP-gDelta_P[k];gDelta_Q[k]=gBus[i].GenQ-gBus[i].LoadQ-gDelta_Q[k];gDelta_PQ[k*2]=gDelta_P[k];gDelta_PQ[k*2+1]=gDelta_Q[k];k++;}else if (gBus[i].Type==2){gDelta_P[k]=0;gDelta_Q[k]=0;for(j=0;j<=Bus_Num-1;j++){gDelta_P[k]=gDelta_P[k]+ge[i]*(gY_G[i][j]*ge[j]-gY_B[i][j]*gf[j])+gf[i]*(gY_G[i][j]*gf[j]+gY_B[i][j]*ge[j]);}gDelta_P[k]=gBus[i].GenP-gBus[i].LoadP-gDelta_P[k];gDelta_Q[k]=gBus[i].Voltage*gBus[i].Voltage-(ge[i]*ge[i]+gf[i]*gf[i]);gDelta_PQ[k*2]=gDelta_P[k];gDelta_PQ[k*2+1]=gDelta_Q[k];k++;}}}void GetJaccobi(){int i,j,k;FILE *fp;float m,n;float H[Bus_Num-1][Bus_Num-1],N[Bus_Num-1][Bus_Num-1];float J[Bus_Num-1][Bus_Num-1],L[Bus_Num-1][Bus_Num-1]; for(i=1;i<=Bus_Num-1;i++){m=0;n=0;for(k=0;k<=Bus_Num-1;k++){m=m+gY_G[i][k]*gf[k]+gY_B[i][k]*ge[k];n=n+gY_G[i][k]*ge[k]-gY_B[i][k]*gf[k];}for(j=1;j<=Bus_Num-1;j++){if(gBus[i].Type==1){if(i!=j){H[i-1][j-1]=gY_B[i][j]*ge[i]-gY_G[i][j]*gf[i];N[i-1][j-1]=-gY_G[i][j]*ge[i]-gY_B[i][j]*gf[i];J[i-1][j-1]=-N[i-1][j-1];L[i-1][j-1]=H[i-1][j-1];}else if(i==j){H[i-1][i-1]=-gY_G[i][j]*gf[i]+gY_B[i][i]*ge[i]-m;N[i-1][i-1]=-gY_G[i][i]*ge[i]-gY_B[i][i]*gf[i]-n;J[i-1][i-1]=gY_G[i][j]*ge[i]+gY_B[i][i]*gf[i]-n;L[i-1][i-1]=-gY_G[i][i]*gf[i]+gY_B[i][j]*ge[i]+m;}}else if(gBus[i].Type==2){if(i!=j){H[i-1][j-1]=gY_B[i][j]*ge[i]-gY_G[i][j]*gf[i];N[i-1][j-1]=-gY_G[i][j]*ge[i]-gY_B[i][j]*gf[i];J[i-1][j-1]=0;L[i-1][j-1]=0;}else if(i==j){H[i-1][i-1]=-gY_G[i][j]*gf[i]+gY_B[i][i]*ge[i]-m;N[i-1][i-1]=-gY_G[i][i]*ge[i]-gY_B[i][i]*gf[i]-n;J[i-1][i-1]=-2*gf[i];L[i-1][i-1]=-2*ge[i];}}}}for(i=1;i<=Bus_Num-1;i++){for(j=1;j<=Bus_Num-1;j++){gJaccobi[2*(i-1)][2*(j-1)]=H[i-1][j-1]; gJaccobi[2*(i-1)][2*j-1]=N[i-1][j-1]; gJaccobi[2*i-1][2*(j-1)]=J[i-1][j-1];gJaccobi[2*i-1][2*j-1]=L[i-1][j-1];}}}void GetRevised(){FILE *fp;int i,j;NEquation ob1;ob1.SetSize(2*(Bus_Num-1));for (i=0;i<=2*(Bus_Num-1)-1;i++){for (j=0;j<=2*(Bus_Num-1)-1;j++)ob1.Data(i,j)=gJaccobi[i][j];ob1.Value(i)=gDelta_PQ[i];}ob1.Run();for(i=0;i<=(Bus_Num-1-1);i++){gDelta_f[i]=ob1.Value(2*i);gDelta_e[i]=ob1.Value(2*i+1);gDelta_fe[2*i]=gDelta_f[i];gDelta_fe[2*i+1]=gDelta_e[i];}}void GetNewValue(){FILE *fp;j=0;for(i=0;i<=Bus_Num-1;i++){if(gBus[i].Type!=3){gDelta_f[j]=gDelta_fe[2*j];gf[i]-=gDelta_f[j];gDelta_e[j]=gDelta_fe[2*j+1];ge[i]-=gDelta_e[j];j++;}}}int main(array<System::String ^> ^args){FILE *fp;int i,j,Count_Num;float maxValue,P_Bus[Bus_Num],Q_Bus[Bus_Num];float P[Bus_Num][Bus_Num],Q[Bus_Num][Bus_Num],PS,QS; float gBus_b[Bus_Num];// test();GetData();GetYMatrix();SetInitial();for(Count_Num=0;Count_Num<=100;Count_Num++){GetUnbalance();// 输出不平衡量fp=fopen("E:\\1121180617邵天赐\\data\\unbalance.txt","w");if(fp==NULL){printf("Can not open the file named 'unbalance.txt' \n");return 0 ;fprintf(fp,"----Unbalance----\n");for(i=0;i<=2*(Bus_Num-1)-1;i++){fprintf(fp,"unbalance(%d)=(%10.5f)\n",i+1,gDelta_PQ[i]); }fclose(fp);GetJaccobi();// 输出雅克比矩阵fp=fopen("E:\\1121180617邵天赐\\data\\Jaccobi.txt","w");if(fp==NULL){printf("Can not open the file named 'Jaccobi.txt' \n");return 0;}fprintf(fp,"----Jaccobi----\n");for(i=0;i<=2*(Bus_Num-1)-1;i++){for(j=0;j<=2*(Bus_Num-1)-1;j++){fprintf(fp,"Jaccobi(%d,%d)=(%10.5f)\n",i+1,j+1,gJaccobi[i][j]); }}fclose(fp);GetRevised();// 输出修正值fp=fopen("E:\\1121180617邵天赐\\data\\revised.txt","w");if(fp==NULL){printf("Can not open the file named 'revised.txt' \n");return 0;}fprintf(fp,"----Revised----\n");for(i=0;i<=2*(Bus_Num-1)-1;i++)fprintf(fp,"Revised(%d)=(%10.5f)\n",i+1,gDelta_fe[i]);}fclose(fp);GetNewValue();//输出新值fp=fopen("E:\\1121180617邵天赐\\data\\newvalue.txt","w");if(fp==NULL){printf("Can not open th file named 'newvalue.txt'\n");return 0;}fprintf(fp,"----Newvalue----\n");for(i=0;i<=Bus_Num-2;i++){fprintf(fp,"f(%d)=%10.5f,e(%d)=%10.5f\n",i+1,gf[i+1],i+1,ge[i+1]);}fclose(fp);//输出每次迭代电压幅值及相角fp=fopen("E:\\1121180617邵天赐\\data\\voltage.txt","a");if(fp==NULL){printf("Can not open th file named 'voltage.txt'\n");return 0;}fprintf(fp,"----第%d次迭代电压幅值及相角情况----\n",Count_Num+1);{for(i=0;i<=Bus_Num-1;i++){fprintf(fp,"节点%d:电压幅值:%10.5f ;相角:%10.5f\n",i+1,sqrt(ge[i]*ge[i]+gf[i]*gf[i]),atan(gf[i]/ge[i]));}fprintf(fp,"\n");fclose(fp);maxValue=fabs(gDelta_fe[0]);for(i=1;i<2*(Bus_Num-1);i++){if(maxValue<fabs(gDelta_fe[i])){maxValue=fabs(gDelta_fe[i]);}}if(maxValue<Precision){break;}}printf("\n");//求节点功率P_Bus,Q_Busfor(i=0;i<Bus_Num;i++){P_Bus[i]=0;Q_Bus[i]=0;}printf("节点注入功率\n");for(i=0;i<Bus_Num;i++){for(j=0;j<Bus_Num;j++){P_Bus[i]=P_Bus[i]+ge[i]*(gY_G[i][j]*ge[j]-gY_B[i][j]*gf[j]) +gf[i]*(gY_G[i][j]*gf[j]+gY_B[i][j]*ge[j]);Q_Bus[i]=Q_Bus[i]+gf[i]*(gY_G[i][j]*ge[j]-gY_B[i][j]*gf[j])-ge[i]*(gY_G[i][j]*gf[j]+gY_B[i][j]*ge[j]);}printf("P(%d)=%10.5f Q(%d)=%10.5f\n",i+1,P_Bus[i],i+1,Q_Bus[i]);}printf("\n节点对地电纳\n");for(i=1;i<=Bus_Num;i++){gBus_b[i-1]=0;for(j=1;j<=Line_Num;j++){if((i==gLine[j].No_I)||(i==gLine[j].No_J)){gBus_b[i-1]=gBus_b[i-1]+gLine[j].B;}elsecontinue;}printf("节点%d:%10.5f\n",i,gBus_b[i-1]);}printf("\n线路功率\n");for(i=0;i<=Bus_Num-1;i++){for(j=0;j<=Bus_Num-1;j++){P[i][j]=ge[i]*(ge[i]-ge[j])*gY_G[i][j]+ge[i]*(gf[j]-gf[i])*gY_B[i][j] +gf[i]*(ge[i]-ge[j])*gY_B[i][j]-gf[i]*(gf[j]-gf[i])*gY_G[i][j];Q[i][j]=-(ge[i]*ge[i]+gf[i]*gf[i])*gBus_b[i]+ge[i]*(ge[i]-ge[j])*gY_B[i][j]+ge[i]*(gf[j]-gf[i])*gY_G[i][j]+gf[i]*(ge[i]-ge[j])*gY_G[i][j] +gf[i]*(gf[j]-gf[i])*gY_B[i][j];printf("P_L[%d %d]=%10.5f Q_L[%d %d]=%10.5f\n",i+1,j+1,-P[i] [j],i+1,j+1,-Q[i][j]);}}printf("\n收敛的迭代次数:%d\n",Count_Num);printf("\n收敛后各节点电压幅值及相角:\n");for(i=0;i<=Bus_Num-1;i++){printf("节点%d:电压幅值:%10.5f ;相角:%10.5f\n",i+1,sqrt(ge[i]*ge[i]+gf[i]*gf[i]),atan(gf[i]/ge[i]));}printf("\n各节点注入功率:\n");for(i=0;i<Bus_Num;i++){if(gBus[i].Type==3){printf("平衡节点(节点%d)功率:P=%10.5fQ=%10.5f\n",i+1,P_Bus[i],Q_Bus[i]);//输出平衡节点功率 }else if(gBus[i].Type==2){printf("PV节点(节点%d)的功率:P=%10.5fQ=%10.5f\n",i+1,P_Bus[i],Q_Bus[i]);}}printf("\n网络线路功率计算的损耗:\n");PS=0;QS=0;for(i=0;i<Bus_Num;i++){for(j=0;j<Bus_Num;j++){if(i!=j){PS=PS+P[i][j];QS=QS+Q[i][j];}else continue;}}printf("损耗有功:%10.5f,损耗无功:%10.5f\n",-PS,-QS); while(true){} return 0; }。
基于Matpower含风电场潮流计算的实践教学探索
第42卷 第6期2020年12月电气电子教学学报JOURNALOFEEEVol.42 No.6Dec.2020收稿日期:2019 04 25;修回日期:2020 06 20基金项目:福建省自然科学基金面上项目(2019J01845);宁德师范学院科研创新团队(2018T05)第一作者:王洪涛(1978 ),男,博士研究生,副教授,主要从事电力系统规划、新能源发电与电力系统风险评估,E mail:taiyuanwang0801@126.com基于Matpower含风电场潮流计算的实践教学探索王洪涛1,宁世超1,黄丽霞1,耿卫星2,吴 雄3(1.宁德师范学院信息与机电工程学院,福建宁德352100;2.国网宁夏电力有限公司检修公司,宁夏银川750001;3.国家电网福建省电力公司宁德供电公司,福建宁德352100)摘要:在分布式电源大规模接入电网的新形势下,以Matpower软件包为潮流计算工具,对电力系统潮流计算实践教学进行了探索。
本文以含风电场的IEEE39节点系统为例,编制简便易行、可移植性高的潮流计算程序,以培养学生分析潮流计算结果的能力为重点,帮助学生建立电网运行的工程概念、注重工程应用为主线,探索了潮流计算实践教学的目标、内容和方法,为应用型工程技术人才培养模式下该课程的教学改革提供参考。
关键词:潮流计算;Matpower;风电场中图分类号:G426 文献标识码:A 文章编号:1008 0686(2020)06 0159 04ExploringofthePracticalTeachingforPowerFlowCalculationBasedonMatpowerWindFarmWANGHong tao1,NINGSHi chao1,HUANGLi xia1,GENGWei xing2,WUXiong3(1.NingdeNormalUniversity,Ningde,352100,China;2.OverhaulCompanyofStateGridNingxiaElectricPowerCompany.,Yinchuan750001,China;3.NingdePowerSupplyCompanyofStateGridFujianElectricPowerCompany,Ningde352100,China)Abstract:Underthenewsituationoflarge scaleaccesstodistributedpowersupply,theMatpowersoftwarepackageisusedasthepowerflowcalculationtooltoexplorethepracticalteachingofpowersystempowerflowcalculation.ThispapertakestheIEEE39 nodesystemwithwindfarmasanexampletocompileasimpleandeasy to useandhighlyportablepowerflowcalculationprogram.Itfocusesoncultivatingstudents'abilitytoanalyzepowerflowcal culationresults,helpingstudentstoestablishengineeringconceptsforgridoperationandpayattentiontotheengi neeringapplicationisthemainline,andtheobjectives,contentsandmethodsofthetrendcalculationpracticeteachingareexplored,whichprovidesareferencefortheteachingreformofthecourseundertheapplicationengi neeringtalenttrainingmode.Keywords:powerflowcalculation;Matpower;windfarm0 引言“电力系统潮流计算”是与“电力系统稳态分析”课程相配套的实践课程[1]。
电力系统潮流计算实验报告
11. 手算过程已知:节点1:PQ 节点, s(1)= -0.5000-j0.3500 节点2:PV 节点, p(2)=0.4000 v(2)=1.0500 节点3:平衡节点,U(3)=1.0000∠0.0000 网络的连接图:0.0500+j0.2000 1 0.0500+j0.2000231)计算节点导纳矩阵由2000.00500.012j Z 71.418.112j y ;2000.00500.013j Z71.418.113j y ;导纳矩阵中的各元素:42.936.271.418.171.418.1131211j j j y y Y ;71.418.11212j y Y ; 71.418.11313j y Y; 21Y 71.418.11212j y Y ; 71.418.12122j y Y;002323j y Y;31Y 71.418.11313j y Y; 32Y 002323j y Y;71.418.13133j y Y;形成导纳矩阵BY :71.418.10071.418.10071.418.171.418.171.418.171.418.142.936.2j j j j j j j j j Y B2)计算各PQ、PV 节点功率的不平衡量,及PV 节点电压的不平衡量:取:000.0000.1)0(1)0(1)0(1j jf e U000.0000.1)0(2)0(2)0(2j jf e U节点3是平衡节点,保持000.0000.1333j jf e U为定值。
nj j jij jij ijij jij i ieB fG f fB eG e P1)0()0()0()0()0()0()0(;2nj j jij jij ijij jij i ie B fG e f B eG f Q 1)0()0()0()0()0()0()0(;);(2)0(2)0(2)0(iiif e U)0.142.90.036.2(0.0)0.042.90.136.2(0.1)0(1P)0.171.40.018.1(0.0)0.071.40.118.1(0.1 )0.171.40.018.1(0.0)0.071.40.118.1(0.1 0.0 ;)0.142.90.036.2(0.1)0.042.90.136.2(0.0)0(1Q)0.171.40.018.1(0.1)0.071.40.118.1(0.0 )0.171.40.018.1(0.1)0.071.40.118.1(0.0 0.0 ;)0.171.40.018.1(0.0)0.071.40.118.1(0.1)0(2P)0.171.40.018.1(0.0)0.071.40.118.1(0.1 )0.00.00.00.0(0.0)0.10.00.10.0(0.1 0.0 ;101)(222)0(22)0(22)0(2f e U;于是:;)0()0(iiiP P P ;)0()0(iiiQQ Q);(2)0(2)0(22)0(iiiif e UU5.00.05.0)0(11)0(1P P P ;35.00.035.0)0(11)0(1QQ Q;4.00.04.0)0(22)0(2P P P ;1025.0)01(05.1)(2222)0(22)0(2222)0(2f e UU3)计算雅可比矩阵中各元素雅可比矩阵的各个元素分别为:3ji ij ji ij j i ij j i ij ji ij j i ij e U S f U R e Q L f Q J e P N f P H 22;;; 又: nj j jij jij i jij jij i ieB fG f fB eG e P1)0()0()0()0()0()0()0(; nj j jij jij ijij jij iieB fG e fB eG f Q 1)0()0()0()0()0()0()0(;);(2)0(2)0(2)0(iiif e U)0(1P )0(111)0(111)0(1)0(111)0(111)0(1e Bf G f f B e G e)0(212)0(212)0(1)0(212)0(212)0(1e B fG f f B e G e313313)0(1313313)0(1e Bf G f f B e G e ;)()()0(111)0(111)0(1)0(111)0(111)0(1)0(1e Bf Ge f B e G f Q)()()0(212)0(212)0(1)0(212)0(212)0(1e Bf G e f B e G f)()(313313)0(1313313)0(1e Bf G e f B e G f;)0(2P )0(121)0(121)0(2)0(121)0(121)0(2e Bf G f f B e G e)0(222)0(222)0(2)0(222)0(222)0(2eB fG f fBeG e323323)0(2323323)0(2e Bf G f f B e G e ;)(2)0(22)0(22)0(2f e U42.90.171.40.171.4313)0(212)0(1)0(1)0(11e B e Bf P H ; 36.20.118.10.118.10.136.222313)0(212)0(111)0(1)0(1)0(11 e G e G e G e P N 36.20.118.10.118.1313)0(212)0(1)0(1)0(11 e G e G f Q J442.90.171.40.171.40.142.922313)0(212)0(111)0(1)0(1)0(11 e B e B e B e Q L 71.40.171.4)0(112)0(2)0(1)0(12 e B f P H ; 18.10.118.1)0(112)0(2)0(1)0(12 e G e P N ; 18.10.118.1)0(112)0(2)0(1)0(12 e G f Q J ;71.40.171.4)0(112)0(2)0(1)0(12 e B e Q L ; 71.40.171.4)0(221)0(1)0(2)0(21 e B f P H ; 11.40.111.4)0(221)0(1)0(2)0(21 e G e P N ; 0)0(12)0(2)0(21 f U R ; 0)0(12)0(2)0(21 e U S ; 71.40.10.00.171.4323)0(121)0(2)0(2)0(22 e B e B f P H ; 18.10.10.00.118.10.118.122323)0(121)0(222)0(2)0(2)0(22 e G e G e G e P N ;02)0(2)0(22)0(2)0(22 f f U R ; 0.20.122)0(2)0(22)0(2)0(22 e e U S ; 得到K=0时的雅可比矩阵:0.200018.171.418.171.471.418.142.936.218.171.436.242.9)0(J4)建立修正方程组:5)0(2)0(2)0(1)0(10.200011.4959.1011.4959.10959.1011.4918.2122.811.4959.1022.8918.210975.04.035.08.0e f e f 解得:04875.001828.00504.00176.0)0(2)0(2)0(1)0(1e f e f 因为 )0()0()1(iiie e e ; )0()0()1(iiif f f ;所以 9782.00218.00.1)0(1)0(1)1(1e e e ; 0158.00158.00)0(1)0(1)1(1f f f ;05125.105125.00.1)0(2)0(2)1(2e e e ;05085.005085.00)0(2)0(2)1(2f f f ;5)运用各节点电压的新值进行下一次迭代:即取: 0158.09782.0)1(1)1(1)1(1j jf e U05085.005125.1)1(2)1(2)1(2j jf e U节点3时平衡节点,保持000.0000.1333j jf e U为定值。
个人swot分析
个人职业规划,个人能力SWOT分析能动学院2011电力工程与管理班黄巨龙 201110821我于2011年入兰州交通大学攻读电力工程与管理专业,截至今日,正在学习专业基础知识,假期曾去参加学院组织的“三支”社会实践活动。
个人能力在这一年里也得到了锻炼和提高。
现在就我的个人能力及我的职业规划作一个SWOT分析。
优势分析(Strengths Analysis),劣势分析(Weakness Analysis)、机会分析(Opportunity Analysis)与威胁分析(Threats Analysis) 四方面的分析一:优势分析(Strengths Analysis)1.做事认真负责,积极诚恳,勤勤恳恳,做任何事前都充分做好准备,任劳任怨,踏实肯干,意志力强;2.爱吃苦,能吃苦,积极向上,为人憨厚老实;3.性情温和,待人热情,比较随和,易于相处;4.交际能力强,课余时间做了家教,沟通能力强,交际广,人脉广,团队协作能力较强;5.乐于助人,不管大事小事,凡是力所能及的事情能帮就帮,因此在班上也很受欢迎;6.组织能力强,在班上担任了一年生活委员,主持过很多活动,具备一定的组织能力;7.写作能力较强,文字组织能力较好;动手能力,学习能力强,较注重理论与实际相结合;积极入党,上了党课培训并已结业,成为了一名入党积极分子;8.院优秀团干部称号等;二:劣势分析(Weakness Analysis)1.文化成绩不够理想;2.未过英语四、六级;3.做事不够细致,耐心不足4.做事不够大胆创新,较保守三:机会分析(Opportunity Analysis)1.“电力工程与管理”专业设置的课程涉及面广泛,主要包括:物理学、数学、经济学、管理学、金融学、法学以及市场营销学等,这就要求学习此专业的人具备较高能力;其所开设的课程还主要包括:电工技术、电子技术、现代发电厂概论、电力系统概论、管理学理论、经济学原理、数据库管理系统、投资理财、电力市场、电力企业管理、能量管理系统、投资经济学、计量经济学、管理系统工程、电力市场运营理论与技术、电力市场营销学、财务会计、金融学、市场调查与预测、电路理论、模拟电子技术、数字电子技术、自动控制理论、电力系统分析基础、电力系统暂态分析、电机学等;主要实践环节还设有:电力系统潮流上机计算、电力系统综合实验、变电站仿真综合实验、发电市场仿真实验、发电厂经济运行课程设计、电力营销课程设计、电力经济综合实验、电力工程与经济拓展研究等;2.电力工程与管理专业涉及领域广泛,就业前景广阔,毕业生可到电网公司、电力设计院、电力规划院、电力建设部门、超(特)高压公司、电力科研开发部门、发电厂以及与电力生产密切相关的设备制造企业、公司等工作;各级供电公司、发电厂及电力市场条件下新出现的电力经营单位,从事电力企业管理、电力技术经济、电力市场营销等工作;还可在相关企业从事电力市场运营和管理、电力交易谈判或报价、交易策略制定、电价管理、电力规划和投资规划等工作;各级政府部门及事业单位从事电力市场规划、建设、运营和监管等工作;科研院所、大专院校从事电力系统和电力经济相关领域的教学、研究与开发。
洋流发电机原理
洋流发电机原理
洋流发电机,又称洋流发电机,是一种利用洋流发电的装置,主要用来驱动轮船和其它船只。
它的工作原理是:在一定的风压下,海水受到风力作用而产生运动。
在这种动力的作用下,海水
就会推动发电机的转子,使转子产生旋转运动。
通过电磁感应原
理将电能传送给发电机的线圈中,从而产生电流。
当船驶入洋流密集区时,风力会大大加强,这时船周围就会
形成一个封闭的环流圈,风吹向船体使船体产生旋转运动。
这种
风对转子起到了一种“润滑”作用,使转子的转速加快。
当船在
洋流中漂流时,由于海水具有阻力和摩擦力,不能再产生旋转运
动了。
但由于风的存在,使海水本身不断地被搅动起来。
当风吹
到一个固定点时(比如港口),海水中所含的气体便与静止空气
中的氧原子结合形成了一个新物质(臭氧)。
这样就增加了海水
中氧离子与空气中氧离子结合的机会和数量,使海水运动加快。
由于海水是一个不断运动着的巨大物体,因此在这个过程中产生
了大量的机械能(动能)。
—— 1 —1 —。
电力系统潮流运算
/*此程序为用牛顿拉夫逊法的直角坐标形式求电力线路的潮流计算程序*//*此程序为一通用程序,按给定的题目输入数据到input文件中,就可求出相关节点的电压相量,支路功率,网络损耗,输电效率平衡节点的功率,pv节点的无功*//*考虑了线路对地导纳支路、平行支路、非标准变比变压器支路、还有无功越限的处理等4种较为复杂的情况*//*本程序通用性很强*/#include <stdio.h>#include<math.h>#include<stdlib.h>void main(){int bus,line,pQ,pv,blzl,transform;/*分别表示节点数,支路数,pQ节点数,pv节点数,对地支路数,变压器数*/int i,j,k,m,n,circle,num,w,r;/*循环变量*/int type[100],node[100],head[100],end[100],branch[100];/*分别表示:节点类型,节点号,支路的首节点,支路的尾节点,支路号*/int t1[100],t2[100];/*中间数组*/float precise;/*计算精度*/float real[100][100],image[100][100],R[100],X[100];/*节点导纳的实部,节点导纳的虚部,支路上的电阻,支路上的电抗*/float p[100],Q[100],p0[100],Q0[100];/*节点的有功功率,节点的无功功率,各节点的给定有功功率初值,各节点的给定无功功率初值*/float e[100],f[100],e0[100],f0[100];/*分别为各节点电压的实部,虚部,给定电压的初始实部和虚部*/float ub[200],ubp[100],ubQ[100],ubu2[100],a[100],b[100];/*分别表示不平衡量,有功不平衡量,无功不平衡量,电压不平衡量,a[]和b[]是中间数组*/floatH[100][100],N[100][100],B[100][100],J[100][100],L[100][100],R1[100][100],S[100][100];/*雅克比矩阵各元素变量*/float a1[100][100],b1[100][100],du[100];/*中间数组和电压修正量*/floatt,s,E[100][100],Ln[100][100],Un[100][100],Bn[100][100],zgjz[100][200],Eu[100][100];/*求逆矩阵的过程中的各数组*/float dumax,ps,Qs,pline[100][100],Qline[100][100],dpline[100][100],dQline[100][100];/*最大电压修正量,平衡节点的有功和无功,支路有功和无功,支路损耗的有功和无功*/ float dpsum,dQsum,efficiency,p1,p2;/*网络总的有功损耗,网络总的无功损耗,输电效率,网络中各节点注入的正的有功的和,网络中各节点注入负的有功的绝对值和*/ float duidi[100],ratio[100],tt1,tt2;/*对地支路的导纳和变压器变比,还有中间变量tt1和tt2*/int x,y,d[100],flag[100];/*flag用来判断平行支路数*/FILE *fp1,*fp2;/*指针变量*/float ee[100],ff[100];/*中间变量*/float Qmax;/*Qmax为无功上限*//*以上为对程序中用到的变量的定义*/fp1=fopen("input.txt","r");/*打开input.txt文件读入数据*/fp2=fopen("output.txt","w");/*打开out.txt文件写入数据*/fprintf(fp2,"\n 华北电力大学\n\n");fprintf(fp2," 电力系统潮流上机班级:电气化0805 姓名:张同学号:200801000528\n");fprintf(fp2,"\n ***************原始数据***************** \n");fprintf(fp2,"============================================================= ======================\n\n");fscanf(fp1,"%d%d%d%d%d%d%f%f",&bus,&line,&pQ,&pv,&blzl,&transform,&precise,&Qmax );fprintf(fp2," 节点数:%d 支路数:%d pQ节点数:%d pv节点数:%d\n 并联对地之路数:%d 变压器数:%d 要求精度:%f \n",bus,line,pQ,pv,blzl,transform,precise);fprintf(fp2,"------------------------------------------------------------------------------------\n");/*下边开始从input.txt文件读入数据*/for(i=1;i<=bus;i++){fscanf(fp1,"%d%d",&node[i],&type[i]);if(type[i]==1)/*type[i]=1,说明第i节点是pQ节点*/fscanf(fp1,"%f%f%f%f",&p0[i],&Q0[i],&e[i],&f[i]);else if(type[i]==2)/*type[i]=1,说明第i节点是pv节点*/fscanf(fp1,"%f%f%f%f%f",&p0[i],&e[i],&f[i],&e0[i],&f0[i]);else if(type[i]==3)/*type[i]=1,说明第i节点是平衡节点*/fscanf(fp1,"%f%f",&e[i],&f[i]);}for(i=1;i<=bus;i++)/*bus表示节点数*/{if(type[i]==1)fprintf(fp2," 节点%d pQ节点%f %f\n",node[i],p0[i],Q0[i]);else if(type[i]==2)fprintf(fp2," 节点%d pv节点%f %f\n",node[i],p0[i],e0[i]);elsefprintf(fp2," 节点%d 平衡节点%f %f\n",node[i],e[i],f[i]);}fprintf(fp2,"------------------------------------------------------------------------------------\n");for(i=1;i<=line;i++){fscanf(fp1,"%d%d%d%f%f%f%d%f",&branch[i],&head[i],&end[i],&R[i],&X[i],&duidi[i],&flag[ i],&ratio[i]);/*读支路信息*/fprintf(fp2," 支路%d %d %d R[%d]=%fX[%d]=%f\n",branch[i],head[i],end[i],branch[i],R[i],branch[i],X[i]); /*打印出给定题目的支路信息*/}/*head里存放支路的首节点,end里存放支路的尾节点*/fprintf(fp2,"============================================================= ======================\n\n");fprintf(fp2,"\n *********************潮流计算开始***************** \n");fclose(fp1);/*关闭文件input.txt文件*//*下边求节点导纳阵开始*//*下面是考虑平行之路时的支路阻抗计算*/for(i=1;i<=line;i++){if(flag[i]==2){R[i]=R[i]/2;X[i]=X[i]/2;duidi[i]=duidi[i]*2;}}/*考虑平行之路的阻抗结束*/for(i=1;i<=bus;i++)for(j=1;j<=bus;j++){real[i][j]=0;/*real是节点导纳的实部*/image[i][j]=0;/*image是节点导纳的虚部*/}for(i=1;i<=line;i++)/*line是总的支路数*/{real[(head[i])][(end[i])]=(-1)*R[i]/(R[i]*R[i]+X[i]*X[i]);image[(head[i])][(end[i])]=X[i]/(R[i]*R[i]+X[i]*X[i]);real[(end[i])][(head[i])]=real[(head[i])][(end[i])];image[(end[i])][(head[i])]=image[(head[i])][(end[i])];for(j=1;j<=bus;j++)if((j==head[i])||(j==end[i])){real[j][j]+=(-1)*real[(head[i])][(end[i])];image[j][j]+=(-1)*image[(head[i])][(end[i])];}}/*下边考虑对地之路*/for(i=1;i<=line;i++){image[head[i]][head[i]]+=duidi[i];image[end[i]][end[i]]+=duidi[i];}/*对地之路考虑结束*//*下边是考虑变压器的非标准变比的程序*/for(i=1;i<=line;i++){tt1=real[(head[i])][(end[i])];tt2=image[(head[i])][(end[i])];real[(head[i])][(end[i])]=real[(head[i])][(end[i])]/fabs(ratio[i]);image[(head[i])][(end[i])]=image[(head[i])][(end[i])]/fabs(ratio[i]);real[(end[i])][(head[i])]=real[(head[i])][(end[i])];image[(end[i])][(head[i])]=image[(head[i])][(end[i])];if(ratio[i]>0){real[head[i]][head[i]]=real[head[i]][head[i]]-tt1*(1-ratio[i])/(ratio[i]*ratio[i])-real[(head[i])][(end[i ])]+tt1;image[head[i]][head[i]]=image[head[i]][head[i]]-tt2*(1-ratio[i])/(ratio[i]*ratio[i])-image[(head[i])] [(end[i])]+tt2;}if(ratio[i]<0){real[end[i]][end[i]]=real[(end[i])][(end[i])]-tt1*(1+ratio[i])/(ratio[i]*ratio[i])-real[(head[i])][(end[i] )]+tt1;image[end[i]][end[i]]=image[(end[i])][(end[i])]-tt2*(1+ratio[i])/(ratio[i]*ratio[i])-image[(head[i])] [(end[i])]+tt2;}}/*考虑变压器的非标准变比的程序结束*/fprintf(fp2,"========================================================= =================================\n\n");fprintf(fp2," 节点导纳阵为:Y=\n");/*打印节点导纳阵*/for(i=1;i<=bus;i++){for(j=1;j<=bus;j++)fprintf(fp2," %f+j%f",real[i][j],image[i][j]);fprintf(fp2,"\n");}/*节点导纳阵已经求出,并已经打印*/fprintf(fp2,"========================================================= ==================================\n\n");for (i=1;i<=bus;i++){ ee[i]=e[i];ff[i]=f[i];}loop : for (i=1;i<=bus;i++){ e[i]=ee[i];f[i]=ff[i];}fprintf(fp2,"=====================================迭代过程==============================================\n\n");fprintf(fp2,"迭代过程中的电压和功率初值为:\n");for(i=1;i<=bus;i++){if(type[i]==1)fprintf(fp2," 节点%d e=%f f=%f p=%f Q=%f\n",node[i],e[i],f[i],p0[i],Q0[i]);else if(type[i]==2)fprintf(fp2," 节点%d e=%f f=%f p=%f\n",node[i],e[i],f[i],p0[i]);}fprintf(fp2,"------------------------------------------------------------------------------------\n");circle=1;/*circle为迭代的次数*//*下边迭代开始*/do{fprintf(fp2,"第%d 次迭代\n",circle);for(i=1;i<=bus;i++){if(type[i]==1){p[i]=0;Q[i]=0;}else if(type[i]==2)p[i]=0;}/*下边是求修正方程的不平衡列向量*/fprintf(fp2,"\n修正方程的不平衡量为:\n");m=1;n=1;for(i=1;i<=bus;i++){if(type[i]==1){for(j=1;j<=bus;j++){p[i]+=(e[i]*(real[i][j]*e[j]-image[i][j]*f[j])+f[i]*(real[i][j]*f[j]+image[i][j]*e[j]));Q[i]+=(f[i]*(real[i][j]*e[j]-image[i][j]*f[j])-e[i]*(real[i][j]*f[j]+image[i][j]*e[j]));}a[m]=p0[i]-p[i];a[(++m)++]=Q0[i]-Q[i];/*a数组存放pQ节点的不平衡量*/ }if(type[i]==2){for(j=1;j<=bus;j++){p[i]+=(e[i]*(real[i][j]*e[j]-image[i][j]*f[j])+f[i]*(real[i][j]*f[j]+image[i][j]*e[j]));}b[n]=p0[i]-p[i];b[(++n)++]=e0[i]*e0[i]+f0[i]*f0[i]-e[i]*e[i]-f[i]*f[i];}/*b数组存放pv节点的不平衡量*/}for(i=1;i<=2*pQ;i++)ub[i]=a[i];/*ub存放的是修正方程的不平衡列向量*/for(i=1;i<=2*pv;i++)ub[i+2*pQ]=b[i];for(i=1;i<=2*bus-2;i++)fprintf(fp2," ub[%d]=%f",i,ub[i]);/*不平衡量已经求出并已经打印*//*下边开始求雅克比矩阵*/fprintf(fp2,"\n------------------------------------------------------------------------------------");fprintf(fp2,"\n雅克比矩阵为:");for(i=1;i<=bus;i++)for(j=1;j<=bus;j++){a1[i][j]=0;b1[i][j]=0;}for(i=1;i<=bus;i++){for(j=1;j<=bus;j++)if(i!=j){a1[i][i]+=(real[i][j]*e[j]-image[i][j]*f[j]);b1[i][i]+=(real[i][j]*f[j]+image[i][j]*e[j]);}a1[i][i]+=(real[i][i]*e[i]-image[i][i]*f[i]);b1[i][i]+=(real[i][i]*f[i]+image[i][i]*e[i]);}for(i=1;i<=bus;i++)for(j=1;j<=bus;j++){if(type[i]==1){H[i][j]=(-1)*image[i][j]*e[i]+real[i][j]*f[i];N[i][j]=real[i][j]*e[i]+image[i][j]*f[i];J[i][j]=(-1)*N[i][j];L[i][j]=H[i][j];}else if(type[i]==2){H[i][j]=(-1)*image[i][j]*e[i]+real[i][j]*f[i];N[i][j]=real[i][j]*e[i]+image[i][j]*f[i];if(i==j){R1[i][j]=2*f[i];S[i][j]=2*e[i];}else if(i!=j){R1[i][j]=0;S[i][j]=0;}}if(i==j){H[i][j]=H[i][j]+b1[i][j];N[i][j]=N[i][j]+a1[i][j];J[i][j]=J[i][j]+a1[i][j];L[i][j]=L[i][j]-b1[i][j];}}num=1;for(i=1;i<=bus;i++){if(type[i]==1){t1[num]=i;num++;}}num=1;{if(type[j]==2){t2[num]=j;num++;}}for(i=1;i<=pQ;i++)d[i]=t1[i];for(i=pQ+1;i<=bus-1;i++)d[i]=t2[i-pQ];for(i=1;i<=2*pQ;i=i+2)for(j=1;j<=2*bus-2;j=j+2){x=d[(i+1)/2];y=d[(j+1)/2];B[i][j]=H[x][y];B[i][j+1]=N[x][y];B[i+1][j]=J[x][y];B[i+1][j+1]=L[x][y];}for(i=2*pQ+1;i<2*bus-1;i=i+2)for(j=1;j<2*bus-1;j=j+2){x=d[(i+1)/2];y=d[(j+1)/2];B[i][j]=H[x][y];B[i][j+1]=N[x][y];B[i+1][j]=R1[x][y];B[i+1][j+1]=S[x][y];}fprintf(fp2,"\n\n");for(i=1;i<2*bus-1;i++){for(j=1;j<2*bus-1;j++)fprintf(fp2," %f",B[i][j]);fprintf(fp2,"\n");}fprintf(fp2,"\n----------------------------------------------------------------------------");/*下面是用LU分解法求雅克比矩阵的逆矩阵的程序*/w=2*bus-2;/*雅克比矩阵的阶数*/for(j=1;j<=w;j++){if(i==j){E[i][j]=1;}elseE[i][j]=0;}/*单位矩阵已经生成*/for(i=1;i<=w;i++)for(j=1;j<=w;j++)zgjz[i][j]=B[i][j];for(i=1;i<=w;i++)for(j=w+1;j<=2*w;j++)zgjz[i][j]=E[i][j-w];for(i=1;i<=2*w;i++)for(j=1;j<=w;j++)Un[1][i]=zgjz[1][i];for(k=2;k<=w;k++)Ln[k][1]=zgjz[k][1]/Un[1][1];for(r=2;r<=w;r++){for(i=r;i<=2*w;i++){t=0;for(k=1;k<=r-1;k++)t+=Ln[r][k]*Un[k][i];Un[r][i]=zgjz[r][i]-t;}for(j=r+1;j<=w;j++){s=0;for(k=1;k<=r-1;k++)s+=Ln[j][k]*Un[k][r];Ln[j][r]=((zgjz[j][r]-s)/Un[r][r]);}}for(i=1;i<=w;i++)for(j=1;j<i;j++)Un[i][j]=0;for(i=1;i<=w;i++)for(j=1;j<=w;j++)Eu[i][j]=Un[i][j+w];for(j=w;j>=1;j--)Bn[w][j]=Eu[w][j]/Un[w][w];for(i=w-1;i>=1;i--)for(j=1;j<=w;j++){t=0;for(k=i+1;k<=w;k++)t+=Un[i][k]*Bn[k][j];for(k=i+1;k<=w;k++)Bn[i][j]=(Eu[i][j]-t)/Un[i][i];/*Bn[i][j]就是原雅克比矩阵的逆矩阵*/ }/*求逆矩阵的程序结束*/for(i=1;i<=w;i++)du[i]=0;for(i=1;i<=w;i++)for(j=1;j<=w;j++)du[i]+=Bn[i][j]*ub[j];fprintf(fp2,"\n修正量为:\n");for(i=1;i<=w;i++)fprintf(fp2," du[%d]=%.6f",i,du[i]);fprintf(fp2,"\n-------------------------------------------------------------------------\n");for(i=1;i<=pQ;i++){f[d[i]]+=du[(2*i-1)];e[d[i]]+=du[(2*i)];fprintf(fp2," f[%d]=%f e[%d]=%f\n",d[i],f[d[i]],d[i],e[d[i]]);}for(i=pQ+1;i<=bus-1;i++){f[d[i]]+=du[2*i-1];e[d[i]]+=du[2*i];fprintf(fp2," f[%d]=%f e[%d]=%f\n",d[i],f[d[i]],d[i],e[d[i]]);}dumax=fabs(du[1]);for(i=2;i<=w;i++){if(fabs(du[i])>dumax)dumax=fabs(du[i]);}circle++;}while(dumax>=0.00010 && circle<=50);fprintf(fp2,"\n-------------------------------------------------------------------------");fprintf(fp2,"\n ***************迭代过程结束*****************\n");fprintf(fp2,"============================================================= ===========================");fprintf(fp2,"\n平衡节点的功率为:\n");ps=0;Qs=0;for(i=1;i<=bus;i++){if(type[i]==3){for(j=1;j<=bus;j++){ps+=(real[i][j]*e[j]-image[i][j]*f[j]);Qs+=((-1)*real[i][j]*f[j]-image[i][j]*e[j]);}ps=ps*e[i];Qs=Qs*e[i];p0[i]=ps;Q0[i]=Qs;fprintf(fp2," S=%f+j%f\n",ps,Qs);}}fprintf(fp2,"pv节点的无功功率为:\n");for(i=1;i<=bus;i++){if(type[i]==2){ Q0[i]=0;for(j=1;j<=bus;j++)Q0[i]+=(f[i]*(real[i][j]*e[j]-image[i][j]*f[j])-e[i]*(real[i][j]*f[j]+image[i][j]*e[j]));fprintf(fp2," Q0[%d]=%f\n",i,Q0[i]);}}/*下边是考虑无功越限情况下的程序*/for(i=1;i<=bus;i++){if(type[i]==2 && Q0[i]>Qmax){ fprintf(fp2,"\n************************无功越限情况下的重新迭代过程*********************\n");pQ++;pv--;Q0[i]=Qmax;/*如果越限,则给pv节点的无功功率赋值为给定的Qmax*/type[i]=1;for(j=1;j<=bus;j++){p[i]=0;Q[i]=0;}goto loop;/*如果pv节点的无功功率超出了给定的Qmax,那么就返回到loop 重新进行迭代过程*/}}/*无功越限程序考虑完毕*//*下边是求线路上的功率的一段程序*/fprintf(fp2,"线路上的功率为:\n");for(i=1;i<=line;i++){real[head[i]][0]=0;real[end[i]][0]=0;image[end[i]][0]=duidi[i];image[head[i]][0]=duidi[i];}for(i=1;i<=line;i++){if(flag[i]==1)/*这是考虑单回线运行时支路的功率和损耗情况*/{pline[head[i]][end[i]]=((real[head[i]][0]+real[head[i]][end[i]])*(e[head[i]]*e[head[i]]+f[head[i]]*f [head[i]])-(e[head[i]]*e[end[i]]+f[head[i]]*f[end[i]])*real[head[i]][end[i]]-(f[head[i]]*e[end[i]]-e[ head[i]]*f[end[i]])*image[head[i]][end[i]])*(-1);Qline[head[i]][end[i]]=((-1)*(image[head[i]][0]+image[head[i]][end[i]])*(e[head[i]]*e[head[i]]+f[ head[i]]*f[head[i]])+(e[head[i]]*e[end[i]]+f[head[i]]*f[end[i]])*image[head[i]][end[i]]+(e[head[i] ]*f[end[i]]-f[head[i]]*e[end[i]])*real[head[i]][end[i]])*(-1);pline[end[i]][head[i]]=((real[end[i]][0]+real[end[i]][head[i]])*(e[end[i]]*e[end[i]]+f[end[i]]*f[end [i]])-(e[head[i]]*e[end[i]]+f[head[i]]*f[end[i]])*real[end[i]][head[i]]-(f[end[i]]*e[head[i]]-e[end[i] ]*f[head[i]])*image[end[i]][head[i]])*(-1);Qline[end[i]][head[i]]=((-1)*(image[end[i]][0]+image[end[i]][head[i]])*(e[end[i]]*e[end[i]]+f[en d[i]]*f[end[i]])+(e[head[i]]*e[end[i]]+f[head[i]]*f[end[i]])*image[end[i]][head[i]]-(f[end[i]]*e[he ad[i]]+e[end[i]]*f[head[i]])*real[end[i]][head[i]])*(-1);dpline[head[i]][end[i]]=pline[head[i]][end[i]]+pline[end[i]][head[i]];dQline[head[i]][end[i]]=Qline[head[i]][end[i]]+Qline[head[i]][end[i]];fprintf(fp2," S[%d][%d]=%f +j %f\n",head[i],end[i],pline[head[i]][end[i]],Qline[head[i]][end[i]]);fprintf(fp2," S[%d][%d]=%f +j %f\n",end[i],head[i],pline[end[i]][head[i]],Qline[end[i]][head[i]]);}else if(flag[i]==2)/*这是考虑双回线运行时支路的功率和损耗情况*/{pline[head[i]][end[i]]=pline[head[i]][end[i]]/2;Qline[head[i]][end[i]]=Qline[head[i]][end[i]]/2;pline[end[i]][head[i]]=pline[end[i]][head[i]]/2;Qline[end[i]][head[i]]=Qline[end[i]][head[i]]/2;dpline[head[i]][end[i]]=dpline[head[i]][end[i]]/2;dQline[head[i]][end[i]]=dQline[head[i]][end[i]]/2;fprintf(fp2," S[%d][%d]=%f +j %f\n",head[i],end[i],pline[head[i]][end[i]],Qline[head[i]][end[i]]);fprintf(fp2," S[%d][%d]=%f +j %f\n",end[i],head[i],pline[end[i]][head[i]],Qline[end[i]][head[i]]);}}fprintf(fp2,"\n-------------------------------------------------------------------------------------------\n");fprintf(fp2,"考虑平行之路和接地之路情况时\n单条线路损耗的功率为:\n");for(i=1;i<=line;i++)fprintf(fp2,"\n 线路%d 上的功率损耗为: %f +j %f",i,dpline[head[i]][end[i]],dQline[head[i]][end[i]]);fprintf(fp2,"\n-------------------------------------------------------------------------------------------\n");/*下边是求网络总损耗的程序*/fprintf(fp2,"网络总损耗为:\n");dpsum=0;dQsum=0;for(i=1;i<=bus;i++)dpsum+=p0[i];for(i=1;i<=bus;i++)dQsum+=Q0[i];fprintf(fp2," ds= %f +j %f\n",dpsum,dQsum);/*网络总损耗完毕*/fprintf(fp2,"-----------------------------------------------------------------------------------------------\n");/*下边是求数点效率的程序*/fprintf(fp2,"输电效率为:\n");p1=0;p2=0;for(i=1;i<=bus;i++){if(type[i]!=3){if (p0[i]>0)p1+=p0[i];elsep2+=(-1)*p0[i];}}p1=p1+ps;efficiency=p2/p1*100;/*输电效率完毕*/fprintf(fp2,"efficiency=%.4f%",efficiency);/*efficiency是输电效率*/fprintf(fp2,"\n============================================================ ===================================\n");fprintf(fp2," **********************潮流计算结束*********************");fclose(fp2);/*关闭output.txt文件*/printf("!!******计算结果存放于out.txt文件中******!!\n");}。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
课程设计报告( 2011-- 2012年度第1学期)名称:电力系统潮流上机院系:电气与电子工程学院班级:电网1101 学号:学生姓名:指导教师:王莉丽设计周数:两周成绩:日期:2014年1月《电力系统综合仿真》课程设计一、 目的与要求培养学生编程实现电力系统仿真计算的能力,掌握潮流计算、短路计算、暂态稳定计算的相关知识二、 主要内容1. 编写潮流计算程序,要求如下:2.1据给定的潮流计算任务书整理潮流计算的基础数据:节点的分类,线路模型,等值变压器模型,电压等级的归算,标幺值的计算;2.2基础数据的计算机存储:节点数据,支路数据(包括变压器); 2.3用牛顿-拉夫逊法计算;2.4根据所选潮流计算方法画流程图,划分出功能模块,有数据输入模块,导纳阵形成模块,解线性方程组模块,计算不平衡功率模块,形成雅可比矩阵模块,解修正方程模块,计算线路潮流,网损,PV 节点无功功率和平衡节点功率,数据输出模块; 2.5据上述模块编制程序并上机调试程序,得出潮流计算结果; 2.6源程序及其程序中的符号说明集、程序流图2. 利用潮流计算结果编写故障计算程序,要求如下:2.1 发电机参数一律为P N =200MW ,cos φ=0.85, 19.0=''dx ,21x x = 2.2 变压器一律为Yd11接线,其中三角形侧接发电机,星形侧都直接接地 2.3 线路零序参数一律为103x x =2.4 负荷都采用Y/Y 型变压器接入,中性点与系统相连侧部接地。
负荷按照对称负荷考虑,纯阻抗形式。
2.5 计算5节点发生三相对称短路、单相接地短路、两相短路和两相接地短路时的故障电流,以及各支路电流和节点电压。
3.思考题3.1潮流计算和短路电流计算的元件模型有哪些不同点?节点导纳矩阵有哪些不同?计算过程有哪些不同点?3.2 短路电流计算中进行了哪些假设?3.3如果交给你一个任务,请你用已有的潮流计算软件计算北京城市电网的潮流,你应该做哪些工作?(收集哪些数据,如何整理,计算结果如何分析)3.4比较过去的计算机语言上机学习和本课程上机有哪些不同?设计中遇到的问题和解决的办法。
三、进度计划四、设计成果要求1.提交任务书2.计算机计算潮流程序流程图;3.计算机计算短路电流程序流程图;4.完整的仿真程序(包括变量的定义,子程序的调用等,计算结果),并有程序注释。
5.回答思考题五、考核方式总成绩=考勤+设计报告+面试成绩学生姓名:指导教师:2014年1月附录:1.手算:2.计算机计算潮流程序流程图3.程序#include"stdafx.h"#include"fstream"#include"iostream"#include"DataForm.h"#include"NEquation.h"#include"math.h"using namespace System;using namespace std;#define PI 3.1415926void DataRead();void FormY();void V oltageInitial();void SetUnbalance();void FormJacobi();void GetRevised();void GetNewV oltageValue();void BusBalance();void BranchPQ();void BranceLoss();int main(array<System::String ^> ^args){DataRead();FormY();V oltageInitial();for(int i=0;i<50;i++){SetUnbalance();FormJacobi();GetRevised();GetNewV oltageValue();//break()//if(fabs(H[i][j])>=1e-5||(N[i][j])>=1e-5||(H[i][j])>=1e-5||(J[i][j])>=1e-5||(L[i][j])>=1e-5) }BusBalance();BranchPQ();BranceLoss();Console::WriteLine(L"Hello World");return 0;}void DataRead() //节点、支路数据读入子程序{ ifstream infile1;infile1.open("BranchData2.txt");for(int i=0;i<BranchNum;i++)infile1>>Branch[i].Num>>Branch[i].BusFirst>>Branch[i].BusEnd>>Branch[i].R>>Branch[i].X>>Branch[i].B>>Branch[i].K;infile1.close();for(int i=0;i<BranchNum;i++)cout<<Branch[i].Num<<" "<<Branch[i].BusFirst<<" "<<Branch[i].BusEnd<<" "<<Branch[i].R<<" "<<Branch[i].X<<" "<<Branch[i].B<<" "<<Branch[i].K<<endl;ifstream infile2;infile2.open("BusData2.txt");for(int i=0;i<BusNum;i++)infile2>>Bus[i].Num>>Bus[i].BusType>>Bus[i].V oltage>>Bus[i].Phase>>Bus[i].Pg>>Bus[i].Qg>>Bus[i].Pl>>Bus[i].Ql;infile2.close();for(int i=0;i<BusNum;i++)cout<<Bus[i].Num<<Bus[i].BusType<<Bus[i].V oltage<<Bus[i].Phase<<Bus[i].Pg<<Bus[i].Qg<<Bus[i].Pl<<Bus[i].Ql<<endl;}void FormY() //形成节点导纳矩阵子程序{for(int i=0;i<BusNum;i++){ for(int j=0;j<BusNum;j++){ G[i][j]=0;B[i][j]=0;}}int m,n;//设置两个变量分别存储之路手摸节点的编号for(int i=0;i<BranchNum;i++)//以支路循环{float GG,BB,B0,G1,G2,B1,B2;m=Branch[i].BusFirst-1;//n=Branch[i].BusEnd-1;//以下为变压器变比不唯Branch[i].R=Branch[i].K*Branch[i].R;Branch[i].X=Branch[i].K*Branch[i].X;//将变压器变比引起的对地之路转换成电哪里?G1=(1-Branch[i].K)/(Branch[i].K*Branch[i].K)/(Branch[i].R*Branch[i].R+Branch[i].X*Branch[i].X)*Branch[i].R;B1=-(1-Branch[i].K)/(Branch[i].K*Branch[i].K)/(Branch[i].R*Branch[i].R+Branch[i].X*Branch[i].X)*Branch[i].X;//将变压器变比引起的对地之路换成导纳G2=(Branch[i].K-1)/Branch[i].K/(Branch[i].R*Branch[i].R+Branch[i].X*Branch[i].X)*Branch[i].R;B2=-(Branch[i].K-1)/Branch[i].K/(Branch[i].R*Branch[i].R+Branch[i].X*Branch[i].X)*Branch[i].X;//变压器非标准变比处理完毕GG=Branch[i].R/(Branch[i].R*Branch[i].R+Branch[i].X*Branch[i].X);BB=-Branch[i].X/(Branch[i].R*Branch[i].R+Branch[i].X*Branch[i].X);B0=Branch[i].B;//接地数据G[m][m]+=GG+G1;G[m][n]-=GG;G[n][m]-=GG;G[n][n]+=GG+G2;B[m][m]+=BB+B0+B1;B[m][n]-=BB;B[n][m]-=BB;B[n][n]+=BB+B0+B2;//B[][]+=}ofstream outfile1("result.txt");for(int i=0;i<BusNum;i++){ for(int j=0;j<BusNum;j++){outfile1<<G[i][j]<<"\t"<<B[i][j]<<"\t";}outfile1<<endl;}outfile1.close();}void V oltageInitial() //设置节点电压子程序{for(int i=0;i<BusNum;i++){if(Bus[i].BusType==3){Ue[i]=1.04;Uf[i]=0.0;}else{Ue[i]=1.0;Uf[i]=0.0;}cout<<Ue[i]<<" "<<Uf[i]<<endl;}}void SetUnbalance() //计算功率不平衡量子程序{for(int i=1;i<BusNum;i++){ P[i]=0;Q[i]=0;for(int j=0;j<BusNum;j++){ P[i]=P[i]+Ue[i]*(G[i][j]*Ue[j]-B[i][j]*Uf[j])+Uf[i]*(G[i][j]*Uf[j]+B[i][j]*Ue[j]);Q[i]=Q[i]+Uf[i]*(G[i][j]*Ue[j]-B[i][j]*Uf[j])-Ue[i]*(G[i][j]*Uf[j]+B[i][j]*Ue[j]);}//cout<<P[i]<<endl;//cout<<Q[i]<<endl;if(Bus[i].BusType==1) //PQ{ DeltaP[i]=Bus[i].Pg-Bus[i].Pl-P[i];DeltaQU2[i]=Bus[i].Qg-Bus[i].Ql-Q[i];}else if(Bus[i].BusType==2) //PV{ DeltaP[i]=Bus[i].Pg-Bus[i].Pl-P[i];DeltaQU2[i]=Bus[i].V oltage*Bus[i].V oltage-(Ue[i]*Ue[i]+Uf[i]*Uf[i]);}//cout<<DeltaP[i]<<endl;//cout<<DeltaQU2[i]<<endl;}for(int i=0;i<BusNum-1;i++){ Delta[2*i]=DeltaP[i+1];Delta[2*i+1]=DeltaQU2[i+1];} //形成delta值ofstream outfile2("Delta2.txt");for(int j=0;j<2*(BusNum-1);j++){ outfile2<<Delta[j]<<endl;}outfile2.close();}void FormJacobi() //形成雅各比矩阵子程序{float H[BusNum-1][BusNum-1],N[BusNum-1][BusNum-1],J[BusNum-1][BusNum-1],L[BusNum-1][BusNum-1];float a[BusNum],b[BusNum];for(int i=1;i<BusNum;i++){a[i]=G[i][i]*Ue[i]-B[i][i]*Uf[i];b[i]=G[i][i]*Uf[i]+B[i][i]*Ue[i];for(int j=0;j<BusNum;j++){ if(j!=i){a[i]=a[i]+(G[i][j]*Ue[j]-B[i][j]*Uf[j]);b[i]=b[i]+(G[i][j]*Uf[j]+B[i][j]*Ue[j]);}}}for(int i=1;i<BusNum;i++){for(int j=1;j<BusNum;j++){ if(i==j){ H[i][i]=-B[i][i]*Ue[i]+G[i][i]*Uf[i]+b[i];N[i][i]=G[i][i]*Ue[i]+B[i][i]*Uf[i]+a[i];if(Bus[i].BusType==1){ J[i][i]=-G[i][i]*Ue[i]-B[i][i]*Uf[i]+a[i];L[i][i]=-B[i][i]*Ue[i]+G[i][i]*Uf[i]-b[i];}else if(Bus[i].BusType==2){ J[i][i]=2*Uf[i];}}else if(i!=j){ H[i][j]=-B[i][j]*Ue[i]+G[i][j]*Uf[i];N[i][j]=G[i][j]*Ue[i]+B[i][j]*Uf[i];if(Bus[i].BusType==1){ J[i][j]=-G[i][j]*Ue[i]-B[i][j]*Uf[i];L[i][j]=-B[i][j]*Ue[i]+G[i][j]*Uf[i];}else if(Bus[i].BusType==2){ J[i][j]=0;L[i][j]=0;}}}}for(int i=0;i<BusNum-1;i++){ for(int j=0;j<BusNum-1;j++){ Jacobi[2*i][2*j]=H[i+1][j+1];Jacobi[2*i][2*j+1]=N[i+1][j+1];Jacobi[2*i+1][2*j]=J[i+1][j+1];Jacobi[2*i+1][2*j+1]=L[i+1][j+1];}}ofstream outfile4;outfile4.open("Jacobi2.txt");for(int i=0;i<2*(BusNum-1);i++){for(int j=0;j<2*(BusNum-1);j++){outfile4<<Jacobi[i][j]<<"\t ";}outfile4.close();}void GetRevised() //求解修正方程得到电压增量子程序{NEquation Object;//建立一个对象Object.SetSize(2*(BusNum-1));//设置矩阵的维数ifstream infile1;infile1.open("Jacobi2.txt");for(int i=0;i<2*(BusNum-1);i++){ for(int j=0;j<2*(BusNum-1);j++){ Object.Data(i,j)=Jacobi[i][j];infile1>>Object.Data(i,j);}}infile1.close();ifstream infile2;infile2.open("Delta2.txt");for(int i=0;i<2*(BusNum-1);i++)infile2>>Object.Value(i);infile2.close();Object.Run();for(int i=0;i<2*(BusNum-1);i++){ DeltaU[i]=Object.Value(i);}//结果输出ofstream outfile5("revised equation2.txt");for(int j=0;j<2*(BusNum-1);j++){ outfile5<<DeltaU[j]<<endl;}outfile5.close();}for(int i=0;i<BusNum;i++)if(Bus[i].BusType!=3){Ue[i]+=DeltaU[2*i-1];Uf[i]+=DeltaU[2*i-2];}ofstream outfile6("new voltage value2.txt");for(int i=0;i<BusNum;i++){ //if(Bus[i].BusType==1||Bus[i].BusType==2)outfile6<<Ue[i]<<" "<<Uf[i]<<endl;}outfile6.close();}void BusBalance() //计算平衡节点功率子程序{for(int i=0;i<BusNum;i++){if(Bus[i].BusType==3){P[i]=0.0;Q[i]=0.0;for(int j=0;j<BusNum;j++){P[i]+=Ue[i]*(G[i][j]*Ue[j]-B[i][j]*Uf[j])+Uf[i]*(G[i][j]*Uf[j]+B[i][j]*Ue[j]);//有功Q[i]+=Uf[i]*(G[i][j]*Ue[j]-B[i][j]*Uf[j])-Ue[i]*(G[i][j]*Uf[j]+B[i][j]*Ue[j]);//无功}}}ofstream outfile7("BusBalance2.txt");for(int i=0;i<BusNum;i++)if(Bus[i].BusType==3){ outfile7<<P[i]<<" \t"<<Q[i]<<endl;}outfile7.close();//for(int i=0;i<BusNum;i++)//if(Bus[i].BusType==3)//{ cout<<P[i]<<" "<<Q[i]<<endl;}}void BranchPQ() //计算支路功率子程序{ float B0;for(int i=0;i<BusNum;i++){for(int j=0;j<BusNum;j++){if(i!=j&(G[i][j])!=0&(B[i][j])!=0){B0=Branch[i].B;BranchP[i][j]=Ue[i]*(-Uf[i]*B0+Ue[i]*0+(Ue[i]-Ue[j])*G[i][j]-(Uf[i]-Uf[j])*B[i][j])+Uf[i]*(Ue[i]*B0+Uf[i]*0+(Ue[i]-Ue [j])*B[i][j]+(Uf[i]-Uf[j])*G[i][j]);BranchQ[i][j]=Uf[i]*(-Uf[i]*B0+Ue[i]*0+(Ue[i]-Ue[j])*G[i][j]-(Uf[i]-Uf[j])*B[i][j])-Ue[i]*(Ue[i]*B0+Uf[i]*0+(Ue[i]-Ue[j])*B [i][j]+(Uf[i]-Uf[j])*G[i][j]);BranchP[j][i]=Ue[j]*(-Uf[j]*B0+Ue[j]*0+(Ue[j]-Ue[i])*G[j][i]-(Uf[j]-Uf[i])*B[j][i])+Uf[j]*(Ue[j]*B0+Uf[j]*0+(Ue[j]-Ue[i])*B [j][i]+(Uf[j]-Uf[i])*G[j][i]);BranchQ[j][i]=Uf[j]*(-Uf[j]*B0+Ue[j]*0+(Ue[j]-Ue[i])*G[j][i]-(Uf[j]-Uf[i])*B[j][i])-Ue[j]*(Ue[j]*B0+Uf[j]*0+(Ue[j]-Ue[i])*B [j][i]+(Uf[j]-Uf[i])*G[j][i]);}}}ofstream outfile8("BranchPQ2.txt");for(int i=0;i<BusNum;i++){ for(int j=0;j<BusNum;j++)//if(i!=j&(G[i][j])!=0&(B[i][j])!=0){ outfile8<<BranchP[i][j]<<" \t"<<BranchQ[i][j]<<" \t";}outfile8<<endl;}outfile8.close();}void BranceLoss() //计算线路上损耗子程序{ float LossP[BusNum][BusNum],LossQ[BusNum][BusNum],LossPP,LossQQ;LossPP=0;LossQQ=0;for(int i=0;i<BusNum;i++){for(int j=0;j<BusNum;j++){if(i!=j&(G[i][j])!=0&(B[i][j])!=0){LossP[i][j]=BranchP[i][j]+BranchP[j][i];LossQ[i][j]=BranchQ[i][j]+BranchQ[j][i];//cout<<LossP[i]<<" "<<LossQ[i]<<endl;}}}for(int i=0;i<BusNum;i++)for(int j=0;j<BusNum;j++){if(i!=j&(G[i][j])!=0&(B[i][j])!=0){LossPP+=LossP[i][j];LossQQ+=LossQ[i][j];}}//cout<<0.5*LossPP<<" "<<0.5*LossQQ;ofstream outfile9("BranchLoss2.txt");//for(int i=0;i<BusNum;i++){ outfile9<<0.5*LossPP<<"\t "<<0.5*LossQQ<<endl;} outfile9.close();4.思考题1潮流计算的方法有哪些?各有何特点?潮流计算目前主要的计算方法有:高斯-赛德尔迭代法、牛顿拉夫逊法和P-Q分解法。