改进欧拉方程求初值(十四)
改进欧拉方程的公式如下:
yp=yn+hf(xn,yn)y_{p}=y_{n}+h f\left(x_{n}, y_{n}\right)yp=yn+hf(xn,yn)
yc=yn+hf(xn+1,yn)y_{c}=y_{n}+h f\left(x_{n+1}, y_{n}\right)yc=yn+hf(xn+1,yn)
yn+1=12(yp+yc)y_{n+1}=\frac{1}{2}\left(y_{p}+y_{c}\right)yn+1=21(yp+yc)
利用改进后的欧拉方程建立M函数文件求解初值。函数文件如下所示:
function [x,y] = adeuler(f,x0,y0,xf,h)
n = fix((xf-x0)/h);
y(1)=y0;
x(1)=x0;
for i=1:nx(i+1) = x0+i*h;yp = y(i) + h*feval(f,x(i),y(i));yc = y(i) + h*feval(f,x(i+1),yp);y(i+1) = (yp+yc)/2;%欧拉公式
end
例 求解初值条件{y′=y−2xy(0<x<1)y(0)=1\left\{\begin{array}{l}y^{\prime}=y-\frac{2 x}{y} \quad(0<x<1) \\ y(0)=1\end{array}\right.{y′=y−y2x(0<x<1)y(0)=1
MATLAB的程序如下:
[x,y] = adeuler('f',0,1,1,0.1)x =1 至 10 列 0 0.1000 0.2000 0.3000 0.4000 0.5000 0.6000 0.7000 0.8000 0.900011 列1.0000y =1 至 10 列1.0000 1.0959 1.1841 1.2662 1.3434 1.4164 1.4860 1.5525 1.6165 1.678211 列1.7379y1 = (1+2*x).^0.5y1 =1 至 10 列1.0000 1.0954 1.1832 1.2649 1.3416 1.4142 1.4832 1.5492 1.6125 1.673311 列1.7321plot(x,y,x,y1,'--')
图像结果如下所知:
由上面绘制曲线可以看出,改进的欧拉方程解法要比原来的方法优秀,数值解和解析解曲线能够重合。
改进欧拉方程求初值(十四)相关推荐
- qt 模拟鼠标滑轮_【游戏流体力学基础及Unity代码(四)】用欧拉方程模拟无粘性染料之公式推导...
先放一张动态图吊一下胃口~下面就是最终的效果 不可压缩的欧拉方程只比NS方程少一个粘性项.所以下面的内容是完全适合NS方程的.各位请准备好! 散度定理 模拟流体的时候会遇到许多数学公式.为了深刻理解这 ...
- 指数复合函数的求导与欧拉方程
指数复合函数的求导与欧拉方程: [f(et)]′=f′(et)∗et[f(e^t)]'=f'(e^t)*e^t[f(et)]′=f′(et)∗et xn∗y(n)+P1∗xn−1∗y(n−1)+--+ ...
- 【微分方程数值解】常微分方程(一)欧拉方法和改进欧拉方法(附python算例,封装类)
欧拉方法与改进欧拉方法 一.算法原理 对给定微分方程 {y′=f(x,y)y(x0)=y0(1)\begin{cases} y' = f(x,y)\\ y(x_0) = y_0 \end{cases} ...
- 6.1 欧拉方法与改进欧拉方法
6.1.1 欧拉方法 欧拉方法是一种数值解常微分方程(ODE)的方法,可以用于近似求解给定的初值问题.它是以欧拉命名的瑞士数学家莱昂哈德·欧拉所发明的,因此得名. 欧拉方法的基本思路是将连续的常微分方 ...
- [计算机数值分析]改进欧拉格式解常微分方程的初值问题
欧拉方法yn+1 = yn +hf(xn,yn) 是一种显式算法,计算量小,但精度很低.梯形方法yn+1 = yn + h / 2 *[f(xn,yn) + f(xn+1,yn+1)] 虽然提高了精度 ...
- 求解欧拉方程的c语言,用有限体积方法求解欧拉方程
<用有限体积方法求解欧拉方程>由会员分享,可在线阅读,更多相关<用有限体积方法求解欧拉方程(12页珍藏版)>请在人人文库网上搜索. 1.有限体积法求解二维可压缩Euler方程计 ...
- 向前欧拉公式例题_欧拉方程的求解
1 欧拉方程的求解 1. 引言 在数学研究领域,我们经常会看到以数学家名字命名的概念.公式.定 理等等,让人敬佩跟羡慕 . 但是,迄今为止,哪位数学家的名字出现得最多 呢?他就是数学史上与阿基米德. ...
- 应用数学课堂笔记(一)——欧拉方程
教材 <变分法及其应用--物理.力学.工程中的经典建模>欧斐君 高等教育出版社 有限维到无限维 向量中有有限个元素,它们可以进行加法.数乘.定义范数.定义内积.定义夹角.比如,对于向量aa ...
- 深度学习准备「爆破」著名的欧拉方程
来源:ScienceAI 编辑:绿萝 250 多年来,数学家一直试图「爆破」物理学中一些最重要的方程:那些描述流体如何流动的方程.如果他们成功了,那么他们将会发现一种情况,在这种情况下,这些方程会被打 ...
最新文章
- 新浪微博IPO,曹国伟策略之功
- 单链表-删除并释放以L为表头指针的单链表的所有结点(双指针法)
- android 调整字体,android设置:调整字体大小
- 关于bcg库记忆界面的问题及其解决办法
- 入门必备!生物医学命名实体识别(BioNER)最全论文清单,附SOTA结果汇总
- 使用directX 7结合C#进行2D游戏编程
- dfs文件服务器访问权限,fastDFS 文件服务器访问
- 实践平台linux,关于构造Linux系统实践平台的设想
- 全球移动支付发展现状移动支付之综述篇
- 品牌logo在EDM数据营销中的运用
- MySQL建表规范与常见问题
- Redis常用命令总结,为什么阿里的程序员成长如此之快
- 波士顿仿生机械狗 原理分析
- SAP 固定资产模块上线配置
- Java实现简易的购物系统
- ubuntu--制作图标
- 下载支持包时出现问题。要解决此问题,请参阅相应的 MATLAB Answer
- 和隆优化 matlab,misc.m · XJTU_STEI/matlabTools - Gitee.com
- led灯什么牌子的质量好又耐用?2022性价比高的led护眼灯品牌推荐
- 深蹲的26种变化动作(深蹲大全)