线性方程组得求解问题(VB.net)

同学说需要一个 现行方程组的求解程序,花了一帧下午的时间,搞出来的了,呵呵,给大家共享一下!先是找了些原理性的东西,利用的是LU算法:算法名称:LU分解法算法描述:假定能够把矩阵A写成两个矩阵相乘的形式                                                      (1)其中L为下三角矩阵,U为上三角矩阵。例如,4×4矩阵A的情况,(1)式如下:  (2)可以用如(1)式分解来求解线性方程组                                   (3)首先求解向量y使得                                                                                (4)然后再来求解                                                       (5)此拆分方法的优点在于求解一个三角形方程组相当容易,这样,(4)式可用向前替代过程求解,如下:                                                 (6)(5)式可用回代过程求解,这与(2)式~(3)式一样,                         (7)(6)式和(7)式共需执行N2次内层循环(对每个右端项b),每个内层循环包括一次乘法和一次加法。如果有N个右端项,它们是单位列向量(在求矩阵逆时就是这种情况),考虑这些零元素可把(6)式的总执行次数从N3/2减少到N3/6,而(7)式的执行次数不变,仍为N3/2。        注意:一点对A进行了LU分解,就可以一次求解所有要解的右端项。   算法实现:首先,写出(1)式或(2)式的第i,j分量。它总是一个和式,开始部分形式如下:和式中的项数依赖于i和j中较小的数。事实上有三种形式:                          (8,9,10)显然,(8)~(10)式共有N2个方程,而要求N2+N个未知的α和β(因对角线的未知元素有两套),既然未知数的个数比方程个数多,就人为指定N各位指数,然后再来求解其他的未知数。事实上,总是令                                                                           (11)有一个算法称为Crout算法,它仅按某种次序排列方程,就能容易的求出(8)式~(11)式的N2+N各方程中的所有α和β。步骤如下:设    ,即(11)式对每个j&
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值