
發布
注冊
/
登錄ansys的時間步的案例
ANSYS各種時間步求解方法比較
ANSYS各種時間步求解方法比較
ANSYS各種時間步求解方法比較.pdf
ANSYS各種時間步求解方法比較.pdf
AUTODYN 時間步太小
炸藥在空氣中爆炸,總會出現時間步太小,解決方法:
空氣的材料模型,將Erosion更改為-timestep:1e-10ms
你知道時間步嗎?
常用的算法,固體和結構分隱式和顯式:隱式基本上都在Newmark和HHT上玩系數,目的是保證精確性但又濾掉高頻的信號,而顯式基本上就是保證時間步盡量大但又不大到影響穩定。流體基本上都是在Runge-Kutta和各種向后積分法中求穩定。所以當積分法定了,時間步的選擇的大方向也就定了。普通用戶在這個時候可以和精力情形一樣,寄希望于自適應算法。動力問題的時間步自適應基本上分兩類。一類是調整步長以適應特定的結構振動頻率,一類是調整步長以適應特定的積分誤差。
第四,多尺度的問題。下面這三類常見問題,對于時間步的決定都是讓人頭疼的,本質上都是因為有空間/時間多尺度的特點: 接觸問題(固體),湍流問題(流體),激波問題(固體和流體)。工程上解決的方式,本質上都是給模型添加穩定性,即所謂的數值減振/衰減。
轉自公眾號——ANSYS學習與應用
旨在分享,若侵即刪.
展開 仿真分析中時間步的認識
仿真分析中時間步的認識
做非線性分析的都知道時間步的問題,這里來談談一些注意和基本概念。簡單地說,在解非線性問題的時候,我們把整個求解過程分成小段。對于結構問題,這種分段等同于把加載過程分成多個步,每步結構加載變化一點,直到完成整個加載過程。如果是動力問題,那么這個加載步可以理解為真正的時間區間(但也不一定,因為可以有子步)。如果是靜力問題,這個加載步就是很多求解器所謂的偽時間步。
容易混淆的概念是,劃分時間步這個計算步驟在原則上是和牛頓迭代無關的。因為牛頓迭代是在每個時間步內進行的子循環。直到迭代滿足收斂條件,計算才向下一步進行。這個過程圓環套圓環的過程,導致了非線性求解的一系列特點和麻煩。
第一,收斂標準的問題。這個本質上是牛頓法需要探討的,但是因為時間步必須解決這個難點,所以在這里需要說說。在固體力學里面,收斂標準一般是三種,簡稱為UPW,分別指位移(U),加載(P),和做功(W)。每個量的收斂條件,本質都是衡量所在迭代步的相對誤差。理論上講,必須三個量都收斂才能保證計算結果穩定和精確,但是如果根據問題可以放松,那么常用的量至少要保證U和P收斂。
第二,時間步的劃分問題。加載步多了求解時間長,少了不準確或者根本不收斂(因為牛頓法本質上只能求局部不動點),所以時間步的劃分是個藝術。這個問題沒有標準答案,只能說視具體情況而定。如果你的問題不太難,求解器自帶的自適應算法應該能夠自動調整步長。靜力自適應算法的本質,是計算到目前為止的時間步的收斂模式。簡單地說,如果求解器發現現在這步收斂得快,那么下一步步長就可以放寬點,如果收斂得慢或者搞不定,那么就得縮小步長。基本上是個猜猜猜的過程。
第三,動力問題時間步的問題。和靜力問題不同,動力問題有“真正”的時間,需要進行時間積分,所以時間步的劃分是根據積分算法來決定的。而積分算法應該根據具體問題來選擇。
展開 
FEA的核心思想-仿真時間步-隱式算法顯示算法
時間步理解
做非線性分析的都知道時間步的問題,這里來談談一些注意和基本概念。簡單地說,在解非線性問題的時候,我們把整個求解過程分成小段。對于結構問題,這種分段等同于把加載過程分成多個步,每步結構加載變化一點,直到完成整個加載過程。如果是動力問題,那么這個加載步可以理解為真正的時間區間(但也不一定,因為可以有子步)。如果是靜力問題,這個加載步就是很多求解器所謂的偽時間步。
容易混淆的概念是,劃分時間步這個計算步驟在原則上是和牛頓迭代無關的。因為牛頓迭代是在每個時間步內進行的子循環。直到迭代滿足收斂條件,計算才向下一步進行。這個過程圓環套圓環的過程,導致了非線性求解的一系列特點和麻煩。
第一,收斂標準的問題。這個本質上是牛頓法需要探討的,但是因為時間步必須解決這個難點,所以在這里需要說說。在固體力學里面,收斂標準一般是三種,簡稱為UPW,分別指位移(U),加載(P),和做功(W)。每個量的收斂條件,本質都是衡量所在迭代步的相對誤差。理論上講,必須三個量都收斂才能保證計算結果穩定和精確,但是如果根據問題可以放松,那么常用的量至少要保證U和P收斂。
第二,時間步的劃分問題。加載步多了求解時間長,少了不準確或者根本不收斂(因為牛頓法本質上只能求局部不動點),所以時間步的劃分是個藝術。這個問題沒有標準答案,只能說視具體情況而定。如果你的問題不太難,求解器自帶的自適應算法應該能夠自動調整步長。靜力自適應算法的本質,是計算到目前為止的時間步的收斂模式。簡單地說,如果求解器發現現在這步收斂得快,那么下一步步長就可以放寬點,如果收斂得慢或者搞不定,那么就得縮小步長。基本上是個猜猜猜的過程。
第三,動力問題時間步的問題。和靜力問題不同,動力問題有“真正”的時間,需要進行時間積分,所以時間步的劃分是根據積分算法來決定的。而積分算法應該根據具體問題來選擇。
展開 abaqus系列技巧14:聊一聊分析步時間的概念
開篇聲明:對象為剛接觸abaqus的同學,力求深入淺出,不求嚴謹
最近經常有群友提出不理解abaqus中定義的分析步時間是什么意思。
就是上面圖畫紅框的地方。
我這里不著急解釋,先來帶大家復習兩個方程
其中2.1方程對應著abaqus中的顯式分析,下面那個KX=F,對應著abaqus中的隱式分析。
我們來看下這兩個方程,2-1方程中涉及到速度和加速度,這兩個概念都和時間有關,一個是時間的一階導數,一個是時間的二階導數,所以一旦進行顯式分析,時間是必不可少的,而且具有實際意義的。
再看下面那個方程,與時間毫無影響,所以在隱式分析中,時間毫無意義。那么這里的時間代表什么呢?
這里的時間,其實應該配合幅值曲線一起來看,代表載荷加載的階段。推薦大家讀下我前面一個帖子:詳解abaqus幅值曲線,就能明白填1也好,填100也好,都代表的載荷的加載過程,不影響實際的結果。
如上圖中的第一個圖,就是默認的幅值曲線,默認的時間為1的情況。這時候的載荷的加載是按照斜率增加的。我們因此可以得到下面的應用
如果我們的載荷是100N,其他默認。單面當step1完成的時候,就是加載完成了,得到了我們想要的結果。那么如果我們想要50N的載荷需要重新算下么?你如果在step中可以找到0.5S時候的輸出,就不用再算了,step=0.5 的時候的載荷,就是50N,這時候的結果云圖就是你需要的。
想獲得幻想飛翔最新CAE技術文章,請關注幻想飛翔公眾賬號:幻想飛翔CAE。
想獲得幻想飛翔最新CAE技術文章,請關注幻想飛翔公眾賬號:幻想飛翔CAE。
,
也歡迎加入群516073058進行交流
展開 ANSYS WORKBENCH-多載荷步的例子-APDL
本問題可以直接在wb中用多載荷步來求解,這里說明如何使用插入APDL命令的方式實現。
【求解過程】
1. 打開ANSYS WORKBENCH14.5
2.創建結構靜力學分析系統。
3.創建幾何體。
雙擊geometry單元格,進入DM,選擇mm單位。
創建長方體。
其尺寸設置是
退出DM.
4.劃分網格。
雙擊MODEL,進入到MECHANICAL中,按照默認方式劃分網格。
5.固定左端面。
6.添加APDL命令以分步加載。
下面使用APDL命令進行分步加載。
由于該命令最后要傳遞到經典界面中計算,而經典界面沒有單位。為保持統一性,都用毫米單位。
(1)設置單位
(2)創建命名集。
由于在命令中要引用頂面這個面,為了能夠正確引用,先需要給它一個名稱,這需要使用命名集來完成。
選擇上述頂面,創建命名集。在彈出的對話框中設置名字:topface
則樹形大綱中出現了該命名集。
有了命名集,在后面就可以使用該名字了。
(3)插入APDL命令。
在數形大綱中先選擇A5,再從工具欄中選擇命令按鈕
則圖形窗口變成了一個文本編輯器,此處可以輸入命令。
該文本窗口內說了很多話,主要內容包含兩點:
第一,這些命令會在SOLVE命令剛執行前執行。
第二,注意這里用的單位是mm.
現在我們向該文本窗口輸入下列命令。
這段ADPL命令流的含義是:
首先退出前面的某個處理器(finish)
然后進入到求解器中(/solve),在1,2,3,個時間步,依次在頂面上施加1,2,3mpa的載荷(sf),并將該載荷步寫入到載荷步文件中(lswrite),然后先后求解這三個載荷步(lssolve)。
展開 怎樣理解ANSYS中的載荷步?
比如,第一個荷載步,對關鍵點1施加10kn,第二荷載步也對關鍵點1施加10kn,則這兩個荷載步結果是完全一致的。第一個荷載步, 對節點1施加10kn,第二荷載步也對節點1施加10kn,而且用命令fcum,add則第二荷載步是20kn的結果。
靜力分析和瞬態分析中得區別:靜力分析中時間的概念是虛,只要實現荷載步就行了,所以這里的荷載步的概念就主要是荷載的問題。瞬態分析通常是很多荷載步,在和時間有關系的分析中,time的值就是表示真實的時間值。
荷載步中的一個設置,那就是kbc :是的,比如第一荷載步對節點1施加了10kn,采用的是漸變荷載,第二荷載步對節點1又施加了10kn,且fcum,add,則在1.6s時的結果就是這個荷載10+10*0.6=16kn對應的結果。階躍的就沒有這個說法,就直接變換過去啊,如果是階躍,1.6s應該是20
展開 基于ansys的鋼管彎曲回彈的載荷步設置
之前想用ansys-dyna來做的,老師要求我用ansys來做靜態仿真。我設置了兩個載荷步,一是下壓,二是回彈(就是撤去壓力)。這其中還有接觸。
我做了仿真,發現下壓時是容易收斂的,但是回彈時的第一個子步很不容易收斂(這是我想要請教大家的,這個該怎么解決),不過一旦收斂后面的子步就很容易收斂。這里想向大家請教一下,我該如何設置回彈的載荷步,來解決這個問題。
其實我是想兩個載荷步都是線性變化的,這樣就會慢慢加載和慢慢卸載,但是我發現加載是線性的,卸載好像是一個子步完成的,雖然我設置了kbc,0,但是卸載我覺得還是階躍的。
這是我后處理里對其中一個節點的位移時間圖。
可以看到它的回彈是很短時間里發生的,我初步設想是如果以線性的方式回彈這樣可能容易收斂,不知道我這種想法科學么。
而且,我猜想回彈時不收斂的原因是,回彈時載荷突然變為0,這樣接觸可能有問題,以上是小弟自己的想法,想和大家探討和學習,來找到辦法解決回彈不收斂。
這是我的模型加載圖
展開 ANSYS如何在荷載步之間改變材料屬性
部分同學的想法是在計算到這種情況下直接改變材料的屬性,然而此種做法帶來的后果便是前面計算的結果根本對后續無用,那么在ANSYS中如何實現這種在荷載步之間改變材料屬性呢?
今日水哥以一個簡單的例子來說在荷載步之間改變材料屬性的大概思路(其實就是利用ANSYS的重啟動功能),僅供朋友們參考。
某截面尺寸為100x100的柱子,長度500,頂端受均布荷載作用,假定結構的極限位移限制為4mm,結構初始均布荷載為10MPa,分20步加載,每步加載10MPa,結構初始彈性模量為2Gpa,極限彈性模量為20Gpa,當結構位移大于極限位移的0.5倍時,材料的彈性模量會線性增加,試采用ANSYS分析此類情況。
命令流如下:
finish
/clear
/prep7
!初始彈性模量
FF0=10
!極限位移
ucC=4
!總共荷載步
nstnumber=20
!初始彈性模量
EX0=2.0e3
!極限彈性模量
EXU=2.0e4
!結構最大位移
UZmax=0
!==============
et,1,solid95
mp,ex,1,ex0
mp,prxy,1,0.3
blc4,,,100,100,500
esize,10
vmesh,all
!===============
/solu
!輸出Restart文件
rescontrl,define,all,-1,1
da,1,all,0
finish
save
!分步加載
*do,i,1,nstnumber
/solu
!使用重啟動功能
*if,i,gt,1,then
antype,,rest
parres,change,param,txt
*endif
!
展開 看強大的ANSYS如何一步步走來
963
ANSYS的創辦人 John Swanson博士任職于美國賓州匹茲堡西屋公司的太空核子實驗室。當時他的工作之一是為某個核子反應火箭作應力分析。為了工作上的需要,Swanson博士寫了一些程序來計算加載溫度和壓力的結構應力和變形。幾年下來,建立在Wilson博士原有的有限元素法熱傳導程序上,擴充了不少三維分析的程序,包括了板殼,非線性,塑性,潛變,動態全程等。此程序當時命名為STASYS (Structural Analysis System)。Swanson博士當時就相信,利用這樣整合及一般性的有限元素法程序來取代復雜的手算,可以替西屋及其它許多公司省下大量時間和金錢。不過當初西屋并不支持這樣的想法。所以Swanson博士于1969年離開西屋,在臨近匹茲堡的家中車庫創立了他自己的公司Swanson Analysis Systems Inc (SASI)。1970結束之前,商用軟件ANSYS宣告誕生,而西屋也成為他的第一個顧客。
1979
ANSYS 3.0版開始可以在VAX 11-780迷你計算機上執行。此時ANSYS已經由定格輸入模式演化到指令模式,并可以在Tektronix 4010及4014單色向量繪圖屏幕上顯示圖形。稍為像樣一點的模型,通常要花20至30分鐘來顯示隱線圖型。節點和元素都必需一筆一筆建立,完全沒有辦法導入外部幾何模型。用戶大量使用NGEN, EGEN, RPnnn等指令來建構模型,當時并已有簡單的幾何前處理器PREP7。
1984
ANSYS 4.0開始支持PC。當時使用的芯片是Intel 286,使用指令互動的模式,可以在屏幕上繪出簡單的節點和元素。不過這時后還沒有Motif規格的圖形界面。
展開 
ANSYS在荷載步之間改變材料屬性例子
ANSYS在荷載步之間改變材料屬性例子
! Example of modify material between load steps in ANSYS
! 材料泊松比隨荷載增加而逐步增大
! 作者:陸新征 清華大學土木系
! Author: Lu Xinzheng Dept. Civil Engrg. of Tsinghua University
[Money=50]
FINISH
/CLEAR
/PREP7
FORCE=1. !初始荷載
FC=30. !極限荷載
NSTEP=30 !加載步數
EMU0=0.2 !初始泊松比為0.2
EMUU=0.499 !最終泊松比為0.499
SVM=0. !VON MISES應力
!*
ET,1,SOLID45
!*
!*
MP,EX,1,30E3
MP,NUXY,1,EMU0
!建立模型
BLC4,0,0,100,100,100
ESIZE,100,0,
VMESH,ALL
/SOLU
!輸出RESTART文件
RESCONTRL,DEFINE,ALL,-1,1
NLGEOM,1
D,2,ALL
D,4,UY
D,5,UY
D,6,UY
D,5,UX
FINISH
SAVE
!分步加載
*DO,I,1,NSTEP
FINISH
/SOLU
!使用重啟動功能
*IF,I,GT,1,THEN
ANTYPE,,REST,
PARRES, CHANGE , PARAM, TXT,
*ENDIF
! 如果荷載超過強度的50%,則線性提高泊松比
*IF,SVM,GE,FC*0.5,THEN
MP,EX,1,30E3
MP,NUXY,1,EMU0+(EMUU-EMU0)*(SVM/FC-0.5)/0.5
*ENDIF
!得到下一步荷載
FORCE=FORCE+1
!
展開 如何在ANSYS WORKBENCH中進行多載荷步的靜力分析?
來源:宋博士的博客,版權歸作者所有。
在ANSYS WORKBENCH中插入APDL命令例子--多載荷步的例子
【問題分析】
本問題可以直接在wb中用多載荷步來求解,這里說明如何使用插入APDL命令的方式實現。
【求解過程】
1. 打開ANSYS WORKBENCH14.5
2.創建結構靜力學分析系統。
3.創建幾何體。
雙擊geometry單元格,進入DM,選擇mm單位。
創建長方體。
其尺寸設置是
退出DM.
4.劃分網格。
雙擊MODEL,進入到MECHANICAL中,按照默認方式劃分網格。
5.固定左端面。
6.添加APDL命令以分步加載。
下面使用APDL命令進行分步加載。
由于該命令最后要傳遞到經典界面中計算,而經典界面沒有單位。為保持統一性,都用毫米單位。
(1)設置單位
(2)創建命名集。
由于在命令中要引用頂面這個面,為了能夠正確引用,先需要給它一個名稱,這需要使用命名集來完成。
選擇上述頂面,創建命名集。在彈出的對話框中設置名字:topface
則樹形大綱中出現了該命名集。
有了命名集,在后面就可以使用該名字了。
(3)插入APDL命令。
在數形大綱中先選擇A5,再從工具欄中選擇命令按鈕
則圖形窗口變成了一個文本編輯器,此處可以輸入命令。
該文本窗口內說了很多話,主要內容包含兩點:
第一,這些命令會在SOLVE命令剛執行前執行。
第二,注意這里用的單位是mm.
現在我們向該文本窗口輸入下列命令。
這段ADPL命令流的含義是:
首先退出前面的某個處理器(finish)
然后進入到求解器中(/solve),在1,2,3,個時間步,依次在頂面上施加1,2,3mpa的載荷(sf),并將該載荷步寫入到載荷步文件中(lswrite),然后先后求解這三個載荷步(lssolve)。
展開 ANSYS施加隨時間變化載荷的方法
ANSYS施加隨時間變化載荷的方法
長安CAE
1 概述
在用ANSYS計算時經常會遇到載荷隨時間變化的情況,比如隨時間而變化的力、溫度等,在處理此類問題時,即施加隨時間歷程而不同變化的載荷,比較常用的有兩種方法,一種是逐步加載,一種是利用載荷文件。
2 方法
逐步加載的方法適用于載荷變化不多的情況,比如圖1中,載荷曲線中的點僅有6個,(0,0),(0.0015,2.5),(0.025,2.5),(0.035,1.5),(0.045,1.5),(0.051,0),對于此種情況,采用逐步加載的方法還是比較適合的。
圖1 載荷曲線
具體加載時,在求解處理器里面,通過定義不同的time值,實現不同的時間點,對應此6個載荷點,方法如下:
Time,0.0015
!選擇對象施加載荷2.5
Time,0.025
!選擇對象施加載荷2.5
Time,0.035
!選擇對象施加載荷1.5
Time,0.045
!選擇對象施加載荷1.5
Time,0.051
!選擇對象施加載荷0
!求解……
在設置載荷增長方式時可以設置KBC的值為1,這樣ANSYS 在處理兩個時間點的載荷時采用線性的方法,即最后的施加的載荷肯定如圖1所示。
當載荷時間點特別多時,比如振動載荷,比如地震加速度這一類,數據特別多,采用重復加載的方法工作量太大,修改也不方便,此時比較好的選擇是利用載荷文件。
可以將載荷與對應的時間輸出到txt文件,如圖2所示,左邊一列是時間,右邊是對應的載荷數據。
圖2 載荷文件
ANSYS在施加載荷時,先讀取txt文件中的內容,保存成數組,然后通過循環遍歷數組的數據加載。
*Dim,Prs,array,2,22,0,,, !定義數組Prs
*Create,ansuitmp !
展開