朔州市2018年建设工程网站,长沙公司网站设计,网站建设概括,免费自助小型网站2023年亚太杯APMCM数学建模大赛
B题 玻璃温室小气候调控
原题再现 温室作物的产量受各种气候因素的影响#xff0c;包括温度、湿度和风速[1]。其中#xff0c;适宜的温度和风速对植物生长至关重要[2]。为了调节玻璃温室内的温度、风速等气候因素#xff0c;在温室设计中常…2023年亚太杯APMCM数学建模大赛
B题 玻璃温室小气候调控
原题再现 温室作物的产量受各种气候因素的影响包括温度、湿度和风速[1]。其中适宜的温度和风速对植物生长至关重要[2]。为了调节玻璃温室内的温度、风速等气候因素在温室设计中常用带风机的通风系统如图1所示。温室风机的位置和热风出口的速度影响着温室内速度场和温度场的分布和均匀性。因此如何优化温室风机以获得合适的风速和温度提高其均匀性是当前玻璃温室设计中需要解决的重要问题。 玻璃温室是密封放置在室内不考虑外界因素如温室门、通风、太阳辐射等环境因素。目前设计的玻璃温室尺寸为10m、3m、2m长、宽、高温室风机尺寸为0.5m、0.5m位于温室左侧。温室风扇的中心位于地面上方1.3m处如图2所示。温室风机侧的边界条件设为速度入口条件水平方向吹40”暖风平均风速2 m/s温室外玻璃和底土设为墙体条件主要通过对流换热和传导与整个温室进行能量交换[3]初始温度设为20”。在温室内种植作物时必须考虑作物的冠层阻力。作物模型可以简化为一个尺寸为8m、2m、0.5m长、宽、高的多孔介质放置在温室中心。温室内作物生长适宜风速为0.3-1m/s适宜温度为23-26”。 问题1请建立无作物玻璃温室内温度和风速分布的数学模型。在0.5米高度的温室横截面上显示风速和温度分布。 问题2请建立种植作物的玻璃温室内温度和风速分布的数学模型。展示温室内两个横截面的风速和温度分布一个在0.5米高度作物冠层水平处另一个在0.1米高度作物冠层内。分析条件是否适合作物生长。 问题3请提供以下两种情况下玻璃温室内的温度和风速分布并与第二个问题中给出的解决方案进行比较。在方案一中将热风出口速度从2 m/s提高到3 m/s。在场景2中通过将温室风扇从1.3 m移动到1 m来降低其位置。 问题4您的团队能否从温室风扇的数量、位置、风速、吹风温度、规格和不同作物等因素进一步优化玻璃温室的温室风扇设计。
function money sumd_money(way,freight,M,b)index unique(way); money sum(freight(index)); for i 1:b money money M(way(i),i); end
endfunction way1 gen_new_way(way0, s, b)
% way0原来的买书方案是一个1*b的向量每一个元素都位于1-s之间index randi([1, b],1) ; % 看哪一本书要更换书店购买way1 way0; % 将原来的方案赋值给way1way1(index) randi([1, s],1); % 将way1中的第index本书换一个书店购买
endclear; clc
% 导入书的价格
% 这个数据文件里面保存了两个矩阵
[s, b] size(M); % s
T0 1000; % 初始温度
T T0; % 迭代中温度会发生改变第一次迭代时温度就是T0
k_total 1000; % 最大迭代次数
Lk 300; % 每个温度下的迭代次数
yita 0.95; % 温度衰减系数
way0 randi([1, s],1,b); % 在1-s这些整数中随机抽取一个1*b的向量表示这b本书分别在哪家书店购买
zhong_way way0; %用来做中间计算
zhong_money sumd_money(way0,freight,M,b);%zhong_money用来储存数值sumd_money为函数计算在上面可以看到freight是快递费矩阵for iter 1 : k_total % 外循环, 我这里采用的是指定最大迭代次数for i 1 : Lk % 内循环在每个温度下开始迭代money0 sumd_money(way0,freight,M,b); % 调用我们自己写的sum_money函数计算这个方案的花费way1 gen_new_way(way0,s,b); % 调用我们自己写的gen_new_way函数也在上面money1 sumd_money(way1,freight,M,b); % 计算新方案if money1 money0 % 如果新方案小于当前方案way0 way1; % 更新当前方案为新方案zhong_way [zhong_way;way1]; % 将新找到的way1添加到中间结果中zhong_money [zhong_money; money1]; % 将新找到的money1添加到中间结果中elsep exp(-(money1 - money0)/T); % 根据Metropolis准则计算一个概率if rand(1) p % 生成一个随机数和这个概率比较如果该随机数小于这个概率way0 way1; % 更新当前方案为新方案endendendT yita*T; % 温度下降
end[best_money, ind] min(zhong_money);
min_way zhong_way(ind,:);
disp(最佳的方案是); disp(min_way)
disp(此时最优值是); disp(best_money)