后退欧拉法求解常微分方程(c++)

#include<iostream>
#include<iomanip>
using
namespace std;
int main()
{
double
x,y,yn,h,temp;
x=0; //对x赋初值
y=1; //对y赋初值
h=0.1; //步长设置为0.1
cout<<setiosflags(ios::left);
cout<<setw(20)<<"y的计算值";
cout<<setw(20)<<"y的理论值";
cout<<setw(20)<<"x的值";
cout<<setw(20)<<"误差"<<endl;
cout<<setw(20)<<y;
cout<<setw(20)<<y;
cout<<setw(20)<<x;
cout<<setw(20)<<0<<endl;
for
(int i=0;i<10;i++)
{
temp=y; //每次迭代之前y未变化的值,用于后面的计算
y=y+h*(y-2*x/y); //使y显化
x+=h;
do
{
yn=y;
y=temp+h*(y-(2*x/y));
}
while
(abs(yn-y)>0.0000001);
cout<<setw(20)<<y; //输出y的新值
cout<<setw(20)<<sqrtf(1+2*x); //计算y的理论值
cout<<setw(20)<<x; //输出x的新值
cout<<setw(20)<<abs(y-sqrtf(1+2*x))<<endl; //计算误差
}
return
0;
}

后退欧拉法求解常微分方程(c++)的更多相关文章
- 欧拉法求解常微分方程(c++)
#include<iostream> #include<iomanip> using namespace std; int main() { double x, y, h; ...
- 欧拉法求解常微分方程(c++)【转载】
摘自<c++和面向对象数值计算>,代码简洁明快,采用类进行封装实现代码,增强代码的重用性,通过继承可实现代码的重用,采用函数指针,通用性增强,在函数改变时只需要单独改变函数部分的代码,无需 ...
- 龙哥库塔法or欧拉法求解微分方程matlab实现
举例:分别用欧拉法和龙哥库塔法求解下面的微分方程 我们知道的欧拉法(Euler)"思想是用先前的差商近似代替倒数",直白一些的编程说法即:f(i+1)=f(i)+h*f(x,y)其 ...
- MATLAB求解常微分方程:ode45函数与dsolve函数
ode45函数无法求出解析解,dsolve可以求出解析解(若有),但是速度较慢. 1. ode45函数 ①求一阶常微分方程的初值问题 [t,y] = ode45(@(t,y)y-2*t/y, ...
- 改进欧拉公式求解常微分方程(c++)
#include<iostream> #include<iomanip> using namespace std; int main() { double x,y,h,temp ...
- 梯形法求解常微分方程(c++)
#include<iostream> #include<iomanip> using namespace std; int main() { double x,y,yn,h,t ...
- ODEINT 求解常微分方程(4)
import numpy as np from scipy.integrate import odeint import matplotlib.pyplot as plt # function tha ...
- ODEINT 求解常微分方程(3)
import numpy as np from scipy.integrate import odeint import matplotlib.pyplot as plt # function tha ...
- ODEINT 求解常微分方程(2)
import numpy as np from scipy.integrate import odeint import matplotlib.pyplot as plt # function tha ...
随机推荐
- Java自学-控制流程 switch
Java的 switch 语句 switch 语句相当于 if else 的另一种表达方式 示例 1 : switch switch可以使用byte,short,int,char,String,enu ...
- Python基础知识(六)------小数据池,集合,深浅拷贝
Python基础知识(六)------小数据池,集合,深浅拷贝 一丶小数据池 什么是小数据池: 小数据池就是python中一种提高效率的方式,固定数据类型使用同一个内存地址 代码块 : 一个文 ...
- 【开发笔记】- Velocity中特殊符号展示乱码的问题
问题 需求是需要在后台将收货国家对应的币种.币种符号返回给前台并展示,在返回给前端后出现了页面币种符号展示乱码的问题. 解决方式 在获取货币符号时添加以下代码,防止velocity对特殊符号进行转义处 ...
- vue-router中的router-view的困扰
刚开始接触vue的时候有很长一段时间被router-view的渲染困扰着,不知道为什么明明有很多router-link和不同的router-view,但是为什么渲染的时候不会出现错乱呢 这是我自己写的 ...
- webpack练手项目之easySlide(三):commonChunks
Hello,大家好. 在之前两篇文章中: webpack练手项目之easySlide(一):初探webpack webpack练手项目之easySlide(二):代码分割 与大家分享了webpack的 ...
- 【重大更新】Qlik Sense September 2018重磅发布(附下载)
作为数据分析领域领导者,Qlik,始终致力于通过产品创新来帮助企业客户撬动数据力量.近日,Qlik Sense September 2018如期而至,不仅对原有版本进行了众多优化,还发布了一系列能够提 ...
- Python+opencv图像识别
图像识别 最近工作遇到了一个需要识别安全键盘并点击的需求,做自动化嘛,由于安全键盘的键位固定但是键值随机,所以常规的方法不能正确获取触发点击,so,上网查了一下基本思路都是用机器识别. 加载openc ...
- 定时任务模块——APScheduler
一.概念: python定时任务框架,基于日期,固定时间间隔,crontab类型的任务,并且可以持久化任务,并能以deamon守护方式运行任务 二.简介: 安装:pip install apsched ...
- 洛谷 P2725 邮票题解
题目背景 给一组 N 枚邮票的面值集合(如,{1 分,3 分})和一个上限 K —— 表示信封上能够贴 K 张邮票.计算从 1 到 M 的最大连续可贴出的邮资. 题目描述 例如,假设有 1 分和 3 ...
- 类型擦除对Java调用Kotlin的影响
@JvmName: 扩展方法相关: 先来定义一个扩展方法: 好,接下来再来定义一个扩展函数: 此时报错了..看一下错误提示: 其中给的提示有点奇怪,第一个是很明显咱们的扩展函数木有接收参数嘛,为啥提示 ...