非線性分析的時間步問題,你知道嗎?
有限元:
2017-05-25 09:13:38
閱讀數:
3388
分享到:
做非線性分析的都知道時間步的問題,這里來談談一些注意和基本概念。簡單地說,在解非線性問題的時候,我們把整個求解過程分成小段。對于結構問題,這種分段等同于把加載過程分成多個步,每步結構加載變化一點,直到完成整個加載過程。如果是動力問題,那么這個加載步可以理解為真正的時間區(qū)間(但也不一定,因為可以有子步)。如果是靜力問題,這個加載步就是很多求解器所謂的偽時間步。
容易混淆的概念是,劃分時間步這個計算步驟在原則上是和牛頓迭代無關的。因為牛頓迭代是在每個時間步內進行的子循環(huán)。直到迭代滿足收斂條件,計算才向下一步進行。這個過程圓環(huán)套圓環(huán)娛樂城的過程,導致了非線性求解的一系列特點和麻煩。
第一,收斂標準的問題。這個本質上是牛頓法需要探討的,但是因為時間步必須解決這個難點,所以在這里需要說說。在固體力學里面,收斂標準一般是三種,簡稱為UPW,分別指位移(U),加載(P),和做功(W)。每個量的收斂條件,本質都是衡量所在迭代步的相對誤差。理論上講,必須三個量都收斂才能保證計算結果穩(wěn)定和精確,但是如果根據問題可以放松,那么常用的量至少要保證U和P收斂。
第二,時間步的劃分問題。加載步多了求解時間長,少了不準確或者根本不收斂(因為牛頓法本質上只能求局部不動點),所以時間步的劃分是個藝術。這個問題沒有標準答案,只能說視具體情況而定。如果你的問題不太難,求解器自帶的自適應算法應該能夠自動調整步長。靜力自適應算法的本質,是計算到目前為止的時間步的收斂模式。簡單地說,如果求解器發(fā)現(xiàn)現(xiàn)在這步收斂得快,那么下一步步長就可以放寬點,如果收斂得慢或者搞不定,那么就得縮小步長?;旧鲜莻€猜猜猜的過程。
第三,動力問題時間步的問題。和靜力問題不同,動力問題有“真正”的時間,需要進行時間積分,所以時間步的劃分是根據積分算法來決定的。而積分算法應該根據具體問題來選擇。常用的算法,固體和結構分隱式和顯式:隱式基本上都在Newmark和HHT上玩系數,目的是保證精確性但又濾掉高頻的信號,而顯式基本上就是保證時間步盡量大但又不大到影響穩(wěn)定。流體基本上都是在Runge-Kutta和各種向后積分法中求穩(wěn)定。所以當積分法定了,時間步的選擇的大方向也就定了。普通用戶在這個時候可以和精力情形一樣,寄希望于自適應算法。動力問題的時間步自適應基本上分兩類。一類是調整步長以適應特定的結構振動頻率,一類是調整步長以適應特定的積分誤差。
第四,多尺度的問題。下面這三類常見問題,對于時間步的決定都是讓人頭疼的,本質上都是因為有空間/時間多尺度的特點:接觸問題(固體),湍流問題(流體),激波問題(固體和流體)。工程上解決的方式,本質上都是給模型添加穩(wěn)定性,即所謂的數值減振/衰減。這里面問題就太多,以后慢慢聊。
本文出自深圳有限元科技有限公司官網:m.tyrp.net 轉載請注明