2018年认证杯SPSSPRO杯数学建模D题(第一阶段)投篮的最佳出手点全过程文档及程序

2018年认证杯SPSSPRO杯数学建模

对于投篮最佳出手点的探究

D题 投篮的最佳出手点

原题再现:

  影响投篮命中率的因素不仅仅有出手角度、球感、出手速度,还有出手点的选择。规范的投篮动作包含两膝微屈、重心落在两脚掌上、下肢蹬地发力、身体随之向前上方伸展、同时抬肘向投篮方向小臂推而伸出、手腕下压、手指弹射,这样能够将脚趾力量完全连贯到手指,这种下肢、手臂、手腕、手指头都充分用到力量的投篮,看起来很柔顺、优美,具有艺术性,命中率高。但是身材相对矮小的组织后卫,如果采用这种规范的投篮动作,势必出手时间较长,给防守者以充分的时间做准备,被盖帽的可能性增大。反之,如果出手点较低,可以缩短从开始发力到篮球出手的时间,防止被盖帽,但是手臂、手腕以及手指头的力量可能没有被完全使上,必然使得篮球旋转不够,篮球飞行轨迹偏移较大,另外碰到篮筐、篮板后的反弹进球概率也大大降低。某 NBA 球队的技术顾问希望你的团队能帮助他们提高组织后卫在高强度防守下的投篮命中率。  
  第一阶段问题:
  1. 假定该后卫的身高是 1.91m,垂直弹跳 30 英寸,助跑弹跳 34 英寸,跳起摸高达到 3.40m,请建立数学模型,为该后卫推荐一个最佳的出手点。
  2. 如果要选择打板进球(利用篮板进球可以选择一些比较特殊的出手角度,往往能够骗过防守球员,使得投篮者获得更多的出手时间),上面一问中的最佳出手点模型该如何作出调整?

整体求解过程概述(摘要)

  本文主要针对球员投篮时出手点的高度与球出手的时间、出手角度、以及出手时发力的关系,考虑到了防守时的一些约束条件,还有对于打板投篮问题的深入思考与分析。在探究过程中,本组查找并且观察、分析了一些NBA球员的比赛录像,搜索了部分身体各项数据与问题所给出的数据相似的NBA球员,记录下他们的有关数值,进行平均值的求解或者其他研究项目。同时,很好地运用了场地条件,进行各个猜想的实践验证,通过慢动作的回放以及对于动作或球路的解析,将其与理论结合,成为自己研究的成果。
  具体分析:
  在问题1中,根据问题的描述,我组考虑到了出手时的一些数据,主要是出手时的高度。我们通过建立二维函数、三角函数模型得到了出手点高度与出手时间的关系,通过拟合建立三角函数模型,线条模型,可以得到出手点高度与出手角度的关系。
通过模拟刚体模型,运用物理中转动惯量、能量、曲线运动的知识,探究出了出手点高度与球的旋转的关系。
  最后引入了球员发力舒适度这一个量,查阅网络资料,了解了关于人体比例的关系,但因为较难将其定量,因此得到了大致的结论。之后我们转变方向,利用肌肉收缩的能量消耗和时间以及出手点高度建立关系,从而得到了关于在不同出手点球员对出手力量的感觉的关系。
之后我们从防守队员的角度来探究,通过查阅网络资料,编程求值,以及进行合理的假设,可以得出防守球员的一些有关数值,然后将其带入进攻球员的投篮过程之中,考虑“高强度防守”,一步步地深入,接近现实情况,将球员的出手点与防守结合考虑,最终得到比较而言的最佳出手点。
  在第2问中,首先假设了较为理想的状况,将篮球打板的过程分为三个阶段。
  第一阶段用斜抛运动的模型,分析并得出了球与篮板碰撞的位置距离地面的高度。
  第二阶段,利用完全弹性碰撞模型,运用动能知识,得到了碰撞反弹后与竖直平面的夹角。
  在第三阶段,建立了碰撞后球的行进路线的模型,最终重新得到了打板投篮时出手点高度与其它变量的大致关系。将三个阶段的模型相结合,最后可以得出调整后的最佳出手点。

问题分析:

  本道题主要研究在篮球比赛中投篮的问题,需要我们具有一定的篮球运动方面的知识,并且对于规则有一定的了解,对于篮球运动员的身体素质,身高,以及对手的各项数据与能力,还需要包括考虑许多自然的因素综合考虑,得出最佳的方案。

模型假设:

  1.在所有模型中都忽略空气阻力的影响
  2.先建立的四种模型中都先不考虑防守队员的因素,在最后对防守队员进行分析后作为约束条件加入前四种模型
  3.篮球出手速度和人在投篮时的初速度都是一个常量
  4.在第三种模型中忽略内能和质量的变化
  5.将球与篮板的碰撞视为完全弹性碰撞
  6.在第一、二种情况中,投篮时身体向上和抬起大臂同时开始、同时结束;在第三、四种情况中,双脚离地之前投篮准备动作已经完成。

论文缩略图:

在这里插入图片描述

全部论文请见下方“ 只会建模 QQ名片” 点击QQ名片即可

部分程序代码:(代码和文档not free)

clc
r=[1:0.1:8];
y=atan((0.83*r.^2-0.4)./(r.^2-r));
y1=atan((0.73*r.^2-0.4)./(r.^2-r));
y2=atan((0.63*r.^2-0.4)./(r.^2-r));
y3=atan((0.53*r.^2-0.4)./(r.^2-r));
A=y.*180/pi;B=y1.*180/pi;C=y2.*180/pi;D=y3.*180/pi
plot(r,A,r,B,r,C,r,D);
r=[1.6:0.1:8]
a=atan((0.83*r.^2-0.4)./(r.^2-r));
v0=(9.8*r.^2./(r.*sin(2*a)-0.8*cos(a).*cos(a))).^(1/2)
a=atan((0.73*r.^2-0.4)./(r.^2-r));
v1=(9.8*r.^2./(r.*sin(2*a)-0.8*cos(a).*cos(a))).^(1/2)
a=atan((0.63*r.^2-0.4)./(r.^2-r));
v2=(9.8*r.^2./(r.*sin(2*a)-0.8*cos(a).*cos(a))).^(1/2)
a=atan((0.53*r.^2-0.4)./(r.^2-r));
v3=(9.8*r.^2./(r.*sin(2*a)-0.8*cos(a).*cos(a))).^(1/2)
plot(r,v0,'r',r,v1,'b',r,v2,'y',r,v3)
r=[1:0.1:8];
y=atan((0.83*r.^2-0.4)./(r.^2-r));
y1=atan((0.73*r.^2-0.4)./(r.^2-r));
y2=atan((0.63*r.^2-0.4)./(r.^2-r));
y3=atan((0.53*r.^2-0.4)./(r.^2-r));
A=y.*180/pi;B=y1.*180/pi;C=y2.*180/pi;D=y3.*180/pi
plot(r,A,r,B,r,C,r,D);
r=[1:0.1:8]
detah=r.^(-2)-0.8*r.^(-3)
plot(r,detah)
r=[1:0.1:8]
h=0.4*r.^(-2)-2.61*r.^(-1)+2.15;
plot(r,h)
n=1+r.^(-1)-0.4*r.^(-2)
plot(r,n,r,h)
r=[1:0.1:8];
y=atan((0.83*r.^2-0.4)./(0.8*(r.^2-r)))
E=y.*180/pi
y=atan((0.83*r.^2-0.4)./((r.^2-r)))
F=y.*180/pi
y=atan((0.83*r.^2-0.4)./(1.2*(r.^2-r)))
G=y.*180/pi
plot(r,E,'r',r,F,'g',r,G,'b')
r=[1:0.1:8]
h=0.4*r.^(-2)-2.61*r.^(-1)+2.15;
plot(r,h)
n=1+r.^(-1)-0.6*r.^(-2)
plot(r,n,r,h)
r=[1:0.1:8]
h1=(r.*(r-1)*0.7+0.4).*r.^(-2)
h2=(r.*(r-1)+0.4).*r.^(-2)
h3=(r.*(r-1)*1.2+0.4).*r.^(-2)
全部论文及程序请见下方“ 只会建模 QQ名片” 点击QQ名片即可

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

实战纪实 | 记一次攻防演练

看到一处登录后台,各种操作都尝试过无果,翻了一下js,看到一处文件上传接口泄露(没图了,已经整改了) 构造上传数据包,很nice,上传成功 直接连接webshell,搭建隧道进行内网穿透 翻看配置文件&…

Docker 容器连接

Docker 容器连接 前面我们实现了通过网络端口来访问运行在 docker 容器内的服务。 容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过 -P 或 -p 参数来指定端口映射。 下面我们来实现通过端口连接到一个 docker 容器。 网络端口映射 …

Mac系统数据占用太多怎么清理 mac怎么清除下载的软件

在我们使用MacBook电脑的过程中,经常会遇到一个常见的问题,那就是储存空间不足。当我们的硬盘空间被占满的时候,系统的运行速度可能会变得缓慢,并且我们无法保存新的文件或者安装新的应用程序。要解决这个问题,清理缓存…

CSS 实现卡片以及鼠标移入特效

CSS 实现卡片以及鼠标移入特效 文章目录 CSS 实现卡片以及鼠标移入特效0、效果预览默认鼠标移入后 1、创建卡片组件2、添加样式3、完整代码 0、效果预览 默认 鼠标移入后 在本篇博客中,我们将探讨如何使用 CSS 来实现卡片组件,并添加鼠标移入特效&#…

leetcode 2114. 句子中的最多单词数

题目: 一个 句子 由一些 单词 以及它们之间的单个空格组成,句子的开头和结尾不会有多余空格。 给你一个字符串数组 sentences ,其中 sentences[i] 表示单个 句子 。 请你返回单个句子里 单词的最多数目 。 解题方法: 1.遍历列表…

【SpringBoot】SpringBoot 项目初始化方法

github 搜索 springboot 模板 github 搜索 springboot 模板,拉取现成代码。 SpringBoot 官方的模板生成器 SpringBoot 官方的模板生成器(https://start.spring.io/) 在 IDEA 开发工具中生成 这里我修改成阿里的镜像主要是要使用 Java8。 …

springboot第50集:File类,IO流,网络编程,反射机制周刊

image.png FileReader、FileWriter的使用 FileInputStream、FileOutputStream的使用 image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png image.png 服务器内存优化是一个复杂的过程,通常需要综合考虑…

vue3开发移动端H5页面中video无交互自动播放完美解决方案

链接 官网:https://jsmpeg.com/ github:https://github.com/phoboslab/jsmpeg 官方例子:https://jsmpeg.com/perf.html 在线video转ts文件:https://convertio.co/zh/mp4-ts/ 踩坑 一、不用使用任何npm、yarn等安装 npm i jsmpe…

【Go面试向】rune和byte类型的认识与使用

【Go】rune和byte类型的认识与使用 大家好 我是寸铁👊 总结了一篇rune和byte类型的认识与使用的文章✨ 喜欢的小伙伴可以点点关注 💝 byte和rune类型定义 byte,占用1个字节,共8个比特位,所以它实际上和uint8没什么本质区别,它表示…

Android 事件机制探讨(1)

事件的传递主要有三个方法:dispatchTouchEvent(事件分发)、onInterceptTouchEvent(事件拦截)、onTouchEvent(事件消费)。如下图: 仔细看的话,图分为3层,从上往下依次是Activity、ViewGroup、View事件从左上角那个白色箭头开始&…

python2实现数据库表定时全量同步sftp

python2实现数据库表定时全量同步sftp 需求 周边系统需要通过sftp接口,将本系统数据库的8张表吐给sftp,文件名为txt,提供的字段用#号分隔(逗号存在分隔不开的情况),8张表采用全量每天同步。 环境 操作系统centos7.…