- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验一线性方程组的直接解法-武汉大学数学与统计学院
实验一 线性方程组的直接解法
(武汉大学数学与统计学院 向华)
一、实习要点:掌握列选主元Gauss消去法,对称正定问题的Cholesky分解法。
二、基本内容回顾
1. Gauss消去法
直接法求解线性方程组,其中非奇异,。如果是上三角阵或下三角阵,则用回代容易求解。Gauss消去过程就是将问题化为易求解的上三角矩阵。定义如下矩阵(其中上标表示消去的步骤):
。
定义乘子,并计算
。
第一列对角线以下元素化为0,系数矩阵变为
。
下一步消去第二列对角线以下元素;定义乘子,并计算
;
变换后矩阵为
。
一般地,设前次消元后得到的系数矩阵为
,
下一步需消去第列对角线以下元素。为此定义乘子,并计算
。
这样步消去后所得矩阵为
。
经过步消元后系数矩阵变为上三角阵,右端项也做相应的变换,最后原方程化为如下形式:
,
其中系数矩阵记为,下面亦以记之,表示其为上三角阵。
以上过程可以用矩阵变换简洁地表达。用乘子定义Gauss向量,以及Gauss变换矩阵。则Gauss消去过程可表示为:
,
亦即,其中为单位上三角阵。
利用Gauss变换矩阵的性质:
可得,且的具体形式为:
。
这一过程不中断,即主元不为零的充要条件是的阶顺序主子式非奇异。Gauss消去过程实际上给出了系数矩阵的LU分解。
由于数值稳定性,需要选主元策略。定义置换矩阵,左乘表示交换第与第行。列选主元的Gauss消去可以表示为:
。
利用置换矩阵的性质可得
。
令,,上式即为
,所以,简记为。
2. 根平方法
对对称正定矩阵,存在唯一的对角元全为正的下三角矩阵,使,其中称作Cholesky因子。下面的公式基于Gaxpy计算第列元素():
为了避免开方运算,可用改进的根平方法,即,其中是单位下三角矩阵,是对角元为正的对角阵。设,,对,
三、MATLAB语言描述
不选主元Gauss消去过程可用两行MATLAB代码描述:
Cholesky分解过程用MATLAB描述为:
四、C代码示范
下面的C代码子程序gepp对系数矩阵作列选主元LU分解,并返回方程组的解。调用前参数a存储系数矩阵,参数b存储方程组右端项,参数N是矩阵维数。调用后,原系数矩阵对角线以下被单位下三角因子(不包括对角元素1)覆盖,其余存储上三角因子,右端项b被方程组的解所覆盖。
void gepp(double **a, double *b, int N)
{ // a-coefficient matrix, b-RHS, N-matrix size
int i, j, jc, pv;
double tm;
for (j = 0; j N-1; j++) {
// find the pivot
pv = j;
for (i = j; i N; i++)
if (fabs(a[pv][j]) fabs(a[i][j])) pv = i;
if (pv != j){
for (jc = j; jc N; jc++){
tm = a[j][jc];
a[j][jc] = a[pv][jc];
a[pv][jc] = tm;
}
tm = b[j];
b[j] = b[pv];
b[pv] = tm;
}
// multipliers, updating
for (i = j+1; i N; i++) {
a[i][j] /= a[j][j];
for (jc = j+1; jc N; jc++)
a[i][jc] -= a[i][j]*a[j][jc];
b[i] -= a[i][j]*b[j];
}
}
// backward substitute
b[N-1] = b[N-1]/a[N-1][N-1];
for (i = N-2; i = 0; i--) {
for (j = i+1; j N; j++)
b[i] -= a[i][j]*b[j];
b[i] /=a[i][i];
}
}
下面的C代码子程序chol对对称正定矩阵作Cholesky分解,并返回方程组的解。调用前参数a存储系数矩阵,参数b存储方程组右端项,参数N是矩阵维数。调用后,原系数矩阵对角线及其以下存储Cholesky因子,右端项b被方程组的解覆盖。
void chol(double **a, double *b, int N)
{
// a-SPD matrix, b-RHS, N-matrix size
int i, j, k;
for (k = 0; k N; k++) {
for (j = 0; j = k-1; j++)
a[k][k] -= a[k]
您可能关注的文档
- 初中代数第二册第十章.doc
- 2-1平方根與近似值-橋頭國中.doc
- 《二次根式的乘法》课后反思.doc
- 高中評估試卷(單元一至三).doc
- 3-7複數的極式.doc.doc
- 27391工程数学(线性代数、复变函数与积分变换)考试说明.doc
- 流體化和流體化床熱傳導.doc
- 科目代数年级初二教师安金铠-天津一中.doc
- 关于100米与4×100米接力平均速度的比较.doc
- 区中医医院2011年民主行风评议工作-广州市萝岗区中医医院.doc
- 2025年新疆克孜勒苏柯尔克孜自治州单招职业倾向性考试题库附答案.docx
- 2025年新疆克孜勒苏柯尔克孜自治州单招职业适应性考试必刷测试卷及参考答案.docx
- 2025年新疆交通职业技术学院单招职业技能测试题库带答案.docx
- 2025年新疆伊犁哈萨克自治州单招职业倾向性测试题库完美版.docx
- 2025年新疆乌鲁木齐市单招职业适应性考试题库推荐.docx
- 2025年新疆乌鲁木齐市行政职业能力测验题库必考题.docx
- 2025年新疆克孜勒苏柯尔克孜自治州行政职业能力测验题库及答案1套.docx
- 2025年新疆乌鲁木齐市行政职业能力测验模拟试题审定版.docx
- 2025年新疆乌鲁木齐市单招职业倾向性考试必刷测试卷1套.docx
- 2025年新疆乌鲁木齐市行政职业能力测验题库及答案1套.docx
最近下载
- 水工建筑物外观质量评定标准.docx VIP
- 英语国际音标表(8个)打印版.doc VIP
- 升立德 E系列控制卡快速入门.pdf VIP
- 高级财务会计(第4版)-习题答案-周华人民大学.pdf VIP
- 欧盟发布电池和废电池的新规(EU) 附中译文参照_182518812544822.pdf VIP
- 9.3抗日战争80周年阅兵九三阅兵小小爱国者探索手册PPT(优质ppt).pptx VIP
- 部编版六年级语文上册《 开国大典》PPT课件(含教案).pptx VIP
- 2024年快递员赛项技能大赛理论参考试题库(含答案).doc VIP
- 2025年新学期小学三年级开学家长会PPT课件.pptx
- 欧盟新电池和废电池的法规(EU)20231542中文版.docx VIP
文档评论(0)