(完整版)有限元大作业matlab---课程设计例子
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
有限元大作业程序设计
学校:天津大学
院系:建筑工程与力学学院
专业:01级工程力学
姓名:刘秀
学号:\\\\\\\\\\\
指导老师:
连续体平面问题的有限元程序分析
[题目]:
如图所示的正方形薄板四周受均匀载荷的作用,该结构在边界
上受正向分布压力,
m kN
p 1=,同时在沿对角线y 轴上受一对集中压
力,载荷为2KN ,若取板厚1=t ,泊松比0=v 。
[分析过程]:
由于连续平板的对称性,只需要取其在第一象限的四分之一部分参加分析,然后人为作出一些辅助线将平板“分割”成若干部分,再为每个部分选择分析单元。采用将此模型化分为4个全等的直角三角型单元。利用其对称性,四分之一部分的边界约束,载荷可等效如图所示。
[程序原理及实现]:
用FORTRAN程序的实现。由节点信息文件NODE.IN和单元信息文件ELEMENT.IN,经过计算分析后输出一个一般性的文件DATA.OUT。模型基本信息由文件为BASIC.IN生成。
该程序的特点如下:
问题类型:可用于计算弹性力学平面问题和平面应变问题
单元类型:采用常应变三角形单元
位移模式:用用线性位移模式
载荷类型:节点载荷,非节点载荷应先换算为等效节点载荷
材料性质:弹性体由单一的均匀材料组成
约束方式:为“0”位移固定约束,为保证无刚体位移,弹性体至少应有对三个自由度的独立约束
方程求解:针对半带宽刚度方程的Gauss消元法
输入文件:由手工生成节点信息文件NODE.IN,和单元信息文件ELEMENT.IN
结果文件:输出一般的结果文件DATA.OUT
程序的原理如框图:
(1)主要变量:
ID:问题类型码,ID=1时为平面应力问题,ID=2时为平面应变问题N_NODE:节点个数
N_LOAD:节点载荷个数
N_DOF:自由度,N_DOF=N_NODE*2(平面问题)
N_ELE:单元个数
N_BAND:矩阵半带宽
N_BC:有约束的节点个数
PE:弹性模量
PR:泊松比
PT:厚度
LJK_ELE(I,3):单元节点编号数组,LJK_ELE(I,1),LJK_ELE(I,2),LJK_ELE(I,3)分别放单元I的三个节点的整体编号
X(N_NODE), Y(N_NODE):节点坐标数组,X(I),Y(I)分别存放节点I的x,y 坐标值
P_LJK(N_BC,3):节点载荷数组,P_LJK(I,1)表示第I个作用有节点载荷的节点的编号,P_LJK(I,2),P_LJK(I,3)分别为该节点沿x,y方向的节点载荷数值AK(N_DOF,N_BAND):整体刚度矩阵
AKE(6,6):单元刚度矩阵
BB(3,6):位移……应变转换矩阵(三节点单元的几何矩阵)DD(3,3):弹性矩阵
SS(3,6);应力矩阵
RESULT_N(N_NOF):节点载荷数组,存放节点载荷向量,解方程后该矩阵存放节点位移
DISP_E(6)::单元的节点位移向量
STS_ELE(N_ELE,3):单元的应力分量
STS_ND(N_NODE,3):节点的应力分量
(2)子程序说明:
READ_IN:读入数据BAND_K:形成半带宽的整体刚度矩阵FORM_KE:计算单元刚度矩阵FORM_P:计算节点载荷CAL_AREA:计算单元面积DO_BC:处理边界条件CLA_DD:计算单元弹性矩阵SOLVE:计算节点位移CLA_BB:计算单元位移……应变关系矩阵
CAL_STS:计算单元和节点应力
(3)文件管理:
源程序文件:
chengxu.for
程序需读入的数据文件:
BASIC.IN,NODE.IN,ELEMENT.IN(需要手工生成)
程序输出的数据文件:
DATA.OUT
(4)数据文件格式:
需读入的模型基本信息文件BASIC.IN的格式如下表
需读入的节点信息文件NODE.IN的格式如下表
需读入的单元信息文件ELEMENT.IN的格式如下表
输出结果文件DATA.OUT格式如下表
[算例原始数据和程序分析]:
(1)模型基本信息文件BASIC.IN的数据为
1,4,6,5,3
1.,0.,1.
1,1,0,2,1,0,4,1,1,5,0,1,6,0,1
1,-0.5,-1.5,3.,-1.,-1,6,-0.5,-0.5
(2)手工准备的节点信息文件NODE.IN的数据为
1 0.0 2.0
2 0.0 1.0
3 1.0 1.0
4 0. 0.
5 1.0 0.
6 2.0 0.
(3)手工准备的单元信息文件ELEMENT.IN的数据为
1 2 3 3 0 0 0 0 1 1 1 1 0 1
2 4 5 5 0 0 0 0 1 1 1 1 0 2
5 3 2 2 0 0 0 0 1 1 1 1 0 3
3 5 6 6 0 0 0 0 1 1 1 1 0
4 (4)源程序文件chengxu.for为:
PROGRAM FEM2D
DIMENSION IJK_ELE(500,3),X(500),Y(500),IJK_U(50,3),P_IJK(50,3),
&RESULT_N(500),AK(500,100)
D IMENSION STS_ELE(500,3),STS_ND(500,3)
OPEN(4,FILE='BASIC.IN')
OPEN(5,FILE='NODE.IN')
OPEN(6,FILE='ELEMENT.IN')
OPEN(8,FILE='DATA.OUT')
OPEN(9,FILE='FOR_POST.DAT')