不知火舞的被虐|伊人天伊人天天综合网|博洛尼亚天气|任你懆这里只有精品4|久久美日韩精品久久|掌中之物漫画免费阅读观看|0丨d老妇

abaqus集合怎么創(chuàng)建的案例

abaqus-python 利用getByBoundingCylinder(...)創(chuàng)建單元集合
在學(xué)習(xí)的時候被網(wǎng)上的帖子和幫助文檔誤導(dǎo)(其實是新新手的緣故),命令老寫成這個樣子: elist = e.getByBoundingCylinder(7,6,0,7,6,20,5.8) # 正確命令: elist = e.getByBoundingCylinder(center1=(7,6,0),center2=(7,6,20),radius=5.8) abaqus python 二次開發(fā)攻略 P195,P196 abaqus 用戶幫助文檔 2 簡單案例 案例簡介:選取多個圓柱體框中的單元并創(chuàng)建集合。 具體命令: ################################ # 可以運行####### from abaqus import* from abaqusConstants import* p = mdb.models['Model-3'].parts['Part-1'] e = p.elements elist_I = e.getByBoundingCylinder(center1=(7,6,0),center2=(7,6,20),radius=5.8) elist = elist_I elist_I = e.getByBoundingCylinder(center1=(21,6,0),center2=(21,6,20),radius=5.8) elist = elist+elist_I p.Set(elements=elist,name='Set-matrix') print(type(elist)) # <type 'Sequence'> 這就是運行結(jié)果。
展開
ABAQUS二次開發(fā)|findAt函數(shù)創(chuàng)建集合的使用方法
關(guān)注微信公眾號:仿真社,回復(fù)“findAt”獲取源文件 Abaqus二次開發(fā)時,經(jīng)常會遇到getSequenceFromMask,用此命令創(chuàng)建集合是掩碼編碼,若集合是作為優(yōu)化變量,則不具備操作性,應(yīng)該盡量避免使用它。findAt函數(shù)是解決這一不足的有力武器,findAt函數(shù)是通過坐標(biāo)點的方式來創(chuàng)建point、surface、cell集合,具有參數(shù)化的特點,方便控制。 1.問題描述 a) 建立A 、B 兩個區(qū)域的集合 圖1 A,B區(qū)域圖 有限元模型的長寬分別為60mm,25mm,A區(qū)域的位置為x小于30,y大于18;B區(qū)域的位置為x大于30,y小于7。 b)為優(yōu)化集中力位置,使用findAt()函數(shù)在懸臂梁的頂部創(chuàng)建一個施加集中力的可變集合(圖2)。 圖2懸臂梁模型 2.技術(shù)路線 2.1創(chuàng)建A、B區(qū)域的集合 findAt函數(shù)是利用區(qū)域內(nèi)的一點坐標(biāo)創(chuàng)建集合,因此選擇A區(qū)域的坐標(biāo)(10,20,0),B區(qū)域的坐標(biāo)(50,5,0),為新創(chuàng)建集合命名為Set-target,代碼如下: 2.2 創(chuàng)建點的可變集合 創(chuàng)建集合的思路為:如果點在線內(nèi)(不包含端點),則首先創(chuàng)建一個基準(zhǔn)點,然后對模型基于基準(zhǔn)點進(jìn)行切分,最后創(chuàng)建集合;如果點在線的兩端,則直接創(chuàng)建集合。圖2展示了實現(xiàn)該功能的代碼,主要是一個判斷功能,保證創(chuàng)建的點集合在模型上,否則就報錯。 圖3 判斷是否需要進(jìn)行切分 下面展示了實現(xiàn)創(chuàng)建集合功能的代碼,其中findAt函數(shù)實現(xiàn)了對加載集中力位置的定義。在定義點時,用到的一個對象是vertices,即頂點,這也就是為什么要切分的原因。模型只有切分了之后才會有頂點!
展開