- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
//多平衡节点+普通PQ分解
#include fstream.h
#include math.h
#include stdlib.h
#include iomanip.h
#include time.h
#define LINEMAX 5000 //最大线路数
#define GENERATORMAX 500 //最大发电机数
#define LOADMAX 2000 //最大负荷数
#define NODEMAX 2000 //最大节点数
#define SWINGMAX 20 //最大平衡节点数
#define PVMAX 500 //最大PV节点数
#define NODEFACTOR 10 //导纳矩阵中非零非对角元素的个数相对于
//最大节点数(NODEMAX)的倍数.
#define Deg_to_Rad 0.017453292 //度到弧度的转换系数
#define Rad_to_Deg 57//弧度到度的转换系数
#define SinglePai 3//圆周率
#define DoublePai 6.2831853 //两倍的圆周率
struct Line //线路参数结构定义
{
int Node_No[2]; //线路两端节点名(号):0-左节点;1-右节点
int Flag; //线路类型标志:0-普通支路;1、2-变压器支路。其中,
//1-非标准变比在左侧节点,2-非标准变比在右侧节点。
//对接地支路,左右节点名(号)相同。
double RXBK[3]; //0-R;1-X;2-Bc/2 或 K
}LLine[LINEMAX];
struct Generator //发电机参数结构定义
{
int Node_No; //发电机节点名(号)
int Flag; //发电机节点类型标志:0-平衡节点;1-PQ节点;2-PV节点
double PQV[2]; //对平衡节点,0-V,1-Angle;对PQ节点,0-P,1-Q;对PV节
//点,0-P,1-V。
}GGen[GENERATORMAX];
struct Load //负荷参数结构定义
{
int Node_No; //负荷节点名(号)
int Flag; //负荷节点静特性标志:0-不计静特性;1-计静特性。
double ABC[6]; //PL=a1*V**V+b1*V+c1,QL=a2*V*V+b2*V+c2。
//0-a1;1-a2;2-b1;3-b2;4-c1;5-c2。
}LLoad[LOADMAX];
int Node_Name_NewtoOld[NODEMAX];//新节点名(号)--旧节点名(号)
int Node_Flag[NODEMAX]; //节点类型标志:0-平衡,1-PQ,2-PV
int Line_NodeName[LINEMAX][2]; //线路的左、右节点新名(号)
int Line_No_NewtoOld[LINEMAX]; //新线路号--旧线路号
int Line_Flag[LINEMAX]; //新线路的类型标志:0,1,2说明同Line结构
int Gen_NodeName[GENERATORMAX]; //发电机节点的新节点名(号)
int Gen_No_NewtoOld[GENERATORMAX]; //新发电机顺序号--旧发电机顺序号
int Gen_SWNode[SWINGMAX][2]; //平衡节点数据:0-新节点名(号);
//1-对应的旧发电机顺序号
int Gen_PVNode[PVMAX][2]; //发电机PV节点数据:0-新节点名(号);
//1-对应的旧发电机顺序号
int Gen_PQNode[GENERATORMAX][2];//发电机PQ节点数据:0-新节点名(号);
//1-对应的旧发电机顺序号
int Load_NodeName[LOADMAX]; //负荷节点的新节点名(号)
int Load_No_NewtoOld[LOADMAX]; //新负荷顺序号--旧负荷顺序号
//读数据子程
void Data_Input(int Num_Line,int Num_Gen,int Num_Load,double Eps,
int Iter_Max,int VolIni_Flag,int VolRes_Flag)
{
int i,j;
// 从键盘读数据文件名
char argv[20];
coutPlease inp
原创力文档


文档评论(0)