(华南理工大学 建筑学院 陈庆军)
前两年曾经下过opensee,并把所有的例子做了一遍,勉勉强强知道怎么回事,记下来权当是学习日记吧:)
What is OpenSees?
(Open System for Earthquake Engineering Simulation)
An object-oriented software framework for simulation applications in earthquake engineering using finite element methods. OpenSees is not a code.
(面向对象的软件框架,采用有限元方法对地震工程进行仿真)
Opensee 的特点:
+ The library of materials, elements and analysis commands makes OPENSEES a powerful tool for numerical simulation of nonlinear structural and geotechnical systems (可用于非线性结构、岩土分析的丰富的材料,单元库及分析手段)
+ The OpenSees library of components is ever-growing and at the leading edge of numerical-simulation models
(一个领先且不断进步的数值模型库)
+ The opensees interface is based on a command-driven scropting language which enables the user to create more-versatile input files (基于脚本语言可以创建非常灵活的输入文件)
+ OpenSees is not a black box, making it a useful educational tool for numerical modeling (非黑箱操作,适用于科学研究)
+ You can create your own material, element or analysis tools and incorporate them into OpenSees (可以自定义材料和单元库,并整合到opensees里面)
+ NEES is supporting integration of OpenSees as the simulation componenet of laboratory testing (NEES(network of earthquake engineering system)支持OPENSEES作为试验室试验的仿真组件)
Opensee 的单元库:
Truss Element(桁架单元)
Corotational Truss Element (同步旋转桁架单元?)
Elastic Beam Column Element (弹性梁柱单元)
Nonlinear Beam Column Element (非线性梁柱单元)
Beam With Hinges Element (带塑性铰梁单元)
Displacement-Based Beam-Column Element (分布塑性,基于位移梁柱单元)
Zero-Length Element(0长度单元)
Zero-Length ND Element(0长度ND材料单元)
Zero-Length Section Element (0长度截面单元)
Quad Element(4节点单元)
Shell Element(考虑剪切的壳单元)
Bbar Plane Strain Quadrilateral Element (一种用于平面应变的单元)
Enhanced Strain Quadrilateral Element(增强型应变单元)
Standard Brick Element(标准8节点实体单元)
Bbar Brick Element(8节点Bbar实体单元)
Eight Node Brick Element (有不同体力方向的8节点实体单元)
Twenty Node Brick Element(20节点实体单元)
u-p-U element(可建立8节点或者20节点实体单元)
FourNodeQuadUP Element (用于流固完全耦合的平面应变单元)
BeamColumnJoint Element(梁柱节点单元)
Opensee 的材料库:
Elastic Material (弹性材料)
Elastic-Perfectly Plastic Material (理想弹塑性材料)
Elastic-Perfectly Plastic Gap Material (理想弹塑性间隙材料)
Elastic-No Tension Material (弹性不能受拉材料)
Parallel Material(并联材料)
Series Material (串联材料)
Hardening Material(硬化材料)
Concrete01 Material -- Zero Tensile Strength (基于Kent-Scott-Park的无抗拉段混凝土材料)
Concrete02 Material -- Linear Tension Softening (线性受拉软化的混凝土材料)
Concrete03 Material -- Nonlinear Tension Softening (非线性受拉软化的混凝土材料)
Steel01 Material (双折线钢材)
Steel02 Material (Giuffré-Menegotto-Pinto等向硬化钢材)
Hysteretic Material (滞回材料)
Viscous Material(黏性材料)
BARSLIP Material (钢筋滑移材料)
Bond_SP01 (应变渗透型模型用于模拟钢筋锚固段)
Concrete04 Material (Popovics混凝土材料,可以考虑静水压力)
Fatigue Material(疲劳材料)
Limit State Material(极限状态材料)
PINCHING4 Material (pinchin4捏缩材料)
PyTzQz Uniaxial Materials(模拟土——结构共同工作的材料模型)
Reinforcing Steel Material(钢筋材料)
Opensee 使用:
1)安装过程:
1. 到网站上下载opensee
现在版本是1.73,可以直接下载exe或者下载源码回来编译,源码是c++语言编写的,采用CVS(concurrent version system),方便大家共同修改。还有一个写程序的约定,方便后来人认识你的代码。
2. 到网站上下载TCL/TK
一个现在比较流行的脚本语言,也可用于某些界面设计,比如现在有些ANSYS的开发也用到它。
安装过程:
TCL/TK官方网站建议安装目录:
C:\program files\tcl,而非C:\tcl
注意:TCL/TK是个平台,和OPENSEE不是一家公司
安装完了之后是一个ActiveTCL(TCL的平台之一,就如Borland C,Turbo C有多家公司一样),可以参考activeTCLHelp.chm了解一下它的使用。
接下来安装一个Opensee TCL editor
将其释放到c:\tcleditor这个目录下
把opensees拷贝到这个目录吧
打开其目录下的tcleditor.conf,可以看到
exe C:\tcleditor\bin\openSees.exe
editor C:\tcleditor\bin\tcleditor.exe
bin C:\tcleditor\bin\
help C:\tcleditor\help\
所以要把opensees.exe拷贝到这个bin目录下
Tcl/Tk 的发明人 John Ousterhout 教授在八十年代初,是伯克利大学的教授。在其教学过程中,他发现在集成电路 CAD 设计中,很多时间是花在编程建立测试环境上。并且,环境一旦发生了变化,就要重新修改代码以适应。这种费力而又低效的方法,迫使 Ousterhout 教授力图寻找一种新的编程语言,它即要有好的代码可重用性,又要简单易学,这样就促成了 Tcl (Tool Command Language) 语言的产生。Tcl 最初的构想的是希望把编程按照基于组件的方法 (component approach),即与其为单个的应用程序编写成百上千行的程序代码,不如寻找一个种方法将程序分割成一个个小的, 具备一定“完整”功能的,可重复使用的组件。这些小的组件小到可以基本满足一些独立的应用程序的需求,其它部分可由这些小的组件功能基础上生成。不同的组件有不同的功能,用于不同的目的。并可为其它的应用程序所利用。当然, 这种语言还要有良好的扩展性, 以便用户为其增添新的功能模块。最后,需要用一种强的,灵活的“胶水”把这些组件“粘”合在一起, 使各个组件之间可互相“通信”,协同工作。程序设计有如拼图游戏一样,这种设计思想与后来的 Java 不谋而合。终于在 1988 年的春天, 这种强大灵活的胶水 - Tcl 语言被发明出来了。
一些要点:
1)暂时没有界面
2)有高亮显示
3)基本分为:前处理所需几何数据段,荷载约束段,求解控制段,数据输出控制段等几个方面
求解过程:
1)出现了一个叫做tcl84.dll的组件没有找到的情况。
查找,知道它在tcl的目录下,
按win+pause键,找到系统变量,发现这个目录已经添加,所以做法是:重启一遍就可以了
不然,把文件拷贝过来也是一种方法。
1)查看刚才的目录,可以看到存在了几个文件
有element1.out和node3.out
这个是文件里面的record控制的。把数据打开,进入到图表绘制系统里面,可以看到一些结果
(还有不少的图片和后续东西,一时发不上来,有时间再来添加了)