计算方法之改进的欧拉法计算常微分方程
2013-06-11 13:01
183 查看
/*********************** * *改进的欧拉法计算常微分方程 * y'=(1/x)*y-(1/x)*y^2, 1<=x<=1.5 *{ * y(1) = 0.5 * * 取步长h=0.1即n=5 *************************/ #include<stdio.h> #include<math.h> #include<conio.h> float f(float x, float y) { return (y / x - y * y / x); } float Euler(float x0, float xn, float y0, int n) { int i; float yp, yc, x = x0, y = y0, h; h = (xn - x0) / n; for (i = 1; i <= n; i++) { yp = y + h * f(x, y); x = x0 + i * h; yc = y + h * f(x, yp); y = (yp + yc) / 2.0; printf("x[%d]=%f y[%d]=%f\n", i, x, i, y); } return y; } int main() { int i; float x0, xn, y0, h, S, n; printf("\nInput the x0 value:"); scanf("%f", &x0); printf("\nInput the xn value:"); scanf("%f", &xn); printf("\nInput the y0 value at %f:", x0); scanf("%f", &y0); printf("\n input value[divide(%f,%f)]:", x0, xn); scanf("%f", &n); printf("\n x[0]=%8f \t y[0]=%8f \n", x0, y0); Euler(x0, xn, y0, n); //getch(); return 0; }
相关文章推荐
- 计算方法之改进的欧拉法计算常微分方程
- 欧拉法、预估校正法(改进的欧拉法)与四阶龙格库塔法求解常微分方程的数值解C++程序
- 一种改进的基于亚像素边缘的齿轮内径计算方法
- [算法] [常微分方程] [欧拉法 改进欧拉法 经典R-K算法]
- JAVA反色计算方法的改进和修正
- feature map计算方法与faster-rcnn中roi映射到feature map的位置计算方法
- 一秒钟控制25个计算量的方法
- 海量数据挖掘MMDS week2: 频繁项集挖掘 Apriori算法的改进:基于hash的方法
- Android5.0 计算器计算结果不准确和结果末尾的多余的‘0’没有省略的解决方法
- Python计算两个日期相差天数的方法示例
- 库存数量控制中储备定额方法的改进与实现
- 服务器TPC-C值计算方法
- 时针与分针夹角的计算方法
- 四、六级考试的标准分计算方法-“710分转换表”
- 写日志方法的改进
- 一个简单方法完成C#时间间隔的计算
- Liferay Dynamic CSS Filter方法的研究 - 计算资源文件的缓存base名
- 根据一个Feature图层范围计算另一个Feature图层各图斑面积的方法
- python 学习笔记(相似性计算方法)
- 【计算方法笔记】数值积分