隐式欧拉解常微分方程c语言,利用欧拉方法求常微分方程近似数值解.doc
利用欧拉方法求常微分方程近似数值解,欧拉微分方程,欧拉运动微分方程,欧拉平衡微分方程,欧拉型微分方程,微分方程的欧拉算法,微分方程的欧拉解法,欧拉型常微分方程,偏微分方程数值解,微分方程数值解法
利用欧拉方法求常微分方程近似数值解
实 验 报 告
实验名称
(教师填写)
利用欧拉方法求常微分方程近似数值解
实验目的
(教师填写)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相关推荐
- 用C语言编码定积分,C语言__用六种方法求定积分C语言__用六种方法求定积分.doc...
C语言__用六种方法求定积分C语言__用六种方法求定积分 描述问题 利用①左矩形公式,②中矩形公式,③右矩形公式 ,④梯形公式,⑤simpson公式,⑥Gauss积分公式求解定积分. 分析问题 2.1 ...
- JSP九大隐式对象详解
九大隐式对象可以分为四类 第一类:与输入输出有关的request请求对象response响应对象out输出对象第二类:与作用域范围有关的pageContext页面作用域request请求作用域sess ...
- Scala的隐式转换详解
隐式转换是在Scala编译器进行类型匹配时,如果找不到合适的类型,那么隐式转换会让编译器在作用范围内自动推导出来合适的类型. 1.隐式值与隐式参数 隐式值是指在定义参数时前面加上implicit.隐式 ...
- Scala隐式转换详解
1.隐式转换 当编译器第一次编译失败的时候,会在当前的环境中查找能让代码编译通过的方法,用于将类型进行转换,实现二次编译,而这些方法就是隐式转换,Scala编译器所做的事情要比Java编译器做的事情要 ...
- python selenium 中显示等待与隐式等待同时存在,发生冲突时,解决方法
当我们在一个基类中写了一句隐式等待,如下面的 self.driver.implicitly_wait(30) 可以为整个程序都设置一个30秒的等待时间,但是当我们有段代码不想等待30秒这么久,那该怎么 ...
- 求解欧拉方程的c语言,用有限体积方法求解欧拉方程
<用有限体积方法求解欧拉方程>由会员分享,可在线阅读,更多相关<用有限体积方法求解欧拉方程(12页珍藏版)>请在人人文库网上搜索. 1.有限体积法求解二维可压缩Euler方程计 ...
- 求解欧拉方程的c语言,用有限体积方法求解欧拉方程.doc
PAGE 4 - 实用标准 文档 有限体积法求解二维可压缩Euler方程 --计算流体力学课程大作业 老师: 夏健.刘学强 学生: 徐锡虎 学号: SQ09018013018 日期: 2010年2月5 ...
- 求一元二次方程的解虚数C语言,初学C++新手跪求:用C++编 解一元二次方程 并 结果用复数表示。。...
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 #include #include #include using namespace std; void fun(double a,double b,do ...
- C语言程序设计之四种方法求n的阶乘
方式一:用while循环从1到n #include<stdio.h> int main(){int i=1,ret=1,n;//定义三个变量并给i,ret赋值scanf("%d& ...
最新文章
- webstorm配置ESLint 一直
- 打印正整数n之内的斐波那契数列
- java二位数组biaoda_1 面向对象前部分
- 异部时钟电路的FPGA设计
- find 按文件修改时间查找文件
- Android官方开发文档Training系列课程中文版:打印内容之图像打印
- 深度学习的实用层面 —— 1.1 训练/开发/测试集
- Ubuntu,kubuntu与xubuntu的差别 Ubuntu各版本主要差异
- OneinStack一键安装tomcat,jdk,mysql到Linux
- C语言基础知识之#pragma once
- linux中使用u盘和光驱的命令_linux命令详解之挂载光驱的方法
- Codeforces Round #275 (Div. 2)
- 如何自定义一个注解(@Annotation)
- \x75\x73\x65\x20\x73\x74\x72\x69\x63\x74解码
- 苹果手机温度测试软件,苹果手机测温神器上线啦!
- STM32L431 I2S/IIS slaver使用
- 科幻计算机类小说,感觉是在读科幻小说?计算机推演宇宙,结果会如何?
- ChatGPT万能工具箱 | ChatGPT辅助神器 提升了用户体验 提问回答更加精确。
- android 手机系统排行榜,手机系统排行榜出炉:第一名意料之中,MIUI排名令人意外!...
- java播放器使用教程_[Java教程]Java音乐播放器
热门文章
- Android平板屏幕笔,小米平板5屏幕几乎实锤,采用TCL华星屏,支持In-Cell主动笔技术...
- 产品经理学大数据——大数据软件框架:框架的选择
- 水果FL studio20.8中文汉化翻译语言
- Unity中,实现鼠标点击物体,触发事件
- 封城第14日,囤了一波好货
- 物联网时代之核心 论人工智能未来发展趋势
- 模糊查询like特殊符号%(百分号)和_(下划线)当普通字符处理,避免查询出所有数据
- Excel办公(两张表数据匹配)
- 18个一线工作中常用Shell脚本(纯干货)
- PCB双面贴片如何过回流焊(硬件工程师应该了解一下)