数学建模期末复习

师生关系

问题背景:
老师在第天的心情,第天来上课的学生数量。当有50个学生来上课,老师的心情是60,反之亦然。
用这个方程来描述老师的心情:
在这里插入图片描述

%学生数目和老师的情绪的稳定程度
用这个方程来描述学生上课的数量:
在这里插入图片描述

%老师的变化和学生数目成正比,β越大,说明学生越积极,

分别就
在这里插入图片描述

,编写程序说明的稳定性。

代码:

clear
num = 20;
alpha = 0.12;%越大越不稳定,越小越稳定
beta = 5;

x = zeros(1,num);
y = zeros(1,num);
x(1) = 30; %第一天上课的学生数目
y(1) = -alpha*(x(1)-50)+60;
for i = 2:num
    x(i) = 50+beta*(y(i-1)-60);
    y(i) = 60-alpha*(x(i)-50);
end
plot(1:num,x,'-s')
plot(1:num,y,'-o')

alpha = 0.24; 
beta = 5;

x = zeros(1,num);
y = zeros(1,num);
x(1) = 30; 
y(1) = -alpha*(x(1)-50)+60;
for i = 2:num
    x(i) = 50+beta*(y(i-1)-60);
    y(i) = 60-alpha*(x(i)-50);
end
plot(1:num,x,'-s')
plot(1:num,y,'-o')

存储模型

问题:
配件厂为装配线生产若干种产品,轮换产品时因更换设备要付生产准备费,产量大于需求时要付贮存费. 该厂生产能力非常大,即所需数量可在很短时间内产出.

已知某产品日需求量100件,生产准备费5000元,贮存费每日每件1元. 试安排该产品的生产计划,即多少天生产一次(生产周期),每次产量多少,使总费用最小.

在这里插入图片描述

在这里插入图片描述
除以T求每天平均总费用
在这里插入图片描述

c1 = 5000;
c2 = 1;
r = 100;
T = [1:100];
Q = c1./T + c2*r*T/2;  
plot(T,Q,'-o');
[Qmin,index]=min(Q)
T(index)

Qmin =

    1000

index =

10

ans =

10

牛奶模型

一桶牛奶可经过两种加工方式,A加工方式为12小时/桶,可得到3kg牛奶,牛奶可卖2元/kg。B加工方式为8小时/桶,可得到4Kg 牛奶,牛奶获利16元/kg。
加工厂每天最多可供50桶牛奶,加工时长最多480h,加工得到的牛奶做多100kg。求最多获利时候,多少桶牛奶用于生产,多少桶用于生产。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

clear
x=optimvar('x',1,2) //创建1X2矩阵
problem = optimproblem('ObjectiveSense','max') // 
problem.Objective = 72*x(1)+64*x(2)
problem.Constraints.milk = x(1)+x(2)<=50;
problem.Constraints.time = sum([12 8].*x) <= 480;
x=solve(problem)

自来水模型

clear
x = optimvar('x',3,4);
prob = optimproblem("ObjectiveSense","min");
A=[160 130 220 170;
   140 130 190 150;
   190 200 230 0;];
pro.Objective = sum(sum(x.*A)); %对矩阵求和
prob.Constraints.one = sum(x,2) == [50;60;50]; %sum(x,2)对矩阵行求和,sum(x,)
prob.Constraints.second = sum(x,1) >= [30 70 10 10]
prob.Constraints.third = sum(x,1) <=[80 140 30 50]
[S,F] = solve(prob)
S.x

求解微分方程

在这里插入图片描述

clear 
x0=[10,0]
x1=1,x2=2
[T,X] = ode45(@(t,i)x1*i*(1-i)-x2*i ,[0,10],0.05)
plot(T,X)




[T,Y] = ode45(odefun,tspan,y0)

odefun 是函数句柄,可以是函数文件名,匿名函数句柄或内联函数名
tspan 是区间 [t0 tf] 或者一系列散点[t0,t1,...,tf]
y0 是初始值向量
T 返回列向量的时间点
Y 返回对应T的求解列向量

酒杯模型

在这里插入图片描述
在这里插入图片描述

代码

clear 
w1 = 1;
w2 = 0.3;
x = [0:0.01:1];
s1 = x/2;
s = (w1*x.*s1 + w2*1/2)./(w1*x + w2);
plot(x,s,'-o')
[smin,index] = min(s);
s(index)

药物模型

在这里插入图片描述

clear
x0=[1000,0];%看PPT上第一个初值x(0)=1000,第二个初值y(0)=0
[T,X] = ode45(@func,[0,10],x0)
plot(T,X)


function dotx = func(t,x)
lambda=1,mu=2;
dotx=zeros(2,1);
dotx(1) = -lambda*x(1);
dotx(2) = lambda*x(1)-mu*x(2);
end

捕鱼业

在这里插入图片描述

x0=2
[T,X] = ode45(@func,[0,10],x0)
plot(T,X)
function dotx = func(t,x)
r = 2;
N = 100;
E = 0.5;
dotx = r*(1-x/N)*x-E*x;
end
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值