追赶法算法 - 范文中心

追赶法算法

01/19

追赶法实验报告

一. 实验目的:*********** 二. 实验时间:*********** 三. 实验地点:***********

四. 实验内容:运用编程写出追赶法来解决热传导方程,常微分

方程边值问题以及船体数学放样中建立三次样条函数。

五. 实验环境:Cfree5.0环境下运行。 六. 实验需要的知识:

b 1

c 1 x 1

x 2 a 2 b 2 c 2

○ ○

f 1

f 2

=

a n-1 b n-1 c n-1 a n b n

x n-1 x n f n-1 f n

简记为Ax=f。其中当|i-j|>1时,a ij =0,且:

|b1|>|c1|>0;

|bi |>=|ai |+|ci |,i=2,3,,,,,n-1; |bn |>|an |>0

我们利用矩阵的直接分解法来推导解三对角线方程组的计算公式。由A 的特点可以将A 分为两个矩阵的乘积,即 A=LU. 其中得到:

1

1

r 2 a 2

1

A= r n a n

对于分解式得到:

b 1=a1,c 1=a1ß1, ai =ri ,b i =ri ßi-1+ai ,

c i =ai ßi .

由归纳法得到 ai =bi -a i ßi-1 , ßi =ci /(bi -a i ßi ),

求解Ax=f等价于解两个三角方程组:

Ly=f,求y;UX=y,求X 。 (1) 计算ßi 的递推公式

ß1 =c1/b1 ,

ßi =ci /(bi -a i ßi-1);i=2,3………..n-1。 (2) 解Ly=f

y 1 = f1 / b1 ,

y i = (fi – ai y i-1)/(bi - a i ßi-1),i=2,3……n ;

ß1

(3) 解Ux=y

X n =yn ,

X i =yi - ßi X i+1,i=n-1,n-2………2,1.

七. 编写追赶法的c 语言代码如下:

#include"stdio.h" int main() { double

a[99],b[100],c[99],num[100][100],x[100],y[99],r[99],f[100],x1[100],y1[100];

int n; bool pan=true; for(int i=0;i

while(pan) {

printf("*******************************追赶法f[i]=0; x1[i]=0; y1[i]=0;

公式解法**********************************");

printf("输入的矩阵是(n

退出!):");

scanf("%d",&n); if(n>0) {

for(int i=0;i

printf("输入a(x)的值为(用空格隔开):");//输入a 的值 for(int i=0;i

scanf("%lf",&a[i]); }

printf("输入b(x)的值为(用空格隔开):");//输入b 的值 for(int i=0;i

scanf("%lf",&b[i]); }

for(int j=0;j

num[i][j]=0;

printf("输入c(x)的值为(用空格隔开):");//输入c 的值 for(int i=0;i

scanf("%lf",&c[i]); }

for(int i=0;i

{ for(int j=0;j

}

else if(i-j==1) { num[i][j]=a[i-1]; }

else if(j-i==1) { num[i][j]=c[i];

}

b ,c 传入二元数组

{ num[i][j]=0;

}

}

}

printf("---------------------------------矩阵--------------------------------------");//输出A 的矩阵

for(int i=0;i

}

printf("丨"); printf("\n");

}

y[0]=c[0]/b[0];

for(int i=1;i

y[i]=c[i]/(b[i]-a[i-1]*y[i-1]); A 为;

x[0]=b[0]; for(int i=1;i

for(int i=0;i

for(int i=0;i

for(int i=0;i

for(int j=0;j

if(i==j) for(int j=0;j

num[i][j]=0; r[i]=a[i];

x[i]=b[i]-a[i-1]*y[i-1];

num[i][j]=x[i]; }

else if(i-j==1) { num[i][j]=r[i-1];

} else { num[i][j]=0; }

}

}

printf("---------------------------------矩--------------------------------------");//输出L 的矩阵 for(int i=0;i

}

L 为;

}

printf("丨"); printf("\n");

for(int i=0;i

for(int i=0;i

for(int j=0;j

if(i==j) { }

else if(j-i==1) { }

num[i][j]=y[i]; num[i][j]=1; for(int j=0;j

num[i][j]=0;

else { num[i][j]=0;

}

}

}

printf("---------------------------------矩阵U 为--------------------------------------");//输出U 的矩阵

for(int i=0;i

}

printf("丨"); printf("\n");

}

printf("\n");

printf("输入矩阵右端的f 的值(空格隔开) :"); for(int i=0;i

{

} y1[0]=f[0]/b[0]; for(int i=1;i=0;i--)//求x 的值 { } printf("输出函数的x 与y 的值为:\n"); for(int i=0;i

} { } pan=false;

return 1;

}

八.cfree 运行的结果:

九. 实验心得: ***************


相关内容

  • 第1章 解线性代数方程组的直接法
    第一章 解线性代数方程组的直接法 1.1 引 言 在自然科学与社会科学的研究中,常常需要求解线性代数方程组,如实验数据的曲线.曲面的拟合和用差分法或有限元法解偏微分方程等都要用到线性代数方程组的求解.由于从不同的问题导出的线性代数方程组的系 ...
  • 小学数学应用题
    小学六年级数学(下册)分类复习(五) ----应用题部分 [知识点] 1.简单应用题:只含有一种基本数量关系,或用一步运算解答的应用题,通常叫做简单应用题. (1) 解题步骤:A .审题理解题意:了解应用题的内容,知道应用题的条件和问题.读 ...
  • 透过苹果.三星.华为三大巨头,洞悉未来智能手机摄像头发展战略
    据麦姆斯咨询报道,Yole在2016年6月和11月分别发布了<CMOS图像传感器产业现状-2016版>和<生物识别传感器-2016版>,并将在近期发布<3D成像和传感-2017版>. 我们最近见证了几款欲 ...
  • 硕士论文选题要求
    工程硕士论文选题要求 第一条 工程硕士专业学位论文选题应直接来源于生产实际或具有明确的工程背景,其研究成果要有实际应用价值,论文拟解决的问题要有一定的技术难度和工作量,论文要具有一定的理论深度和先进性.具体可从以下几个方面选取: 1.技术攻 ...
  • 我追赶春天
    我追赶春天 南宁市滨湖小学五(4) 蒙 媛 春天,它如此的美丽,带给我许多欢乐.当春天走了的时候,我在想:明年的春天可能还远,我要去追春的足迹. 就这样,随着春姑娘轻快的脚步,我开始迈着矫健的步伐,飞快地奔跑."我一定要追赶到春天 ...
  • 解放思想追赶超越心得体会
    解放思想追赶超越心得体会 通过参加"解放思想大讨论"集中学习活动,使我的思想得到了进一步的解放,对这次解放思想大讨论活动的重要性有了新的认识.可以说,开展这次解放思想大讨论活动,大讨论是形式,解放思想是手段,破解难题.促 ...
  • 文章思路梳理
    概括题:文章思路梳理及概括主要内容 Preview of the class 概括主要内容:一般概括题 文章思路的梳理:精准概括题 1.一般概括题:概括主要内容 提问方式 1.概括文章的主要内容. 2.这篇文章主要讲了什么事? 夏日原野上的 ...
  • Dubbo路由模块设计说明书
    Dubbo 路由模块 设计说明书 修改记录 1 目录 1. 1.1. 1.2. 引言 ............................................................................. ...
  • 小于胎龄儿的研究现况
    ·68· 中国新生儿科杂志2012年第27卷第1期 ·综述· 小于胎龄儿的研究现况 祝捷 马军 贫血亦是SGA 的重要影响因素之一.根据国外研究发现,母孕28 32周贫血者发生早产的危险性明显增加 [7] 随着现代围产医学的发展和新生儿窒息 ...
  • 以人为本的发展观
    作者:胡鞍钢温军 <中国民族> 2001年04期 (一) 新中国建立以来,在特定的国际环境背景制约影响下,中国进行了或即将进行三次大规模的西部开发:第一次是20世纪50-70年代的西部开发,当时面临的国际环境是中苏.中印.中美关 ...