利用欧拉方法求常微分方程近似数值解,欧拉微分方程,欧拉运动微分方程,欧拉平衡微分方程,欧拉型微分方程,微分方程的欧拉算法,微分方程的欧拉解法,欧拉型常微分方程,偏微分方程数值解,微分方程数值解法

利用欧拉方法求常微分方程近似数值解

实 验 报 告

实验名称

(教师填写)

利用欧拉方法求常微分方程近似数值解

实验目的

(教师填写)1.学会利用欧拉方法求微分方程的数值解。

2.观察欧拉显式方法的收敛性。

3.观察欧拉显式方法的数值不稳定性。

实验题目

(教师填写)完成第一题。(第二题选作。)

1.取用欧拉显式方法求解一阶线性微分方程:

计算到并与精确解比较。

2.取用欧拉显式方法求解线性微分方程:

并画出曲线。用改进的欧拉方法(或欧拉隐式方法)重复求解上述问题。试解释你所观察到的现象。

实验报告要求

(教师填写)

实验内容与步骤

(学生填写)欧拉法

#include"stdio.h"

#include"math.h"

void main()

{

int i;

double y,h,x,m,z;

printf("输入步长h");

scanf("%f",&h);

printf("h=%f\n",h);

m=1.0/h;

y=1.0;

x=1.0;

for(i=0;i

{

y=y+h*(x+i*h)*pow(y,1.0/3.0);

}

printf("y(2)=%f\n",y);

z=pow((2*2.0+2)/3.0,3.0/2.0);

printf("精确解");

printf("y(2)=%f",z);

}

改进欧拉法

#include"stdio.h"

#include"math.h"

void main()

{

int i;

double y,y0,z,h,x,m;

printf("输入步长h");

scanf("%f",&h);

printf("h=%f\n",h);

m=1.0/h;

y=1.0;

x=1.0;

for(i=0;i

{

y0=y+h*(x+i*h)*pow(y,1.0/3.0);

y=y+h/2*((x+i*h)*pow(y,1.0/3.0)+(x+i*h+h)*pow(y0,1.0/3.0));

}

printf("y(2)=%f\n",y);

z=pow((2*2.0+2)/3.0,3.0/2.0);

printf("精确解");

printf("y(2)=%f",z);

}

实验结果与实验结论

(学生填写)欧拉法

h=0.1, y(2)=2.723877

h=0.05, y(2)=2.775436

h=0.01, y(2)=2.817713

改进欧拉法

h=0.1, y(2)=2.827609

h=0.05, y(2)=2.828219

h=0.01, y(2)=2.828419

精确解

y(2)=2.828427

欧拉法的特点

单步,显式,一阶求导精度,截断误差阶欧拉法的缺点

欧拉法简单地取切线的端点作为下一步的起点进行计算,当步数增多时,误差会因积累而越来越大。因此欧拉格式一般不用于实际计算。

改进欧拉格式

为提高精度,需要在欧拉格式的基础上进行改进。采用区间两端的函数值的平均值作为直线方程的斜率。改进欧拉法的精度为二阶。

隐式欧拉解常微分方程c语言,利用欧拉方法求常微分方程近似数值解.doc相关推荐

  1. 用C语言编码定积分,C语言__用六种方法求定积分C语言__用六种方法求定积分.doc...

    C语言__用六种方法求定积分C语言__用六种方法求定积分 描述问题 利用①左矩形公式,②中矩形公式,③右矩形公式 ,④梯形公式,⑤simpson公式,⑥Gauss积分公式求解定积分. 分析问题 2.1 ...

  2. JSP九大隐式对象详解

    九大隐式对象可以分为四类 第一类:与输入输出有关的request请求对象response响应对象out输出对象第二类:与作用域范围有关的pageContext页面作用域request请求作用域sess ...

  3. Scala的隐式转换详解

    隐式转换是在Scala编译器进行类型匹配时,如果找不到合适的类型,那么隐式转换会让编译器在作用范围内自动推导出来合适的类型. 1.隐式值与隐式参数 隐式值是指在定义参数时前面加上implicit.隐式 ...

  4. Scala隐式转换详解

    1.隐式转换 当编译器第一次编译失败的时候,会在当前的环境中查找能让代码编译通过的方法,用于将类型进行转换,实现二次编译,而这些方法就是隐式转换,Scala编译器所做的事情要比Java编译器做的事情要 ...

  5. python selenium 中显示等待与隐式等待同时存在,发生冲突时,解决方法

    当我们在一个基类中写了一句隐式等待,如下面的 self.driver.implicitly_wait(30) 可以为整个程序都设置一个30秒的等待时间,但是当我们有段代码不想等待30秒这么久,那该怎么 ...

  6. 求解欧拉方程的c语言,用有限体积方法求解欧拉方程

    <用有限体积方法求解欧拉方程>由会员分享,可在线阅读,更多相关<用有限体积方法求解欧拉方程(12页珍藏版)>请在人人文库网上搜索. 1.有限体积法求解二维可压缩Euler方程计 ...

  7. 求解欧拉方程的c语言,用有限体积方法求解欧拉方程.doc

    PAGE 4 - 实用标准 文档 有限体积法求解二维可压缩Euler方程 --计算流体力学课程大作业 老师: 夏健.刘学强 学生: 徐锡虎 学号: SQ09018013018 日期: 2010年2月5 ...

  8. 求一元二次方程的解虚数C语言,初学C++新手跪求:用C++编 解一元二次方程 并 结果用复数表示。。...

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include using namespace std; void fun(double a,double b,do ...

  9. C语言程序设计之四种方法求n的阶乘

    方式一:用while循环从1到n #include<stdio.h> int main(){int i=1,ret=1,n;//定义三个变量并给i,ret赋值scanf("%d& ...

最新文章

  1. webstorm配置ESLint 一直
  2. 打印正整数n之内的斐波那契数列
  3. java二位数组biaoda_1 面向对象前部分
  4. 异部时钟电路的FPGA设计
  5. find 按文件修改时间查找文件
  6. Android官方开发文档Training系列课程中文版:打印内容之图像打印
  7. 深度学习的实用层面 —— 1.1 训练/开发/测试集
  8. Ubuntu,kubuntu与xubuntu的差别 Ubuntu各版本主要差异
  9. OneinStack一键安装tomcat,jdk,mysql到Linux
  10. C语言基础知识之#pragma once
  11. linux中使用u盘和光驱的命令_linux命令详解之挂载光驱的方法
  12. Codeforces Round #275 (Div. 2)
  13. 如何自定义一个注解(@Annotation)
  14. \x75\x73\x65\x20\x73\x74\x72\x69\x63\x74解码
  15. 苹果手机温度测试软件,苹果手机测温神器上线啦!
  16. STM32L431 I2S/IIS slaver使用
  17. 科幻计算机类小说,感觉是在读科幻小说?计算机推演宇宙,结果会如何?
  18. ChatGPT万能工具箱 | ChatGPT辅助神器 提升了用户体验 提问回答更加精确。
  19. android 手机系统排行榜,手机系统排行榜出炉:第一名意料之中,MIUI排名令人意外!...
  20. java播放器使用教程_[Java教程]Java音乐播放器

热门文章

  1. Android平板屏幕笔,小米平板5屏幕几乎实锤,采用TCL华星屏,支持In-Cell主动笔技术...
  2. 产品经理学大数据——大数据软件框架:框架的选择
  3. 水果FL studio20.8中文汉化翻译语言
  4. Unity中,实现鼠标点击物体,触发事件
  5. 封城第14日,囤了一波好货
  6. 物联网时代之核心 论人工智能未来发展趋势
  7. 模糊查询like特殊符号%(百分号)和_(下划线)当普通字符处理,避免查询出所有数据
  8. Excel办公(两张表数据匹配)
  9. 18个一线工作中常用Shell脚本(纯干货)
  10. PCB双面贴片如何过回流焊(硬件工程师应该了解一下)