最小二乘法的应用(2015A题A题太阳影子定位)
一、题目回顾(第二问为例)
题:
根据某固定直杆在水平地面上的太阳影子顶点坐标数据,建立数学模型确定直杆所处的地点。将你们的模型应用于附件1的影子顶点坐标数据,给出若干个可能的地点。
二、题目数据:
北京时间 | x坐标(米) | y坐标(米) |
---|---|---|
14:42 | 1.0365 | 0.4973 |
14:45 | 1.0699 | 0.5029 |
14:48 | 1.1038 | 0.5085 |
14:51 | 1.1383 | 0.5142 |
14:54 | 1.1732 | 0.5198 |
14:57 | 1.2087 | 0.5255 |
15:00 | 1.2448 | 0.5311 |
15:03 | 1.2815 | 0.5368 |
15:06 | 1.3189 | 0.5426 |
15:09 | 1.3568 | 0.5483 |
15:12 | 1.3955 | 0.5541 |
15:15 | 1.4349 | 0.5598 |
15:18 | 1.4751 | 0.5657 |
15:21 | 1.516 | 0.5715 |
15:24 | 1.5577 | 0.5774 |
15:27 | 1.6003 | 0.5833 |
15:30 | 1.6438 | 0.5892 |
15:33 | 1.6882 | 0.5952 |
15:36 | 1.7337 | 0.6013 |
15:39 | 1.7801 | 0.6074 |
15:42 | 1.8277 | 0.6135 |
三、问题分析
由附件数据可知,真实的影长L′=x2+y2L' = \sqrt{x^2 + y^2}L′=x2+y2
得到时间影长列表:
北京时间 | 影长 |
---|---|
14:42 | 1.1496 |
14:45 | 1.1822 |
14:48 | 1.2153 |
14:51 | 1.2491 |
14:54 | 1.2832 |
14:57 | 1.3180 |
15:00 | 1.3534 |
15:03 | 1.3894 |
15:06 | 1.4262 |
15:09 | 1.4634 |
15:12 | 1.5015 |
15:15 | 1.5402 |
15:18 | 1.5799 |
15:21 | 1.6201 |
15:24 | 1.6613 |
15:27 | 1.7033 |
15:30 | 1.7462 |
15:33 | 1.7901 |
15:36 | 1.8350 |
15:39 | 1.8809 |
15:42 | 1.9279 |
由建模分析知道:
影长与五个变量有关,分别是太阳高度角、杆高、时间、当地经度和当地纬度。影长由太阳高度角决定,而太阳高度角由杆高、时间、当地经度和当地纬度决定,由此我们采用控制变量法,分别分析这三个参数与影长的关系。
代码:
clc;
clear;% Φ -> A 纬度
% δ -> F 太阳赤道纬度夹角
% ω -> C 太阳时角
% h -> Oh 太阳高度角
% λ -> D 经度dB = [0.4555 0.4409 0.4247 0.4136 0.3986 0.3919 0.3777 0.3656 0.3582 0.3481 0.3438 0.3305 0.3264 0.3169 0.3120 0.3069 0.2987 0.2928 0.2876 0.2853 ];dLs = [1.1496 1.1822 1.2153 1.2491 1.2832 1.3180 1.3534 1.3894 1.4262 1.4634 1.5015 1.5402 1.5799 1.6201 1.6613 1.7033 1.7462 1.7901 1.8350 1.8809 1.9279 ];% 4月18日是一年的第 108 天
n = 108;% 太阳赤纬夹角(度)
C = 23.45*sin(2*pi*(284+n)/365);% 太阳时
B = 2*pi*(n -81)/364;
E = 9.87*sin(2*B) - 7.53*cos(B) - 1.5*sin(B); Jm = 120;hour = [14 14 14 14 14 14 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15];
minutes = [42 45 48 51 54 57 0 3 6 9 12 15 18 21 24 27 30 33 36 39 42];value1 = 0;
value2 = 0;min = 100000000;j = 1;X = [];
Y = [];MinArr = ones(12,5);
dFsArr = [];LsArr = [];DD = ones(12, 20);LsArrr = ones(12, 21);
% 杆长
for L = 0:0.1:3% 纬度for W = 15:0.1:25% 经度for J = 105:0.1:115% 时间for i = 1:1:21T0 = hour(i) + minutes(i)/60;Ts = T0 + E/60 + (J - Jm)/15;% 太阳时角(度)S = 15*(Ts - 12);% 太阳高度角Oh = asin(sin(W*pi/180)*sin(C.*pi/180) + cos(W*pi/180)*cos(C*pi/180)*cos(S*pi/180));% 太阳方位角if(S <0)Fs = acos( (sin(C*pi/180) - sin(Oh)*sin(W*pi/180)) / (cos(Oh)*cos(W*pi/180)));FsArr(i) = Fs;elseFs = 2*pi - acos( (sin(C*pi/180) - sin(Oh)*sin(W*pi/180)) / (cos(Oh)*cos(W*pi/180)));FsArr(i) = Fs;endif(i >= 2)value1 = value1 + ( FsArr(i-1) - FsArr(i) - dB(i - 1) )^2;dFsArr(i-1) = FsArr(i-1) - FsArr(i);end% 影长 LsLs = L / tan(Oh);LsArr(i) = Ls;value2 = value2 + (Ls - dLs(i))^2;i = i +1;endvalue = value1/20*value2/21;%if(value < min)%min = value;%MinArr = [L W J]%endif (value < 0.0000003)X(j) = j;jY(j) = value;LsArrr(j, :) = LsArr;DD(j, :) = dFsArr*180/pi;MinArr(j , 1:5) = [j L W J value];j = j+1;endvalue1 = 0;value2 = 0;value = 0;endend
endplot(X, Y,'*');
最小二乘法的应用(2015A题A题太阳影子定位)相关推荐
- 全国大学生数学建模竞赛-2015-A题-太阳影子定位
2015高教社杯全国大学生数学建模竞赛题目 A题 太阳影子定位 如何确定视频的拍摄地点和拍摄日期是视频数据分析的重要方面,太阳影子定位技术就是通过分析视频中物体的太阳影子变化,确定视频拍摄的地点和日期 ...
- 重庆社区计算机考试题库,2020重庆社区工作者考试题库:模拟题100题(64)
2020年重庆社区工作者考试正在如火如荼的开展,为了帮助大家做好备考工作,社区工作者考试模拟题,希望考生们能与小编共同坚持--每日一练! 2020年社区工作者考试模拟题100题64 1. 在市场经济条 ...
- Leetcode刷题 463题:岛屿的周长(基于Java语言)
** Leetcode刷题 463题:岛屿的周长(基于Java语言) ** 一. 题目描述: 给定一个包含 0 和 1 的二维网格地图,其中 1 表示陆地 0 表示水域. 网格中的格子水平和垂直方向相 ...
- Leetcode刷题 225题:用队列实现栈(基于Java和c++两种语言)
** Leetcode刷题 225题:用队列实现栈(基于Java和c++两种语言) ** 题目: 使用队列实现栈的下列操作: push(x) – 元素 x 入栈 pop() – 移除栈顶元素 top( ...
- Leetcode刷题 232题:用栈实现队列(基于python3和c++两种语言)
Leetcode刷题 232题:用栈实现队列(基于python3和c++两种语言) 题目: 使用栈实现队列的下列操作: push(x) – 将一个元素放入队列的尾部. pop() – 从队列首部移除元 ...
- Leetcode刷题 155题: 最小栈(基于python3和c++两种语言)
** Leetcode刷题 155题: 最小栈(基于python3和c++两种语言) ** ** 题目: ** 设计一个支持 push ,pop ,top 操作,并能在常数时间内检索到最小元素的栈. ...
- Leetcode刷题 1441题: 用栈操作构建数组(基于python3和c++两种语言)
Leetcode刷题 1441题: 用栈操作构建数组(基于python3和c++两种语言) ** 题目: ** 给你一个目标数组 target 和一个整数 n.每次迭代,需要从 list = {1,2 ...
- 给定数组 求和等于固定值 算法_[见题拆题] 大厂面试算法真题解析 - 第一期开张...
如今想要收获大厂offer,在面试的前几轮,总是躲不开算法这座大山. 常听人说,算法很难.这话没错.算法本身是是一个艰深的方向.但是算法题却有据可循.通过有针对性的学习和练习,我们完全可以掌握解题的基 ...
- A5.2021年全国数学建模竞赛B题-赛题分析与评阅要点(乙醇偶合制备C4烯烃分析)
A5.2021年全国数学建模竞赛B题-赛题分析与评阅要点(乙醇偶合制备C4烯烃分析),本文转载竞赛赛题.评阅要点,进行赛题解读和分析. 评阅要点为竞赛组委会官方公布,完整体现了解题思路. 本文首发于 ...
- A4.2021年全国数学建模竞赛A题-赛题分析与评阅要点(FAST主动反射面的形状调节)
Python小白的数学建模课-A4.2021年全国数学建模竞赛A题(FAST主动反射面的形状调节),本文转载竞赛赛题.评阅要点,进行赛题解读和分析. 评阅要点为竞赛组委会官方公布,完整体现了解题思路. ...
最新文章
- openStack centos6.4
- Lotus Notes基础知识
- 获得2007年度的ISA-SERVER MVP
- alter id order by_声卡id查找表
- 什么90%的人,自学python都不能学会,原来问题出在这,赶紧看看!
- C++之const关键字探究
- 第十三次CCF CSP认证(2018年3月)真题棋局评估
- 好程序员Web前端分享一些小知识!
- VoLTE SIP代码意义及流程图解
- 网站优化后如何降低阿里云国际版服务器成本
- 微信公众帐号迁移流程指引
- 图灵奖得主David Patterson出席2022全球软件研发技术大会
- buguku 加密 wp
- 【2022最新Java面试宝典】—— Memcache面试题(23道含答案)
- django框架中嵌入容联云sdk实现短信发送接口
- ibm服务器中文件存储设置,IBMv7000存储服务器双活配置流程
- 7.16 两行代码实现全选checkAll
- 【金猿技术展】基于数据控制三维组态的方法及装置——实现数据驱动三维模型的精准运转技术...
- 示波器探头基础入门指南
- Git删除本地分支(批量删除)
热门文章
- 只需2行代码,1分钟教你实现微信多开
- python爬虫之cookie和session介绍——以12306验证码破解和浏览车次为例
- c语言开根函数不用math,c语言开平方函数怎么用 该函数头文件:math.h;
- 红蜘蛛多媒体网络教室v7.2版一款网络教学的软件_我是亲民_新浪博客
- 湖北省软件行业协会会员单位全名录(2014年的信息)
- 计算机课程设计红绿灯,labview红绿灯课程设计报告
- PMP第六版-49个子过程ITTO总结
- pmp 第六版 模拟卷2疑难问题
- access工资明细表_Access工资管理系统
- lammps教程:group命令详解