利用APDL命令選擇橢球面上的節(jié)點(diǎn)

2017-09-15  by:CAE仿真在線  來源:互聯(lián)網(wǎng)

問題的背景:筆者在利用Workbench的二次開發(fā)功能實(shí)現(xiàn)某模型的參數(shù)化建模、分網(wǎng)、加載時(shí),由于workbench開發(fā)接口的限制,需要結(jié)合DM模塊、MAPDL模塊、Mesh模塊、FEM模塊以及Mechnical模塊。


在結(jié)合這些模塊的時(shí)候,為了實(shí)現(xiàn)參數(shù)化一鍵加載,需要在Mechnical模塊通過APDL和XML(ACT技術(shù))完成加載功能,而Mechnical模塊里面的模型其實(shí)只有節(jié)點(diǎn)和單元,因此,在Mechnical模塊添加的APDL命令只能是對(duì)節(jié)點(diǎn)或者單元進(jìn)行操作。

該模型有圓柱面和橢球面,圓柱面的節(jié)點(diǎn)其實(shí)比較好通過APDL選取,利用圓柱坐標(biāo)系即可,但是橢球面上的節(jié)點(diǎn)則無法直接選取。

至此,問題便產(chǎn)生了,如何利用APDL在只有節(jié)點(diǎn)和單元的模型上選取橢球面上的節(jié)點(diǎn)。

局部模型如下所示。


利用APDL命令選擇橢球面上的節(jié)點(diǎn)ansys圖片1

圖1 單元模型

利用APDL命令選擇橢球面上的節(jié)點(diǎn)ansys圖片2

圖2 節(jié)點(diǎn)

筆者所想選取的節(jié)點(diǎn)是圖2中的最內(nèi)層的節(jié)點(diǎn),該群節(jié)點(diǎn)所對(duì)應(yīng)的幾何模型是一個(gè)標(biāo)準(zhǔn)的橢球形,橢球形狀參數(shù)比為2:2:1。

該問題最大的障礙便是沒有幾何,只有節(jié)點(diǎn)和單元,如果有幾何的話,那么可以直接通過參數(shù)選擇面,再選擇依附在面上的節(jié)點(diǎn)即可。


如何解決該問題?

首先,筆者嘗試通過在前期劃分網(wǎng)格時(shí)添加一種額外的單元,mesh200,這是一個(gè)比較特殊的單元,有興趣的可以查查資料,先將該面單獨(dú)用mesh200進(jìn)行網(wǎng)格劃分,之后對(duì)全部模型采用solid185進(jìn)行劃分。

劃分完成后,模型導(dǎo)入Mechnical模塊,可以通過單元類型的方式直接選出所要的節(jié)點(diǎn),而且選擇過程非常非常的方便和快捷。但是,mesh200單元只是用于網(wǎng)格劃分,不支持載荷和約束,也即是無法在這些節(jié)點(diǎn)上加載,這對(duì)于最終問題就顯得無效了。

顯然,該方法雖然能夠選出所要的節(jié)點(diǎn),但是卻不能解決加載的問題,只能放棄。

至此,筆者只能嘗試采用橢球本身的位移約束方程來選擇了。


眾所周知,標(biāo)準(zhǔn)橢球的方程為:

利用APDL命令選擇橢球面上的節(jié)點(diǎn)ansys培訓(xùn)的效果圖片3

在本次模型中,a=c=2b=Ri,因此,本模型的橢球面方程為:

利用APDL命令選擇橢球面上的節(jié)點(diǎn)ansys培訓(xùn)的效果圖片4

也即是,橢球面上節(jié)點(diǎn)的(x,y,z)坐標(biāo)肯定是滿足上述方程的,那么可以通過讀取節(jié)點(diǎn)的坐標(biāo)值,代入上述方程計(jì)算,判斷是否滿足,如果滿足,那么就是所需要的節(jié)點(diǎn),不滿足就不是。

基于此原則,可以寫出APDL命令的思路:

獲取總節(jié)點(diǎn)數(shù)目

循環(huán)遍歷

獲取當(dāng)前的最小節(jié)點(diǎn)號(hào)

獲取該節(jié)點(diǎn)的三個(gè)坐標(biāo)值

計(jì)算橢球方程

邏輯判斷

如果該節(jié)點(diǎn)滿足橢球方程,則存入數(shù)組

舍棄當(dāng)前節(jié)點(diǎn)


之后,通過遍歷存儲(chǔ)的數(shù)組,可以選出所有滿足橢球方程的節(jié)點(diǎn)。

具體的APDL實(shí)現(xiàn)過程如下:

alls,all

csys,0

nsel,r,ext

nsel,r,loc,y,0,Body_Ri/2


tol=1e-6

j=0


*get,Total_node,node,0,count

*Dim,inner_node,array,Total_node,1


*do,i,1,Total_node,1

*get,node_min,node,0,num,min

ux=nx(node_min)

uy=ny(node_min)

uz=nz(node_min)

temp=(ux**2+uz**2+4*uy**2)/Body_Ri**2-1

abs_temp=abs(temp)


*if,abs_temp,lt,tol,then

j=j+1

inner_node(j)=node_min

*endif

nsel,u,,,node_min

*enddo


alls,all

nsel,r,,,inner_node(1)

*do,k,2,j,1

nsel,a,,,inner_node(k)

*enddo

注:定義了一個(gè)較小的變量tol=1e-6,主要是考慮可能存在一定的誤差,是節(jié)點(diǎn)的坐標(biāo)不能完全符合橢球方程,這個(gè)屬于正?,F(xiàn)象,稍加考慮即可。

最終運(yùn)行該段APDL代碼,可以選出所需要的最內(nèi)層的節(jié)點(diǎn),如下所示。

利用APDL命令選擇橢球面上的節(jié)點(diǎn)ansys培訓(xùn)的效果圖片5

圖3 選擇節(jié)點(diǎn)

利用esln命令,選出該群節(jié)點(diǎn)所存附的單元,如圖4所示,所見就一層單元。

利用APDL命令選擇橢球面上的節(jié)點(diǎn)ansys培訓(xùn)的效果圖片6

圖4 節(jié)點(diǎn)存附的單元


開放分享:優(yōu)質(zhì)有限元技術(shù)文章,助你自學(xué)成才

相關(guān)標(biāo)簽搜索:利用APDL命令選擇橢球面上的節(jié)點(diǎn) Ansys有限元培訓(xùn) Ansys workbench培訓(xùn) ansys視頻教程 ansys workbench教程 ansys APDL經(jīng)典教程 ansys資料下載 ansys技術(shù)咨詢 ansys基礎(chǔ)知識(shí) ansys代做 Fluent、CFX流體分析 HFSS電磁分析 Abaqus培訓(xùn) 

編輯
在線報(bào)名:
  • 客服在線請(qǐng)直接聯(lián)系我們的客服,您也可以通過下面的方式進(jìn)行在線報(bào)名,我們會(huì)及時(shí)給您回復(fù)電話,謝謝!
驗(yàn)證碼

全國服務(wù)熱線

1358-032-9919

廣州公司:
廣州市環(huán)市中路306號(hào)金鷹大廈3800
電話:13580329919
          135-8032-9919
培訓(xùn)QQ咨詢:點(diǎn)擊咨詢 點(diǎn)擊咨詢
項(xiàng)目QQ咨詢:點(diǎn)擊咨詢
email:kf@1cae.com