计算固体11_精品文档优质PPT.ppt
《计算固体11_精品文档优质PPT.ppt》由会员分享,可在线阅读,更多相关《计算固体11_精品文档优质PPT.ppt(133页珍藏版)》请在冰豆网上搜索。
![计算固体11_精品文档优质PPT.ppt](https://file1.bdocx.com/fileroot1/2022-10/14/e7ca5b75-0a16-47bf-965d-35af0a05c9e8/e7ca5b75-0a16-47bf-965d-35af0a05c9e81.gif)
第十一章第十一章代数方程组的解法代数方程组的解法前面已经介绍了固体力学微分方程通过不同的方法可以化为代数方程组对于线性静力问题化为线性代数方程组,对于非线性静力问题则化为非线性代数方程组动力问题的特征值求解方法已有第七章中介绍过了,本章将介绍线性和非线性方程组的解法11.1线性代数方程组的解法线性代数方程组的解法解线性代数组的方法有直接法和迭代法两种在有限元法发展的初期,由于当时计算机的内存不大,在求解大型问题时常常采用对存贮量要求较小的迭代法,但随着计算机硬件的发展,内存越来越大,而且,在直接解法中可采用内外存交换的方法,因此,现在的有限元程序中基本上均采用直接解法但是,随着解题的规模越来越大,直接解法的累积舍入误差已经引起人们的注意,因此,现在有的商用有限元分析软件中除了直接解法外,还增加了迭代解法,供用户选用因为,迭代解法计算时间虽然较长,但误差是可以控制的所以,下面既介绍直接法又介绍迭代法118,11911.1.1线性代数的一些基础知识线性代数的一些基础知识在叙述代数方程的解法以前,先介绍下面要用的一些线性代数的基础知识
(一)向量的范数向量的范数是衡量向量大小的度量概念它的定义为:
@#@对任意向量,按一定的规律有一实数与之对应,记为,若满足
(1)正定性或非负性,仅当时,;@#@
(2)
(2)齐次性,对任意的实数,有;@#@(3)(3)三角不等式,对任意的,有这时称为向量的范数,按照这个定义,向量的范数可以有很多种但常用的有以下三种
(1)1-范数
(2)2-范数(3)-范数
(二)矩阵的范数类似于向量范数的定义,可以定义阶矩阵的范数定义:
@#@对于任意的阶方阵,按一定的规则有一实数与之对应,记为,若满足
(1),仅当时,;@#@
(2)对任意的实数,都有;@#@(3)对任意两个阶方阵,都有,;@#@(4)相容性条件则称为矩阵的范数常用的矩阵范数有三种,是由三种常用的向量范数诱导出的矩阵范数,设为阶方阵
(1)1-范数
(2)2-范数其中为矩阵的最大特征值(3)范数从向量的范数式与矩阵范数式相比较可知,矩阵1-范数是矩阵列向量的1-范数的最大值,故又称为矩阵的列范数,2-范数与的特征值有关,故又称为谱范数,矩阵的范数是矩阵行向量1-范数的最大值,故称行范数(三)方程的条件数与状态对非奇异矩阵,称为矩阵的条件数,记为由于矩阵的范数定义不同,因而其条件数也不同,但它们有等价的性质,即矩阵条件数的大小是衡量矩阵“好”“坏”的标志考虑线性方程组,若系数矩阵有小扰动,即原方程的系数矩阵成为,这时方程的解也有扰动,即,下面讨论如何受的影响,由和相减得到从而有两边取范数因此得到如果充分小,使得,则上式化为上式表明,当系数矩阵有扰动时,解的扰动与的条件数有关条件数越大,解的扰动也越大同样,常数项的扰动也会引起方程解的扰动,由及可得到故有又由,可得到这里,条件数表示相对误差的放大率很自然,称大的矩阵为“坏”矩阵更确切地说,若为阶矩阵,当时,称为病态矩阵这时,在求解过程中,小的误差可能引起解的失真特别当很小时,总是病态的这一点很容易理解,当时,为奇异矩阵,这时,方程要么无解,要么有无穷多解,因此,当的值很小时,必会带来解的不稳定性11.1.2直接法直接法设阶线性代数方程组为其矩阵形式为其中称为线性代数方程组的系数矩阵,若系数矩阵的行列式不为零,则方程组有唯一解以下均假设方程组存在唯一解直接解法有许多种,下面介绍常用的几种(一一)高斯消去法高斯消去法高斯消去法是解线性代数方程组的直接解法中最基本的一种方法它的求解过程包括消元和回代两个过程消元过程是依次按计算回代过程是逐步解出消元后,方程组化为同解的上三角形方程组上述方程组的系数矩阵是对角线元素为1的上三角矩阵.高斯消去法简单易行,从计算过程可以看出,要求(称为主元素)不为零,因此,这方法只适用于从1到阶顺序主子式均不为零的矩阵计算实践还表明,高斯消去法的稳定性差,当出现小的主元素时,会影响计算结果的精度,甚至得到错误的结果产生这种现象的原因在于舍入误差,为了在计算过程中抑制舍入误差的增长,应尽量避免小主元的出现基于这种想法就有人提出了列主元消去法和全主元消去法(二二)直接三角分解法直接三角分解法直接三角分解法有Crout分解法和Doolittle分解法两种Crout解法就是将方程组的系数矩阵分解成两个矩阵的乘积其中为下三角矩阵,为对角元素为1的上三角矩阵根据矩阵乘法规则可以看出,对于任意的有方程组可写为先由前一个方程组解出,再由后一个方程组求出Doolittle分解也是将系数矩阵分解成与前面相同的形式,但它的下三角矩阵的对角元素为1,而上三角矩阵的对角元素不一定为1根据矩阵乘法公式可得到三角矩阵的元素计算公式,按前面的公式可求出y,x(三三)平方根法和改进的平方根法平方根法和改进的平方根法前面所述的解法适用于一般的线性代数组,即系数矩阵可以是不对称的用加权余量法、边界元法和无网格法离散后所得的线性代数方程一般不是对称矩阵,所以可用上述的解法而有限元法所得的线性代数方程组的系数矩阵是对称正定的,矩阵的这一特征使它的三角分解具有更简单的形式,这就是平方根法与改进的平方根法平方根法也称Cholesky分解法,对于对称正定的矩阵可以分解为其中为下三角矩阵,为它的转置矩阵,由逐行相乘可得即有于是方程组的解可写为因此有有了分解式后,可以求矩阵的行列式值在平方根法中,前面的公式需要有次开方运算,为了避免开方运算,有人提出了改进的分解形式其中是对角元素为1的下三角矩阵,为对角矩阵,即只有对角元素,其他元素均为零的矩阵矩阵的计算公式为,对于计算上述的计算公式避免了开方运算方程组可写为由这三个方程组可依次解针对有限元法所形成的代数方程具有稀疏,对称正是和带宽小的特点,Irans120提出了波前法,这个方法是结合三角分解和计算机内外存交换的一种解法,特别适合于大型代数方程的求解,因此,已为大多数有限元软件所采用具体解法可参看该文11.1.3迭代法迭代法迭代法119能保持矩阵的稀疏性,具有计算简单,程序容易编制的优点,并在许多情况下收敛较快迭代法的基本思想是用构造一串收敛到解的序列,即建立一种从已知的近似解计算新的近似解的规则迭代法的一般形式就是对于线性代数方程组构造下列形式的同解方程组其中为阶方阵,为维实向量,任意取初始向量代入迭代式由此产生序列,当充分大时,以作为方程组的近似解上式的称为迭代矩阵这种迭代方法称为单步定常线性迭代法下面介绍几种迭代法(一一)雅可比雅可比(Jacobi)迭代法迭代法雅可比法中第次的值代入下式(二二)高斯高斯-赛德尔赛德尔(Gauss-Seidel)迭代法迭代法高斯-赛德尔迭代公式为在雅可比法中要保存两个近似解向量,而在上式中,每算出新近似解的一个分量,在算下一个分量时,用新的分量代替老分量进行计算,这样,在整个计算过程中,只需一个近似解向量通常认为新近似解比老近似解更接近精确解,因此,可望这样迭代会收敛更快(三三)松弛法松弛法为了加快迭代过程的收敛速度,在高斯赛德尔迭代法的基础上引入一个称为松弛因子的参数,采用下列迭代公式一般,即为高斯-赛德尔法,时称为超松弛法(SuccessiveOver-Relaction,简写为SOR)则为低松弛法(SuccessiveUnder-Relaction)松弛因子的选取对收敛速度影响极大,但目前尚无可供实用的计算最佳松弛因子的方法实际计算时,通常根据系数矩阵的性质及实际计算经验,通过试算来确定松弛因子的值,在弹性力学中,松弛因子可取1.8左右收敛较快(四四)最速下降法和共轭梯度法最速下降法和共轭梯度法通常把最速下降法和共轭梯度法归为极小化方法当方程组的系数矩阵为对称正定时,方程组的解即为下列二次泛函的唯一极小点求的极小点问题的最简单方法是最速下降法,具体的做法是从其个初始点出发,沿在点处的负梯度方向(称为搜索方向)求得的极小点,即然而再从出发,重复上述过程得到点,如此继续下去得到序列,使得可以证明,从任一初始点出发,用最速下降法所得到的序列均收敛于问题的解其收敛速度取决于比值,其中分别是矩阵的最小和最大特征值但当时,收敛十分缓慢,因此在实际中较少使用这个方法,而使用共轭梯度法共轭梯度法(ConjugateGradient,简写为CG)又称共轭斜量法,其基本步骤是在点处选取搜索方向,使其与前一次的搜索方向关于共轭,即然后从点出发,沿方向求得的极小点,即由此得到方程组的近似序列从前面的极小点公式不难求出上式的解为若取由共轭的定义可得共轭梯度法的计算过程可归结为第1步,取初始向量,计算第,步,计算理论上可以证明,如果计算过程是精确的,则对任意的值,用共轭梯度法求解时最多进行步就能得到准确解这表明共轭梯度法实质上是一种直接法但在实际使用时,由于有舍入误差,破坏了这种方法的有限步终止性,因此,实际上是将它作为迭代法使用共轭梯度法的主要优点是存贮量小,计算简单,它能充分利用矩阵的稀疏性,计算时只需存贮中的非零元素并且此方法具有超线性收敛性大量的数值经验表明,当的条件数很小,或的特征值大部分集中在一点附近时,用此方法只需迭代很少几步就能得到高精度的解如果系数矩阵是病态或特征值较均匀地分布在一个很长的区间内,则此法收敛得很慢为提高收敛速度,近年来提出了许多有效的实用算法,如预优共轭梯度法,广义共轭梯度法,分块SSOR-CG法和不完全分解预优共轭梯度法等在一些大型有限元软件中有预优共轭梯度法供用户选用11.2非线性代数方程的解法非线性代数方程的解法不论是材料非线性问题还是几何非线性问题,经过离散之后,它们都归结为求解一个非线性代数方程组:
@#@其中是未知量,是的非线性函数如果引用向量记号上述方程组可以用简单地用一个向量方程表示:
@#@为了讨论方便,有时将这个向量方程改写成如下形式:
@#@这是未知向量的一个向量函数,是一个的矩阵,矩阵的元素是向量的函数,而是一个已知的向量。
@#@在全量问题的有限元的位移表述中,代表未知的节点位移向量,是内力的等效节点力向量,是载荷的等效节点力向量,而向量方程表示关于节点的平衡方程其中每一个分量方程对应于一个自由度的平衡对于增量问题,我们将把理解为位移增量向量,将理解为增量载荷向量11.2.1直接迭代法直接迭代法前面提到非线性有限元方程最后可以化为非线性代数方程组假设我们有第次叠代的结果,则可得到相应的,于是可以求得第次的未知变量:
@#@式中右边第二项中括号内的力学意义为第次迭代后不平衡力,当它等于零时,是精确解,当它不等于零时,必须叠代求解,以逼近精确值为松弛因子,用以加速收敛当时,上式化为:
@#@这是最简单的叠代格式对于的数值称为超松弛因子它的最佳大小随结构的刚度矩阵不同而不同,在实际使用时要依靠经验在第一次叠代时需取一个初值即直接叠代法的收敛速度与初值的选取也有很大的关系这种直接叠代法在多自由度情况下可能出现不稳定现象,所以这种方法很少在非线性有限元法中采用11.2.2牛顿牛顿-拉甫逊拉甫逊(Newton-Raphson)法法牛顿-拉甫逊法是一个最著名的求解非线性代数方程的方法,简称为牛顿法在方程中,我们已知有一近似解,可以用截断的一阶泰勒(Taylor)级数得到一个改进的解:
@#@由方程式可知:
@#@称为雅可比(Jacobi)矩阵当外载荷不随位移而改变时(称为保守系统),上式右边第二项为零为载荷-位移(或载荷增量-位移增量)空间的切线刚度。
@#@由前一式可以得到:
@#@上式中右端括号中的项为第次叠代的不平衡力上式的形式与前面的叠代式相似,上式中采用的是切线刚度该法的叠代过程如图11.1所示因为它每一次叠代步后都修改切线刚度,以适应问题的物理性