ANSYS中彈性地基的實(shí)現(xiàn)方法(三)
前面講述了兩期關(guān)于ANSYS中彈性地基的實(shí)現(xiàn)方法,其方式主要是采用特殊單元定義實(shí)常數(shù)的方法來解決。這些所謂的特殊單元其實(shí)也就是在我們定義該實(shí)常數(shù)時,軟件會自動創(chuàng)建彈簧,只是該彈簧不能由用戶訪問。除此之外,細(xì)心的同學(xué)還會發(fā)現(xiàn),該類單元不能實(shí)現(xiàn)單向彈簧的作用,這是與實(shí)際嚴(yán)重不符合的。因而在進(jìn)行模擬結(jié)構(gòu)可能受拉導(dǎo)致地基彈簧失效的情況時,該類單元是不可用的。
除了可以采用這些特殊單元外,我們也可以自己手動添加彈簧來模擬彈性地基。自己手動添加彈簧的好處便是可以設(shè)置單向受拉或者單向受壓彈簧,此處仍以前面文章中的大板為例,來簡要說明手動添加彈簧的方法。關(guān)于ANSYS中實(shí)現(xiàn)單向彈簧的討論,下節(jié)再仔細(xì)討論。
首先回顧下前面文章的例子,設(shè)有一尺寸為8mX4mX0.6m的大板,在其頂面3mX2m的居中范圍內(nèi)作用均布荷載,荷載大小為150KN/m^2,彈性地基剛度取20MN/m^3,板的彈性模量取30GPa,泊松比系數(shù)取0.2,試分析其在均布荷載作用下的結(jié)構(gòu)響應(yīng)。
手動設(shè)置彈簧的一個核心點(diǎn)便是如何確定不同位置處彈簧的彈性剛度,彈簧的彈性剛度(KN/m)=彈性地基剛度(KN/m^3)*彈簧節(jié)點(diǎn)投影面積(m^2)。顯然當(dāng)單元劃分大小不一致的時候,我們不可能手動去添加彈簧剛度,這樣工作量很大。解決方法便是利用APDL編程循環(huán)獲取彈簧節(jié)點(diǎn)對應(yīng)的面積,乘以地基剛度并賦予相關(guān)節(jié)點(diǎn)即可。
因而,如何獲取節(jié)點(diǎn)對應(yīng)的單元面積是建模的重要地方。一個思路便是采用*get命令獲取單元表面積,這對于殼單元是可以的。而對于實(shí)體單元,則可以通過表面效應(yīng)單元來間接獲取。
命令流如下:(篇幅所限,只列出核心命令流)
finish
/clear
/prep7
A=8$B=4$H=0.6
A1=3$B1=2
Q=150e3
ESF=2.0e7 !彈性地基剛度
ET,1,solid186
et,2,surf154 !輔助表面效應(yīng)單元
et,3,combin39
!單向彈簧設(shè)置
keyopt,3,4,0
keyopt,3,3,3
keyopt,3,1,0
keyopt,3,2,1
!==============
建模、劃分單元、建立表面效應(yīng)單元
!==============
!下列命令流為核心命令流
allsel,all
!選擇與地基相連的節(jié)點(diǎn)和單元
!此處考慮在整個模型中單元和節(jié)點(diǎn)號可能不連續(xù)的問題
!假定四邊形和三角形兩種單元
!獲得節(jié)點(diǎn)總數(shù),即彈簧個數(shù);單元總數(shù)
*get,tmmax,node,,num,max !整個模型的最大節(jié)點(diǎn)號
esel,s,type,,2
!此處需注意,我們只選擇各個單元角點(diǎn)處的節(jié)點(diǎn)
nsle,s,corner
*get,ntol,node,,count !節(jié)點(diǎn)總數(shù)
*get,etol,elem,,count !單元總數(shù)
*get,nmax,node,,num,max !最大節(jié)點(diǎn)號
*dim,nodno,,ntol !存儲節(jié)點(diǎn)號
*dim,nodk,,nmax !存儲各節(jié)點(diǎn)面積、彈簧剛度
*dim,eleno,,etol !存儲單元號
!獲得各個單元號
*get,e1,elem,,num,min
eleno(1)=e1
*do,i,2,etol
e1=elnext(e1)
eleno(i)=e1
*enddo
!獲得各節(jié)點(diǎn)號
*get,n1,node,,num,min
nodno(1)=n1
*do,i,2,ntol
n1=ndnext(n1)
nodno(i)=n1
*enddo
!求每個節(jié)點(diǎn)對應(yīng)的面積
*do,i,1,etol
ei=eleno(i)
n1=nelem(ei,1)
n2=nelem(ei,2)
n3=nelem(ei,3)
n4=nelem(ei,4)
*get,ai,elem,ei,area
*if,n3,ne,n4,then
ai=ai/4.0
nodk(n1)=nodk(n1)+ai
nodk(n2)=nodk(n2)+ai
nodk(n3)=nodk(n3)+ai
nodk(n4)=nodk(n4)+ai
*else
ai=ai/3.0
nodk(n1)=nodk(n1)+ai
nodk(n2)=nodk(n2)+ai
nodk(n3)=nodk(n3)+ai
*endif
*enddo
!求得彈簧剛度
!面積乘以彈性地基剛度
*do,i,1,nmax
nodk(i)=nodk(i)*ESF
*enddo
*do,i,1,ntol
ni=nodno(i)
r,i+1,0.01,nodk(ni)*0.01
*enddo
!創(chuàng)建彈簧單元
type,3
*do,i,1,ntol
ni=nodno(i)
!注意,此處為好觀察彈簧,所以沒有選擇重合,求解時,軟件會提示節(jié)點(diǎn)不重合的警告,一般而言,自己建模時可以重合節(jié)點(diǎn)。
n,tmmax+i,nx(ni),ny(ni),nz(ni)-0.5 !創(chuàng)建節(jié)點(diǎn)(重合)
real,i+1
e,ni,tmmax+i
*enddo
nsel,s,,,tmmax+1,tmmax+ntol
d,all,all
finish
!==============
求解,后處理
!==============
建立的彈簧單元如下所示:

細(xì)節(jié)如下:

求解結(jié)果對比:
采用前面方法計算出來的豎向位移云圖如下:

采用本方法計算出來的位移云圖如下:

各個彈簧單元的軸力如下:

從上述結(jié)果可見,采用手動彈簧時,最大位移為0.001846,采用前面方法最大位移為0.001847,兩者結(jié)果吻合。同時,從彈簧反力也可以看出,本例所有彈簧均受到壓力,無拉力產(chǎn)生,結(jié)果可信。
下期將闡述在ANSYS中如何實(shí)現(xiàn)單向彈簧,歡迎關(guān)注!
工程師必備
- 項(xiàng)目客服
- 培訓(xùn)客服
- 平臺客服
TOP




















