结构有限元刚度方程求解基础汇.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
结构有限元刚度方程求解基础汇

结构有限元刚度方程求解基础 结构有限元法刚度阵的特征: 1)一般维数很大 2)“0”元素很多 3)非“0”元素多集中在矩阵的对角线附近 4)一般来说矩阵是对称正定的(特殊的如结构流体耦合问题则刚度阵非对称) 有限元的灵魂: 求解方程组 已知力F求位移δ的情况,则,实际计算中,我们不直接求[K]的逆矩阵,而把[K]转化为上三角或下三角矩阵,最后回代求解方程。 线性方程组的解法主要有直接法和迭代法,以下介绍直接法。 1三角方程组 以下矩阵均只考虑方阵。 1) 向前消去 考虑下面方程组 如果l11l22≠0,则未知数可确定如下: 这就是所谓的向前消去, 其一般形式为 算法1.1(向前消去:行形式)Ax=b的解覆盖b b(1)=b(1)/L(1,1) for i=2~n b(i)=(b(i)-L(i,1~i-1)b(1~i-1))/L(i,i) end 2) 向后消去 解上三角方程组的类似算法叫向后消去法, 算法1.2(向后消去:行形式)Ux=b的解覆盖b b(n)=b(n)/L(n,n) for i=n-1,1,-1 b(i)=(b(i)-U(i,i+1~n)b(i+1~n))/U(i,i) end 向后消去法的算法实现(Fortran): 注:数组du(i)表示向量,whlf(i)表示向量,二维数组whlk(i,j)表示矩阵, 变量neqns表示方程数,临时变量temp du(neqns)=whlf(neqns)/whlk(neqns,neqns) do 100 i=neqns-1, 1, -1 temp=0. do 200 j=i+1, neqns temp = temp + whlk(i,j)*du(j) 200 enddo du(i) = (whlf(i)-temp)/whlk(i,i) 100 enddo 基于列的形式:交换循环顺序可得到以上算法的列形式,考虑向前消去,一旦x1解出来,该变量可以从第2~n个方程中去掉,我们可只考虑缩小后的方程组 然后我们算出x2,并且从第3~n个方程中去掉x2,依次类推,例如: 我们有x1=3,那么我们处理2x2方程组 算法1.3(向前消去:列形式)Lx=b的解覆盖b for j=1~n-1 b(j)=b(j)/L(j,j) b(j+1~n)=b(j+1~n)-b(j)L(j+1~n,j) end b(n)=b(n)/L(n,n) 算法1.4(向后消去:列形式)Ux=b的解覆盖b for j=n,2,-1 b(j)=b(j)/U(j,j) b(1~j-1)=b(1~j-1)-b(j)U(1~j-1,j) end b(1)=b(1)/U(1,1) 2LU分解 如前面所见,三角方程比较容易求解,那么我们可以把刚度阵[K]经过适当的线性变换等价成一个三角方程组—Gauss消去法 例:在方程组 中,将第一个方程乘以2,并且在第二个方程中减去它则: 矩阵形式: 这就是n=2的Gauss消去法 此算法线性变换过程也可写成矩阵形式,则最终求出一个下三角矩阵L和一个上三角矩阵U,使得A=LU, 然后原始问题Ax=b可通过两个三角求解过程求得: Ly=b,Ux=y = Ax=LUx=Ly=b 在n=2的水平上,如果x1≠0且τ=x2/x1,那么 更一般的,设且,如果 定义: 则 形如Mk的矩阵的前k个分量都为0时,一般称高斯变换,这样的矩阵是下三角的,元素称为乘子,向量称为高斯向量。 上三角化,设,通常可找到高斯变换使得,是上三角矩阵 例: 如果: 则: 同样地 到n-1步后就可以完成上三角化, 注意,分解过程中需要对角线元素不为“0”,有限元刚度阵满足这一条件,如果刚度阵对角线有“0”元素,则说明结构存在刚体位移,无法求解。 算法2.1(高斯消去)U存于A的上三角部分 for k=1~n-1 rows=k+1~n A(rows,k)=A(rows,k)/A(k,k) A(rows,rows~n)=A(rows,rows~n)-A(rows,k)A(k,rows~n) end 代码实现:增广矩阵[K f]的高斯消去 do 100 k=1, neqns-1 if(whlk(k,k)==0) exit do 200 rows=k+1, neqns v_gauss=whlk(rows,k)/whlk(k,k) do 300 j=1,neqns whlk(rows,j)=whlk(rows,j)-v_gauss*whlk(k,j) 300 enddo whlf(rows)=whlf(rows)- v_gauss*whlf(k) 200 end

文档评论(0)

hhuiws1482 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:5024214302000003

1亿VIP精品文档

相关文档