面向对象方法在结构有限元分析软件中的应用

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ca s ls CBa e e n s Elme t
象, 如节点成员对象、 单元对象指针数组 、 荷载组对 象指针数组和材料对象指针数组等. 整体结构类将记 录结构总刚度矩阵、 结构单元数 、 节点数、 材料类型 总数 、 荷载组索引等. 其具体功能是计算总刚度矩阵 的对角 地址 、 行各 种求 解类 型接 口的处 理 、计算 支 进
根据 以上 有 限元分 析过程 对 象 的建 立 , 以单元类 为例 来说 明面 向对象 的有 限元 程序 设计 , 结构 中可包 含 多种构 件单 元类 , 各种单 元类 均 由单元 基类 派生 而 来 ,单元 的继 承关 系如 图 1 所示 【. 4 J 单 元基类 定 义如下 :
现, 因为是抽象类 , 所以不能用单元基类创建具体的
单元对象. 桁架单元类是 由单元基类派生而来 , 其定
义 如下 :
c a s r s : p b i l s CT u s u l CBa e e n c s Elme t
和划 分 非 常重 要 ,对 象 的确 定 和划 分 是 否得 当直 接
的应用.随着有限元程序规模的扩大, 基于以上传统
方 法 编制 的有 限元程 序暴露 出了一个 明显 的缺 点 , 就 是 即使 对程 序进 行微小 的改动 , 别是 对数据 结构 的 特
影响所编制的程序的质量. 1 数 据抽 象和 封装 (aaa sr c o n c p u . 2 d t b ta t na de a s . i n
成不 同的类 , 对象 是类 的实 例化 , 是对 象 的抽象 . 类 面
数据抽象是指从较特殊的类或对象 中抽 出一般
屙 『来 建 立一个 超类 的过 程 .封装 又称 数据 隐藏 , 生 是
指将一个数据和与这个数据有关的操作集合放在一 起, 形成一个能动的实体——对象.数据抽象和封装 有助于降低系统 的复杂性 , 大大降低了模块间的耦合
面 向对象方法在结构 有 限元分析软件 中的应用
邹 珊
( 天津农学院 水利系 ,天津 3 0 8 ) 030
摘 要 :系统归纳 了面向对 象有 限元的基本理论和 实现方法 ,比较 了传统有限元实现 方法与现代 面 向对 象有限元方法的优 缺点.运用 c + + 语言 ,以单元类为例 ,描述 了面向对象有 限元程序 的实现 过程.最后 ,利用该程序进行 了工程 实例计 算分析 ,验证 了面向对 象有限元方法的准确性 . 关 键 词 :面向对象有 限元方法 ;类 ;对象 中图分 类号 :T 3 1 P1 文献标 志码 :A 文章 编号 :10.83 2 1) 1 030 0 6 5 (02 0— 6-4 6 0
1t n ai ) o
改动 , 也会影响到整个程序 , 甚至有可能造成整个系 统崩溃 ,因而大大增加 了程序调试的难度.2 0世纪 8 0年 代后 期 出现 了面 向对 象 的程序 设计 思想 ,相对 于结构化的程序 , 面向对象的程序从绝对的语句行数 上可能要多一些 , 但它的程序结构更易于理解 , 编译 运行 的效 率更高 ,运行 的时 间更短 .面 向对 象 的程序 设计给有限元分析软件的开发提供 了新途径. 面向对 象是遵循人类认识方法学的基本原理, 将现实世界分
有 限 元法 是 近 6 年 来 计 算力 学 的最 大 进 展之 0
一 .
有限元方法离不开计算机和程序. 传统的有限元
程序设计一般采用结构化的程序设计方法 和结构化 的语 言 ,比如 F R R N 语言 .结构 化程 序设计 思想 O TA 是将整个程序分成若 干个相互独立 的程序段从而构 成一些功能模块 , 每个模块又可以由若干个子程序构 成, 用若 干个 只有一 个入 口和一 个 出 口的控制 结构 编 写. 这种传统的结构化编程模式被称作是面向过程的 编程方 法 .用这 种方 法 编写 的程序 具 有 良好 的结构 ,
性 ,从而 提高 了程 序 的可 靠性 .
13 继 承性 ( h rtn e . i ei c ) n a
继承性就是指一个类可 以继承其父类的所有数 据 和成员 函数 , 同时 又可 以定义 自己的数 据和 成员 函 数. 继承性可以减少代码冗余 , 同时还可以通过协调 性来 减 少相互 之 间的接 口和界面 .
座 反力 等 ; ()单 元类 : 2 这是 在有 限元 系统 中最先被 识别 也 是最重 要 的一个 类 .在这 个类 中记 录着单 元 的类 型 、

pu lc; bi
vr a v i O tuP rme ros em& lu)= iu l od up taa t (f ra t e t ot
=0 / 出单元 内力 ;/ @ vr ait eEe nT p =O / 取单 元类 型 iuln tl t G mety e 0 ;/ 获 it t t il dx=0 获 取材料 类 型 n Mae a ne Ge r I ;N
vr a v i ed aa trit i uC aP s iu l od R a P rme ( & C r h ro , t e n
定带宽等.由此可知 , 类就是把数据与相应的操作封 装 在一起 ,从 而实 现 了单元 这样 一种新 的数据类 型 , 这就使得程序 的实现方式与现实世界的物理模 型更 加 接近 . 这是 面 向对 象方 法优 于面 向过程 方 法 的根 本
方面 ;
()节 点类 : 3 这是有 限元 系统 中的另一 个重要 的 类 .节点 是构成 结构 的骨 架 , 单元 按 照各 自对应 的节
湟 壹建退学院学报 21 年 第 1卷 第 1 02 8 期
自由度数 、 节点等信息. 其功能应该包含单元刚度矩 阵的计算 、计算单元坐标到整体坐标 的坐标转换矩 阵 、 算单 元质 量矩 阵 和阻尼 矩阵 、 算单 元 内力和 计 计
等 效 节 点力 以及 需要 计 算 自由度 编 号 的 差值 从 而 确
包括 :①描述有限元分析的整体数据 ,如单元总数 、
节点 总数 、问题 的维 数 、材料种 类数 、问题 类 型指示
数、 屈服准则指示数 , 收敛容差等;②单元数据 , 包
括单 元类 型 、单元 材料 号 、单 元包含 的节 点号 、刚度 矩 阵和 质量矩 阵 等 ;③ 节点数 据 , 括节 点坐 标 、 包 节
收 稿 日期 :2 1-02 ;修订 日期 :2 1.22 0 11.6 0 11.8
多态是面向对象软件 的特性 , 使用多态 , 抽象的 操作可以按照不同的方式执行 , 一般是在不同的类中
作者 简介 :邹
珊 (9 6 ) 17一 ,女 ,江 苏溧 阳人 ,天津 农 学院讲 师 ,硕士

6 ・ 4
点 自由度、节点力 、节点位移、节点约束等.
3 面 向对 象有 百度文库元 程 序 设 计 实 例 化
按 照上 述 的面 向对 象 有 限 元程 序 分 析 ,一个 完
整 的 面 向对 象有 限元 的分析 程 序 应该 设 计 的类 主要
与其相邻 的节点产生联系 , 可以判断结构的总刚度矩 阵将是 一个对 称 的带状 稀疏 矩 阵.因此 , 采取变 带 可 宽下 三角一 维存储 方式 对 总刚度 矩 阵进行存 储 , 由此 引人 了稀疏 矩 阵类.该类 记 录 了矩 阵 的行 数 、 角地 对
0 / 出单元 参数 ;/ 输
天津 城市建 设 学院学 报 邹 珊:面向对 法在结构 限
vr a od OuF tnen l o c o sra it l i tI l traF re(ft m& l u) u v u e ot
筮 堂 廑

6 ・ 5
单 元基类 是一 个抽 象类 , 其成员 函数 大多 为纯 虚 函数 , 具体 操作 需通 过派 生类 中重 载 的成 员 函数来 实
根据有限元分析的具体过程 , 可大致划分为 7 个 步骤 ,即 :①结 构 的离散化 和单 元类 型 的选 择 ;②选
择位 移 函数 ;③定 义应 变位 移和应 力应 变关 系 ;④推 导单 元 刚度 矩 阵 和方 程 ;⑤ 组 装 单元 方 程 得 出 总体 方程 并 引进边 界条件 ;⑥解未 知 自由度 或广义 位移 ; ⑦求 解单 元应 变 和应力 . 按照 有 限元 的分 析 方法 , 限元 分析 的主要 数据 有
点组合成整体结构 , 节点类主要用于与节点相关 内容 的描述 ;
()材 料类 :材料类 用 于对材料 特性 的描 述 , 4 如 材料 的弹性 模量 、 抗拉 压强 度等 . 对于 线性 静力分 析 , 只需 知道 弹性模 量 和泊松 比.对 于非线 性分 析 ,材料 类需 为程序 提供 相应 的应 力应 变关 系 ; ()荷 载类 : 5 荷载类 用 于荷 载 的描 述 、 单元 荷 载 力 的转换 及荷 载 向量 的生成 ; ()截 面类 :在空 间梁单 元 中 ,由于截 面 的形 心 6 主轴 未必平 行 于总体 坐标 系 , 于这些 单元 ,需要 引 对 入截 面类 .将 具体 的某一 截 面以及 方 向赋予梁 单元 , 这是 截 面类 的功能 ; ()稀疏 矩 阵类 : 7 根据 位移 反力 互等定 理 , 构 结 总 刚度矩 阵具 有对 称性 . 由于一个 节 点只通 过单 元 又
按 不 同 的方 式执 行.由于这种 特性 , 同 的对 象接 收 不 到用 户统一 发送 的消 息就 可完成 不 同的工作 .c + + 语
言支持两种多态 ,即函数的重载和虚函数 . ¨
2 面向对 象的有 限元程序分析
有 限元方法 作为求解 数学 表述 的连 续体 的一
般 离 散 化 方 法 ,是 一 种 求 解 连 续 体 问题 的 近 似 方 法 .其一般方法是 :①把连续体分成有限个部分 , J 每个 部分 的性态 由有 限个参 数所 规定 ; ②求解 作 为单 元 的集合体 的整 个 系统 , 时其单 元所 遵循 的是标 准 此 的离 散体 问题 .
易于设 计 和理解 , 因此在 过 去的几 十年 里得 到 了广 泛
1 面 向对象的基本概念
1 对象 (b et . 1 o jc)
对 象 是 在 运 行 的 软 件 系 统 中 的 一 组 结 构 化 数
据.它可以描述任何 能将属性 和行为关联起来的事 物.属性是对象的特征 , 描述对象的当前状态.行为 是对象动作 与反应的方式 ,它有可能改变对象 的状 态.要设计 一个 面 向对象 的有 限元程 序 , 对象 的确 定
天津城市建设学院学报 第 l 卷 第 1 8 期 21年 3 02 月
Ju a o i j ntue o bn C nt c o V 1 8 No1 Ma. 0 2 o r l fTa i Is tt fUra o su t n o. n nn i r i 1 . r 2 1
14 多态 性(oy r hs . p lmo p i m)
向对象的程序具有封装、继承 、 多态等特性 , 程序设 计概念清晰、调试容易 、 代码的重复利用率高.这些
特 点 给软 件 开 发者 从 已有 的有 限元 程序 中提 取 有用
的模块组成新的有限元程序提供了方便 , 而这一点对 于面向过程的程序是非常困难 的.
址数 组 、矩 阵元 素数组 等 .
包括 7 3 类[. 】
()整体 结构 类 : 1 根据 结构 有 限元 分析 方法 , 可 以将 整个 结构 作 为一个 对象 , 作整体 结构 对象 .整 称 体 结构 对 象 是 一个 聚合 对 象 ,它包 含 了多 种 成 分对
4 面 向对象有限元程序 中类的实现
相关文档
最新文档