[英]How to identify node set names in an assembly in abaqus with Python scripting?
[英]How to extract load and displacement data for all steps on a particular node/node set using ABAQUS python scripting (without consuming licence)?
在 ABAQUS 中,我想使用python 腳本。
我已經通過使用帶有會話對象的腳本(從 ABAQUS CAE 會話期間生成的 .rpy 文件生成)來做到這一點。 我用來執行的命令是'ABAQUS CAE NOGUI=SCRIPT.py'。 它在使用 ABAQUS CAE 時消耗許可證。
我的條件是,我想為節點集“N100”上的所有步驟提取“現場輸出”結果(負載 ['RF'] 和位移 ['U']),而無需使用許可證。 即通過使用“odbAccess”庫。
我在 ABAQUS 文檔( http://dsk.ippt.pan.pl/docs/abaqus/v6.13/books/cmd/default.htm?startat=pt05ch09s05.html )中找到了一些相關的描述。 但是,我無法找到適合我需要的解決方案。ABAQUS 文檔中給出的腳本僅在最后一步提取載荷和位移結果,對於 ODB 文件中的所有節點也是如此。 我想提取所有步驟時間(不僅僅是最后一個)和特定節點/節點集的結果。 (lastFrame = odb.steps['Step-1'].frames[-1])
ABAQUS 文檔中給出的腳本無需使用任何許可證即可工作。
任何人都可以指導我嗎?
以下為所有模擬幀提取所有節點的“RF”和“U”。
part_instance = odb.rootAssembly.instances['PART-1-1']
for key in keys:
step = odb.steps[key]
frameRepository = step.frames
if len(frameRepository):
for frame in frameRepository:
print 'Id = %d, Time = %f\n'%(frame.frameId,frame.frameValue)
fo = frame.fieldOutputs
f1 = fo['U']
f2 = fo['RF2']
現在你只需要為你感興趣的特定節點過濾 f1 和 f2 變量。一個簡單的打印語句來理解 f1 和 f2 的結構真的可以幫助你。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.