喵星人教你如何光滑ABAQUS輸出的不平滑曲線

ABAQUS在Explicit求解器下的計算結果通常是不光滑的,這是由于Explicit求解過程不需要通過迭代修正計算殘差。然而對于沖擊問題或者斷裂力學等問題將不可避免的使用顯式求解。部分同學可能會通過MATLAB或Python等其他軟件的濾波器平滑曲線。實際上ABAQUS的后處理模塊下的選項卡“創建XY數據”-“操作XY數據”包含多種形式的光滑函數,今天就和喵星人一起看看吧~

1.Smooth & Smooth2

1.1 Smooth函數應用

Smooth函數在軟件中的操作入口如下圖所示:

喵星人教你如何光滑ABAQUS輸出的不平滑曲線的圖1


ABAQUS用戶手冊中給出了該函數的解釋。喵星人翻譯如下:

smooth函數采用簡單移動平均法計算新的Y坐標值,即每個新Y坐標值均為若干鄰點的算術平均值。用戶可指定參與平均計算的鄰點數量:數值越大,生成的曲線越平滑。Abaqus/CAE將指定值解釋為當前X坐標左右兩側各取的點數(默認值為2,即使用5個數據點計算每個新Y坐標值)。

由此可見,Smooth函數采用周圍幾個點的算數平均值去除噪聲,概念相對清晰。這里喵星人采用Smooth函數平滑考慮焊縫斷裂的鋼連接滯回曲線,其中輸入參數點為5(實際上采用11個點進行平滑),對比效果如圖所示。由圖可知,平滑后的曲線基本位于原波動曲線中心,當平滑點增多時,曲線更加平滑,但在端部容易失真(這是由于端部不能取較多的數據點)。

喵星人教你如何光滑ABAQUS輸出的不平滑曲線的圖2


1.2 Smooth2函數應用

Smooth2函數的軟件操作入口位于Smooth下方,喵星人翻譯用戶手冊如下:

smooth2函數采用指數移動平均法計算新的Y坐標值,即鄰點對結果Y坐標值的影響程度呈指數級增加。用戶可為曲線指定0至1之間的平滑系數:該值越小,生成的曲線越平滑(默認平滑系數為0.75)。

喵星人認為其中“指數移動平均法”是指賦予臨近數據更高的權重,較遠距離數據權重按指數規律衰減。話不多說,直接來看平滑后的效果(系數取0.1)。

喵星人教你如何光滑ABAQUS輸出的不平滑曲線的圖3


由此可見,Smooth2函數確實能平滑曲線,但仔細對比數據可以發現,平滑后結果并不位于波動數據中心,而是沿較高值方向進行偏移。因此喵星人認為在這種情況下效果不及Smooth函數。

2.“套娃”的Smooth函數

這下喵星人要拿出必殺技了。可多次點擊Smooth函數進行“套娃”,函數界面如下(這里套娃2層,愛整活的可多套娃幾層~)。



喵星人教你如何光滑ABAQUS輸出的不平滑曲線的圖4



這個時候的平滑效果基本與點數選取5的Smooth差不多,且均位于原曲線的波動中心。喵星人對這個結果非常滿意!


喵星人教你如何光滑ABAQUS輸出的不平滑曲線的圖5


因此喵星人總結下來,在這個案例里面,采用“套娃”的Smooth函數平滑效率相對更高,操作也相對容易。

3.其他形式的濾波器

3.1 檢查并再次合并同類項

Abaqus還提供了各式各樣的濾波器。以下為用戶手冊中的濾波器列表。可見這些濾波器控制參數基本與頻率相關。與smooth不同的是,這些濾波器輸入的數據的X列必須單調遞增。對于滯回曲線這些X和Y數據均是周期往復的并不能直接使用。需單獨對荷載等進行光滑處理后,采用combine函數輸出滯回曲線。

喵星人教你如何光滑ABAQUS輸出的不平滑曲線的圖6


這里喵星人給出采用butterworthFilter函數平滑滯回曲線后的結果。輸入函數格式為:

combine ( "U2 PI: rootAssembly N: 1 NSET RP-1-1",butterworthFilter ( xyData="RF2 PI: rootAssembly N: 1 NSET RP-1-1" , cutoffFrequency=0.5 ) )

平滑效果如下圖:可見曲線平滑效果似乎比Smooth和Smooth2更加優異,但仍然偏離了原曲線的波動中心。不得不說的是,這些濾波器仍然有較多的應用場景,尤其對于某些沖擊問題的時間序列,可能有更好的平滑效果。

喵星人教你如何光滑ABAQUS輸出的不平滑曲線的圖7


結語

通過以上案例,想必各位同學應該能發現如何評價一種光滑函數的合理性。喵星人認為需將光滑后的曲線和原曲線放在一起對比,結合試驗或其他概念進行判斷合理性。畢竟沒有放之四海而皆準的方法,具體問題具體分析方是永恒的真理!希望喵星人的技巧對您所有幫助!

登錄后免費查看全文
立即登錄
App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

5
1
6