哪位知道ABAQUS中abaqus amplitude设置下的periodic怎么设置

温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
喜欢看《南方周末》和科幻小说,喜欢看周星驰的电影。重度依赖Google产品。读书的时候研究结构仿真算法,每天跟Abaqus,Matlab,UG、Python打交道,工作了做通信方面的软件开发,吃饭的家伙改成了Eclipse,*nix,Java,没事的时候喜欢淘各种稀奇古怪的书,一个人在陌生的城市里生活,鼓捣各式各样的语言。生命就像一次旅行,不在于去过多少地方,而在于看到了什么,思考过什么。
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(6017)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_083',
blogTitle:'ABAQUS中如何定义非均布时变载荷',
blogAbstract:'Analytical Field、Amplitude与Load结合,可以在一个面上定义任意形式的非均布时变载荷;\r\n1.&&&&&&&& 菜单操作:Load或Interaction模块:Tools-&Analytical Field;\r\n2.&&&&&&&& 坐标系的定义\r\na)&&&&&&&& 在【Edit Expression Field】对话框中的【Local system】定义要使用的坐标系;\r\nb)&&&&&&& 表达式中的坐标分量都以此坐标系原点为基准;\r\n3.&&',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:8,
publishTime:9,
permalink:'blog/static/',
commentCount:7,
mainCommentCount:6,
recommendCount:7,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'喜欢看《南方周末》和科幻小说,喜欢看周星驰的电影。重度依赖Google产品。读书的时候研究结构仿真算法,每天跟Abaqus,Matlab,UG、Python打交道,工作了做通信方面的软件开发,吃饭的家伙改成了Eclipse,*nix,Java,没事的时候喜欢淘各种稀奇古怪的书,一个人在陌生的城市里生活,鼓捣各式各样的语言。生命就像一次旅行,不在于去过多少地方,而在于看到了什么,思考过什么。',
hmcon:'1',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}abaqus6.13 edit amplitude 里面的time/frequency 里面怎么只能输入两行_百度知道温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
& & & &当采用Tabular Data形式定义幅值曲线时,需要对time span 和Smoothing进行设定,两者的含义如下:图1. Edit Amplitude窗口& & & &Time Span(时域长度):& & & & 选择Step time即幅值函数的时间范围为各个step的时间范围;& & & & 选择Total time则幅值函数的时间范围为除线性摄动步以外所有分析步的时间总长(也即所有一般分析步的总时长)。& & 在模拟中ABAQUS有两种时间尺度。增长的总体时间(total time),它贯穿于所有的一般分析步,并且是由每个一般分析步的总步骤时间的累积。每个分析步也有各自的时间尺度(称为分析步时间(step time)),对于每个分析步它从零开始。随时间变化的载荷和边界条件可以以其中的任何一种时间尺度来定义。对于一个分析的时间尺度,它的历史分解为三个分析步,每个100秒长,如图2所示。图2 某个模拟中的总体时间和分析步时间&& & & &Smoothing(幅值曲线光滑度设置):Abaqus/Standard中默认,在需要计算幅值函数对时间的导数时,会对幅值函数中导数不连续点处进行光滑处理。而在Abaqus/Explicit中则没有默认进行光滑处理,除非是继承自相关的有限时间增量步。这个参数仅仅当需要时间微分(对位移或者速度边界条件在直接积分动力分析中)且忽略选项中其它的使用才应用。& & & &&smoothing所指定数值的意义解释见下文。& & & & 通常通过表格定义的幅值函数为分段线性的,当指定了Smoothing的值时,就确定了在函数尖点两端进行光滑处理的邻域区间长度。可见下图:&图3 分段线性函数的光滑化处理比较(位移、速度和加速度)&即,在尖点的两侧各指定了一段区间长度:t=用户指定的smoothing值*尖点两侧线性区间长度t1、t2的较小值在这个长度为2t的区间内进行二次插值。图3中显示了对位移幅值分别求一阶导数(速度)、二阶导数(加速度)的不同效果。取值规定:& & & & &Smoothing值的范围是[0,0.5]。
& & & & &Use solver default选项为,对于Abaqus/Standard取0.25,对于Abaqus/Explicit取0.0;& & & &&&Specify则需用户自行指定数值(在包含较大时间间隔(time interval)的幅值曲线中,建议取0.05,以避免严重偏离用户的幅值定义)。& & & &&
阅读(1139)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_',
blogTitle:'【Abaqus学习笔记】Abaqus定义幅值曲线(Amplitude)中的参数设置',
blogAbstract:'& & & & 关于edit amplitude表格中选项的理解(参考6.10 Abaqus Analysis User\'s Manual 30.1.2和 6.10 Abaqus/CAE User\'s Manual)& & & &当采用Tabular Data形式定义幅值曲线时,需要对time span 和Smoothing进行设定,两者的含义如下:',
blogTag:'abaqus',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:4,
publishTime:0,
permalink:'blog/static/',
commentCount:2,
mainCommentCount:2,
recommendCount:0,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'0',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}ABAQUS,amplitude设置周期性函数,求助_百度知道Python在ABAQUS中的使用【z】
发布时间: 18:02:58
【篇首语】首先说,我不懂abaqus。只是一次帮同学处理混合编程问题查到这些资料,借机贴过来。
拷贝过程中有些混乱字符,时间关系我没有删干净。因为我也是从转帖转过来,原出处找不到了。
#开头的为注释行.9 _-m2r;n%h-G第一节, 建立建模环境, 这一步中py将从abaqus中导入建模所需的所有程序模块from part import *接下来定义草图环境mdb.models['Model-1'].Sketch(name='__profile__', sheetSize=200.0)mdb.models['Model-1'].sketches['__profile__'].sketchOptions.setValues(constructionGeometry=ON, decimalPlaces=2, dimensionTextHeight=5.0, grid=ON, &&& gridFrequency=2, gridSpacing=5.0, sheetSize=200.0, viewStyle=AXISYM);
上面的设定为大小200*200, 格栅间距为5, 文字标注高度为5.5
mdb.models['Model-1'].sketches['__profile__'].ObliqueConstructionLine(point1=(0.0, -100.0), point2=(0.0, 100.0))5 ]7 本句语句设定轴对称模型的对称轴线位置mdb.models['Model-1'].sketches['__profile__'].rectangle(point1=(0.0, 0.0),point2=(40.0, -40.0))该语句绘制矩形, 从点0,0 至点40,-40mdb.models['Model-1'].Part(dimensionality=AXISYMMETRIC, name='Boden', type=DEFORMABLE_BODY)定义模型为轴对称, 名字为boden,为可变形体8\%M0q ~1H%h;K) \mdb.models['Model-1'].parts['Boden'].Base(sketch=mdb.models['Model-1'].sketches['__profile__'])del mdb.models['Model-1'].sketches['__profile__']绘图完成不要忘记收回建模环境所占的内存
第二节, 材料定义from material import *from section import *从ABAQUS提供的接口中导入材料库和组件库mdb.models['Model-1'].Material(name='Boden')定义材料名#B6~9o2]3r Y4K"U&bmdb.models['Model-1'].materials['Boden'].Density(table=((2000.0, ), ))
定义材料密度mdb.models['Model-1'].materials['Boden'].Elastic(table=((, 0.3333), ))定义材料线弹性模量和泊松比, 其它的材料, 如弹塑性, 粘弹性材料均对应不同的对象函数.mdb.models['Model-1'].HomogeneousSolidSection(material='Boden', name='boden',thickness=1.0)mdb.models['Model-1'].parts['Boden'].assignSection(region=Region(faces=mdb.models['Model-1'].parts['Boden'].faces[0:1]), sectionName='boden')设定组件为坐标无关性材料,厚度为单位厚度, 并将属性附给所用的组件
第三节, 装配from assembly import *首先, 导入装配所用到的对象mdb.models['Model-1'].rootAssembly.DatumCsysByThreePoints(coordSysType=CYLINDRICAL, origin=(0.0, 0.0, 0.0), point1=(1.0, 0.0, 0.0), point2=(0.0,0.0, -1.0));定义坐标类型为柱坐标, 原点0,0,0,另外两个为单位向量, 确定该坐标轴的方向.mdb.models['Model-1'].rootAssembly.Instance(name='Boden-1', part=mdb.models['Model-1'].parts['Boden'])生成草图对像boden的实体, 名字叫Boden-1. 无偏移插入
第四节, 定义分析步from step import *! N;o&J-a' {9t.W*U5]象其它步一样, 先导入分析步要用到的模块mdb.models['Model-1'].ImplicitDynamicsStep(initialInc=0.005, maxNumInc=1024,name='Step-1', noStop=OFF, nohaf=OFF, previous='Initial',timeIncrementationMethod=FIXED, timePeriod=5.12)定义对动力隐式分析, 时长为0.005*个时间单位, 前一步为Initial7
mdb.models['Model-1'].fieldOutputRequests['F-Output-1'].setValues(variables=('U',)); 定义输出到ODB文件的数据, 这里只定义了位移输出mdb.models['Model-1'].fieldOutputRequests['F-Output-1'].setValues(frequency=1)6 D,]定义位移输出的频率为每步都输出:
mdb.models['Model-1'].steps['Step-1'].Restart(frequency=1, overlay=ON)
定义重启动析, 每一步记录, 只记录最后一次的正确状态
第五节, 定义接触from interaction import *依然是先导入所用的模块mdb.models['Model-1'].rootAssembly.PartitionEdgeByParam(edges=(mdb.models['Model-1'].rootAssembly.instances['Boden-1'].edges[3], ), parameter=0.975)在上部即第3面的97.5%的地方设定一个点, 用于定义接触5B3p)c)
mdb.models['Model-1'].ContactProperty('IntProp-1')7 j)c)定义接触属性名#U1n7e;D4|6Bmdb.models['Model-1'].interactionProperties['IntProp-1'].TangentialBehavior(formulation=FRICTIONLESS)mdb.models['Model-1'].interactionProperties['IntProp-1'].NormalBehavior(allowSeparation=OFF, augmentedLagrange=OFF, pressureOverclosure=HARD), {1V8R#X0I$Z.O" }定义接触特性,为无摩擦硬接触不允许分开- M1i#s-w(Q0q+F7f!Kmdb.models['Model-1'].SurfaceToSurfaceContactStd(adjustMethod=NONE, &&& createStepName='Initial', interactionProperty='IntProp-1', master=Region(&&& side1Edges=mdb.models['Model-1'].rootAssembly.instances['fun-1'].edges[0:1])&&& , name='Int-1', slave=Region(&&& side1Edges=mdb.models['Model-1'].rootAssembly.instances['Boden-1'].edges[4:5])&&& , sliding=FINITE)3 ](F!f N7a.K.K& @4D1~这一句是建立接触对, 分别为两个面上的一条边, 这里边的定义由ABAQUS内定, 具体可以查阅参考手册.
第六节, 荷载边界定义from load import *mdb.models['Model-1'].PeriodicAmplitude(a_0=1.0, data=((3.0, 1.1), (3.2, 1.7)), frequency=2.454, name='Fourier',start=0.0, timeSpan=STEP)定义fourier级数表示的荷载
mdb.models['Model-1'].Pressure(amplitude='Fourier', createStepName='Step-1', distribution=UNIFORM, magnitude=50.0, name='Load-1', region=Region(- H2_$J2q6F)G1e&&& side1Edges=mdb.models['Model-1'].rootAssembly.instances['fun-1'].edges[2:3])), l:^4@7S!X,j;q定义压强, 设定加载的分析步,区域及放大系数mdb.models['Model-1'].DisplacementBC(amplitude=UNSET, createStepName='Initial',distribution=UNIFORM, localCsys=None, name='BC-1', region=Region(&&& edges=mdb.models['Model-1'].rootAssembly.instances['Boden-1'].edges[0:1]+\mdb.models['Model-1'].rootAssembly.instances['Boden-1'].edges[2:3]+\mdb.models['Model-1'].rootAssembly.instances['fun-1'].edges[3:4]), u1=SET,u2=UNSET, ur3=UNSET)6 j&B+o3\*vmdb.models['Model-1'].DisplacementBC(amplitude=UNSET, createStepName='Initial', distribution=UNIFORM, localCsys=None, name='BC-2', region=Region(- y5v3`2J,W+N$t5{&&& edges=mdb.models['Model-1'].rootAssembly.instances['Boden-1'].edges[1:2]), u1=UNSET, u2=SET, ur3=UNSET)9 V8w6A'S!z2V:_7F#v8f* ^设定边界位移为0的边界条件, 注意语法中对象相加的方法.
第七节, 网格划分控制from mesh import *import mesh3 R0B4k4Z4}9P%b8D3d1x导入网格划分模块$f0\0y4K*P6\${elemType1 = mesh.ElemType(elemCode=CAX8, elemLibrary=STANDARD,secondOrderAccuracy=OFF, hourglassControl=STIFFNESS, distortionControl=OFF)7 a9Y4N*N;d$R; ]2WelemType2 = mesh.ElemType(elemCode=CAX6M, elemLibrary=STANDARD)a1 = mdb.models['Model-1'].rootAssemblyf1 = a1.instances['Boden-1'].faces& n/i9h&k( ^#?%e.z.Tfaces1 = f1[0:1]regions =(faces1, )a1.setElementType(regions=regions, elemTypes=(elemType1, elemType2))定义其中一个物体的网格为二次8结点单元, 如果其中有无法划分成四边形单元的情况, 则用三角形二次6结点单元.elemType1 = mesh.ElemType(elemCode=CAX4, elemLibrary=STANDARD)elemType2 = mesh.ElemType(elemCode=CAX3, elemLibrary=STANDARD)% ]4 H9N5M'ua1 = mdb.models['Model-1'].rootAssembly& I#k3c7E,O5s6l G(wf1 = a1.instances['fun-1'].faces0 faces1 = f1[0:1]regions =(faces1, )a1.setElementType(regions=regions, elemTypes=(elemType1, elemType2))(H" ~ a'B,F"W r定义其中一个物体的网格为一次4结点单元,如果其中有无法划分成四边形单元的情况, 则用三角形一次3结点单元.mdb.models['Model-1'].rootAssembly.seedPartInstance(regions=(mdb.models['Model-1'].rootAssembly.instances['fun-1'], ), size=0.5)mdb.models['Model-1'].rootAssembly.seedPartInstance(regions=(mdb.models['Model-1'].rootAssembly.instances['Boden-1'], ), size=1)' i3K$l2X.J/U6n%O定义网格划分全局单元大小.: J) }#R1X-Z2@/{&L8dmdb.models['Model-1'].rootAssembly.generateMesh(regions=(mdb.models['Model-1'].rootAssembly.instances['Boden-1'],mdb.models['Model-1'].rootAssembly.instances['fun-1']))按照定义划分单元
第八节, 任务提交及杂项功能mdb.models.changeKey(fromName='Model-1', toName='Fall-Muster')修改模型名称mdb.Model(name='Fall-015', objectToCopy=mdb.models['Fall-Muster'])拷贝模型mdb.models['Fall-015'].materials['Boden'].elastic.setValues(table=((, 0.15),))修改模型中的材料属性; S9H w7w5t+Q9W(K/zmdb.Job(contactPrint=OFF, description='', echoPrint=OFF, explicitPrecision=1 {7T#B"X0W#C%y0}&&& SINGLE, historyPrint=OFF, model='Fall-015', modelPrint=OFF, ) B* |%{3l H&c d8a7S4t&&& multiprocessingMode=THREADS, name='Job-015', nodalOutputPrecision=SINGLE, +F%a9L:[0V0x7^,Z7q8B5z1J&&& numCpus=1, numDomains=1, parallelizationMethodExplicit=LOOP, &&& parallelizationMethodStandard=TREE, preMemory=1024.0, scratch='', 6]$W3x2I'G7Q3_3?&&& standardMemory=2048.0, standardMemoryPolicy=MODERATE, type=ANALYSIS, &&& userSubroutine='')生成任务mdb.saveAs(pathName='D:/temp/FundamentSchwingungStudie'); i9I#l4^+z:d5R) ^保存模型mdb.jobs['Job-015'].submit()提交任务
第九节,关于如何在python中提交多个任务的问题如果您使用下面这样的命令做的提交mdb.jobs['Job-01'].submit()mdb.jobs['Job-02'].submit()" S8e't&R0n!c4K"F O/Q9{mdb.jobs['Job-03'].submit()你就会看到, 所有的任务是一次性提交的, 多个任务在一起运行, 这肯定不是你想看到的结果, 如何完成一个接着一个的提交呢, 其实很简单, 在每个任务后面加上一句mdb.jobs['Job-01'].waitForCompletion()就可以了.那么上面的语句就改为-
mdb.jobs['Job-01'].submit()mdb.jobs['Job-01'].waitForCompletion())
mdb.jobs['Job-02'].submit()mdb.jobs['Job-02'].waitForCompletion()mdb.jobs['Job-03'].submit()mdb.jobs['Job-03'].waitForCompletion()......0 g7d9c2m-?;h就一切OK了
来源:/begtostudy/archive//1792517

我要回帖

更多关于 abaqus amplitude 的文章

 

随机推荐