面向对象的三维实体非线性有限元程序设计方法.docVIP

面向对象的三维实体非线性有限元程序设计方法.doc

  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文档。上传文档
查看更多
面向对象的三维实体非线性有限元程序设计方法.doc

面向对象的三维实体非线性有限元程序设计方法 2007年2月 第30卷第2期 重庆大学(自然科学版) JournalofChongqingUniversity(NaturalScienceEdition) Feb.20o7 Vol_30No.2 文章编号:1000-582X(2007)02—0120—05 面向对象的三维实体非线性有限元程序设计方法 彭芸,袁政强,王德兵,王贵学2 (重庆大学1.土木工程学院;2.生物工程学院,重庆400030) 摘要:在非线性分析中,应力一应变关系不但与当前的应力状态有关,还与其应力历史有关.计算 过程中需要对应力历史进行存储.作者采用面向对象的编程方法,根据材料当前的应力状态,实现了智 能化地存储应力历史.从而克服了面向过程的结构化程序设计方法的不足,节省了空间,降低了编程难 度.作者结合三维实体单元模型,介绍如何对其进行面向对象的非线性有限元程序设计. 关键词:面向对象;非线性分析;三维实体;智能化存储 中图分类号:TP3l1.1l文献标识码:A 面向对象的编程技术采用统一的对象分类方法, 编程过程将类似采用标准部件组装设备一样,由对象 拼装成完整的程序,编程人员可通过继承方式派生出 新的对象类,在新的对象类中添加新的操作功能,建立 满足自己特定需求的程序.将这种技术应用于有限元 程序的编制正成为软件设计的主流.它克服了传统的 面向过程的结构化编程方法中的多方面不足,可以大 大提高程序的模块化和代码的重用性,使得软件的开 发和维护都更为方便.目前,国内外面向对象方法针对 弹性的分析方法研究已趋于成熟L1】,而将面向对象 方法应用于三维非线性问题的分析和研究较少j. 作者采用抽象单元类,建立多态单元集合类.在非 线性分析中,应力一应变关系不但与当前的应力状态 有关,还与应力历史有关.应力历史需要有存贮空间, 但在计算中达到非线性的单元事先并不确定.作者在 非线性单元类中增加一个指针数组,在计算过程中,当 应力达到非线性时,程序可以自动申请存贮空间用于 存放应力历史数据.当单元卸载到弹性阶段时,程序自 动删除存放应力历史的数据空间.而在一般的面向过 程计算程序中,非线性单元计算在计算前就需建立相 应的应力历史数据存贮空间,如果按程序的每个单元 取27个高斯点,每个高斯点6个应力分量值计算,每 个单元需要162个实数空间来存放,作者只对进入非 线性的单元才申请162个实数空间.这大大节省了空 间,降低了编程难度.这也是面向对象方法在程序设计 方面所特有的灵活性之体现.利用自编程序完成的土 体三维非线性有限元分析的结果与ANSYS计算软件 分析结果基本吻合. 1面向对象有限元程序的设计构架 自编程序中的类大致可分为两大类(见图I).一 类是用于有限元分析的计算类;另一类是工具类,利用 工具类可以更加方便地完成有限元分析中的运算.其 中,方法类,单元类和材料类派生出很多子类.方法类 可以派生出不同问题的求解子类;单元类中可以加入 新的计算单元子类,目前自编程序已有20多种单元; 材料类中可以针对工程的具体情况或材料的特性加入 新的材料子类. 有限元基类 方法类(FinMethod类)墼F— NRaf 计算类{单元类(Element类) 工具类 材料类(Material类) 结点类(Ponit类) 张量类(Tensor类) 向量类(Vector类) 矩阵类(Mamx类) . ~E_ Soid8类 坚M—Soild8类 图形类馐G 图1自编程序的设计构架 ? 收稿日期:2006.08.05 基金项目:教育部科学技术研究重点项目(104158);重庆市教委科学技术研究项目(030001) 作者简介:彭芸(1981?),女,重庆大学硕士研究生,主要从事结构非线性分析的研究.袁政强,男,副教授, 电话(Te1.):023E?mail:fnzsz@equ.edu.cn. 第30卷第2期彭芸,等:面向对象的三雏实体非线性有限元程序设计方法121 1.1方法类(FinMethod类) 方法类是整个有限元分析程序中的的核心类.在 方法类中可以完成总刚的计算,荷载向量形成,方程求 解等功能.方法类也是一个抽象类,根据具体求解方法 的不同,可派生出不同的子类.作者采用增量牛顿迭代 法求解非线性方程组,由其派生子类F—NRaf类完成 求解方法的实现. 1.2单元类(Element类) 抽象单元类中,利用virtual虚函数建立与其子类 的接口,说明需要完成的操作功能.各种功能的具体实 现是在它的继承类中完成. classElement{ protected: MaterialpMate;//指向材料类的指针(材料数 据) Listlt;NodeDatagt;pNode;//指向结点类的指 针(单元联络性数

您可能关注的文档

文档评论(0)

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

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

1亿VIP精品文档

相关文档