服务商与监管部门复制动态方程matlab仿真——matlab2016a版本

服务商与监管部门博弈——matlab2016a版本

1.输入常微分方程组

%dx/dt=x(1-x)(420y-10)
%dy/dt=y)(1-y)(100x-10),微分方程
function dxdt=differential4(t,x) 
%①函数文件都以函数声明行“function ...”作为开始;②dxdt:返回变量;③differential4:函数名;
%④(t,x):t,x为两个自变量;t:步长和时间;x:有2个分量,分别为x(1)、x(2),分别表示的是x,y
dxdt=[x(1)*(1-x(1))*(420*x(2)-10);x(2)*(1-x(2))*(100*x(1)-10)];
%返回的dxdt为微分方程求解的结果;[ ; ]里面是微分方程
end

保存为differential4.m文件

2.主函数

%y-x
for i=0.1:0.2:0.9
    for j=0.1:0.2:0.9
        [T,Y]=ode45('differential4',[0 2],[i,j]);
        figure(1)
        grid on
        plot(T,Y(:,1),'r*-','lineWidth',1);    %T:时序,Y(:,1):1指的是x。总表示dxdt
        hold on   
        plot(T,Y(:,2),'b--','lineWidth',1);    %T:时序,Y(:,2):2指的是y。总表示dydt
        hold on
    end
end
axis([0 2 0 1]);    %为了标出坐标轴最大值最小值,横坐标[0 20] ,纵坐标[-0.1 1.1]
set(gca,'XTick',[0:1:5],'YTick',[0:0.1:1]);    %gca(ca即current axes)返回当前axes对象的句柄值;把当前的图形x轴标刻度,区间[0 20],间隔为2;Y同理
xlabel('evolutionary steps');    %标x轴名
ylabel('polution');     %标y轴名
legend('服务商','监管部门')    %标曲线名
title('服务商与监管部门决策演化路径')    %加标题

保存为for4.m文件

3.run结果

在这里插入图片描述

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值