数值实验报告综述.docx
- 文档编号:12014799
- 上传时间:2023-04-16
- 格式:DOCX
- 页数:24
- 大小:284.20KB
数值实验报告综述.docx
《数值实验报告综述.docx》由会员分享,可在线阅读,更多相关《数值实验报告综述.docx(24页珍藏版)》请在冰豆网上搜索。
数值实验报告综述
(实验报告的首页)
本科实验报告
课程名称:
计算机数值方法
实验项目:
方程求根、线性方程组的直接求解和迭代求解、
代数差值和最小二乘法拟合
实验地点:
专业班级:
学号:
学生姓名:
指导教师:
年月日
学生姓名
实验成绩
实验名称
实验一方程求根
实验目的和要求(必填)
熟悉使用二分法、迭代法、牛顿法、割线法等方法对给定的方程进行根的求解。
选择上述方法中的两种方法求方程:
f(x)=x3+4x2-10=0在[1,2]内的一个实根,且要求满足精度|x*-xn|<0.5×10-5
实验内容和原理(必填)
函数f(x)在区间(x,y)上连续,先在区间(x,y)确定a与b,若f(a),f(b)异号,说明在区间(a,b)内存在零点,然后求f[(a+b)/2]。
假设F(a)<0,F(b)>0,a
1如果f[(a+b)/2]=0,该点即为零点;
2如果f[(a+b)/2]<0,则区间((a+b)/2,b)内存在零点,(a+b)/2≥a;
3如果f[(a+b)/2]>0,则区间(a,(a+b)/2)内存在零点,(a+b)/2≤b;
返回①重新循环,不断接近零点。
通过每次把f(x)的零点所在区间收缩一半的方法,使区间内的两个端点逐步逼近函数零点,最终求得零点近似值。
主要仪器设备
台式或笔记本计算机
实验记录(写出实验内容中的程序代码和运行结果)(可分栏或加页)
1.割线法程序代码
#include"stdio.h"
#include"math.h"
intmain()
{
floatc,a=1.0,b=2.0;
while
(1)
{
c=b-(b*b*b+4*b*b-10)*(b-a)/(b*b*b+4*b*b-a*a*a-4*a*a);
if(fabs(b-c)<0.5*0.00001)break;
b=c;
printf("%f\n",b);
}
printf("%f\n",c);getch();
}
2.二分法程序代码
#include"stdio.h"
#include"stdlib.h"
#include"math.h"
intmain()
{doublea=1.0,b=2.0;
doublec,d;
while
(1)
{c=(a+b)/2;
d=pow(c,3)+4*c*c-10;
if(-0.000005 elseif(d<0){a=c;} elseif(d>0){b=c;} printf("%f\t%f\n",a,b);} printf("%f\n",c); printf("%f\n",d); getch(); return0;} 截图 实验结果和分析 用二分法和割线法均能计算出方程的根,但割线计算次数少于二分法,且能够较早达到精度要求,割线法的代码也较为简单明了,实用方便。 心得体会(遇到的问题和解决方法) 通过本次试验,编写代码,运行程序,使我复习了c语言的同时也加深了对二分法和割线法的理解,并认识了一些新的函数。 实验名称 实验二线性方程组的直接求解 实验目的和要求 合理选择利用Gauss消元法、LU分解法、追赶法求解下列方程组: ① ② ③ ④ (n=5,10,100,…) 实验内容 LU分解法: 将系数矩阵A转化为A=L*U,L为单位下三角矩阵,U为普通上三角矩阵,然后通过解方程组l*y=b,u*x=y,来求解x。 高斯消元法: 将原方程组化为三角形方阵的方程组: lik=aik/akkaij=aij-lik*akj (k=1,2,…,n-1i=k+1,k+2,…,nj=k+1,k+2,…,n+1) xn=ann+1/annxk=(akn+1-∑akjxj)/akk 完全主元素消元法和列主元素消元法 主要仪器设备 台式或笔记本计算机 实验记录(写出实验内容中的程序代码和运行结果)(可分栏或加页) 1.列主元素消元法程序代码 #include"stdio.h" intmain() { floata[3][4]={{1,2,3,14},{0,1,2,8},{2,4,1,13}}; floatx[3]; floatsum=0; intk,i,j; for(k=0;k<2;k++) for(i=k+1;i<3;i++) for(j=k+1;j<4;j++) a[i][j]=a[i][j]-a[i][k]/a[k][k]*a[k][j]; for(i=0;i<3;i++) { for(j=0;j<4;j++) { printf("a[%d][%d]=%f",i,j,a[i][j]); } printf("\n"); } x[2]=a[2][3]/a[2][2]; for(k=1;k>=0;k--) { sum=0; for(j=k+1;j<3;j++) { sum+=a[k][j]*x[j]; } x[k]=(a[k][3]-sum)/a[k][k]; } for(i=0;i<3;i++) { printf("x[%d]=%f\n",i+1,x[i]); } printf("\n");getch(); } 2.完全主元素消元法 #include“stdio.h” #include”iostream” usenamespacestd; #include”math.h” floata[100][101]; floatx[10]; intN; voidshuchu() { for(inti=1;i<=N;i++) { for(intj=1;j<=N+1;j++) {
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数值 实验 报告 综述