欢迎来到天天文库
浏览记录
ID:50816528
大小:41.12 KB
页数:11页
时间:2020-03-14
《电力系统潮流上机程序孙英云.docx》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、附录程序及结果#include"pf.h"#include"complex"usingnamespacestd;pf::pf(void){m_Line=NULL;m_Bus=NULL;bph=NULL;m_Bus_newIdx=NULL;m_pv_Num=0;m_sw_Num=0;m_pq_Num=0;}pf::~pf(void){if(m_Line!=NULL)delete[]m_Line;if(m_Bus!=NULL)delete[]m_Bus;if(bph!=NULL)delete[]bph;if
2、(m_Bus_newIdx!=NULL)delete[]m_Bus_newIdx;}intpf::readDataFromFile(stringfileName){stringstrLine,strTemp;ifstreamfin;//openfileforread;fin.open(fileName.c_str());if(!fin.fail()){//1.readSBase;getline(fin,strLine);strTemp.assign(strLine,31,6);m_SBase=atof(
3、strTemp.c_str());//2.readBusDatahere;//2.1readBusnum;getline(fin,strLine);size_tpos_begin,pos_end;pos_begin=strLine.find("FOLLOWS");pos_begin=pos_begin+size_t(10);pos_end=strLine.find("ITEM");strTemp=strLine.substr(pos_begin,pos_end-pos_begin);m_Bus_Num=
4、atoi(strTemp.c_str());cout<<"系统共有"<5、here//allocatememoryform_Busm_Bus=newBus[m_Bus_Num];m_Bus_newIdx=newint[m_Bus_Num];for(inti=0;i6、[i].Name=strTemp;//readbustypePQ:Type=1;PV:Type=2;swing:Type=3;strTemp=strLine.substr(24,2);if(atoi(strTemp.c_str())<=1){m_Bus[i].Type=1;m_pq_Num++;}elseif(atoi(strTemp.c_str())==2){m_Bus[i].Type=2;m_pv_Num++;}elseif(atoi(strTemp.c_str())==3){m_Bus[i].Ty7、pe=3;m_sw_Num++;}//读入节点电压strTemp=strLine.substr(27,6);m_Bus[i].V=atof(strTemp.c_str());//读入节点相角strTemp=strLine.substr(33,6);m_Bus[i].theta=atof(strTemp.c_str());//读入负载有功strTemp=strLine.substr(39,9);m_Bus[i].LoadP=atof(strTemp.c_str());//读入负载无功strTemp=str8、Line.substr(49,10);m_Bus[i].LoadQ=atof(strTemp.c_str());//读入发电机有功strTemp=strLine.substr(59,8);m_Bus[i].GenP=atof(strTemp.c_str());//读入发电机无功strTemp=strLine.substr(67,8);m_Bus[i].GenQ=atof(strTemp.c_str());//读入转移电导BstrTemp=s
5、here//allocatememoryform_Busm_Bus=newBus[m_Bus_Num];m_Bus_newIdx=newint[m_Bus_Num];for(inti=0;i6、[i].Name=strTemp;//readbustypePQ:Type=1;PV:Type=2;swing:Type=3;strTemp=strLine.substr(24,2);if(atoi(strTemp.c_str())<=1){m_Bus[i].Type=1;m_pq_Num++;}elseif(atoi(strTemp.c_str())==2){m_Bus[i].Type=2;m_pv_Num++;}elseif(atoi(strTemp.c_str())==3){m_Bus[i].Ty7、pe=3;m_sw_Num++;}//读入节点电压strTemp=strLine.substr(27,6);m_Bus[i].V=atof(strTemp.c_str());//读入节点相角strTemp=strLine.substr(33,6);m_Bus[i].theta=atof(strTemp.c_str());//读入负载有功strTemp=strLine.substr(39,9);m_Bus[i].LoadP=atof(strTemp.c_str());//读入负载无功strTemp=str8、Line.substr(49,10);m_Bus[i].LoadQ=atof(strTemp.c_str());//读入发电机有功strTemp=strLine.substr(59,8);m_Bus[i].GenP=atof(strTemp.c_str());//读入发电机无功strTemp=strLine.substr(67,8);m_Bus[i].GenQ=atof(strTemp.c_str());//读入转移电导BstrTemp=s
6、[i].Name=strTemp;//readbustypePQ:Type=1;PV:Type=2;swing:Type=3;strTemp=strLine.substr(24,2);if(atoi(strTemp.c_str())<=1){m_Bus[i].Type=1;m_pq_Num++;}elseif(atoi(strTemp.c_str())==2){m_Bus[i].Type=2;m_pv_Num++;}elseif(atoi(strTemp.c_str())==3){m_Bus[i].Ty
7、pe=3;m_sw_Num++;}//读入节点电压strTemp=strLine.substr(27,6);m_Bus[i].V=atof(strTemp.c_str());//读入节点相角strTemp=strLine.substr(33,6);m_Bus[i].theta=atof(strTemp.c_str());//读入负载有功strTemp=strLine.substr(39,9);m_Bus[i].LoadP=atof(strTemp.c_str());//读入负载无功strTemp=str
8、Line.substr(49,10);m_Bus[i].LoadQ=atof(strTemp.c_str());//读入发电机有功strTemp=strLine.substr(59,8);m_Bus[i].GenP=atof(strTemp.c_str());//读入发电机无功strTemp=strLine.substr(67,8);m_Bus[i].GenQ=atof(strTemp.c_str());//读入转移电导BstrTemp=s
此文档下载收益归作者所有