运动学斜抛物体斜坡射程matlab源码

Posted MatlabQQ1575304183

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了运动学斜抛物体斜坡射程matlab源码相关的知识,希望对你有一定的参考价值。

一、简介

说明了斜抛物体在斜坡上的射程计算方法,求出了最大射程与坡度关系,详细讨论了射程与坡度的关系。通过图片显示射程与射角的关系,最大射程与坡度的关系。

二、源代码

%斜抛物体的射程
clear                                  %清除变量
a1=-45;                                %最小坡度
alpha=a1:15:45;                        %斜坡仰角的度数
a=alpha*pi/180;                        %化为弧度数
n=length(a);                           %坡度的个数
theta=a1:5:90;                         %物体射角的度数
th=theta*pi/180;                       %物体射角的弧度数
[A,TH]=meshgrid(a,th);                 %仰角和射角矩阵
S=2*sin(TH-A).*cos(TH)./cos(A).^2;     %射程矩阵(以水平最大射程为单位)
S(S<0)=nan;                            %小于零的射程没有意义(化为非数)
figure                                 %创建图形窗口
%plot(theta,S,'LineWidth',2)            %画射程曲线族
plot(theta,S(:,1),'o-',theta,S(:,2),'d-',theta,S(:,3),'s-',...
    theta,S(:,4),'p-',theta,S(:,5),'h-',theta,S(:,6),'<-',...
    theta,S(:,7),'>-')                 %画射程运动曲线族
grid on                                %加网格
h=legend([repmat('坡度:',n,1),num2str(alpha'),repmat('\\circ',n,1)]);%插入坡度图例
fs=16;                                 %字体大小
set(h,'FontSize',fs-2)                 %放大图例
thm=45+alpha/2;                        %最大射程的射角
sm=1./(1+sin(a));                      %最大射程
text(thm,sm,num2str(sm',3),'FontSize',fs)%标记最大射程(保留3位)
th0=a1*ones(1,n);                      %最大射程水平线的起点横坐标
hold on                                %保持图像

三、运行结果

在这里插入图片描述

四、备注

代码下载https://www.cnblogs.com/ttmatlab/p/14882966.html

以上是关于运动学斜抛物体斜坡射程matlab源码的主要内容,如果未能解决你的问题,请参考以下文章

物理实验模拟斜抛运动matlab源码含GUI界面

物理实验模拟斜抛运动matlab源码含GUI界面

运动学matlab模拟匀变速直线运动规律

机械仿真基于matlab打桩机运动学仿真含Matlab源码 2101期

机械仿真基于matlab打桩机运动学仿真含Matlab源码 2101期

运动学基于matlab EKF姿态估计含Matlab源码 1638期