西 安 理 工 大 学
学生实验报告
实验课程名称
:
自动化与信息工程学院
数 学 实 验
实验名称: 实验六 微分方程的数值求解 学 院: 学生姓名: 班 级: 学 号:
成绩 教师
实验项目 名 称 实验六 微分方程的数值求解 一、实验目的及意义
[1] 归纳和学习求解常微分方程(组)的基本原理和方法; [2] 熟悉MATLAB软件关于微分方程求解的各种命令;
[3] 掌握解析、数值解法,并学会用图形观察解的形态和进行解的定性分析;
[4] 通过范例学习建立微分方程方面的数学模型以及求解全过程。 通过该实验的学习,使学生掌握微分方程(组)求解方法(解析法、欧拉法、改进欧拉法、RK法等),对常微分方程的数值解法有一个初步了解,同时学会使用MATLAB软件求解微分方程的基本命令,学会建立微分方程方面的数学模型。这对于学生深入理解微分的数学概念,掌握数学的分析思维方法,熟悉处理大量的工程计算问题的方法是十分必要的。
二、实验内容
[1] 复习微分方程及方程组的解析求解法;
[2] 微分方程及方程组的数值求解法——预估校正,RK4
[3] 直接使用MATLAB命令对微分方程(组)进行求解(包括解析解、
数值解);
[4] 利用图形对解的特征作定性分析;
[5] 建立微分方程方面的数学模型,并了解建立数学模型的全过
程。
三、实验心得体会
经过腾讯课堂直播线上教学与展示,以及多次上机实际练习,已经能够熟练掌握所学的内容,理解Euler折线法、预估校正法、Runge-kutta法等的基本原理,掌握编写euler、eulerprove、RK4等函数、运用Matlab自带ode45等函数,解决微分方程组和高阶微分问题,通过比较,体会到所求数值解的精度,着实感受到MATLAB的方便与强大。
四、实验任务
1. 考虑初值问题:
y??ytanx?secx,0?x?1,yx?0??2
试用预估校正法求解该微分方程,并与精确解相比较,将两种方法的计算结果画在一张图中。
(1)预估校正法: ①创建函数eulerprove:
②由题目定义微分函数f1:
③求解:
(2)精确解:
(3)将预估校正法得到的数值解与精确解绘制在同一图: