欢迎来到毕设资料网! | 帮助中心 毕设资料交流与分享平台
毕设资料网
全部分类
  • 毕业设计>
  • 毕业论文>
  • 外文翻译>
  • 课程设计>
  • 实习报告>
  • 相关资料>
  • ImageVerifierCode 换一换
    首页 毕设资料网 > 资源分类 > DOC文档下载
    分享到微信 分享到微博 分享到QQ空间

    数值方法课程设计--典型数值算法的C++语言程序设计

    • 资源ID:1394487       资源大小:902.50KB        全文页数:35页
    • 资源格式: DOC        下载积分:100金币
    快捷下载 游客一键下载
    账号登录下载
    三方登录下载: QQ登录
    下载资源需要100金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

    数值方法课程设计--典型数值算法的C++语言程序设计

    1、数值计算课程设计 1 典型数值算法的典型数值算法的 C+C+语言程序设计语言程序设计 1 1. .经典四阶龙格库塔法解一阶微分方程组经典四阶龙格库塔法解一阶微分方程组 1.11.1 算法说明算法说明 龙格-库塔(Runge-Kutta)方法是一种在工程上应用广泛的高精度单步算法。 由于 此算法精度高,采取措施对误差进行抑制,所以其实现原理也较复杂。该算法是构建 在数学支持的基础之上的。 4 阶龙格-库塔方法(RK4)可模拟 N=4 的泰勒方法的精度。这种算法可以描述为,自初 始点 00 (,)ty开始,利用下面的计算方法生成近似序列 1.21.2 经典四阶龙格库塔法解一阶微分方程组经典四阶龙格

    2、库塔法解一阶微分方程组算法流程图算法流程图 图 1-1 算法流程图 经典四阶龙格库塔法解一阶微分方程组 2 1.31.3 经典四阶龙格库塔法解一阶微分方程组经典四阶龙格库塔法解一阶微分方程组程序调试程序调试 将编写好的代码放在 VC6.0 环境中编译,直接执行程序便可以得到求解微分方程 () / 2 dy ty dt ,并且(0)1y的结果。如图: 将这些点进行插值或者拟合后就可以得到微分方程的解。 1.41.4 经典四阶经典四阶龙格库塔法解一阶微分方程组龙格库塔法解一阶微分方程组代码代码 #include #include using namespace std; /f 为函数的入口地址,x

    3、0、y0 为初值,xn 为所求点,step 为计算次数 double Runge_Kuta( double (*f)(double x, double y), double x0, double y0, double xn, long step ) double k1,k2,k3,k4,result; double h=(xn-x0)/step; if(stepx0y0; coutb; /double x0=0,y0=1; double x,y,step; long i; coutN; A=(double*)calloc(N*(N+1),sizeof(double); coutAi; syst

    4、em(“cls“); coutPi; coutepsilon; cinerr; iter=newdim(P,delta,epsilon,max1, coutn; coutXi; coutYi; coutn; A=(double*)malloc(n*sizeof(double); B=(double*)malloc(n*sizeof(double); coutAi; cout=0;i-) Bi=Ai+c*Bi+1; cout=0;i-) if(i=0) cout“+“setprecision(2)Aiendl; 图 9-2 程序调试图 数值计算课程设计 31 else cout“+“setpre

    5、cision(2)Ai“*x“iendl; cout“n 当 x=“c“时的解为 P(x)=“B0endl; free(A); free(B); getchar(); 10. 10. 牛顿牛顿- -拉弗森迭代解非线性方程拉弗森迭代解非线性方程 10.110.1 算法说明算法说明 使用初始近似值 0 P,利用迭代 1 1 1 () () k kk k fP PP fP 其中1, 2,.k 计算函数()0fx的根的 近似值。 10.210.2 牛顿牛顿- -拉弗森迭代解非线性方程算法拉弗森迭代解非线性方程算法程序调试程序调试 我们将所编写的牛顿-拉弗森迭代解非线性方程算法程序经过编译, 链接和执行

    6、后得如下 所示的结果 10.310.3 牛牛顿顿- -拉弗森迭代解非线性方程算法拉弗森迭代解非线性方程算法代码代码 #include #include using namespace std; double f(double x) return x*x-2*x-1; 图 10-1 程序调试图 牛顿-拉弗森迭代解非线性方程 32 double df(double x) return 2*x-2; void main() int k=0,max1=0; double p1=0.0,p0=0.0,err=0.0,relerr=0.0,delta=0.0,y=0.0,epsilon=0.0; cout“牛顿拉弗森法解非线性方程 f(x)=x2-2x-1n“; cout“初始值为 p0=4.8n“; /对程序进行初始化 p0=4.8,delta=0.0001,epsilon=0.0001,max1=100; for(k=1;k=


    注意事项

    本文(数值方法课程设计--典型数值算法的C++语言程序设计)为本站会员(毕****文)主动上传,毕设资料网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请联系网站客服QQ:540560583,我们立即给予删除!




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们
    本站所有资料均属于原创者所有,仅提供参考和学习交流之用,请勿用做其他用途,转载必究!如有侵犯您的权利请联系本站,一经查实我们会立即删除相关内容!
    copyright@ 2008-2025 毕设资料网所有
    联系QQ:540560583