0
我在Abaqus 6.11中運行了一個動態模擬,並且需要一種以高效方式輸出結果的方法。我想報告所有時間步驟中所有節點的速度(以及其他數量)。在GUI中,我可以創建一個字段輸出並一次選擇一個步驟進行報告,但這種方法並不實用。有誰知道如何做到這一點?最後,我希望獲得包含我需要的數據的一個/多個rpt文件。然後我可以在Matlab中編寫腳本來讀取/執行數據操作。在Abaqus中輸出動態結果
謝謝
我在Abaqus 6.11中運行了一個動態模擬,並且需要一種以高效方式輸出結果的方法。我想報告所有時間步驟中所有節點的速度(以及其他數量)。在GUI中,我可以創建一個字段輸出並一次選擇一個步驟進行報告,但這種方法並不實用。有誰知道如何做到這一點?最後,我希望獲得包含我需要的數據的一個/多個rpt文件。然後我可以在Matlab中編寫腳本來讀取/執行數據操作。在Abaqus中輸出動態結果
謝謝
你應該寫一個腳本來爲你自動完成這個過程。由於Abaqus公開了用於編寫Python腳本的接口,因此您應該嘗試一下。
如果你從來沒有這樣做過,那麼手動爲一步/幀創建一個字段報告,然後打開abaqus.rpy文件來查看創建單個輸出所需的代碼。一旦你找出如何做一步,寫一個循環的腳本來完成所有步驟。
打開abaqus.rpy文件時,可能會有很多代碼,具體取決於您以前發出的命令數。你需要尋找的東西看起來像
session.writeFieldReport(some parameters...)
您編寫的腳本可以通過'文件>運行腳本'運行。
如果你需要寫腳本的實際幫助,也許你應該打開一個具體問題的問題。
謝謝,這對我所需要的是完美的。跟進問題。所以我的代碼到目前爲止看起來像︰對於我在範圍內(1500): session.writeFieldReport( fileName ='C:/ Temp/Dynamic Particles(Same)(1-29-15)/ Velocity(t = 1)。 rpt', append = ON,sortItem ='Node Label',odb = odb,step = 0,frame = i, outputPosition = NODAL,variable =(('V',NODAL),))我更新文件名中的t = 1以使用for循環更新。例如,i = 1 t = 1,i = 2 t = 2,...等。 – 2015-02-05 19:23:31
您應該使用字符串格式化,或者使用模數語法或'format'函數。檢查這個http://stackoverflow.com/questions/5082452/python-string-formatting-vs-format – hgazibara 2015-02-05 20:07:07