1、有限元程序SOLID2D分析报告课程设计任务书学生姓名: 专业班级: 工程力学 指导教师: 工作单位: 理 学 院 题 目: 有限元程序feappv之xxx模块代码分析 初始条件:提供有限元分析程序feappv之XXX的源代码。要求完成的主要任务: (包括课程设计工作量及其技术要求,以及说明书撰写等具体要求)一、工作量:1周二、具体要求:分析所提供的程序,从而给出程序的设计思路、数据结构、数据流以及程序框图;给出相应的理论描述;编写并提交课程设计报告。三、课程设计报告要求:A、课程设计内容的简要描述;B、课程设计思路的描述;C、程序的理论基础;D、程序设计思路、框图、数据结构、数据流;E讨论(
2、含存在的问题、希望进一步开展的工作,需要完善之处,心得体会等)。时间安排:第1周。指导教师签名: 2012 年 6月 12 日系主任(或责任教师)签名: 2012 年 6月 12 日有限元程序SOLID2D分析1 课程设计分析1.1 课程设计的目的课程设计是在学过相关知识的情况下为了对该知识有更好的理解和掌握所进行的一种设计。它的目的在于使学生灵活运用所学的知识解决特定的实际问题,学会综合运用各种知识来理解和掌握该科目的实际运用方法。此次计算力学课程设计的目的是: 培养学生的自我独立思考能力,进一步加深学生对计算力学知识的理解; 提高学生综合运用知识的能力,学会用多方面的知识解决问题; 学会对
3、实际问题有较正确的理解,然后从更好的方向解决问题; 对学生程序的读写能力的培养; 培养学生查阅资料的好习惯,使课程设计更加完善。1.2 SOLID2D 课程设计的分析1.2.1 SOLID2D 单元介绍SOLID2D 是一个从三维单元退化而成的二维实体单元(类似板、壳单元),可以解决线性平面问题及轴对称问题。它是具有四个或八个结点的分析线性问题的单元,在热、电、力研究方面都具有良好的运用能力。1.2.2 程序目的该程序分为(1),(2)两个部分,在这里仅对第(2)部分的目的进行描述。计算刚度比例瑞利阻尼余量;计算平面与轴对称单元余量;计算增强位移模式;计算平面与轴对称弹性单元的应力应变,瑞利阻
4、尼等;计算平面/轴对称FEAPpv单元增强应力。1.2.3 程序中所运用的相关知识 概念性知识:应力、应变、瑞利阻尼、加速度、矩阵、惯性、位移模式、刚度、高斯积分、形函数、应力发散、权、雅克比行列式、切线模量、收敛性、耦合、余量等等。 计算性知识:矩阵的行循环,列循环、矩阵的转置、应力,应变的计算、矩阵的乘积、计算高斯积分点和权、局部迭代、验证收敛性、消除增强模式等等。2 程序流程图2.1 刚度比例瑞利阻尼余量的流程图结束由于阻尼原因修正应力3个应变量(厚度/圈)赋初值定义数据类型调用函数开始 2.1.1 由于阻尼原因修正应力流程图1=i1=j sig(i) = sig(i) + dd(i,j
5、)*eps(j) 1+i=i i4?N Y1+j=jj4? N Yend2.2 平面与轴对称余量程序流程图定义数据类型类型计算应力矢量发散性(P) 为元素存储时间历史点数据计算加速度瑞利质量阻尼:计算速度行循环计算重力,热,惯性和应力贡献结束 2.2.1 计算应力矢量发散性(P)流程图int(d(74)0? Y Nb2 = d(12)*dmint(d(75)0?b1 = d(11)*dm b1 = d(11) + prldv(int(d(74)*d(71) Y N b2 = d(12) + prldv(int(d(75)*d(72)rr = d(4) 2.2.2 瑞利质量阻尼:计算速度流程图d
6、(77)= 0.0d0? Y Nvc(1) = 0.0d0vc(2) = 0.0d01=jvc(1) = vc(1) + shp(3,j)*vl(1,j)vc(2) = vc(2) + shp(3,j)*vl(2,j)Jnel? N Yvc(1) = rr*vc(1)*cfac*d(77)vc(2) = rr*vc(2)*cfac*d(77)Y aj0 = lfac*d(77)*rr1=jp(1,j) = p(1,j) - (vc(1) + aj0*vl(1,j)*shp(3,j)*xsjp(2,j) = p(2,j) - (vc(2) + aj0*vl(2,j)*shp(3,j)*xsjjn
7、el? N Yend2.3 增强位移模式流程图 开始调用函数 定义数据类型类型计算增强应变不符形函数结束2.4平面与直线轴弹性单元程序流程图计算B的转置乘以 D 乘以 j 乘以 w 结束2.4.1 计算高斯积分点和权流程图nel=6 or nel =7? Y Nl = d(5)quad = .true.l = 7quad = .false.call tint2d(l,lint,el)下一步call int2d(l,lint,sg)l*l=lint? Y N2.4.2将对称半径乘以雅克比行列式xsj0 = 0.0d0Stype=3? N Yxsj0 = xsj(l)xsj(l) = xsj(l)
8、*xx1=jshpr(j) = shp(3,j,1)/xx1+j=jjnel? N Y下一步2.4.3 切模量中形成质量矩阵流程图1=j1+j=kmass(k,j) = mass(j,k)1+k=kknel? N Y1+j=jjnel? N Yj1 = 01=jj1 = j1 + 1k1 = 01=kk1 = k1 + 1s(j ,k ) = s(j ,k ) + mass(j1,k1)s(j+1,k+1) = s(j+1,k+1) + mass(j1,k1)ndf +k=kk ndf*nel? N Yndf+j=jjndf*nel? N Y下一步2.5计算平面/轴对称FEAPpv单元增强应力
9、流程图 定义数据类型类型输入数据收回增强模式(节省上次迭代)积分计算和权 仅初始化历史变量计算形函数轴对称 平面用局部迭代计算强化模式初始化历史应力应变 计算增强应变形状函数计算点的应变贮存时间积历史数据元素规模模量和应力计算应力和切线模 增强余量计算刚度计算计算d * b 矩阵= a计算增量位移增强增强模式验证收敛性时间积分,以确定静态或动态瑞利阻尼效应刚度计算集中质量的影响增强耦合阵列消除增强模式构建静态凝结计算减少残余计算并输出单元变量计算主应力值积应力值输出格式结束2.5.1 计算增强余量流程图1=jbb(2*j-1) = bb(2*j-1) - sigl(1)*shpi(1,j)-
10、sigl(4)*shpi(2,j)bb(2*j ) = bb(2*j ) - sigl(2)*shpi(2,j)- sigl(4)*shpi(1,j)1+j=j下一步 N Y Y N Y Y N Y3 课程设计心得通过这次计算力学课程设计我所做的题目是SOLID2DN FEAPPY20程序分析。该程序是SOLID2D在许多方面上的应用。例如:热、电、受力等等。并且给出了在各个情况下该实体单元内部的力学性能解答方法与过程。 SOLID2D是一个二维的实体单元,它是由三维实体单元退化而来。但是它也同样具有一般实体单元所具有的性能。它是一个具有4个结点或8个结点的单元,解决平面与轴对称单元的线性问题
11、。但该单元也有一定的局限性。它不解决非线性问题,也不再具有三维实体所特有的性质等等。在分析过程中,我也遇到了许多困难。首先是程序的理解。程序是在FORTRAN环境下编写的,对我们的FORTRAN运用能力有较高的要求,而且许多注解是英文,又对我们的英语特别是专业英语要求较高。在这个方面我的能力是比较弱的,但是通过老师对我们的帮助,再加上对相关资料的查阅,我也大致的了解了全部的程序过程,并对其目的、步骤有了较好的理解。其次是程序中所运用的相关数学知识和力学知识。它要求较高的数学能力,例如高斯积分,权,雅克比行列式,迭代,收敛性的验算等等。还有瑞利阻尼,切模量,耦合等等的物理概念也比较不常见。在上个
12、学期学习的计算力学课程中,我们学到的相关知识都在课程设计中得到很好的运用,让我们不仅仅是在理性上了解这些知识,更是从课程设计中直观的了解到了这些知识的用途,可以解决哪些实际的问题。让我们对该知识的掌握提供了更好的基础条件。 虽然这次的课程设计由于时间紧迫,我们没有对相关的知识和问题进行深入的探讨与研究,但却已经给我们带来了很多收获。我的许多能力得到了提高,特别是分析问题和综合运用的能力。我想今后每次有这样学习的机会都要好好珍惜,尽自己最大的努力做到最好,我们自己才能提高,获得更多的知识来充实自己。4 课程设计参考资料王勖成编著,有限单元法 清华大学出版社 2001年;T. R. Chandrupatla, A. D. Belegundu, Introduction to Finite Elements in Engineering 机械工业出版社 2005年1月;O.C. Zienkiewicz, R.L. Taylor,The Finite Element MethodButterworth Heinemann, 2000潘金贵等,现代计算机常用数据结构和算法 南京大学出版社,1994;Diomidis.Spinellis著, 赵学良译,代码阅读方法与实践,北京,清华大学出版社,2004年3月。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1