[算法] [常微分方程] [欧拉法 改进欧拉法 经典R-K算法]
#include<iostream>
#include<cmath>
#include<cstdio>
#include<iomanip>
using namespace std;
double h=0.1;//步差
double xi[]={};
double ol_yi[]={};
double gol_yi[]={};
double rk_yi[]={};
double real_yi[]={};
double f(double x,double y){
return *x/(*y*y);
}//f(x,y)
void OLFunction(){
for(int i=;i<;i++){
ol_yi[i+]=ol_yi[i]+h*f(xi[i],ol_yi[i]);
}
}//欧拉方法
void GOLFunction(){
for(int i=;i<;i++){
gol_yi[i+]=gol_yi[i]+
h*(
f(xi[i],gol_yi[i])
+f(xi[i+],gol_yi[i]+h*f(xi[i],gol_yi[i]))
)/;
}
}//改进欧拉方法
void RKFunction(){
double K1,K2,K3,K4;
for(int i=;i<;i++){
K1=f(xi[i],rk_yi[i]);
K2=f(xi[i]+h/,rk_yi[i]+h*K1/);
K3=f(xi[i]+h/,rk_yi[i]+h*K2/);
K4=f(xi[i]+h,rk_yi[i]+h*K3);
rk_yi[i+]=rk_yi[i]+h*(K1+*K2+*K3+K4)/;
}
}//经典龙格贝法
void RFunction(){
for(int i=;i<;i++){
real_yi[i]=pow(1.0+xi[i]*xi[i],/3.0);
}
}//真实解
int main(){
int i;
for(i=;i<;i++){
xi[i]=xi[i-]+h;
}//求xi[] OLFunction();//四种计算方法
GOLFunction();
RKFunction();
RFunction(); printf("-------------------------------------------------\n");
printf("xi | 欧拉 | 改进欧拉 | 经典R-K | 准确解 \n");
printf("-------------------------------------------------\n");
for(i=;i<;i++){
printf("%.1lf | %.6lf | %.6lf | %.6lf | %.8lf\n",
xi[i],ol_yi[i],gol_yi[i],rk_yi[i],real_yi[i]);
}
getchar();
return ;
}
[算法] [常微分方程] [欧拉法 改进欧拉法 经典R-K算法]的更多相关文章
- JavaScript 数据结构与算法之美 - 十大经典排序算法汇总(图文并茂)
1. 前言 算法为王. 想学好前端,先练好内功,内功不行,就算招式练的再花哨,终究成不了高手:只有内功深厚者,前端之路才会走得更远. 笔者写的 JavaScript 数据结构与算法之美 系列用的语言是 ...
- 从K近邻算法谈到KD树、SIFT+BBF算法
转自 http://blog.csdn.net/v_july_v/article/details/8203674 ,感谢july的辛勤劳动 前言 前两日,在微博上说:“到今天为止,我至少亏欠了3篇文章 ...
- (转)白话经典算法系列之八 MoreWindows白话经典算法之七大排序总结篇
在我的博客对冒泡排序,直接插入排序,直接选择排序,希尔排序,归并排序,快速排序和堆排序这七种常用的排序方法进行了详细的讲解,并做成了电子书以供大家下载.下载地址为:http://download.cs ...
- 【算法】经典的ML算法(后续结合工作实践完善心得)
18大数据挖掘的经典算法以及代码实现,涉及到了决策分类,聚类,链接挖掘,关联挖掘,模式挖掘等等方面,后面都是相应算法的博文链接,希望能够帮助大家学.目前追加了其他的一些经典的DM算法,在others的 ...
- paper 100:何恺明经典去雾算法
一:由简至美的最佳论文(作者:何恺明 视觉计算组) [视觉机器人:个人感觉学习他的经典算法固然很重要,但是他的解决问题的思路也是非常值得我们学习的] 那是2009年4月24日的早上,我收到了一封不同 ...
- 经典算法题每日演练——第七题 KMP算法
原文:经典算法题每日演练--第七题 KMP算法 在大学的时候,应该在数据结构里面都看过kmp算法吧,不知道有多少老师对该算法是一笔带过的,至少我们以前是的, 确实kmp算法还是有点饶人的,如果说红黑树 ...
- 程序员编程艺术:第三章续、Top K算法问题的实现
程序员编程艺术:第三章续.Top K算法问题的实现 作者:July,zhouzhenren,yansha. 致谢:微软100题实现组,狂想曲创作组. 时间:2011年05月08日 ...
- 算法进阶面试题02——BFPRT算法、找出最大/小的K个数、双向队列、生成窗口最大值数组、最大值减最小值小于或等于num的子数组数量、介绍单调栈结构(找出临近的最大数)
第二课主要介绍第一课余下的BFPRT算法和第二课部分内容 1.BFPRT算法详解与应用 找到第K小或者第K大的数. 普通做法:先通过堆排序然后取,是n*logn的代价. // O(N*logK) pu ...
- 几种经典的hash算法
计算理论中,没有Hash函数的说法,只有单向函数的说法.所谓的单向函数,是一个复杂的定义,大家可以去看计算理论或者密码学方面的数据.用“人 类”的语言描述单向函数就是:如果某个函数在给定输入的时候,很 ...
随机推荐
- web语义化与h5新增标签
Web语义化就是html告诉我们也告诉机器这一块是什么内容,例如:“这行是一个标题,这几行组成一个段落,这是一个列表,那是一个链接.” Web语义化有三个阶段: 1.h1~h6.thead.ul. ...
- 动态生成dropdownlist
<td colspan=" id="td_ddl" runat="server"> </td> 后台代码: #region 动 ...
- APK动态加载框架(DL)解析
转载请注明出处:http://blog.csdn.net/singwhatiwanna/article/details/39937639 (来自singwhatiwanna的csdn博客) 前言 好久 ...
- Elasticsearch 插件安装
http://www.cnblogs.com/richaaaard/p/5212044.html
- win下搭建uvm环境
UVM验证方法学,很好的验证工具,下面用ModelSim-uvm做一个Hello world. 1.安装modelsim se 10.1a 2.下载uvm_1.1d uvm-1.1d.tar.gz ...
- hdu 1577 WisKey的眼神 (数学几何)
WisKey的眼神 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total S ...
- eclipse的ssh框架详解
1.创建项目 2.导包 1.1:导入Struts2可能用到的包: 先从网站下载 再这里找出,打开它把WEB-INF/lib/下的所有包导入项目 1.2:导入spring可能用到的包: 先从网站下载 ...
- codeforces 732/D 二分
给出考试时间和考试需要准备的时间,问最早考完所有科目的时间 二分答案 NlogN 二分抄神犇的写法 感觉挺舒服的嘻嘻嘻 #include<bits/stdc++.h> using name ...
- AngularJS学习---更多模板(More Templating) step 8
1.切换分支 amosli@amosli-pc:~/develop/angular-phonecat$ git checkout step- #切换分支 amosli@amosli-pc:~/deve ...
- mysql root 密码丢失问题
root密码丢失,我们需要将mysql以不检查权限的方式重新启动. 在mysql的配置文件(/etc/my.cnf)中,[mysqld]下添加一句skip-grant-tables,然后重新启动服务, ...