首页 OpenSEES学习笔记(优选.)

OpenSEES学习笔记(优选.)

举报
开通vip

OpenSEES学习笔记(优选.)最新文件仅供参考已改成word文本方便更改1、利用零长单元模拟阻尼,uniaxialMaterialElastic16.8098e6;uniaxialMaterialViscous23.24e51;uniaxialMaterialParallel335;elementzeroLength1$iNode$jNode-mat3-dir1;通常有两种方式:trusselementandviscousmaterial.(桁架单元和阻尼材料)force-basedbeam-columnelementandMaxwellmat...

OpenSEES学习笔记(优选.)
最新文件仅供参考已改成word文本方便更改1、利用零长单元模拟阻尼,uniaxialMaterialElastic16.8098e6;uniaxialMaterialViscous23.24e51;uniaxialMaterialParallel335;elementzeroLength1$iNode$jNode-mat3-dir1;通常有两种方式:trusselementandviscousmaterial.(桁架单元和阻尼材料)force-basedbeam-columnelementandMaxwellmaterial(基于力的梁柱单元和Maxwell材料)。-、如何运行OpenSEES有三种方法可以执行OpenSees/Tcl命令:1、interactive交互式直接将命令输入Prompt。2、执行文件输入这种方法是最常用的一种,以sourceinputfile.tcl方式执行已写好的外部命令文件。3、Batch模式即以OpenseesinputFile.tcl方式在MS—DOS/Unixpromt中运行。二、定义单位和常数在编写一个较大的Opensees命令时。最好先定义好单位及常数。在Opensees中,编译器不能自行转换单位。所以一开始就要先定义好。单位定义包括两部分:首先定义基本单位;再定义合成单位。其中基本单位要相互独立。同时,在定义单位时,既可以按国际公制单位,也可以按私制单位。因些在单位定义文件中可能是混合的。我个人建议,还是采用国际公制单位较好。像国外常用英制单位。很不习惯。对于一些常数,如和g等常数要事先定义好。在定义这些单位时所用的命令是“set”。1/15精品word.PAGE\*MERGEFORMAT#/15#--Units&Constants.tcIsetin1.;#definebasicunitssetsec1.;setkip1.;setksi[expr$kip/pow($in,2)];setpsi[expr$ksi1000.];#definedependentunits三、setft[expr12/$in];setlb[expr$kip.1000];setpcf[expr$lb'pow($ft,3)];[expr$kip'pow($in,2)];[expr$ksi'1000.];setcm[expr$in/2.54];setmeter[expr100.*$cm];setMPa[expr145*$psi];#definemetricunitssetPI[expr2*asin(1.0)];生成[Matla^命令($sec,2)];#defineconstantssetU1.e10;#areallylargenumber是后处理最常用的工具,通过Tcil脚本语言可以得到Matlab命令文件。同时保证相Matlab同的分析参数。如下例:尸#scripttogenerate.mfiletobereadbymatlab#MatlabOutput.tcl-setXframe1;#thisparameterwouldbepassedinsetfDir"Data/";filemkdir$fDir;#createdirectorysetoutFilelD[open$fDirDataFrame$Xframe.m训];#Openoutputfiletorwritingputs$outFilelD,,Xframe($Xframe)=:$Xframe;M;#trameIDputs$outFilelDuHcol($Xframe)=$Hcol;,R;#columndiameterputs$outFilelDuLcol($Xframe)=$Lcol;,R;#columnlengthputs$outFilelDuLbeam($Xframe)=$Lbeam;";#beamlengthputs$outFilelD,rHbeam($Xframe):=$Hbeam;R,;#beamdepthputs$outFilelD,rBbeam($Xframe):=$Bbeam;R,;#beamwidthputs$outFilelD"Weight($Xframe)=$Weight;,r;#superstructureweightclose$outFilelD四、定义Tcl命令的方法这种方法是从Tcl语言获得的工具,他是一种广义上的函数或者子程序 协议 离婚协议模板下载合伙人协议 下载渠道分销协议免费下载敬业协议下载授课协议下载 。这个不是很明白五、读取外部文件外部文件可能是Tcl命令或者是数据。有以下三种方法:(1)普通读取文件法;(2)重复计算读取文件法;(3)外部数据文件读取法。(1)普通读取文件法:source.inputfile.tcl。当外部文件中包括一系列的常用分析命令时,可用这个方法。(2)重复计算读取文件法:外部文件可能包括一系列重复的计算,则采用以下方法。随时改变参数。setHcolumn66;sourceanalysis.telsetHcolumn78;合oiiixE白n自ly各i占.tul也是一种交互式的输入外部数据文件读取法:这个命令可以用于打开一个数据文件。并按行读取,指定每行的值为单变量。如果一行中有多个值时,则变量是列阵。而其中每个元素可用“lindex”命令提取。#--ReadData.tclif[catch{open$inFilenamer}inFilelD]{;#Opentheinputfileandcheckforerrorputsstderr"Cannotopen$inFilenameforreading";#outputerrorstatement}else{foreachline[split[readSinFilelD]\n]{;#Lookateachlineinthefileif{[llength$line]==0}{;#Blankline->donothingcontinue;}else{六、建立模型这项是我们做分析时很关键的一个前提。常规 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 包括以下几个方面:(1)定义变量和参数;(2)建立模型和定义节点;(3)建立模型和使用变量定义节点;(4)定义材料;(5)定义单元。(1)定义变量和参数:在Tcl脚本语言中变量是用来替代数字的。一旦被定义好,则可用来代替数字。当重新要使用这些数字的时候,只需要用“$”字符则可以调用。如果不用此字符。则变量名将会被视为字符串命令将导致错误结果。在定义模型的变量时,通常首先定义好材料参数,然后单元参数,再是重力(质量)参数,最后是分析参数。设定好变量定义的命令文件有很多好处,当需要对材料或尺寸等变量进行修改时,只需在这个文件中修改即可。无需修改后面的文件。在材料参数中,主要涉及到材料的本构关系变量;单元参数中,主要涉及到单元几何尺寸及数量;重力参数中,主要是模型质量分布;分析参数中,主要是增量步长及数值计算参数。(2)建立模型和定义节点:这些模型节点通常是置于输入文件的开头。最后的定义结点质量的命令会覆盖先前定义的节点质量。在定义这些节点时也可以使用变量来定义,效果是一样的。(4)定义材料:以下的例子是用于定义钢筋混凝土结构的材料。假定变量都已定义。当这些命令编制在一个外部文件中时,可以用source命令执行。MaterialsRC.tclsetConcreteMaterialType"inelastic";#options:"elastic","inelastic"setSteelMaterialType,rhysteretie";#options:"elastic^^ilinear^^hysteretic''CONCRETEif{^ConcreteMaterialType=="elastic"}{uniaxialMaterialElastic$IDcone$EcuniaxialMaterialElastic$IDcover$Ecif{$ConcreteMaterialType=="inelastic"}{uniaxialMaterialConcreteOl$IDcore$fc1C$eps1C$fc2C$eps2C;#CoreconcreteuniaxialMaterialConcreteOl$IDcover$fc1U$eps1U$fc2U$eps2U;#Coverconcrete#STEELif{$SteelMaterialType=="elastic"}{uniaxialMaterialElastic$IDsteel$Esif{$SteelMaterialType=="bilinear"}{uniaxialMaterialSteelOl$IDsteel$Fy$Es$Bsif{$SteelMaterialType=="hysteretic"}{uniaxialMaterialHysteretic$IDsteel$Fy$epsY$Fy1$epsY1$Fu$epsll-$Fy-$epsY-$Fy1-$epsY1255—5)定义单元:—ELE師ENTS.tcb#COLUMNSsetColumnType"inelastic";setnp5;#sourceRCcircSection.tcl;#options:"rigid""elastic""inelastic"numberotintegrationpointsproctodefinecircularfibersectionforflexuralcharacteristicsRCcircSection$IDcolFlex$riCol$roCol$cover$IDcore$IDcover$IDsteel$NbCol$AbCol$nfCoreR$nfCoreT$nfCoverR$nfCoverTuniaxialMaterialElastic$IDcolTors$GJ;#DefinetorsionalstiffnesssectionAggregator$IDcolSec$IDcolTorsT-section$IDcolFlex;#attachtorsionandtlexuregeomTransfLinear$IDcolTransif{$ColumnType=="rigid"}{set$lyCol[expr$lyCol*$lyCol];set$lzCol[expr$lzCor$lzCol];elementelasticBeamColumn1001;13$Acol#Linear:noseconcj-ordereffectselementelasticBeamColumn224$Acol$Ec$G$J$lyCol$lzCol$IDcolTrans$Ec$G$J$lyCol$lzCol$IDcolTransif{$ColumnType=="elastic"}{elementelasticBeamColumn1elementelasticBeamColumn2$Acol$Ec$G$J$lyCol$lzCol$IDcolTrans$Acol$Ec$G$J$lyCol$lzCol$IDcolTrans}if{$ColumnType=="inelastic"}{elementnonlinearBeamColumn#BEAMelementnonlinearBeamColumn$np$IDcolSec$IDcolTrans$np$IDcolSec$IDcolTransgeomTransfLinear$IDbeamTrans001;#detineorientationofbeamlocalaxeselementelasticBeamColumn334$Abeam$Ec$G$J$lyBeam$lzBeam$IDbeamTrans;七、定义输出(1)定义生成分析输出生成的分析输出将取决于分析是静力的还是动力的。如下例子#Output.tclsetfDir,rData,,r;filemkdir$fDir;#createdirectorysetANALYSIS"Static";#thisvariablewouldbepassedinsetIDetrlNode3;#thisvariablewouldbepassedinif{$ANALYSIS=="Static"}{Recordnodaldisplacements-NODALDISPLACEMENTSsetfDstatFrameDStatFrame[expr$Xframe]setiNodeM$IDctrlNode,F;#canaddnodenumberstothislistforeachxNode$iNode{setfNodeNode$xNodesetFilename$fDir$fDstatFrame$fNoderecorderNode$Filename.outdisp-time-node$xNode-dof16;};#endotxNodeRecordelementtorcesanddetormations-COLUMNSsetiEL,r12,rsetfFstatFraineFStatFranie[expr$Xframe]setfDstatFranieDStatFraine[exprSXfranie]foreachxEL$iEL{setfEIEl[6xpr$xEL]setiSEC"135"setFfilenanie$fDir$fFstatFranieElrecorderElement$xEL-iin>e-fileSFMknaine.outlocalForceforeachxSEC$iSEC{setfSecSec[exprSxSEC]setDfileiiameDir$fDstatFraine$fEl$fSecrecorderElement$xEL-fileSDfilenanie.out-timesectionSxSECdefonnaiions}:#endofxSEC}:#endofxEL}:#endofstaticanalysissetANALYSIS"Dynamic"^#thisvariablewouldbepassedinsetGroundFile"ElCentro":#thisvariablewouldbepassedinif{^ANALYSIS=="Dynamic"}{setfDDynaFraineDDynaFrame[exprJXfraine]setfGroundFileSGroundFilesetFilename$fDir$fDDynaFram€$fGroundFile#RecordncdaldisplacementsrecorderNode$Filename,outdisp-time-node$lDetriNode-dof1};#endofdynamicanalysis2)定义分析中的数据图ReGorderPlot.tcls&tpfil&node,outF,;recorderNode$pfiledisp-timemod亡$IDctrINode-dof1s&ttitlePushFrame$Xframe;re-c-orderplot$pfile$title00350350-c-olumns21setptilep'Data/Elem1.out";s&ttitlePushEleml;recorderElement1-time-file$pfileglobalForcerecorderplot$pfil«(title4000350350-columns21八、重力荷载(1)定义重力荷载DefineGravity.tclsetGravSteps10patternPlain1Linear{load30.-$Pdl0.0.0.-$Mdl;#F%FyFzMxMyMzload40.-$Pdl0.0.0.+$MdlsystemUmfPack;#solutionprocedure,howitsolvessystemofequationsconstraintsPlain;#howithandlesboundaryconditions,enforceconstraintstestNormDi^pIncr1.0e-5100;algorithmNewton;numbererRCM;#renumberdot'stominimizeband-widthintegratorLoadControl[expr1J$GravSteps]1[expr1./$GravSteps][expr1./$GravSteps]analysisStaticinitialize;#thiscommandwillnotbenecessaryinnewversionsofOpenSees(2)运行重力分析#--RunGravity.tclanalyze$GravSteps#rungravityanalysisloadConst-time0.0;#keepgravityloadandrestarttime-leadtolateral-loadanalysis九、静力分析(1)定义静力推覆分析。这条命令将在重力荷载被定义和应用之后运行。DefinePushover.tcl&etanalysis"STATIC"^#thisvariablewouldbepassedinthefallowingsettingsdonotneedtobehereiftheyhavebeendefinedinthegravityanalysissystemUmfPack^constraintsPlain:testNormDispIncr10e-5100:algorithmNewtoirnumbererRCM^analysisStatic&etPUSHOVER"DispControl#rundisplacennent-controlledstaticpushoveranalysispatternPlain2Linear{load$IDctr1Node100.00.00.00.00.00.0if{JPUSHOVER==11LoadControl"}{integratorLoadControl0.240.12.0setNsteps20}elseif{$PUSHOVER=DispControl}{integratorDisplacementControl{IDcirlNode1$DxPush1$DxPushSDxPushsetNsteps[exprint($DinaxPush$DxPush)]}£lse{piz助<feirFwHkiPU£HGVCRoptimF'(2)运行静力推覆分析。当运行静力推覆分析时可能用一条命令即可,而单分析参数环境下通常不容易收敛。因些写个脚本试用多个算法增加收敛的可能性。analyze$Nsteps或RunPushoverPConverge.tclsetok[analyzeSNsteps]ifanalysisfails,trythefollowing,performanceisslowedinsidethisloopif{$ok匚0}{setok0:setmaxUSDmaxPushsetcontrolDisp0,0;testNorniDispIncr1.0e-B200while{$controlDisp 关于同志近三年现实表现材料材料类招标技术评分表图表与交易pdf视力表打印pdf用图表说话 pdf 。ForOpenSeeswehaveaddedeommandstoTelforfiniteelementanalysis.Theseeommandseanbegroupedintofourseetions:ModelingCommandseommandsaddedtotheinterpretertoereatethefiniteelementmodel.AnalysisCommandseommandsaddedtoTeltoereatetheanalysisproeedure.OutputCommandseommandsadedtoTeltomonitorwhatishappeninginthemodelduringtheanalysis.MiseCommandseommandsaddedtoTeltohelpmonitorandmodifythemodelandanalysisduringtherun-time.DataBaseCommandseommandsaddedtoTeltoeonstruetaFE_Datastoreobjeet.对于利用OpenSees进行有限元分析,我们已经创建了Tel命令。这些命令总共可以分成以下四个板块:1、模型命令:用于建立有限元模型;2、分析命令:用于建立分析程序;3、输出命令:用于建立在分析时,输出所要的结果;4、混合命令:用于在分析时修改模型和分析;5、数据库命令:用于建立FE数据保存。到目前为止,主要是用到前三板块,后面两板块尚不知道为何物。十三、目前关于OpenSees初学习时的问题1、目前基本知道OpenSees是如何进行结构分析的,但是还是不能整体把握住全过程。这个问题可以通过多练习解决。2、建立模型的部分基本上没有大问题,不过对于非线性问题的建模还比较大。特别是对于材料定义、截面定义、单元定义这三方面,有待加强。3、工况定义和分析定义方面现在还比较生疏,特别是对分析元素的理解,现在很不明确。这点急需加强。4、对于输出定义问题。这个不是很难,可是还不能灵活掌握。可以通过练习解决。5、最后一点,就是关于整个程序命令的先后顺序问题,这个目前个人觉得没什么大影响,可是把握主要路线可不分先后(如分析时)。可以向高人请教下!细节问题:在定义几何转换时,对于二维问题,单元方向不用考虑。对于三维问题,则要定义好。其中有个vecxz是平行于局部座标系x-z平面的向量。还就是关于单元座标系的指定:通常规定,x轴是连接单元两端节点的一个座标轴。而y、Z轴的定义是通过向量vecxz定义的,y轴的定义是通过vecxz和x轴的向量积得到。但是现在的问题是vecxz向量是通过z、y轴来确定的。可是z、y轴如何确定呢?Inadditiontousingrecorders,itispossibletospecifyoutputusingtheprintandputscommands.Whennofileidentifiersareprovided,thesecommandswillprintresultstothescreen.WeusethenodeReactioncommandtoreturnthereactionsattheindividualnodesandthetcllindexcommandtoobtainthevaluesfromtheselists.对于结果输出问题,在输出时如果只用recorders命令,会得到一大堆数据。这很不方便提出有用结果数据。因此,除了使用recorders命令外,还可以用print和put命令规定输出。当没有指定文件标号时,这些命令将会把结果显示在屏幕上。我们用nodeReaction命令回每个节点的反应,以及用lindex命令获得这些结果数据。这样就便于我们直观的检查结果数据。要求:利用变量定义,为抗地震倒塌和IDA分析建立好备用模型,单自由度和多自由度的模型。在建立模型时,把影响抗倒塌的结构因素全都考虑进去。这是第一步。第二步将是整理好施加工况(荷载、地震)。并建立好分析因素,提取必要的数据结果。第三步通过增加界面应用程序。处理好分析得到的结果。十四、运行OpenSees的全过程(初学)(-)、问题定义精品word.在介绍运行OpenSees的全过程时,以一个门式框架以例子进行讲解。这个门式框架的简图如下图。HHHHH4DDOkipGEOMETRY图上尺寸均是英制单位,在下面建立模型时,将全改成国际单位。这个模型中的单元,可以先以弹性单元,后面可根据需要对单元进行修改。对于分析方面,将会施加三种不同的工况。即:(1)水平位移控制的静力推覆;(2)水平循环往复位移控制的静力推覆;(3)动力地震动下时程分析。(二)、建立模型最新文件仅供参考已改成word文本方便更改15/15
本文档为【OpenSEES学习笔记(优选.)】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
茉莉花开
暂无简介~
格式:doc
大小:64KB
软件:Word
页数:19
分类:高中语文
上传时间:2022-09-25
浏览量:0