线性方程组正交化行处理法的C语言实现
维普资讯
1999年 9月 ~tJil师范大学学报 (自然科学版) sept.,1999
第 笠卷 第 5期 lote'n~0fSiehum№Ⅲ硇lI ve ty(NahI Scle~_.e) . 笠 .No.5
线性方程组正交化行处理法的 C语言实现
祁晓彬 高 坚 曾宪雯 李安志 杨本立 pz 、
7, — —
i 币 10信箱.四川成都6lOOO3)
摘要:给出利用线性方程组的正交化行盘I里法求解线性方程组的C语言程序实现方珐
堑竺堡鎏 C穗言
美键词!些丝垄苎里 兰堡规范化;
中图分类号:TI~ll 文献标识码:A 文章编号:l00l_$,95(1999)05 对
1 概述
定义1.1给出的算法 Ⅱ及其收敛性证明和算法复杂度分析等参见文献[1].算法Ⅱ
对病态线性方程组有效的原因亦在文献[1]中有所论述.
用 (·,·)表示两向量的内积,用 ll·2表示向量的欧式范数.
定义 1.2 记 Ⅳ阶实系数非奇异线性代数方程组
: 6, (1.1)
为
( , )=6。 (i=1,2,3,…,n). (1.2)
称下面算法Ⅱ(Ax=6)= ( 为方程组真解)为求解方程组(1.1)或(1.2)的正交化行
处理法 .
算法 Ⅱ
= 0, 初始化
卢i+I= I一∑(0, I),71
: }, 正交化
c… : .1 一 ∑(0, 。)畸J
西+1=cf+1/f1展+102J),’规…龇…
” = +di~l+。=∑奶 , flll~tt
i= 0,1.2,… .n 一 1.
2 算法描述
(1)按行序建立顺序表存放方程组的系数矩阵,为便于计算,常数项单独用一顺序表存放
收稿i=l期:1999—03—31
基金项 目:中国工程物理研究院预研基金资助项 目
作者简介 :祁晓彬 .女 .船 岁.讲师
维普资讯
568 四川师范大学学报 (自然科学版) 22卷
(2)变量说明:
Ⅻ:长度为 ,v*Ⅳ的顺序数组 ,该空间用于按行主序存放方程组系数矩阵;o:长度为 ,v的
顺序数组 ,该空间用于存放方程组常数项 ;:长度为 ,v的顺序数组,方程组的解可 由 =
∑咖直接得出,而不必经行处理迭代;:方程组中方程的个数;r.d,6,c:用于存放每次正
交化 、规范化后 的结果 .
算法:
(j)i-血n();/*输入 n,输A方程组系数及常数项 */;
(il)zjg日l();/*对方程组进行正交规范化*/
for(i=0;i
h (j=1;j<= ++) /*正交化 */
f0T(k=O;k
sO=sO+ [n*i+k]*tin*(J一1)+k]
for(k=O;k
s [k]:8[k]+sO* n*(j一1)+k];
sl=s1+8o*d[j—i];