(完整版)有限元大作业matlab---课程设计例子 下载本文

内容发布更新时间 : 2024/12/23 17:16:53星期一 下面是文章的全部内容请认真阅读。

有 限

元 大 作 业 程 序 设

学校:天津大学

院系:建筑工程与力学学院 专业:01级工程力学 姓名:刘秀 学号:\\\\\\\\\\\\\\\\\\\\\\ 指导老师:

连续体平面问题的有限元程序分析

[题目]:

如图所示的正方形薄板四周受均匀载荷的作用,该结构在边界

上受正向分布压力,

p?1kNm,同时在沿对角线y轴上受一对集中压

力,载荷为2KN,若取板厚t?1,泊松比v?0。

2kN 1kN/m 2kN

[分析过程]:

由于连续平板的对称性,只需要取其在第一象限的四分之一部分参加分析,然后人为作出一些辅助线将平板“分割”成若干部分,再为每个部分选择分析单元。采用将此模型化分为4个全等的直角三角型单元。利用其对称性,四分之一部分的边界约束,载荷可等效如图所示。

[程序原理及实现]:

用FORTRAN程序的实现。由节点信息文件NODE.IN和单元信息文件ELEMENT.IN,经过计算分析后输出一个一般性的文件DATA.OUT。模型基本信息由文件为BASIC.IN生成。 该程序的特点如下:

问题类型:可用于计算弹性力学平面问题和平面应变问题 单元类型:采用常应变三角形单元 位移模式:用用线性位移模式

载荷类型:节点载荷,非节点载荷应先换算为等效节点载荷 材料性质:弹性体由单一的均匀材料组成

约束方式:为“0”位移固定约束,为保证无刚体位移,弹性体至少

应有对三个自由度的独立约束

方程求解:针对半带宽刚度方程的Gauss消元法

1kN/m 输入文件:由手工生成节点信息文件NODE.IN,和单元信息文件

ELEMENT.IN

结果文件:输出一般的结果文件DATA.OUT 程序的原理如框图:

求解方程获得节点位移(子程序SOLVE) 形成单元刚度矩阵(子程序FORM_KE) 开始 输入数据(子程序READ_IN) BASIC.IN(基本信息文件) NODE.IN(节点信息文件) ELEMENT.IN(单元信息文件) 以半带存储方式形成整体刚度矩阵(BAND_K) 形成节点载荷向量(子程序FORM_P) 处理边界条件(子程序DO_BC)

结束 计算单元及节点应力(子程序) 输出方件 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(需要手工生成)