计算方法 用欧拉预估-校正法求初值问题

时间:2025-04-22

计算方法 上机实验 程序设计

《计算方法》实验指导书

实验1 方程求根

一、实验目的

1. 通过对二分法、牛顿法、割线法作编程练习,进一步体会它们各自不同的特点; 2. 了解二分法,切线法,割线法。

3. 能熟练运用二分法,牛顿法进行方程求根

4. 通过上机调试运行,对方程求根的几种方法程序进行改进。

二、实验要求

1. 上机前作好充分准备,包括复习编程所需要的语言工具。 2. 上机时要遵守实验室的规章制度,爱护实验设备。

3. 记录调试过程及结果,记录并比较与手工运算结果的异同。 4. 程序调试完后,须由实验辅导教师在机器上检查运行结果。 5. 给出本章实验单元的实验报告。

三、实验环境、设备

1. 硬件设备:IBM PC以上计算

机,有硬盘和一个软驱、单机和网络环境均可。

2. 软件环境: C语言运行环境。

四、实验原理、方法 二分算法计算步骤:

(1)输入有根区间的端点a、b及预先给定的精度ε;

(2)计算中点x=(a+b)/2;

(3)若f(x)f(b)<0,则a=x,转向下一步;否则b=x,转向下一步; (4)若b-a<ε,则输出方程满足精度要求的根x,结束;否则转向步骤(2)。 迭代法:

计算方法 上机实验 程序设计

图2 牛顿法框图

图 2.3 迭代法框图

牛顿法:

牛顿迭代法是一种逐步线性化方法,即将非线性方程f(x)=0的求根问题归结为计算一系列线性方程的根。

设xk是方程f(x)=0的一个近似根,将f(x)在xk处作一阶泰勒展开,即

f(x)≈f(xk)+f′(xk)(x- xk)

于是得到如下的近似方程

f(xk)+f′(xk)(x- xk)=0 (2.7)

设f′(xk)≠0,则式(2.7)的解为

x xk

取x作为原方程的新的近似根xk+1,即令

f(xk)

'

f(xk)

xk 1 xk

f(xk)

k=0,1,2, … (2.8)

f'(xk)

则称式(2.8)为牛顿迭代公式。用牛顿迭代公式(2.8)求方程近似根的方法称为牛顿迭代法,简称牛顿法,又称切线法。

五、实验内容

1. 以方程:x-0.2x-0.2x-1.2=0为例,编写程序求方程的根

3

2

计算方法 上机实验 程序设计

2. 编写二分法、迭代法、牛顿法程序,分析运行结果。 3. 对用这两种方法求解出的根进行对比分析

六、实验步骤

1. 根据实验题目,给出题目的C程序。 2. 上机输入和调试自己所编的程序。 3. 上机结束后,应整理出实验报告。

七、实验报告要求及记录、格式

按金陵科技学院《实验报告(工科)》格式填写

附1:牛顿法程序核心部分:

for(i=0;i<N;i++)

{printf("x(%d)=%f\n",i,x1);

x1=x0-f(x0)/f1(x0); /*牛顿迭代*/

if(fabs(x1-x0)<epsilon||fabs(f(x1))<epsilon)

{printf("\n The root of the equation is x=%f\n",x1);/*满足精度,输出近似根*/ return; } x0=x1; }

计算方法 上机实验 程序设计

实验2 线性方程组数值解法

一、实验目的

1.掌握方程组的解法,迭代法及其收敛性。

2.能熟练掌握高斯消去法,列主元高斯消去法,三角分解法。 3.掌握雅可比迭代法,高斯=赛德尔迭代求线性方程组的解。

二、实验要求

1.上机前作好充分准备,比较不用的方法解决相同问题的不同。 2.上机时要遵守实验室的规章制度,爱护实验设备。 3.记录调试过程及结果,记录并比较与手工

运算结果的异同。

4.程序调试完后,须由实验辅导教师在机器

上检查运行结果。

5.给出本章实验单元的实验报告。

三、实验设备、环境

1.硬件设备:IBM PC以上计算机,有硬盘和一个软驱、单机和网络环境均可。 2.软件环境: C语言运行环境。

四、实验原理、方法

1、高斯消去法:

1)计算步骤

(1)输入方程组的阶数n,系数矩阵A和右端常数矩阵b

(2)消元过程:设a计算

(k)k

mik aik/akk (k 1)

(k)(k)

k+2,…, aij aij mikakj i,j=k+1,

(k 1)(k)(k)b b mbiiikk

(k)

kk

0,对k=1,2,…,n-1

n

(3)回代过程

(n)

bn xn a(n) nn

x (b(i) ii

(i)(i)

xj)/aii,i n 1, ,2,1 aijn

高斯消去法框图

j i 1

(4)输出方程组的解

计算方法 上机实验 程序设计

2、列主元高斯消去法

(1)、输入方程组的阶数n,系数矩阵A和右端常数矩阵b (2)、列主元素:对k=1,2,…,n-1,选出akk

(k 1)

(k 1)(k 1)(k 1)

中绝对值最大的元素am,k,,ak 1,k, ,ank

k行和m行交换后,再作第k步消元操作。

(3)、消元过程:对k=1,2,…,n-1计算

(k)( m ak)

ikik/akk a(k 1)

(k)m(k)

ij aij ikakj b(k 1)

i

b(k)i mikb(k)k(i,j=k+1,k+2,…,n) (4)、回代过程

( xbn)

nn (

an)

nn

) x (b(i) x(i)

iiijj)/aii(i n 1, ,2,1)

j n

a

(i i 1

(5)、输出方程组的解

3、三角分解法:

(1)根据方程组得到增广矩阵 (2)对j=1,2,…,n计算u1j a1j

对i=2,3,…,n计算la

i1i1 u

11

(3)对k=1,2,…,n

k 1

a.对j=k,k+1,…,n+1计算ukj akj

l

kq

uqj

q 1

b.对i=k …… 此处隐藏:8753字,全部文档内容请下载后查看。喜欢就下载吧 ……

计算方法 用欧拉预估-校正法求初值问题.doc 将本文的Word文档下载到电脑

    精彩图片

    热门精选

    大家正在看

    × 游客快捷下载通道(下载后可以自由复制和排版)

    限时特价:7 元/份 原价:20元

    支付方式:

    开通VIP包月会员 特价:29元/月

    注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
    微信:fanwen365 QQ:370150219