OpenSEES重点笔记

合集下载

OpenSEES重点笔记

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重点笔记

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自学笔记

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解题技巧窍门

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中默认的计算精度比较高!“0.1000000000000001≠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解题技巧

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知识学习记录文本

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语言获得的工具,他是一种广义上的函数或者子程序协议。

2019年整理OpenSEES材料库单元库资料

2019年整理OpenSEES材料库单元库资料

OPENSEESOpensees模型OpenSEES中有限元对象被划分成更多的子对象,其中包括节点对象、材料对象、截面对象、单元对象、荷载对象和约束对象等,并且为其子对象提供了多种不同的选择,包括不同的材料类型,截面形式,荷载模式以及约束方式等,再由它们组合成为有限元模型对象。

在程序中建立子对象的命令主要有:Node、Mass、Material、Section、Element、LoadPattern、TimeSeries、Transformation、Block和Constraint等等。

通过上述命令,我们可以分别确定对象中各节点的位置、节点集中质量、材料本构关系、截面恢复力模型、单元类型、外加荷载模式、几何坐标转换类型和约束形式等。

这些命令构建了有限元模型相应的子对象,由这些子对象组合构成有限元模型对象ModelBuilder。

纤维模型纤维模型是指将纤维截面赋予梁柱构件(即定义构件的每一截面为纤维截面),纤维截面是将构件截面划分成很多小纤维(包括钢筋纤维和混凝土纤维)对每一根纤维只考虑它的轴向本构关系,且各个纤维可以定义不同的本构关系。

纤维模型假定构件的截面在变形过程中始终保持为平面,这样只要知道构件截面的弯曲应变和轴向应变就可以得到截面每一根纤维的应变,从而可以计算得到截面的刚度。

纤维模型能很好的模拟构件的弯曲变形和轴向变形,但不能模拟构件的剪切非线性和扭曲非线性。

构件零长度构件可以赋予零长度构件BARSLIPMaterial(这种材料的本构关系可以精确模拟循环加载时在构件节点处由于钢筋的滑移和混凝土的开裂所引起的构件的刚度退化和强度退化现象)来模拟构件节点处的变形,另外用Bond-SP01Material可以模拟节点处钢筋的应力渗透现象(节点处钢筋还没有整体滑移)所引起的构件的强度和刚度变化。

OPENSEES中零长度构件虽然在建模时是零长度,但在计算这种构件变形时却是取其长度为单位长度。

计算时将零长度截面的弯曲曲率乘以1得到构件的弯曲变形。

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 解题一般规律、技巧总结单位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 类型不是随便选,而是要根据方程类型来决定的!(不过直至 M 乍业做完,我对 nu mberer, system, test, algorithm, an alysis geomTra nsf, con strai nts )等求解控制命令还是一知半解!我觉得要想弄明白这些命令一OpenSEES 中默认的计算精度比较高!“0.1000000000000001 M 0.1 ” :(自行总结,未找到官方说明)这是一个真实的故事:我曾在程序中自以为是的将一连串相邻均只有0.1左右的数的差强行赋值为 0.1,而没有采 用循环命令将两数作差并将结果赋给新变量一一其中即有这样的强行截断!我以为小数点 后都n 位了,即使我带着它最后也会被系统截断,还不如我直接预处理来得清爽!没想到 这样做直接导致计算不收敛!真是失之毫厘谬以千里!可见在 OpenSEES 中默认的计算精度比较高!后来我还在老师给的一份范例程序( Silvia Mazzo ni & Frank McKe nna, 2006 )中发现了这么一段:set Ubig 1.e10; # a really large nu mber set Usmall [expr 1/$Ubig]; # a really small nu mber (还包括—得先回头好好翻翻有限元和数值分析的书了!可见系统并未认为Usmall=O !再一次印证了这一点!划分纤维截面时角点坐标输入的门道划分纤维截面时角点坐标输入非常有讲究!为了说的直白,我把要点放到下面这张图中了:OpenSEES中矩形横截面的坐插轴I■炬角点坐标描述规则例:用钢将上图所示截面分为9 (=3*3 )块「则命令为:section Fiber $TAGsec {: #TAGse< 为纟千维截面代号patch quad STAGsteel 3 3 yl zl y2 z2 y3 z3 y4 z4; #TAGstxl为钢材料代号 }这里y”坐标的IIS序万万不能乱写!否则运彳云吉果会出徒!数据文件处理OpenSEES运行中是可以生成并读写txt文档的!注意我说是"读写”哦!(生成txt文档的好处是方便运行完后双击生成的数据文件读取数据,你懂的。

OpenSEES学习笔记(优选.)

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解题技巧

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 (Reverse CuthillMcKee) 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解题技巧

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总结

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 材料参数意见参考图所示。

opensees命令解释

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材料参数意见参考图所示。

opensees单元剪应力剪应变记录

opensees单元剪应力剪应变记录

opensees单元剪应力剪应变记录本次实验使用OpenSees软件对单元剪应力和剪应变进行了记录和分析。

实验中,我们使用了梁单元,通过施加不同的剪力载荷,在不同的剪切变形下,记录了各个节点的剪应力和剪应变。

通过这些数据,我们可以分析出材料在受到剪力载荷时的变形和应力分布情况。

在OpenSees中,梁单元是一种非线性单元,用于模拟材料在剪切力下的行为。

梁单元由面积、惯性矩和剪切模量等参数定义。

根据这些参数,我们可以计算出单元的剪切刚度,然后将其与其他节点相连接,形成整个结构。

在本次实验中,我们采用了一个简单的二维梁结构作为例子。

该结构具有长度L和高度H,并受到一个垂直于梁平面的剪力载荷。

我们分别对两种不同的梁材料进行了测试,分别是钢材和混凝土材料。

首先,我们需要在OpenSees中定义梁单元的材料特性。

对于钢材,我们定义了弹性模量和剪切模量,同时还设置了材料的屈服强度和断裂强度。

对于混凝土材料,我们定义了弹性模量、剪切模量和轴向刚度,还设置了混凝土的抗拉和抗压强度。

接下来,我们使用OpenSees中的节点、单元和加载函数等命令,定义了梁结构的几何形状、材料特性和加载方式。

然后,我们使用合适的加载函数施加剪力载荷,以模拟实际的应力情况。

在梁结构受到剪力载荷时,我们通过OpenSees记录了各个节点的剪应力和剪应变。

通过对这些数据的分析,我们可以得到梁结构中各个部位的变形情况以及剪切应力的分布情况。

在实验结果中,我们可以观察到梁结构的中部区域受到最大的剪切应力,而两端区域则受到较小的剪切应力。

同时,钢材梁和混凝土梁在剪应力和剪应变方面的表现也有所不同。

钢材梁具有较高的剪应变能力,而混凝土梁则具有较低的剪应变能力。

通过对实验数据的分析,我们可以得到结论:钢材和混凝土在承受剪切力时的表现不同,钢材具有较高的剪应变能力和承载力,而混凝土则相对较低。

这些结果对于工程设计和结构分析具有重要的参考价值。

总结来说,本次实验使用OpenSees软件对单元剪应力剪应变进行了记录字数,通过模拟剪切载荷施加到不同材料梁结构上的情况,记录了各个节点的剪应力和剪应变,并进行了数据分析和结论总结。

opensees总结2

opensees总结2

opensees总结21、瑞利阻尼在OPENSEES中,结构采用瑞利(Rayleigh)阻尼,即阻尼矩阵的大小与结构的质量矩阵,刚度矩阵都相关,瑞利阻尼的计算公式如下,阻尼与刚度质量的关系如下图所示。

camak,,,,,,,, 01式中,ξ为阻尼比,a为质量相关系数,a为刚度相关系数,[c]为阻尼矩阵,[m]01为质量矩阵,[k]为刚度矩阵;ω、ω为结构两个主振型的圆频率,由于 mn ω=,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,即质量相关系数; 0set betaKcurr [expr 2.*$xDam p/($omegaI+$omegaJ)]; ———betaKcurr 为a,即刚1度相关系数;rayleigh $alphaM $betaKcurr 0 0———定义瑞利阻尼,只需要填写a、a,其它值01为0。

OPENSEES

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单元对于截面软化行为可以在单元层次和截面层次准确地进行描述。

Open_CASCADE学习笔记-拓扑和几何

Open_CASCADE学习笔记-拓扑和几何

OPEN CASCADE学习笔记——拓扑和几何著: Roman Lygin译:George Feng这是一篇关于开源三维建模软件O P E N C A S C A D E内核的博文:R O M A N L Y G I N是O P E N C A S C A D E的前程序开发员和项目经理,曾经写过许多关于该开源软件开发包的深入文章,可以在他的博客(H T T P://O P E N C A S C A D E.B L O G S P O T.C O M)上面找到这些文章。

序在OpenCascade的论坛上知道了Roman Lygin在他的博客上写了Open CASCADE notes系列文章,但是却无法访问他的博客,幸而百度文库已经收录了Topology and Geometry和Surface Modeling两篇文章,拜读之后获益良多。

如果大家发现文中翻译有错误或不足之处,望不吝赐教,可以发到我的邮箱fenghongkui@,十分感谢。

2012年6月28日星期四第1节概述下面首先介绍一下Open CASCADE的基本概念。

关于这些基本概念的问题经常在论坛中出现,我希望这篇文章能够帮助大家理解这些基本概念。

如果你要使用或者开发自己的建模算法,就更要理解这些基本概念。

或许你应该重新读一读Modeling Data User's Guide的各个章节,从而加深记忆。

拓扑抽象类Open CASCADE的拓扑结构是在参考STEP ISO-10303-42标准的基础上设计的。

也许读一读STEP标准也是有益的(我自己曾经在1997年读过一次)。

Open CASCADE的结构是面向单向图的(an oriented one-way graph),在该单向图中父类可以引用(refer to)他们的子类,而不能反向引用(reference)。

抽象结构在TopoDS包中的C++类中实现。

图1是由Doxygen生成的继承关系图。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 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完成模拟,用户先要创建一个输入文件(脚本),这个脚本是由一系列命令构成的,这些命令指导编译器如何进行。

相关文档
最新文档