OpenSEES重点笔记
OpenSees自学笔记
OpenSEES自学笔记(一)“博主按”:本文是我第一次用OpenSEES做仿真分析作业(基于OpenSEES 的方钢管混凝土柱抗震性能分析)过程中点滴记录的自学笔记,发表出来既是和各位(尤其是OpenSEES初学者)交流,同时也算作个自我小结以备日后查阅。
尽管我力求完美,但这些习得中仍然极有可能存在错误!请注意甄别!同时也衷心希望各位高手不吝赐教!另外,由于时间仓促,本人又是初学OpenSEES,所以文章内容上比较零散,见谅!初识OpenSEES我是在《钢筋混凝土结构非线性分析》这门课上第一次听说这个软件的。
老师说(均为个人理解,可能不是老师原话)这个软件能够用纤维单元做有限元分析,在模拟大型结构上比ANSYS、SAP等利用实体单元的有限元程序有优势;经常用于抗震分析科研中;不是一个“设计型”软件(如SAP、PKPM、桥博等);还要求我们用它做两个大作业。
在Silvia Mazzoni, Frank McKenna, Michael H. Scott, Gregory L. Fenves 等人编写的OpenSEES的Users Manual (v2.0)开篇,是这样回答"What is OpenSEES?"这个问题的:· An object-oriented software framework for simulation applications in earthquake engineering using finite element methods. OpenSees is not a code.· A communication mechanism within PEER for exchanging and building upon research accomplishments.· As open-source software, it has the potential for a community code for earthquake engineering.好吧,既然是专业软件,那咱就在接下来的使用中逐渐熟悉吧!软件下载与安装OpenSEES和Tcl的下载页面链接在OpenSEES官网首页左侧的栏目里,点击“Download”即可进入下载页面(下载之前需要注册(新用户)或填写电邮(已注册用户))。
opensees弧长法
opensees弧长法(最新版)目录1.OpenSees 弧长法简介2.OpenSees 弧长法的应用范围3.OpenSees 弧长法的操作步骤4.OpenSees 弧长法的优点与局限性正文OpenSees 弧长法是一种基于有限元分析的计算方法,可以用于求解复杂结构的静态和动态问题。
这种方法采用了弧长法来计算有限元模型中的刚度矩阵,可以大大提高计算效率和精度。
下面,我们将详细介绍OpenSees 弧长法的相关内容。
1.OpenSees 弧长法简介OpenSees 弧长法是一种基于有限元分析的计算方法,主要用于求解复杂结构的静态和动态问题。
这种方法采用了弧长法来计算有限元模型中的刚度矩阵,可以大大提高计算效率和精度。
OpenSees 弧长法适用于各种工程领域,如土木工程、机械工程、航空航天等。
2.OpenSees 弧长法的应用范围OpenSees 弧长法可以用于求解以下类型的问题:(1)静态问题:求解结构的静力响应,如位移、内力等;(2)动态问题:求解结构的动力响应,如加速度、速度等;(3)非线性问题:求解非线性结构的响应,如材料非线性、几何非线性等;(4)热力学问题:求解结构的热力学响应,如温度分布等。
3.OpenSees 弧长法的操作步骤使用 OpenSees 弧长法求解问题,可以分为以下几个步骤:(1)建立有限元模型:根据实际问题,创建一个有限元模型,包括节点、单元和边界条件;(2)选择弧长法:在 OpenSees 中选择弧长法作为求解方法;(3)施加边界条件:将实际问题中的边界条件施加到有限元模型上;(4)求解:使用 OpenSees 弧长法求解有限元模型;(5)后处理:对计算结果进行后处理,如绘制位移、内力等云图。
4.OpenSees 弧长法的优点与局限性OpenSees 弧长法的优点主要有以下几点:(1)计算效率高:采用弧长法可以大大提高有限元分析的计算效率;(2)计算精度高:弧长法可以提高刚度矩阵的计算精度,从而提高整体计算精度;(3)适用范围广:适用于各种工程领域和问题类型。
OpenSEES知识学习记录文本
1、利用零长单元模拟阻尼,uniaxialMaterial Elastic 1 6.8098e6;uniaxialMaterial Viscous 2 3.24e5 1;uniaxialMaterial Parallel 3 3 5;element zeroLength 1 $iNode $jNode -mat 3 -dir 1;通常有两种方式:(1)truss element and viscous material.(桁架单元和阻尼材料)(2)force-based beam-column element and Maxwell material(基于力的梁柱单元和Maxwell材料)。
-、如何运行OpenSEES有三种方法可以执行OpenSees/Tcl命令:1、interactive 交互式直接将命令输入Prompt。
2、执行文件输入这种方法是最常用的一种,以source inputfile.tcl方式执行已写好的外部命令文件。
3、Batch模式即以Opensees inputFile.tcl方式在MS-DOS/Unix promt中运行。
二、定义单位和常数在编写一个较大的Opensees命令时。
最好先定义好单位及常数。
在Opensees中,编译器不能自行转换单位。
所以一开始就要先定义好。
单位定义包括两部分:首先定义基本单位;再定义合成单位。
其中基本单位要相互独立。
同时,在定义单位时,既可以按国际公制单位,也可以按私制单位。
因些在单位定义文件中可能是混合的。
我个人建议,还是采用国际公制单位较好。
像国外常用英制单位。
很不习惯。
对于一些常数,如 和g等常数要事先定义好。
在定义这些单位时所用的命令是“set”。
三、生成Matlab命令Matlab是后处理最常用的工具,通过Tcl脚本语言可以得到Matlab命令文件。
同时保证相同的分析参数。
如下例:四、定义Tcl命令的方法这种方法是从Tcl语言获得的工具,他是一种广义上的函数或者子程序协议。
opensees中桥梁支座模拟
1、opensees中最简单的支座模拟时用0长度单元模拟支座,6个方向分别取不同的刚度值。
2、Elastomeric Bearing Element(弹性支座)可模拟支座的屈服后刚度。
This comma nd is used to con struct an elastomericBeari ng eleme nt object, which is defi ned by two no des. The eleme nt can have zero len gth or the appropriate beari ng height. The beari ng has uni direct ional (2D) or coupled (3D) plasticity properties for the shear deformati ons, and force-deformation behaviors defined by UniaxialMaterials in the remaining two (2D) or four (3D) direct ions. By default (sDratio = 0.5) P-Delta mome nts are equally distributed to the two end-no des. To avoid the introduction of artificial viscous damping in the isolation system (sometimes referred to as "dampi ng leakage in the isolati on system"), the beari ng eleme nt does not con tribute to the Rayleigh damp ing by default. If the eleme nt has non-zero len gth, the local x-axis is determ ined from the no dal geometry uni ess the optio nal x-axis vector is specified in which case the no dal geometry is ignored and the user-defined orientation is utilized.For a two-dime nsional problem: eleme nt elastomericBeari ng $eleTag $iNode $jNode $k Init $fy $alpha -P $matTag -Mz $matTag <-orie nt $x1 $x2 $x3 $y1 $y2 $y3> <-shearDist $sDratio> <-doRayleigh> <-mass $m>For a three-dime nsional problem: eleme nt elastomericBeari ng $eleTag $iNode $jNode $kI nit $fy $alpha -P $matTag -T $matTag -My $matTag -Mz $matTag <-orie nt <$x1 $x2 $x3> $y1 $y2 $y3> <-shearDist $sDratio> <-doRayleigh> <-mass $m>$eleTag $iNode $jNode $k In it$fy$alpha-P $matTag -T $matTag unique eleme nt object tagend no desin itial elastic stiff ness in local shear directi on 初始水平剪切刚度yield stren gth 屈服力post yield stiff ness ratio 屈服系数tag associated with previously-defi ned Un iaxialMaterial in axial directi on tag associated with previously-defi ned Un iaxialMaterial in torsi onal directi on-My $matTag tag associated with previously-defi ned Un iaxialMaterial in mome nt direct ion around local y-axis-Mz $matTag tag associated with previously-defi ned Un iaxialMaterial in mome nt direct ion around local z-axis$x1 $x2 $x3 $y1 $y2 $y3 $sDratio vector comp onents in global coordi nates defi ning local x-axis (opti on al)vector comp onents in global coordi nates defi ning local y-axis (opti on al)shear dista nce from iNode as a fractio n of the eleme nt len gth (opti on al, default = 0.5)-doRayleigh to in clude Rayleigh damp ing from the beari ng (opti on al, default = no Rayleigh damp ing con tributi on)$m eleme nt mass (opti on al, default = 0.0)NOTE:1) If the element has zero length and optional orientation vectors are not specified, the local element axes coincide with the global axes. Otherwise the local z-axis is defined by the cross product between the x- and y-vectors specified on the comma nd line.2) Elastomeric bearings are very stiff in compression, but not rigid. It is not a good idea to specify an extremely large axial stiffness (such as 1E10), because it can lead to problems with numericalsensitivity. Always specify a realistic value for the stiffness of the material that is assigned along the axial direct ion.3) The valid queries to an elastomeric bearing element when creating an ElementRecorder object are 'force,' 'localForce,' 'basicForce,' 'localDisplacement,' 'basicDisplacement' and 'material $matNummatArg1 matArg2 ...' Where $matNum is the nu mber associated with the material whose data is to be output.EXAMPLES:eleme nt elastomericBeari ng 1 1 2 20.0 2.50 0.02 -P 1 -Mz 2; # for a 2D elastomeric beari ng eleme ntelastomericBeari ng 1 1 2 20 2.50 0.02 -P 1 -T 2 -My 3 -Mz 4; # for a 3D elastomeric beari ng iNode3、Flat Slider Bearing Element可模拟四氟乙烯滑板支座以及板式支座的滑动现象。
OPENSEES
OPENSEESopensees中的单元问题梁柱单元1. Nonlinear BeamColumn基于有限单元柔度法理论。
允许刚度沿杆长变化,通过确定单元控制截面各自的截面抗力和截面刚度矩阵,按照Gauss-Lobatto积分方法沿杆长积分计算出整个单元的抗力与切线刚度矩阵。
NonlinearBeamColumn单元对于截面软化行为,构件反应由单元积分点数控制,为保证不同积分点数下构件反应的一致性,可以通过修正材料的应力-应变关系来实现,但同时会造成截面层次反应的不一致,因此需要在截面层次进行二次修正。
一根构件不需要单元划分,使用1个单元即可,建议单元内使用4个截面积分点,截面上使用6*6的纤维积分点。
[5]2. Displacement – Based BeamColumn基于有限单元刚度法理论。
允许刚度沿杆长变化,按照Gauss -Legendre积分方法沿杆长积分计算出整个单元的抗力与切线刚度矩阵。
Displacement - BasedBeam- Column单元对于截面软化行为,构件反应由遭受软化行为的单元长度控制,为保证计算结果的精确性,一般需要将构件离散为更多的单元,而截面层次的反应与构件的单元离散数无关,可以较为准确地反应截面的软化行为。
建议一根构件划分为5个单元,单元内使用4个截面积分点,截面上使用6*6的纤维积分点。
[5]3. Beam With Hinges基于有限单元柔度法理论。
假定单元的非弹性变形集中在构件的两端,在杆件端部设置2个积分控制截面,并设定恰当的塑性铰长度,按照Gauss - Radau积分方法沿塑性铰长度积分来模拟构件和整体结构的非线性反应特点,而杆件中部的区段仍保持弹性。
LP塑性铰长度。
通过对BeamWithHinges单元的积分方法进行修正,保证塑性铰区只存在一个积分点,BeamWithHinges单元对于截面软化行为可以在单元层次和截面层次准确地进行描述。
2019年整理OpenSEES材料库单元库资料
OPENSEESOpensees模型OpenSEES中有限元对象被划分成更多的子对象,其中包括节点对象、材料对象、截面对象、单元对象、荷载对象和约束对象等,并且为其子对象提供了多种不同的选择,包括不同的材料类型,截面形式,荷载模式以及约束方式等,再由它们组合成为有限元模型对象。
在程序中建立子对象的命令主要有:Node、Mass、Material、Section、Element、LoadPattern、TimeSeries、Transformation、Block和Constraint等等。
通过上述命令,我们可以分别确定对象中各节点的位置、节点集中质量、材料本构关系、截面恢复力模型、单元类型、外加荷载模式、几何坐标转换类型和约束形式等。
这些命令构建了有限元模型相应的子对象,由这些子对象组合构成有限元模型对象ModelBuilder。
纤维模型纤维模型是指将纤维截面赋予梁柱构件(即定义构件的每一截面为纤维截面),纤维截面是将构件截面划分成很多小纤维(包括钢筋纤维和混凝土纤维)对每一根纤维只考虑它的轴向本构关系,且各个纤维可以定义不同的本构关系。
纤维模型假定构件的截面在变形过程中始终保持为平面,这样只要知道构件截面的弯曲应变和轴向应变就可以得到截面每一根纤维的应变,从而可以计算得到截面的刚度。
纤维模型能很好的模拟构件的弯曲变形和轴向变形,但不能模拟构件的剪切非线性和扭曲非线性。
构件零长度构件可以赋予零长度构件BARSLIPMaterial(这种材料的本构关系可以精确模拟循环加载时在构件节点处由于钢筋的滑移和混凝土的开裂所引起的构件的刚度退化和强度退化现象)来模拟构件节点处的变形,另外用Bond-SP01Material可以模拟节点处钢筋的应力渗透现象(节点处钢筋还没有整体滑移)所引起的构件的强度和刚度变化。
OPENSEES中零长度构件虽然在建模时是零长度,但在计算这种构件变形时却是取其长度为单位长度。
计算时将零长度截面的弯曲曲率乘以1得到构件的弯曲变形。
opensees 滞回曲线算例
---标题:深入探讨opensees滞回曲线算例一、引言在结构工程中,地震是一个重要的考量因素。
为了评估结构在地震作用下的性能,工程师们通常会使用滞回曲线来描述结构材料的非线性行为。
opensees作为一个开放式地震工程模拟软件,在地震工程领域有着广泛的应用。
本文将深入探讨opensees滞回曲线算例,帮助读者更好地理解这一重要概念。
二、opensees滞回曲线简介opensees是一种基于对象的、并行化的、开源的地震工程模拟软件,用于分析结构在地震作用下的性能。
滞回曲线是opensees中一个重要的概念,它描述了结构材料在加载-卸载过程中的非线性行为。
通过绘制结构元素的滞回曲线,工程师们可以更好地了解结构的抗震性能。
三、opensees滞回曲线算例接下来,我们将通过一个具体的opensees滞回曲线算例来深入探讨这一概念。
假设我们有一个简支梁结构,在地震作用下发生非线性行为。
我们可以通过opensees进行模拟,并得到该结构的滞回曲线。
在这个算例中,我们可以设定不同的地震波、材料性能和结构几何参数,以获得不同条件下的滞回曲线。
通过分析这些曲线,我们可以得到结构在不同地震作用下的性能表现,为工程实践提供重要参考。
四、个人观点和理解对于opensees滞回曲线,我认为其在地震工程领域具有重要的理论和实用意义。
通过实际的滞回曲线算例,工程师们可以更好地了解结构在地震作用下的性能,从而进行合理的结构设计和抗震评估。
opensees作为一个开源软件,为工程师们提供了丰富的建模和分析工具,有助于推动地震工程领域的发展和进步。
五、总结与回顾通过本文对opensees滞回曲线算例的深入探讨,我们更加全面地理解了这一重要概念。
通过实际的算例分析,我们了解到滞回曲线对于评估结构在地震作用下的性能具有重要意义。
在未来的工程实践中,我们可以更好地运用opensees和滞回曲线理论,提高结构的抗震性能。
六、结束语以上是对opensees滞回曲线算例的探讨,希望本文能够帮助读者更好地理解这一重要概念,在地震工程领域有所启发。
opensees的简单介绍
•
华南理工大学建筑学院建筑工程研究所
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-Scot t-Park的无抗拉段混凝土材料) Concrete02 Material -- Linear Tension Softening (线性受拉软 化的混凝土材料)
•
华南理工大学建筑学院建筑工程研究所
Opensee 使用:1)安装过程:
1. 到网站上下载opensee 现在版本是1.73,可以直接下载exe或者下载源码回来编 译,源码是c++语言编写的,采用CVS(concurrent version syst em),方便大家共同修改。还有一个写程序的约定,方便后来 人认识你的代码。 2. 到网站上下载TCL/TK 一个现在比较流行的脚本语言,也可用于某些界面设计, 比如现在有些ANSYS的开发也用到它。
•
华南理工大学建筑学院建筑工程研究所
安装过程:
Tcl/Tk 的发明人 John Ousterhout 教授在八十年代初,是伯克 利大学的教授。在其教学过程中,他发现在集成电路 CAD 设计 中,很多时间是花在编程建立测试环境上。并且,环境一旦发 生了变化,就要重新修改代码以适应。这种费力而又低效的方 法,迫使 Ousterhout 教授力图寻找一种新的编程语言,它即 要有好的代码可重用性,又要简单易学,这样就促成了 Tcl (To ol Command Language) 语言的产生。
opensees纵筋纤维划分
opensees纵筋纤维划分
在OpenSees中,纵筋纤维划分是指将混凝土截面的纵向钢筋分布划分为若干个纤维,以便进行非线性混凝土分析。
纵筋纤维划分通常是根据截面内纵向钢筋的分布情况进行的,可以根据纵向钢筋的数量和布置情况将截面划分为多个纤维区域,每个区域内的混凝土和钢筋受力状态可能不同,因此需要分别进行建模和分析。
在进行纵筋纤维划分时,需要考虑以下几个方面:
1. 纵向钢筋的数量和布置情况,根据实际结构的设计图纸或者构件截面的钢筋布置情况,将截面划分为不同的纤维区域。
2. 混凝土的本构模型,根据混凝土的本构模型,将混凝土纤维划分为不同的区域,并确定每个区域的材料性质,如抗压强度、抗拉强度、受拉刚度等。
3. 纵向钢筋的本构模型,根据钢筋的材料性质和布置情况,将纵向钢筋划分为不同的区域,并确定每个区域的材料性质,如屈服强度、弹性模量等。
通过合理的纵筋纤维划分,可以更准确地模拟混凝土截面的受力行为,为结构的非线性分析提供可靠的基础。
在OpenSees中,可以通过定义纤维截面来实现纵筋纤维划分,然后将其应用于整个结构模型的分析中。
这样可以更真实地反映结构在地震等极限荷载作用下的受力性能,为工程设计提供更可靠的依据。
opensees解题技巧
v1.0 可编辑可修改OpenSEES解题一般规律、技巧总结单位OpenSEES中是可以用公制单位(N,m)的(而并不是像某些文章中说的“OpenSees默认为英制单位”)。
实际上我认为OpenSEES中并没有什么默认单位,只要编程者自己保持单位一致就行;这点类似于SAP2000的风格。
建模顺序做事要讲究顺序,OpenSEES建模亦如是:必须先定义材料才能离散截面(因为离散截面时要对所划分的截面指定材料属性)。
与之类似的,必须先定义(离散)截面,才能定义非线性梁柱单元(因为定义非线性梁柱单元时要指定单元截面)。
关于BandSPD求解方式官网关于BandSPD方程形式的评价:"This is a good choice for most small size models. "并且后面紧跟了一句:"The equations have to be numbered so the widely used RCM (Reverse Cuthill-McKee) numberer is used. "可见numberer 类型不是随便选,而是要根据方程类型来决定的!(不过直到作业做完,我对numberer, system, test, algorithm, analysis(还包括geomTransf, constraints)等求解控制命令还是一知半解!我觉得要想弄明白这些命令——得先回头好好翻翻有限元和数值分析的书了!)OpenSEES中默认的计算精度比较高!“≠”:(自行总结,未找到官方说明)这是一个真实的故事:我曾在程序中自以为是的将一连串相邻均只有左右的数的差强行赋值为,而没有采用循环命令将两数作差并将结果赋给新变量——其中即有这样的强行截断!我以为小数点后都n位了,即使我带着它最后也会被系统截断,还不如我直接预处理来得清爽!没想到这样做直接导致计算不收敛!真是失之毫厘谬以千里!可见在OpenSEES中默认的计算精度比较高!后来我还在老师给的一份范例程序(Silvia Mazzoni & Frank McKenna, 2006)中发现了这么一段:……set Ubig ; # a really large numberset Usmall [expr 1/$Ubig]; # a really small number……可见系统并未认为Usmall=0 !再一次印证了这一点!划分纤维截面时角点坐标输入的门道划分纤维截面时角点坐标输入非常有讲究!为了说的直白,我把要点放到下面这张图中了:v1.0 可编辑可修改数据文件处理OpenSEES运行中是可以生成并读写txt文档的!注意我说是“读写”哦!(生成txt文档的好处是方便运行完后双击生成的数据文件读取数据,你懂的。
opensees concrete02参数标定
opensees concrete02参数标定摘要:一、引言二、OpenSees 介绍三、Concrete02 参数标定的意义四、Concrete02 参数标定的方法五、Concrete02 参数标定的实践应用六、总结正文:一、引言随着我国基础设施建设的快速发展,结构抗震设计的重要性日益凸显。
在结构抗震设计中,参数标定是关键环节之一,它关系到模型的可靠性和准确性。
本文以OpenSees Concrete02 参数标定为研究对象,探讨其参数标定的方法及实践应用。
二、OpenSees 介绍OpenSees(Open System for Earthquake Engineering Simulation)是一款基于有限元方法的地震工程模拟软件,广泛应用于结构地震反应分析、非线性结构动力学计算等领域。
其中,Concrete02 是OpenSees 中的一种混凝土本构模型,适用于钢筋混凝土结构分析。
三、Concrete02 参数标定的意义Concrete02 参数标定是为了获得该本构模型中各参数的最优值,使得模型能够更好地反映实际混凝土的力学性能。
合理的参数标定有助于提高结构分析的准确性,为结构抗震设计提供更为可靠的数据支持。
四、Concrete02 参数标定的方法Concrete02 参数标定主要分为两个阶段:第一阶段是参数敏感性分析,通过分析参数变化对模型性能的影响程度,筛选出对模型性能影响较大的参数;第二阶段是基于敏感性分析结果,采用最小二乘法、遗传算法等优化方法,求解参数的最优值。
五、Concrete02 参数标定的实践应用本文以某高层钢筋混凝土结构为例,运用Concrete02 模型进行参数标定。
首先,通过敏感性分析确定参数的影响程度,然后采用遗传算法进行参数优化。
最后,将优化后的参数应用于结构分析,比较分析结果与实际地震反应的差异,验证参数标定的有效性。
六、总结本文对OpenSees Concrete02 参数标定进行了详细阐述,包括参数标定的意义、方法和实践应用。
OpenSEES学习笔记(优选.)
最新文件---------------- 仅供参考--------------------已改成-----------word文本 --------------------- 方便更改1、利用零长单元模拟阻尼,uniaxialMaterial Elastic 1 6.8098e6;uniaxialMaterial Viscous 2 3.24e5 1;uniaxialMaterial Parallel 3 3 5;element zeroLength 1 $iNode $jNode -mat 3 -dir 1;通常有两种方式:(1)truss element and viscous material.(桁架单元和阻尼材料)(2)force-based beam-column element and Maxwell material(基于力的梁柱单元和Maxwell 材料)。
-、如何运行OpenSEES有三种方法可以执行OpenSees/Tcl命令:1、interactive交互式直接将命令输入Prompt。
2、执行文件输入这种方法是最常用的一种,以source inputfile.tcl方式执行已写好的外部命令文件。
3、Batch模式即以Opensees inputFile.tcl方式在MS-DOS/Unix promt中运行。
二、定义单位和常数在编写一个较大的Opensees命令时。
最好先定义好单位及常数。
在Opensees中,编译器不能自行转换单位。
所以一开始就要先定义好。
单位定义包括两部分:首先定义基本单位;再定义合成单位。
其中基本单位要相互独立。
同时,在定义单位时,既可以按国际公制单位,也可以按私制单位。
因些在单位定义文件中可能是混合的。
我个人建议,还是采用国际公制单位较好。
像国外常用英制单位。
很不习惯。
对于一些常数,如 和g等常数要事先定义好。
在定义这些单位时所用的命令是“set”。
三、生成Matlab命令Matlab是后处理最常用的工具,通过Tcl脚本语言可以得到Matlab命令文件。
陈学伟-OpenSEES前后处理程序ETO及实例教程
OpenSEES前后处理程序ETO及实例教程WSP HONG KONG LTDPrinciple EngineerDr. Chen Xuewei主要内容(Main Content)⏹ETO 简介及开发思路⏹ETO 主要功能介绍⏹OpenSEES 实例教程15分钟简单介绍ETO简介及开发思路ETO 是一款具有与ETABS交互接口的OpenSees 前后处理程序。
节点信息质量源信息截面信息单元几何信息约束信息荷载信息线性材料信息单元定义(如:纤维截面、Transformation )变形显示分析参数设置(如:分析类型、控制参数)记录设置(如:节点位移、单元内力、截面变形、模态)Tcl 脚本文件针对实际问题进行适当修改即可提交运算读取.OUT 结果文件当前操作状态菜单栏快捷按钮工具栏三维可视化界面导入ETABS生成的S2K文件ETO主要功能介绍ETO主要功能介绍单元定义单元类型包括Elastic BeamColumn,Nolinear BeamColumn, DispBeamColumn, Beam with Hinge,Truss。
界面类型包括工字型界面、矩形截面。
材料选择。
GeoTransf包括Linear, P-Delta,Corotational。
截面配筋。
纤维划分定义。
分析类型包括Single Load Control,Single Displacement Control,Gravity+Pushover, Modal Analysis,Time History Analysis, D+L TimeHist Analysis。
控制工况包括荷载控制、位移控制。
材料选择。
非线性设置包括梁柱单元积分点数、钢筋材料序号。
截面组装。
模态数量。
记录设置所有节点位移。
所有框架单元内力。
非线性梁柱单元截面变形。
非线性梁柱单元截面应力-应变关系。
振型特征值。
ETO主要功能介绍显示单元编号显示单元局部坐标轴ETO主要功能介绍显示节点荷载或单元荷载生成Tcl 脚本文件ETO 主要功能介绍节点变形显示实例1 桁架桥结构静力分析6.5e-018 -0.378 -1.653主要介绍从ETABS 建模、ETO 修改模型到生成OpenSees 命令流的流程,并解释命令流中节点建模、节点约束、弹性材料、桁架单元、节点单元输出设置、点荷载设置及分析工况设置等部分的命令,最后对比了ETABS 和OpenSees 的计算结果。
opensees总结2
1、瑞利阻尼在OPENSEES 中,结构采用瑞利(Rayleigh )阻尼,即阻尼矩阵的大小与结构的质量矩阵,刚度矩阵都相关,瑞利阻尼的计算公式如下,阻尼与刚度质量的关系如下图所示。
[][][]01c a m a k =+式中,ξ为阻尼比,a 0为质量相关系数,a 1为刚度相关系数,[c]为阻尼矩阵,[m]为质量矩阵,[k]为刚度矩阵;ωm 、ωn 为结构两个主振型的圆频率,由于 OPENSEES 能够直接求解振型的特征值,那么特征值与圆频率的关系:=λω。
命令流的解读如下:set xDamp 0.05 ;————设置阻尼比为0.05set nEigenI 1;————主振型1为第1振型set nEigenJ 2;————主振型2为第2振型set lambdaN [eigen [expr $nEigenJ]];————求解两阶振型即可set lambdaI [lindex $lambdaN [expr $nEigenI-1]];————提取第1阶特征值 set lambdaJ [lindex $lambdaN [expr $nEigenJ-1]];————提取第2阶特征值 set omegaI [expr pow ($lambdaI,0.5)];——— —从特征值求圆频率set omegaJ [expr pow($lambdaJ,0.5)];————从特征值求圆频率set alphaM [expr $xDamp*(2*$omegaI*$omegaJ)/($omegaI+$omegaJ)];————alphaM 为a 0,即质量相关系数;set betaKcurr [expr 2.*$xDam p/($omegaI+$omegaJ)]; ———betaKcurr 为a1,即刚度相关系数;rayleigh $alphaM $betaKcurr 0 0———定义瑞利阻尼,只需要填写a0、a1,其它值为0。
opensees中concrete01参数输入
《OpenSees中Concrete01参数输入详解》1. 引言在结构工程领域,混凝土材料是一种常见且重要的建筑材料。
在使用有限元软件进行结构分析时,合理设置混凝土本构模型的参数是非常关键的。
而在OpenSees中,混凝土本构模型Concrete01是常用的一个模型,对其参数的设置和输入是非常重要的。
本文将从深度和广度方面,全面探讨OpenSees中Concrete01参数输入的相关知识,帮助读者更好地理解和应用这一模型。
2. Concrete01模型概述在开始深入讨论Concrete01的参数输入之前,首先简要介绍一下Concrete01模型。
Concrete01是OpenSees中用来描述混凝土材料本构行为的一个模型,它是根据弹塑性理论建立的一个简单本构模型。
通过对混凝土的拉压行为进行建模,Concrete01模型可以很好地描述混凝土在受力过程中的变形和破坏性质。
3. Concrete01参数的基本含义在使用Concrete01模型时,需要输入一系列参数来描述混凝土的力学性质。
下面将逐一介绍这些参数的基本含义,以帮助读者更好地理解其作用。
3.1 弹性模量(E)混凝土的弹性模量是描述其刚度的重要参数,通常以GPa为单位。
在Concrete01模型中,弹性模量E是描述混凝土在应力作用下的变形行为的一个重要参数,影响着结构的整体刚度和变形行为。
3.2 抗压强度(fc)混凝土的抗压强度是描述其承载能力的重要参数,通常以MPa为单位。
在Concrete01模型中,抗压强度fc是描述混凝土在受压状态下的承载能力,对结构的破坏和极限承载能力具有重要影响。
3.3 极限应变(epslonU)混凝土的极限应变是描述其破坏性质的重要参数,通常以无量纲的形式表示。
在Concrete01模型中,极限应变epslonU是描述混凝土在受力过程中的破坏性质,对结构的极限承载能力和变形行为具有重要影响。
4. Concrete01参数输入的细节讨论在了解了Concrete01参数的基本含义之后,接下来将详细讨论这些参数的具体输入方法和注意事项。
opensees解题技巧
OpenSEES解题一般规律、技巧总结单位OpenSEES中是可以用公制单位(N,m)的(而并不是像某些文章中说的“OpenSees默认为英制单位”)。
实际上我认为OpenSEES中并没有什么默认单位,只要编程者自己保持单位一致就行;这点类似于SAP2000的风格。
建模顺序做事要讲究顺序,OpenSEES建模亦如是:必须先定义材料才能离散截面(因为离散截面时要对所划分的截面指定材料属性)。
与之类似的,必须先定义(离散)截面,才能定义非线性梁柱单元(因为定义非线性梁柱单元时要指定单元截面)。
关于BandSPD求解方式官网关于BandSPD方程形式的评价:"This is a good choice for most small size models. "并且后面紧跟了一句:"The equations have to be numbered so the widely used RCM (ReverseCuthill-McKee) numberer is used. "可见numberer 类型不是随便选,而是要根据方程类型来决定的!(不过直到作业做完,我对numberer, system, test, algorithm, analysis(还包括geomTransf, constraints)等求解控制命令还是一知半解!我觉得要想弄明白这些命令——得先回头好好翻翻有限元和数值分析的书了!)OpenSEES中默认的计算精度比较高!“0.10001≠0.1”:(自行总结,未找到官方说明)这是一个真实的故事:我曾在程序中自以为是的将一连串相邻均只有0.1左右的数的差强行赋值为0.1,而没有采用循环命令将两数作差并将结果赋给新变量——其中即有这样的强行截断!我以为小数点后都n位了,即使我带着它最后也会被系统截断,还不如我直接预处理来得清爽!没想到这样做直接导致计算不收敛!真是失之毫厘谬以千里!可见在OpenSEES中默认的计算精度比较高!后来我还在老师给的一份范例程序(Silvia Mazzoni & Frank McKenna, 2006)中发现了这么一段:……set Ubig 1.e10; # a really large numberset Usmall [expr 1/$Ubig]; # a really small number……可见系统并未认为Usmall=0 !再一次印证了这一点!划分纤维截面时角点坐标输入的门道划分纤维截面时角点坐标输入非常有讲究!为了说的直白,我把要点放到下面这张图中了:数据文件处理OpenSEES运行中是可以生成并读写txt文档的!注意我说是“读写”哦!(生成txt文档的好处是方便运行完后双击生成的数据文件读取数据,你懂的。
opensees总结
1、定义梁柱单元局部坐标轴的命令流为:geomTransf Linear $transfTag $vecxzX $vecxzY $vecxzZ其中,$transfTag 代表局部坐标轴矢量的编号,$vecxzX $vecxzY $vecxzZ 表示局部坐标轴的方向矢量值。
2、OPENSEES 的刚性隔板假定命令流格式为:rigidDiaphragm $perpDirn $masterNodeTag $slaveNodeTag1 $slaveNodeTag2 ...其中,$perpDirn 表示刚性隔板的方法,如实例中楼板的刚性隔板的平移方向为U1(X 方向)与U2(Y 方向),即1-2 平面,该值应为3。
$masterNodeTag 为主结点,$slaveNodeTag1 为从结点。
主结点一般为刚性隔板刚心。
实例中:rigidDiaphragm 3 35 2,表示刚性隔板平动方向为1-2 平面,刚心主节点为35 点,2号结点为从结点。
3、弹性梁柱单元的命令流:element elasticBeamColumn $eleTag $iNode $jNode $A $E $G $J $Iy $Iz $transfTag需要提供截面的截面积A、截面Y 轴惯性矩Iy,截面Z 轴惯性矩Iz,截面扭转矩,截面材料的弹性模量E 及剪切模量G。
其中:$transfTag 与$eleTag 是一致的,表示一个单元有自已特定的坐标轴向量,为了编程的方便。
陈:例题三4、非线性材料模型的定义(1)uniaxialMaterial Steel01 1 335 200000 0.00001表示,钢筋的屈服强度为335MPa,弹性模量为200000MPa,硬化系数为0.00001,即屈服平台基本上为水平段。
将混凝土材料本构C40 改为非线性混凝土本构【Concrete01】,命令流如下:(2)uniaxialMaterial Concrete01 2 -26.8 -0.002 -10 -0.0033 材料参数意见参考图所示。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、利用零长单元模拟阻尼,uniaxialMaterial Elastic 1 6.8098e6;uniaxialMaterial Viscous 2 3.24e5 1;uniaxialMaterial Parallel 3 3 5;element zeroLength 1 $iNode $jNode -mat 3 -dir 1;通常有两种方式:(1)truss element and viscous material.(桁架单元和阻尼材料)(2)force-based beam-column element and Maxwell material(基于力的梁柱单元和Maxwell 材料)。
-、如何运行OpenSEES有三种方法可以执行OpenSees/Tcl命令:1、interactive交互式直接将命令输入Prompt。
2、执行文件输入这种方法是最常用的一种,以source inputfile.tcl方式执行已写好的外部命令文件。
3、Batch模式即以Opensees inputFile.tcl方式在MS-DOS/Unix promt中运行。
二、定义单位和常数在编写一个较大的Opensees命令时。
最好先定义好单位及常数。
在Opensees中,编译器不能自行转换单位。
所以一开始就要先定义好。
单位定义包括两部分:首先定义基本单位;再定义合成单位。
其中基本单位要相互独立。
同时,在定义单位时,既可以按国际公制单位,也可以按私制单位。
因些在单位定义文件中可能是混合的。
我个人建议,还是采用国际公制单位较好。
像国外常用英制单位。
很不习惯。
对于一些常数,如 和g等常数要事先定义好。
在定义这些单位时所用的命令是“set”。
三、生成Matlab命令Matlab是后处理最常用的工具,通过Tcl脚本语言可以得到Matlab命令文件。
同时保证相同的分析参数。
如下例:四、定义Tcl命令的方法这种方法是从Tcl语言获得的工具,他是一种广义上的函数或者子程序协议。
这个不是很明白五、读取外部文件外部文件可能是Tcl命令或者是数据。
有以下三种方法:(1)普通读取文件法;(2)重复计算读取文件法;(3)外部数据文件读取法。
(1)普通读取文件法:source.inputfile.tcl。
当外部文件中包括一系列的常用分析命令时,可用这个方法。
(2)重复计算读取文件法:外部文件可能包括一系列重复的计算,则采用以下方法。
随时改变参数。
也是一种交互式的输入(3)外部数据文件读取法:这个命令可以用于打开一个数据文件。
并按行读取,指定每行的值为单变量。
如果一行中有多个值时,则变量是列阵。
而其中每个元素可用“lindex”命令提取。
六、建立模型这项是我们做分析时很关键的一个前提。
常规流程包括以下几个方面:(1)定义变量和参数;(2)建立模型和定义节点;(3)建立模型和使用变量定义节点;(4)定义材料;(5)定义单元。
(1)定义变量和参数:在Tcl脚本语言中变量是用来替代数字的。
一旦被定义好,则可用来代替数字。
当重新要使用这些数字的时候,只需要用“$”字符则可以调用。
如果不用此字符。
则变量名将会被视为字符串命令将导致错误结果。
在定义模型的变量时,通常首先定义好材料参数,然后单元参数,再是重力(质量)参数,最后是分析参数。
设定好变量定义的命令文件有很多好处,当需要对材料或尺寸等变量进行修改时,只需在这个文件中修改即可。
无需修改后面的文件。
在材料参数中,主要涉及到材料的本构关系变量;单元参数中,主要涉及到单元几何尺寸及数量;重力参数中,主要是模型质量分布;分析参数中,主要是增量步长及数值计算参数。
(2)建立模型和定义节点:这些模型节点通常是置于输入文件的开头。
最后的定义结点质量的命令会覆盖先前定义的节点质量。
在定义这些节点时也可以使用变量来定义,效果是一样的。
(4)定义材料:以下的例子是用于定义钢筋混凝土结构的材料。
假定变量都已定义。
当这些命令编制在一个外部文件中时,可以用source命令执行。
(5)定义单元:七、定义输出(1)定义生成分析输出生成的分析输出将取决于分析是静力的还是动力的。
如下例子:(2)定义分析中的数据图八、重力荷载(1)定义重力荷载(2)运行重力分析九、静力分析(1)定义静力推覆分析。
这条命令将在重力荷载被定义和应用之后运行。
(2)运行静力推覆分析。
当运行静力推覆分析时可能用一条命令即可,而单分析参数环境下通常不容易收敛。
因些写个脚本试用多个算法增加收敛的可能性。
或十、动力分析(1)定义动力地面动动分析(2)运行动力地面运动分析十一、关于OpenSEES例子的介绍。
通常在建立分析模型时,重力分析是其中的一部分。
(一)建立模型1、弹性单元2、非弹性单元:包括两种截面类型,a、单轴截面;b、纤维截面。
3、水平荷载:a、静力推覆(包括单调加载和循环往复加载);b、随时间变化的动力加载(动力分析):包括均匀正弦波、多点激励正弦波、均匀地震波、多点激励地震波、双向激励地震波(二)分析过程1、建立模型(1)定义模型维数和自由度数(2)定义节点坐标(3)定义节点约束——边界条件(4)定义节点质量(5)定义单元和单元连接(6)定义输出记录以上为OpenSEES建立模型时的常规步骤。
2、定义和施加竖向荷载(1)定义节点或单元的竖向荷载(2)定义静力分析参数——容差、算法、约束,方程和加载步(3)运行分析(4)保持竖向荷载为常数(为后续的水平荷载分析)(5)重置时间为0。
3、定义和施加水平荷载(1)定义荷载模式(节点荷载为静力分析,支点运动为地震分析)(2)水平荷载分析参数(容差或时间/位移增量)A、静力水平荷载分析:定义位移增量和位移加载路径B、动力水平荷载分析:定义输入地震动及所有相关参数,例如地震波调整和输入类型;定义分析持时和时间增量;定义阻尼。
(3)运行分析十二、OpenSees初级入门篇及简单例子To conduct a simulation in OpenSees, the user creates an input file (a script). A script is just a series of commands that instruct the interpreter what to do. In the case of OpenSees, the commands either create objects or invoke methods (procedures) on those objects. In OpenSees there are 3 types of objects the user must create:1.Modeling: The user first creates a ModelBuilder object which defines the typeof model, and commands available for building the model. With a ModelBuilder defined the user then creates the Element, Node, LoadPattern and Constraint objects that define the model. In this primer the use of the basic ModelBuilder will be demonstrated.2.Analysis: After the user has defined the model, the next step is to create theAnalysis object for analyzing the model. This may be a simple static linear analysis or a transient non-linear analysis. In OpenSees, an Analysis object is composed of several component objects and these define the type of analysis that is performed. The component objects consist of the following: SolutionAlgorithm, Integrator, ConstraintHandler, DOF Numberer, SystemOfEqn, Solver, and ConvergenceTest. This approach provides a great deal of flexibility in how an analysis is conducted, but requires knowledge on behalf of the user as to what the different options provide.3.Output Specification: Once the model and analysis have been defined, the usermust specify what is to be monitored during the analysis. OpenSees by default will producde no output. The outputs specified could for example be the displacement history at a node or internal stress state at some material point in an element element. The user typically creates Recorder objects to store what the user wants to examine, though the user can also use the tcl puts command. In each of the following examples, tcl scripts are used to create model, analysis and a recorder objects. After these objects have been created, the analysis is performed. The analyses performed on these models consist of simple static gravity analysis and pushover analysis and transient analysis of models subjected to earthquake excitation.The examples are not meant to be completely realistic, but they are representative of typical structures. They are intended to remain s以上这些文字的主要是意思是:为了用OpenSees完成模拟,用户先要创建一个输入文件(脚本),这个脚本是由一系列命令构成的,这些命令指导编译器如何进行。