Matlab实现导弹追踪与建模实验:数值解微分方程

需积分: 35 1 下载量 118 浏览量 更新于2024-08-23 收藏 588KB PPT 举报
在MATLAB中进行数值解法的学习和实践是数学实验的重要组成部分,特别是对于求解微分方程。在这个解法二(数值解)中,首先创建了一个名为`eq1.m`的函数文件,该函数用于定义一个二阶常微分方程系统,其中dy(1)代表y的导数等于y(2),dy(2)表示y的二阶导数,具体表达式为dy(2)=1/5*sqrt(1+y(1)^2)/(1-x)。这个函数定义了系统的动态行为。 接下来,主程序`ff6.m`被用来执行数值求解。程序初始化了初始条件x0=0和终止边界xf=0.9999,然后调用了`ode15s`函数,这是一个在MATLAB中用于求解常微分方程组的高级数值方法,它能够处理非线性问题。通过传递'eq1'作为函数名,以及x的区间和初值[0 0],`ode15s`会计算并返回对应的y值的时间序列。 图形展示部分,程序绘制了y随时间的变化情况(蓝色虚线),同时将y值在0到2范围内的等间距点标记为蓝色星形,这有助于观察解的行为。根据结论,导弹的运动轨迹在大约x=1且y=0.2的位置击中乙舰。 这部分内容涉及的主要知识点包括: 1. **数值解法**:利用MATLAB中的`ode15s`函数对常微分方程进行数值求解,这是一种在实际问题中常用的近似方法,因为解析解可能无法找到或过于复杂。 2. **微分方程的定义与求解**:通过`eq1.m`函数定义了微分方程模型,并展示了如何将其转化为一阶微分方程组以便于数值求解。 3. ** MATLAB库**:利用MATLAB强大的数学计算功能,尤其是其内置的函数库,如`dsolve`用于求解析解,`ode15s`用于数值解,以及数据可视化工具如`plot`。 4. **实验目的与应用**:实验旨在让学生熟悉MATLAB在数学建模中的应用,包括目标跟踪问题(导弹追踪问题,慢跑者与狗,地中海鲨鱼问题等)的实际案例,通过解决这些实际问题,理解和掌握数值解的方法。 5. **微分方程求解技术**:介绍了求解一阶和二阶微分方程的技巧,如将二阶方程转化为一阶方程组,并展示了如何在MATLAB中分别用`dsolve`和`ode15s`来求解单个微分方程和方程组。 通过这个例子,学生可以学习到如何在MATLAB环境中设计和实现数值解法,从而更好地理解微分方程在实际问题中的应用。