C语言程序设计实现线性方程组求解

上传者: sanliangguangyin | 上传时间: 2021-11-02 21:26:33 | 文件大小: 73KB | 文件类型: -
1.描述:求解线性方程组Ax=b,写成函数。其中,A为n乘n阶矩阵,x为n元未知向量,b为n个常数组成的矩阵。  2.要求: 采用高斯先列主元消元法(也可采用其他方法)求解线性方程组AX=b。 鼓励可视化编程;   源程序中应有足够的注释;   学生可自行增加新功能模块(视情况可另外加分);   必须上机调试通过;   注重算法运用,优化存储效率与运算效率;   需提交源程序(含有注释)及相关文件(数据或数据库文件); 3.选主元:  若在解方程组过程中,系数矩阵上的对角元素为零的话,会导致解出的结果不正确。所以在解方程组过程中要避免此种情况的出现,这就需要选择行的判定条件。经过行变换,使矩阵对角元素均不为零。这个过程称为选主元。选主元分平凡选主元和偏序选主元两种。平凡选主元:如果a,不交换行;如a,寻找第p行下满足a的第一行,设行数为k,然后交换第k行和第p行。这样新主元就是非零主元。偏序选主元:为了减小误差的传播,偏序选主元策略首先检查位于主对角线或主对角线下方第p列的所有元素,确定行k,它的元素绝对值最大。然后如果k>p,则交换第k行和第p行。通常用偏序选主元,可以减小计算误差。 4.三角分解法:  由于求解上三角或下三角线性方程组很容易所以在解线性方程组时,可将系数矩阵分解为下三角矩阵和上三角矩阵。其中下三角矩阵的主对角线为1,上三角矩阵的对角线元素非零。有如下定理:如果非奇异矩阵A可表示为下三角矩阵L和上三角矩阵U的乘积: A=LU 则A存在一个三角分解。而且,L的对角线元素为1,U的对角线元素非零。得到L和U后,可通过以下步骤得到X:  (1)、利用前向替换法对方程组LYB求解Y。 (2) 、利用回代法对方程组UXY求解X。

文件下载

评论信息

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明