res=runopf(mpc,mpoption('out.all',0,'verbose',0));%(潮流计算) if res.success==1 disp('潮流计算成功!') ploss=ploss+sum(res.branch(:,14)+res.branch(:,16));
时间: 2023-11-30 11:04:45 浏览: 161
这段代码的作用是进行潮流计算,并计算得到电力系统中所有支路的有功损耗和无功损耗之和,将其保存在变量ploss中。具体来说,该代码包含以下几个步骤:
1. 使用MATPOWER工具箱中的runopf函数对电力系统进行潮流计算,计算结果保存在结构体变量res中。
2. 判断潮流计算是否成功,如果成功则在命令窗口中输出“潮流计算成功!”。
3. 从res结构体中提取出所有支路的有功损耗和无功损耗,分别保存在res.branch(:,14)和res.branch(:,16)中。
4. 将所有支路的有功损耗和无功损耗之和加入到变量ploss中,最终得到电力系统中所有支路的总损耗。
需要注意的是,该代码中计算的损耗是基于直流潮流计算模型,仅包含了支路的有功损耗和无功损耗。在实际应用中,还需要考虑其他因素对电网的影响,例如变压器的铁损耗、电容器的损耗等。
相关问题
res=runopf(mpc,mpoption('out.all',0,'verbose',0));%(潮流计算) if res.success==1 disp('潮流计算成功!') ploss=ploss+sum(res.branch(:,14));
这段代码是Matpower中进行潮流计算的部分。首先通过传入mpc参数和mpoption选项来进行潮流计算,得到计算结果保存在res变量中。其中,mpc是一个包含电网信息的结构体,mpoption选项用于设置计算选项,包括是否输出计算结果和计算过程的详细信息等。
然后通过判断res.success是否为1来确定潮流计算是否成功,如果成功则输出提示信息。最后,将所有线路的无功损耗res.branch(:,14)求和,并累加到ploss变量中,用于后续的网架分析和优化。
需要注意的是,这段代码中的disp函数用于输出提示信息。如果不需要输出信息,可以将其注释掉或删除。
for t=1:24%24小时潮流计算 mpc=case33bw; mpc.bus(13,3)=mpc.bus(13,3)-pv(1,t);%光伏 12 光伏在13节点(P-光伏) mpc.bus(18,3)=mpc.bus(18,3)-wt(1,t);%风 33 风电在18节点(P-风电) mpc.bus(33,4)=mpc.bus(33,4)-wt(1,t)*0.328;%风无功出力 33节点(Q-风Q) mpc.bus(33,3)=mpc.bus(33,3)-wt(1,t);%风有功出力 18 33节点(p-风P) mpc.bus(5,4)=mpc.bus(5,4)-Cb1(1,t); %c1在5节点 mpc.bus(24,4)=mpc.bus(24,4)-Cb2(1,t); %24节点 mpc.bus(25,4)=mpc.bus(25,4)-Cb3(1,t); %25节点 res=runopf(mpc,mpoption('out.all',0,'verbose',0));%(潮流计算) if res.success==1 disp('潮流计算成功!') ploss=ploss+res.branch(:,14);
这段代码是一个基于Matlab的配电网调度程序,它通过循环控制,实现了对24小时内电网的潮流计算和调度。具体来说,该程序包含以下几个步骤:
1. 在每个时刻t,根据光伏、风电和负荷的变化情况,更新电力系统的节点数据和支路数据,其中包括节点的有功出力、无功出力和电压等信息,以及支路的阻抗等参数。
2. 使用MATPOWER工具箱中的runopf函数对电力系统进行潮流计算,计算得到电力系统中各个节点和支路的电压、电流、功率等信息,保存在结构体变量res中。
3. 判断潮流计算是否成功,如果成功则在命令窗口中输出“潮流计算成功!”。
4. 从res结构体中提取出所有支路的有功损耗,保存在res.branch(:,14)中。
5. 将所有支路的有功损耗加入到变量ploss中,最终得到电力系统中所有支路的总损耗。
需要注意的是,该程序中的潮流计算是基于直流潮流计算模型,实际的电力系统中可能存在交流特性,因此在实际应用中需要考虑更为复杂的模型和算法。此外,该程序中的负荷和发电设备的变化情况是由外部数据源提供的,因此需要注意数据的准确性和可靠性。
阅读全文