欢迎来到得力文库 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
得力文库 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    平面四节点等参单元分析程序.pdf

    • 资源ID:84223552       资源大小:960.04KB        全文页数:15页
    • 资源格式: PDF        下载积分:5金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    平面四节点等参单元分析程序.pdf

    变分原理与有限元大作业 平面四节点等参单元分析程序 .姓 名:潘 清 学 号:SQ 完成时间:2011-4-26 :一、概述 通常情况下的有限元分析过程是运用可视化分析软件(如 ANSYS、ABAQUS、SAP 等)进行前处理和后处理,而中间的计算部分一般采用自己编制的程序来运算。具有较强数值计算和处理能力的 Fortran 语言是传统有限元计算的首选语言。随着有限元技术的逐步成熟,它被应用在越来越复杂的问题处理中,但在实际应用中也暴露出一些问题。有时网格离散化的区域较大,而又限于研究精度的要求,使得划分的网格数目极其庞大,结点数可多达数万个,从而造成计算中要运算的数据量巨大,程序运行的时间较长的弊端,这就延长了问题解决的时间,使得求解效率降低。因为运行周期长,不利于程序的调试,特别是对于要计算多种运行工况时的情况;同时大数据量处理对计算机的内存和 CPU 提出了更高的要求,而在实际应用中,单靠计算机硬件水平的提高来解决问题的能力是有限的。因此,必须寻找新的编程语言。随着有限元前后处理的不断发展和完善,以及大型工程分析软件对有限元接口的要求,有限元分析程序不应只满足解题功能,它还应满足软件工程所要求的结构化程序设计条件,能够对存储进行动态分配,以充分利用计算机资源,它还应很容易地与其它软件如 CAD 的实体造型,优化设计等接口。现在可编写工程应用软件的计算机语言较多,其中 C 语言是一个较为优秀的语言,很容易满足现在有限元分析程序编程的要求。C 语言最初是为操作系统、编译器以及文字处理等编程而发明的。随着不断完善,它已应用到其它领域,包括工程应用软件的编程。近年来,C 语言已经成为计算机领域最普及的一个编程语言,几乎世界上所有的计算机都装有 C 的编译器,从 PC 机到巨型机到超巨型的并行机,C 与所有的硬件和操作系统联系在一起。用 C 编写的程序,可移植性极好,几乎不用作多少修改,就可在任何一台装有 ANSI、C 编译器的计算机上运行。C 既是高级语言,也是低级语言,也就是说,可用它作数值计算,也可用它对计算机存储进行操作。二、,三、编程思想 本程序采用 C 语言编程,编制平面四边形四节点等参元程序,用以求解平面结构问题。程序采用二维等带宽存储整体刚度矩阵,乘大数法引入约束,等带宽高斯消去法求解位移,然后求中间高斯点的应力,最后用绕节点平均法讲单元应力等效到节点上,再将结果写到tecplot 文件中。在有限元程序中,变量数据需赋值的可分为节点信息,单元信息,载荷信息等。对于一个节点来说,需以下信息:节点编号(整型),节点坐标(实型),节点已知位移(实型),节点载荷(实型),边界条件(实型)等。同样,对于一个单元来说,需以下信息:单元的 节点联接信息(整型),材料信息(弹性模量,泊松比等)(实型)等。在 FORTRAN 程序中,以上这些变量混合在一起,很难辨认,使程序的可读性不好,如需要进行单元网络的自适应划分,节点及单元的修改将非常困难。在进行 C 语言编译过程中,采用结构 struct 使每个节点信息存储在一个结构体数组中,提高程序的可读性,使数据结构更趋于合理。三、平面四节点等参单元介绍 四节点等参单元实际单元与基本单元的映射关系如图 3-1 所示?坐标的映射关系为:其位移模式和坐标的映射有相同的插值函数,形函数为:单元应变矩阵为:、图 3-1 xyxyuxuyuvyx 上式一般简写为:B 其中 B的子块矩阵为 iiiiiNxNByNNyx 由于iN是、的函数,在 iB中的x、y要按照复合函数来求导,即 iiiiiiNNNxyxxJNNNxyyy 从而有?1iiiiNNxJNNy 因此,单元应力矩阵为 D B 单元刚度矩阵为 TeAKBDB hdxdy 其中积分采用三点高斯积分,3311,11111(,)()(,)nipijijiiijifd dfW f 2nipn(高斯积分点的总数),i和j或iW是加权系数,i和j是单元内的坐标.。对于三点高斯积分,高斯积分点的位置:110.6,5.0 9.0,220.0,8.0 9.0,330.6,5.0 9.0。结构刚度矩阵 eeKK 结构结点荷载列阵 eePP 注意,对于上两式中e的理解不是简单的叠加而是按照对应的自由度集成。总刚平衡方程 KP;从式上式求出:1KP 四、有限元分析的模块组织 一个典型的有限元分析过程主要包括以下几个步骤:1)读输入数据,定义节点及单元数组。2)由边界条件计算方程个数,赋值荷载列阵。3)读入在带状存储的总刚度矩阵中单元和载荷信息。4),5)定义总刚度阵数组。6)组装总刚度阵。7)解方程组。其流程图可见下图 输入边界条件(力、位移)形成各荷载工况的节点荷载总刚分解 回代求出位移及输出-形成单元刚单刚向总刚投坐标变换 输入原始参数 计算总刚规模 形成总刚方程 向总节点荷载阵投放(调整几何、弹性矩阵 调整单元位移列阵 五、程序变量及函数说明 1、控制信息 np:结构节点总数 ne:结构离散单元总数 nr1,nr2:总的约束的节点数,nr1,x 方向;nr2,y 方向 nd:每个单元的节点数 nf:每个节点的自由度数 ld:集中力载荷的个数 nm:材料的种类 nu1,nu2:非零位移边界条件的节点数,nu1,x 方向;nu2,y 方向 u1,u2:非零位移的大小,u1,x 方向;u2,y 方向 n=nf*np:结构的节点位移总数 ndf=nd*nf:每个单元的节点自由度数;2、输入的原始数据 x(np):节点的 x 方向坐标 y(np):节点的 y 方向坐标 me(nd,ne):单元节点的总体编号 nrr(nr1+nr2):约束为零的位移所对应的总体位移编号 p(n):载荷向量 nu(nu1+nu2):位移载荷 mat(6,nm):材料参数 3、程序中的其他标识符 LD(n):存放结构刚度阵所以主对角线元素在 A(nn)中的序号 IS(ndf):单元节点位移和节点力在总体位移阵列和载荷阵列中对应的序号 EK(ndf,ndf):总体坐标系下的单元刚度矩阵 A(nn):架构刚度阵下三角变带宽一维压缩存储的数组 nn:数组 A 的元素个数 RSTG(3):高斯积分点的值 H(3):高斯积分点的加权系数 S(6,ne):各单元的应力分量 XJAC(2,2):雅阁比矩阵 RJAC(2,2):雅阁比矩阵的逆 PN(2,4):4 个节点处形函数对局部坐标的导数 DNX(2,4):4 个节点处形函数对整体坐标的导数 FUN(4):形函数的值 六、计算流程图 ,&开始 输出节点位移 计算局部坐标系下的单元刚度矩阵 输入控制信息 n=nfnp ndf=ndnf 计算单元的 IS(ndf)数组 取出单元在总体坐标系下的节点位移 计算局部坐标系下单元节点位移 输入原始数据【计算局部坐标下的单元刚度矩阵 坐标变换矩阵 总体坐标下的单元刚度矩阵 形成单元的 IS(ndf)数组 单元刚度矩阵向结构刚度矩阵叠加 进行约束处理 求解线性方程组求得结构节点位移 计算局部坐标系下单元节点力应力 输出节点位移和应力 结束 七、计算结果与 abaqus 分析结果的比较 1、中间带圆孔平面应力板的分析。宽 40m,长 50m,圆孔位于板中心,半径为 4m,承受水平方向位移载荷,E=200Pa,3.0,取1t m。用 abaqus 建模离散,并计算。再讲 abaqus 离散的节点和单元信息拷贝到本程序的输入文件中,用该程序计算,结果输出成 tecplot 文件,用 tecplot 可以查看结果。与abaqus 的计算结果进行比较,位移和应力云图如下(左边是程序计算结果,右边是 abaqus结果,下同):2、纤维增强复合材料平面应力板的分析。宽 40m,长 50m,增强纤维位于板中心,纤维半径为 8m,承受水平方向位移载荷,基体材料E=20000Pa,25.0,纤维材料E=8000Pa,3.0,取1t m。3、半无限大含裂纹板的应力分析 宽 40m,长 60m,裂纹位于板左侧中间位置,裂纹长 10m,承受竖直方向位移载荷,E=200Pa,3.0,取1t m。结果分析比较:通过以上三个算例发现该程序可以用于计算单材料、双材料、带孔、含裂纹等各种平面问题,加载条件可以是加集中力和加位移,因此,该程序的适用范围还是比较广的。)以上三个算例的自编程序所得结果与 abaqus 分析结果进行比较发现,两者的计算结果很接近,而且自编程序对于孔边应力集中和裂尖应力集中都能很好的表达,说明该程序有很好的精度。第三个算例在裂尖处数值上有些区别,但总的分布规律还是很吻合的,主要是因为本程序是用四节点等参单元,对于应力的奇异性表达效果还不是很好。八、附录 附录一:程序代码,#include#include#include#include#include float*float_two_array_malloc(int m,int n).n);void output()ft,sji);fprintf(fp2,n);fclose(fp2);printf(写入完成.n);void tecplot()ft%.4ft%.4ft%.4ft,xj+bl*pj*2,yj+bl*pj*2+1,pj*2,pj*2+1);for(i=0;i6;i+)fprintf(fp3,%.4ft,nsij);【fprintf(fp3,n);for(i=0;ine;i+)for(j=0;jnd;j+)fprintf(fp3,%dt,meji+1);【fprintf(fp3,n);fclose(fp3);printf(写入完成.n);】void fld().n);void fis(int ie).n);void cholesky(float*A).n);%void stress(int ie).n);void main()int i,j,k;float*A;input();fld();A=float_one_array_malloc(nn);for(i=0;inn;i+)Ai=0;.n);fr(A);cholesky(A);for(j=0;jne;j+)stress(j);printf(求单元应力完成.n);stress_average();output();tecplot();附录二:输入的原始数据的格式:9 4 3 1 4 2 3 1 3 0 /依 次 为np,ne,nr1,nr2,nd,nf,ld,nm,nu1,u1,nu2,u2-20 15 /各节点的 x,y 坐标-20 0-20-15 0 15 0 0 0-15 20 15 20 0 20-15 1 2 5 4 /各单元节点的整体编号 2 3 6 5 4 5 8 7 5 6 9 8 1 2 3 /x 方向约束为零的位移对应的节点编号 3 /y 方向约束为零的位移对应的节点编号 12 10 /集中力载荷 14 40 16 10 1 4 200 /材料信息起、止单元号,E,MU 7 8 9 /位移非零的节点号

    注意事项

    本文(平面四节点等参单元分析程序.pdf)为本站会员(深夜****等你...)主动上传,得力文库 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知得力文库 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于得利文库 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

    © 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

    黑龙江省互联网违法和不良信息举报
    举报电话:0468-3380021 邮箱:hgswwxb@163.com  

    收起
    展开