喵星人教你如何光滑ABAQUS輸出的不平滑曲線
原創
ABAQUS在Explicit求解器下的計算結果通常是不光滑的,這是由于Explicit求解過程不需要通過迭代修正計算殘差。然而對于沖擊問題或者斷裂力學等問題將不可避免的使用顯式求解。部分同學可能會通過MATLAB或Python等其他軟件的濾波器平滑曲線。實際上ABAQUS的后處理模塊下的選項卡“創建XY數據”-“操作XY數據”包含多種形式的光滑函數,今天就和喵星人一起看看吧~
1.Smooth & Smooth2
1.1 Smooth函數應用
Smooth函數在軟件中的操作入口如下圖所示:
ABAQUS用戶手冊中給出了該函數的解釋。喵星人翻譯如下:
smooth函數采用簡單移動平均法計算新的Y坐標值,即每個新Y坐標值均為若干鄰點的算術平均值。用戶可指定參與平均計算的鄰點數量:數值越大,生成的曲線越平滑。Abaqus/CAE將指定值解釋為當前X坐標左右兩側各取的點數(默認值為2,即使用5個數據點計算每個新Y坐標值)。
由此可見,Smooth函數采用周圍幾個點的算數平均值去除噪聲,概念相對清晰。這里喵星人采用Smooth函數平滑考慮焊縫斷裂的鋼連接滯回曲線,其中輸入參數點為5(實際上采用11個點進行平滑),對比效果如圖所示。由圖可知,平滑后的曲線基本位于原波動曲線中心,當平滑點增多時,曲線更加平滑,但在端部容易失真(這是由于端部不能取較多的數據點)。
1.2 Smooth2函數應用
Smooth2函數的軟件操作入口位于Smooth下方,喵星人翻譯用戶手冊如下:
smooth2函數采用指數移動平均法計算新的Y坐標值,即鄰點對結果Y坐標值的影響程度呈指數級增加。用戶可為曲線指定0至1之間的平滑系數:該值越小,生成的曲線越平滑(默認平滑系數為0.75)。
喵星人認為其中“指數移動平均法”是指賦予臨近數據更高的權重,較遠距離數據權重按指數規律衰減。話不多說,直接來看平滑后的效果(系數取0.1)。
由此可見,Smooth2函數確實能平滑曲線,但仔細對比數據可以發現,平滑后結果并不位于波動數據中心,而是沿較高值方向進行偏移。因此喵星人認為在這種情況下效果不及Smooth函數。
2.“套娃”的Smooth函數
這下喵星人要拿出必殺技了。可多次點擊Smooth函數進行“套娃”,函數界面如下(這里套娃2層,愛整活的可多套娃幾層~)。
這個時候的平滑效果基本與點數選取5的Smooth差不多,且均位于原曲線的波動中心。喵星人對這個結果非常滿意!
因此喵星人總結下來,在這個案例里面,采用“套娃”的Smooth函數平滑效率相對更高,操作也相對容易。
3.其他形式的濾波器
3.1 檢查并再次合并同類項
Abaqus還提供了各式各樣的濾波器。以下為用戶手冊中的濾波器列表。可見這些濾波器控制參數基本與頻率相關。與smooth不同的是,這些濾波器輸入的數據的X列必須單調遞增。對于滯回曲線這些X和Y數據均是周期往復的并不能直接使用。需單獨對荷載等進行光滑處理后,采用combine函數輸出滯回曲線。
這里喵星人給出采用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更加優異,但仍然偏離了原曲線的波動中心。不得不說的是,這些濾波器仍然有較多的應用場景,尤其對于某些沖擊問題的時間序列,可能有更好的平滑效果。
結語
通過以上案例,想必各位同學應該能發現如何評價一種光滑函數的合理性。喵星人認為需將光滑后的曲線和原曲線放在一起對比,結合試驗或其他概念進行判斷合理性。畢竟沒有放之四海而皆準的方法,具體問題具體分析方是永恒的真理!希望喵星人的技巧對您所有幫助!
工程師必備
- 項目客服
- 培訓客服
- 平臺客服
TOP




















