ABAQUS中是如何進(jìn)行計(jì)算的
工欲善其事必先利其器。
因?yàn)锳BAQUS畢竟是一款通用求解器,雖然在大多數(shù)情況下ABAQUS的功能都是夠用的,但是涉及到調(diào)用子程序的時(shí)候,我們就必須要清楚ABAQUS中的計(jì)算模式。

上面這個(gè)圖的意思是一個(gè)靜態(tài)分析,有兩個(gè)分析步,每一個(gè)分析步對應(yīng)的時(shí)間都是1秒,那么總的時(shí)間就用STEP(2)來記錄,相應(yīng)的,對于每一個(gè)單獨(dú)的分析步用STEP(1)來記錄分析時(shí)間。
同時(shí),每一個(gè)分析步中都對應(yīng)不同的增量對應(yīng)的是圖中的Increment,單獨(dú)一個(gè)分析步中增量的和是1。
清楚ABAQUS中分析步的計(jì)數(shù)與增量之后,再來看計(jì)算信息的寫入。

對于一般的2D單元(不考慮縮減積分或者其他的算法),有4個(gè)節(jié)點(diǎn)和4個(gè)積分點(diǎn)。

對于一般的3D單元(不考慮縮減積分或者其他的算法),有8個(gè)節(jié)點(diǎn)和8個(gè)積分點(diǎn)。為什么3D單元我沒有顯示積分節(jié)點(diǎn)呢?因?yàn)榉e分節(jié)點(diǎn)在單元的內(nèi)部,所以沒有顯示。
下面我以下面的簡單模型為例,來解釋一下ABAQUS當(dāng)中的數(shù)據(jù)是如何存儲的,只有了解了ABAQUS是如何存儲數(shù)據(jù)的,我們才能更方便直接的提取我們需要的信息。

ABAQUS中的計(jì)算也是根據(jù)順序來進(jìn)行的,這也是為什么單元編號和節(jié)點(diǎn)編號那么重要的原因。

如上圖所示,首先在計(jì)算開始前,ABAQUS首先會記錄基本信息,比如分析步的編號,增量的編號,分析步時(shí)間,總分析時(shí)間,單元編號,單元的積分點(diǎn)標(biāo)紅,單元坐標(biāo)(ABAQUS當(dāng)中,單元的節(jié)點(diǎn)編號順序定義了單元的法向)等。
假如是第一個(gè)分析步,第一增量大小是0.1,那么基本信息如圖所示。然后將這些信息傳入到內(nèi)部進(jìn)行計(jì)算,再輸出計(jì)算的信息(第一個(gè)單元的第一個(gè)積分點(diǎn)),計(jì)算完畢之后再把信息放在對應(yīng)的位置上。ABAQUS當(dāng)中計(jì)算信息是以數(shù)據(jù)條進(jìn)行存儲的,其中具體存儲信息對應(yīng)的位置由KEY值去區(qū)別(我記得是KEY值,也可能是record 什么之類的),詳細(xì)信息可以去幫助文檔Abaqus Analysis?User's Guide\Output\5.1.2 Results file output format?中去查看。

這個(gè)圖的意思就是第二個(gè)分析步,第一個(gè)增量的大小是0.1,可以看到最大的區(qū)別是TIME(2)編程了1.1,因?yàn)門IME(2)記錄的是總的計(jì)算時(shí)間,同時(shí)這也是演示的第一個(gè)單元的第三個(gè)積分點(diǎn)的部分信息寫入。
對于一個(gè)完整的模型,ABAQUS就是從第一個(gè)單元的第一個(gè)積分節(jié)點(diǎn)開始,然后是第二個(gè)積分節(jié)點(diǎn),直至最后一個(gè)積分節(jié)點(diǎn)去進(jìn)行計(jì)算與信息的寫入。第一個(gè)單元計(jì)算完畢之后進(jìn)行第二個(gè)單元,以此類推完成所有單元的計(jì)算,并以Fortran的格式寫入到結(jié)果文件。
以上就是對ABAQUS的計(jì)算與信息錄入的一個(gè)簡單介紹,因?yàn)槲乙彩遣煊X自己語言組織能力不行,所以來這里進(jìn)行鍛煉的,如果有疑惑不解的地方大家也可以去油管當(dāng)中去搜一下,油管里面也有關(guān)于ABAQUS子程序的一些介紹。