• 含分布式电源的配电网可靠性评估(matlab代码)


    目录

    1 主要内容

    模型节点图

    2 部分代码

    3 程序结果

    4 下载链接


    主要内容

    该程序参考《基于仿射最小路法的含分布式电源配电网可靠性分析》文献方法,通过概率模型和时序模型分别进行建模,实现基于概率模型+最小路法的含分布式电源配电网可靠性评估以及时序模型+序贯蒙特卡洛模拟法的含分布式电源配电网可靠性评估。程序采用matlab编写,注释清楚,方便学习!

    • 模型节点图

    采用IEEERBTSBUS6_F4结构图:

    部分代码

    % 读取数据
    [line_num,line,load_num,load] = IEEE_RBTS_BUS6_F4;%可以自己修改参数
    % 生成图
    g=graph(line(:,1),line(:,2),line(:,3));
    % plot(g)%生成节点图
    % DG接入位置,可修改
    DG_position=[13,27];
    % 初始化负荷点可靠性指标
    Lambda_load=zeros(1,load_num);
    Gamma_load=zeros(1,load_num);
    U_load=zeros(1,load_num);
    P_load=zeros(1,load_num);
    load_users=zeros(1,load_num);
    % DG四状态概率模型,DG出力大小可以自己修改,如果四个状态均为零就相当于不含DG的系统
    [P1,S1]=DG_probability_model(0,240,640,800);
    [P2,S2]=DG_probability_model(0,240,640,800);
    % 各个状态下可形成孤岛供电的负荷及恢复比例
    node_island1=cell(2,4);
    node_island2=cell(2,4);
    % 可恢复负荷的搜索顺序
    search_order1=[9 10 8 11 12 7 13 6];
    search_order2=[19 18 20 17 16 15 14];
    % 确定可以形成孤岛的负荷
    for k=1:4
        medalS1=S1(k);
        medalS2=S2(k);
        medal_index1=1;
        while medalS1~=0
            if medalS1>=load(search_order1(medal_index1),4)
                medalS1=medalS1-load(search_order1(medal_index1),4);
                node_island1{1,k}=[node_island1{1,k},search_order1(medal_index1)];
                node_island1{2,k}=[node_island1{2,k},load(search_order1(medal_index1),4)];
            else
                node_island1{1,k}=[node_island1{1,k},search_order1(medal_index1)];
                node_island1{2,k}=[node_island1{2,k},medalS1];
                medalS1=0;
            end
            medal_index1=medal_index1+1;
        end
        medal_index2=1;
        while medalS2~=0
            if medalS2>=load(search_order2(medal_index2),4)
                medalS2=medalS2-load(search_order2(medal_index2),4);
                node_island2{1,k}=[node_island2{1,k},search_order2(medal_index2)];
                node_island2{2,k}=[node_island2{2,k},load(search_order2(medal_index2),4)];
            else
                node_island2{1,k}=[node_island2{1,k},search_order2(medal_index2)];
                node_island2{2,k}=[node_island2{2,k},medalS2];
                medalS2=0;
            end
            medal_index2=medal_index2+1;
        end
    end
    

    程序结果

    概率模型+最小路法得到的结果如下:

    时序模型+序贯蒙特卡洛模拟法得到结果如下:

    4 下载链接

  • 相关阅读:
    技术学习:Python |欲先善其事,必先利其器(JSON)一
    基于Zookeeper手写配置中心
    MMDetection在ScanNet上训练
    1. js中let、var、const定义变量区别与方式
    【目标检测】32、NMS 及其变体超详细介绍
    Python 全栈系列232 再次搭建RabbitMQ
    Java版本新零售小程序saas商城全开源系统
    RabbitMQ(七)高级发布确认与优先级队列
    DAY57
    一个敏感词检查功能是怎么来的
  • 原文地址:https://blog.csdn.net/superone89/article/details/136309697