Python提取Abaqus SPH結果粒子位置

Abaqus軟件后處理中SPH粒子的渲染真的太差了,粒子大小、光照等都沒有有效的調整方法,于是想著從ODB文件中讀取出粒子位置信息,提取出來的信息還可以用于其他后處理及渲染等。

但是有很多問題:1. PC3D粒子的信息怎么輸出?與節點關系如何對應?2. 可以在界面上選擇節點編號查詢節點,但是批量怎么讀取?3. fieldOutput中物理量只有位移等,沒有當前坐標。

想了一個笨辦法:

  1. 先在后處理模塊中用“Display Group”功能顯示所有流體粒子,然后利用查詢功能獲得所有當前粒子的label,存到一個列表中;

  2. 在odb文件的assembly對象中獲得上面粒子label編號列表對應的節點的坐標,就是初始坐標。

  3. 在steps.frames對象中獲得位移場變量,位移是一個容器,里面存儲了所有節點的位移,找出流體對應節點的位移,位移與初始坐標的和就是當前坐標。

  4. 將查詢到的結果(包括節點當前坐標、節點位移值等)按照節點順序寫入vtk文件,利用paraview進行可視化。

dambreak.gif

如下為讀取及寫入vtk文件的Python代碼 

以下內容為付費內容,請購買后觀看

   6人購買

Abaqus SPH后處理,讀取PC3D粒子坐標

App下載
技術鄰APP
工程師必備
  • 項目客服
  • 培訓客服
  • 平臺客服

TOP

2
2
6