2023亚太杯数学建模思路 - 复盘:光照强度计算的优化模型

news2024/11/14 15:01:22

文章目录

  • 0 赛题思路
    • 1 问题要求
    • 2 假设约定
    • 3 符号约定
    • 4 建立模型
    • 5 模型求解
    • 6 实现代码
  • 建模资料

0 赛题思路

(赛题出来以后第一时间在CSDN分享)

https://blog.csdn.net/dc_sinor?type=blog

1 问题要求

现在已知一个教室长为15米,宽为12米,在距离地面高2.5米的位置均
匀的安放4个光源(分别为1、2、3、4),各个光源的光照强度均为一个单位,如下图
在这里插入图片描述
要求:

  • (1)如何计算教室内任意一点的光照强度?(光源对目标点的光照强度与该光源到目标点距离的平方成反比,与该光源的强度成正比).
  • (2)画出距离地面1米处各个点的光照强度与位置(横纵坐标)之间的函数关系曲面图,试同时给出一个近似的函数关系式.
  • (3)假设离地面1米高正是学生桌面的高度,如何设计这四个点光源的位置,才能使学生对光照的平均满意度达到最高?
  • (4)若将题目中的点光源换成线光源,以上(2)、(3)问的结果又如何?

(对于(1)、(2)问,假设横向(纵向)墙壁与光源、光源与光源、光源与墙壁之间的距离是相等的.)

2 假设约定

  • 1 光不会通过窗、门等外涉,也不考虑光在空气中的消耗,即光照强度和不变;
  • 2 室内不受外界光源影响;
  • 3 教室高度为2.5米;
  • 4 不考虑光的反射;
  • 5 线光源发光是均匀的.

3 符号约定

在这里插入图片描述

4 建立模型

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

5 模型求解

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

6 实现代码

matlab 实现代码
建议最好用python去实现,图会好看一些,而且国内当前趋势会逐渐淘汰matlab,目前有些学校已经无法使用matlab了

clear
clc
max=0;min=4;
for i=0:0.1:3
    for j=0.1:0.1:4
        s=0;
        x1=8+i,y1=5-j
        x2=8+i,y2=10+j
        x3=4-i,y3=10+j
        x4=4-i,y4=5-j     
        for x=0:0.1:12
            for y=0:0.1:15
                for z=0:0.1:2.5
                    if x1~=x & y1~=y & x2~=x & y2~=y & x3~=x & y3~=y & x4~=x & y4~=y 
                      s=s+1./((x1-x).^2+(y1-y).^2+(2.5-z).^2)+1./((x2-x).^2+(y2-y).^2+(2.5-z).^2)+1./((x3-x).^2+(y3-y).^2+(2.5-z).^2)+1./((x4-x).^2+(y4-y).^2+(2.5-z).^2);
                    end
                end
            end
        end
        k=4./s;l=0;z=1;
        for x=0:0.1:12
            for y=0:0.1:15
           l=l+k.*(1./((x1-x).^2+(y1-y).^2+(2.5-z).^2)+1/((x2-x).^2+(y2-y).^2+(2.5-z).^2)+1./((x3-x).^2+(y3-y).^2+(2.5-z).^2)+1./((x4-x).^2+(y4-y).^2+(2.5-z).^2));
            end
        end
        if l>max
            max=l;
            x11=x1;y11=y1;x12=x2;y12=y2;x13=x3;y13=y3;x14=x4;y14=y4;
        end
        p=l./(120.*150);Q=0;
        for x=0:0.1:12
            for y=0:0.1:15
             Q=Q+(k.*(1./((x1-x).^2+(y1-y).^2+(2.5-z).^2)+1./((x2-x).^2+(y2-y).^2+(2.5-z).^2)+1./((x3-x).^2+(y3-y).^2+(2.5-z).^2)+1./((x4-x).^2+(y4-y).^2+(2.5-z).^2))-p).^2.^(1./2);
            end
        end
        if min>Q
           min=Q;
           x21=x1;y21=y1;x22=x2;y22=y2;x23=x3;y23=y3;x24=x4;y24=y4;
       end
   end
end
disp(['最大值','x11=',num2str(x11),'  ','y11=',num2str(y11),'  ','x12=',num2str(x12),'  ','y12=',num2str(y12),'  ','x13=',num2str(x13),'  ','y13=',num2str(y13),'  ','x14=',num2str(x14),'  ','y14=',num2str(y14)])
disp(['最平均','x21=',num2str(x21),'  ','y21=',num2str(y21),'  ','x22=',num2str(x22),'  ','y22=',num2str(y22),'  ','x23=',num2str(x23),'  ','y23=',num2str(y23),'  ','x24=',num2str(x24),'  ','y24=',num2str(y24)])
附录二:
clear
clc
max=0;min=4;li=4;
for i=0:0.1:3
    for j=0.1:0.1:4
        s=0;
        x1=8+i,y1=5-j
        x2=8+i,y2=10+j
        x3=4-i,y3=10+j
        x4=4-i,y4=5-j     
        for x=0:0.1:12
            for y=0:0.1:15
                for z=0:0.1:2.5
                    if x1~=x & y1~=y & x2~=x & y2~=y & x3~=x & y3~=y & x4~=x & y4~=y 
                  s=s+1./((x1-x).^2+(y1-y).^2+(2.5-z).^2)+1./((x2-x).^2+(y2-y).^2+(2.5-z).^2)+1./((x3-x).^2+(y3-y).^2+(2.5-z).^2)+1./((x4-x).^2+(y4-y).^2+(2.5-z).^2);
                    end
                end
            end
        end
        k=4./s;l=0;z=1;e=0
        for x=0:0.1:12
            for y=0:0.1:15
                l=l+k.*(1./((x1-x).^2+(y1-y).^2+(2.5-z).^2)+1/((x2-x).^2+(y2-y).^2+(2.5-z).^2)+1./((x3-x).^2+(y3-y).^2+(2.5-z).^2)+1./((x4-x).^2+(y4-y).^2+(2.5-z).^2));
                r=k.*(1./((x1-x).^2+(y1-y).^2+(2.5-z).^2)+1/((x2-x).^2+(y2-y).^2+(2.5-z).^2)+1./((x3-x).^2+(y3-y).^2+(2.5-z).^2)+1./((x4-x).^2+(y4-y).^2+(2.5-z).^2));
                e=e+(r-6*10^(-32))^2;
            end
        end
       S=(l-0.1278)^2+e
       if S<li
           li=S
           x11=x1,y11=y1,  x12=x2,y12=y2,  x13=x3,y13=y3,  x14=x4,y14=y4,
       en4
   en4
en4
disp(['x11=',num2str(x11),'  ','y11=',num2str(y11),'  ','x12=',num2str(x12),'  ','y12=',num2str(y12),'  ','x13=',num2str(x13),'  ','y13=',num2str(y13),'  ','x14=',num2str(x14),'  ','y14=',num2str(y14)])
li

建模资料

资料分享: 最强建模资料
在这里插入图片描述
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1212281.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

响应系统的作用与实现

首先讨论什么是响应式数据和副作用函数&#xff0c;然后尝试实现一个相对完善的响应系统。在这个过程中&#xff0c;我们会遇到各种各样的问题&#xff0c;例如如何避免无限递归&#xff1f;为什么需要嵌套的副作用函数&#xff1f;两个副作用函数之间会产生哪些影响&#xff1…

儿童水杯上架亚马逊美国站CPC认证办理 ,常见儿童产品CPC认证测试要求

美国CPSC从2021/03/22开始改革&#xff0c;凡是他们管辖范围内的产品&#xff0c;都会被标记审查&#xff0c;如有相关产品请提前准备好相关文件比如CPC检测报告、认证等等&#xff0c;以备目的港海关审查。 CPC认证介绍 CPC证书即儿童产品证书&#xff0c;适用于12岁以下的儿…

腾讯云新用户优惠券如何领取?详细教程来了!

腾讯云一直致力于为广大用户提供优质、高效的云计算服务。为了吸引新用户&#xff0c;腾讯云推出了新用户专属优惠券&#xff0c;本文将详细介绍如何领取腾讯云新用户优惠券&#xff0c;助力大家轻松上云&#xff01; 一、腾讯云新用户优惠券领取 领券入口&#xff1a;https:/…

人力项目框架解析新增修改方法

在迁移项目但是遇到了一些问题&#xff0c;迁移项目的时候发现项目的整体框架很有趣&#xff0c;但是苦于项目框架太大了&#xff0c;竟然只能完整迁移&#xff0c;做不到部分迁移&#xff0c;于是我也只能从一半的角度来进行解释整个项目。 雇员 我们雇员这个为对象讲解一下…

Django(六、模板层)

文章目录 模板传值模板语法传值特性 模板语法之过滤器常用的过滤器模板层之标签模板中的标签的格式为标签之if判断 标签之for循环模板的继承与导入模板导入导入格式 模板传值 """ 模板层三种语法 {{}}:主要与数据值相关 {%%}:主要与逻辑相关 {##}&#xff1a;模…

解锁数据潜力:为什么你应该考虑使用向量数据库

文章目录 前言什么是向量和向量数据库使用示例Amazon OpenSearch Serverless向量引擎总结 前言 根据DC调查数据显示&#xff0c;全球在A1技术和服务上的支出2023年将达到1540亿美元&#xff0c;到2026年将超过3000亿美元。其中&#xff0c;向量数据库为AI的开发、增强内容生成…

力扣203:移除链表元素

力扣203&#xff1a;移除链表元素 题目描述&#xff1a; 给你一个链表的头节点 head 和一个整数 val &#xff0c;请你删除链表中所有满足 Node.val val 的节点&#xff0c;并返回 新的头节点 。 示例 1&#xff1a; 输入&#xff1a;head [1,2,6,3,4,5,6], val 6 输出&a…

(Matalb回归预测)GWO-BP灰狼算法优化BP神经网络的多维回归预测

目录 一、程序及算法内容介绍&#xff1a; 基本内容&#xff1a; 亮点与优势&#xff1a; 二、实际运行效果&#xff1a; 三、部分代码&#xff1a; 四、完整程序数据使用说明下载&#xff1a; 一、程序及算法内容介绍&#xff1a; 基本内容&#xff1a; 本代码基于Mata…

keepalived安装配置(服务器主备、负载均衡)

系统拓扑 安装keepalived 主备服务器上都需要安装 在线安装 yum install -y keepalived 离线安装 # todo 服务器准备 虚拟机ip&#xff1a;192.168.11.56 主服务器&#xff1a;192.168.11.53 备服务器&#xff1a;192.168.11.54 配置文件修改 keepalived安装之后&…

算法刷题:P1908 逆序对

解题关键&#xff1a;就是利用分治的思想&#xff0c;使用归并排序&#xff0c;因为逆序对实际上就是“左侧的数字比右侧大就算一个逆序对”。而这个“左侧”和“右侧”可以相对来看&#xff0c;即左侧的左侧一定就是左侧&#xff0c;说的有点抽象&#xff0c;哈哈哈哈。 花了…

excel在函数中插入函数

例如&#xff0c;要计算RAND()1的值&#xff0c;其中RAND()表示取0~1之间的随机数。 插入-》函数&#xff1a; 选SUM函数&#xff1a; 点击“继续”&#xff1a; 将光标先放在数字1中的输入框中&#xff0c;然后在左边过滤出RAND函数&#xff0c;并且点击继续&#xff1…

技巧篇:Mac 环境PyCharm 配置 python Anaconda

Mac 中 PyCharm 配置 python Anaconda环境 在 python 开发中我们最常用的IDE就是PyCharm&#xff0c;有关PyCharm的优点这里就不在赘述。在项目开发中我们经常用到许多第三方库&#xff0c;用的最多的命令就是pip install 第三方库名 进行安装。现在你可以使用一个工具来帮你解…

Java实现自定义windows右键菜单

要添加Java应用程序到Windows桌面的右键菜单&#xff0c;可以按照以下步骤操作&#xff1a; 创建一个新的.reg文件&#xff0c;并在文本编辑器中打开它。 添加以下代码到.reg文件中&#xff0c;将名称和路径替换为您的Java应用程序的名称和路径。 Windows Registry Editor V…

解决requests库的urllib3版本冲突问题

每个加班的夜晚&#xff0c;都是我和bug的较量。当我坐在电脑前&#xff0c;灯光昏暗&#xff0c;空气凝固&#xff0c;只有键盘敲击的声音回荡在空旷的办公室中。我渐渐地陷入了与无数个请求的斗争中。这些请求来自各种各样的客户端&#xff0c;充满了各种各样的需求。每个请求…

业务连续性:确保稳健运营的关键战略

在今天的快节奏商业环境中&#xff0c;保障业务连续性是企业成功的重要保障。业务连续性不仅仅是关于应对自然灾害或技术故障&#xff0c;更是一项战略&#xff0c;涉及组织的整体准备、规划和应对能力&#xff0c;以确保在各种情况下业务的稳健运营。 一、业务连续性的定义 业…

Python爬取股票交易数据代码示例及可视化展示。

文章目录 前言一、开发环境二、第三方模块三、爬虫案例步骤四、爬虫程序全部代码1.分析网页2.导入模块3.请求数据4.解析数据5.翻页6.保存数据 五、实现效果六、数据可视化全部代码1.导入数据2.读取数据3.可视化图表4.效果展示关于Python技术储备一、Python所有方向的学习路线二…

分享篇:我用数据分析做副业

主业是数据分析专家&#xff0c;副业是数据咨询顾问&#xff0c;过去十年里面利用数据分析发家致富 人生苦短&#xff0c;我学Python&#xff01; 利用技能可以解决的问题&#xff0c;哪些场景下可以催生出需求&#xff0c;深度剖析数据分析的技能树 由浅入深&#xff0c;一个…

098001190、098002190、098101190、098102190比例线圈放大器

0343100001、0344100101、0523100150、0353450101、035303001、0354050101、0473200050、0052010100、0063030100、0172200410、0363150101、0364100601、1027001020、1044112011、1043112010、1128022100、098001190、098002190、098101190、098102190、098201190、098202190、…

2023年【N1叉车司机】找解析及N1叉车司机复审模拟考试

题库来源&#xff1a;安全生产模拟考试一点通公众号小程序 2023年N1叉车司机找解析为正在备考N1叉车司机操作证的学员准备的理论考试专题&#xff0c;每个月更新的N1叉车司机复审模拟考试祝您顺利通过N1叉车司机考试。 1、【多选题】《中华人民共和国特种设备安全法》第八十三…

flutter实用笔记

前言 写下这一篇文章是为了记录这段时间使用flutter 制作项目中一些比较常用的组件&#xff0c;以及具体怎么使用&#xff0c;获得怎样的效果。我使用的貌似是flutter4。由于官方更新迭代的差别比较明显&#xff0c;可能之后许多内容对应最新的flutter不适用&#xff0c;在此只…