Abaqus與python
2016-12-27 by:CAE仿真在線 來源:互聯網
Abaqus軟件提供的二次開發接口兩種:Fortran開發的用戶子程序,主要用于自定義本構關系、自定義單元等;二是在python語言基礎上進行定制開發,主要用于前處理(例如,快速建模)、后處理(例如創建和訪問輸出數據庫)、自定義模型(例如自動后處理)等。
Python接口允許用戶繞過ABAQUS/CAE的GUI界面,直接與內核交互。
使用Python編寫的包含腳本接口命令的程序可實現如下功能:
1、在Abaqus輸入文件(Input file)中,用Python腳本定義關鍵詞*Parameter項下的數據行,例如有的關鍵字在Abaqus/CAE界面中沒有,則需要在inp文件里添加。
2、能夠實現自動化過程,編寫腳本可以實現各種判斷語句、循環語句、數據存儲等,例如對一個過程進行多次重復計算,將會是一個繁瑣的過程,使用python編程則可以自動實現這個功能。
3、能夠實現參數化分析,編寫腳本可以進行參數化分析、優化分析、系統分析、多系列多型號的產品分析等,使產品的設計更加合理,產品研發周期更短。
學習編寫Python腳本
借助于abaqus.rpy文件,Abaqus/CAE中的每一步操作都記錄在abaqus.rpy中。Rpy文件可以使用PythonReader.exe軟件來查看內容??梢訡AE與python混合建模,不會的命令就利用CAE生成,然后用PythonReader打開并進行修改,可以彌補不熟悉python的缺點,逐句修改python語句,可以去掉一些不必要的語句。
Abaqus的python看似繁瑣,但有著固定、嚴謹的結構,很多都是固定格式,因此并不難理解。
下面是提取結果中應力的Python命令:
#coding=utf-8
fromabaqus import *
fromabaqusConstants import *
fromodbAccess import *
importnumpy as np
OdbFilePath= 'E:\SD2014\TEST\'
#OdbFileName= 'TEST.odb'
#OdbFile= OdbFilePath + OdbFileName
OdbFile='E:\SD2014\TEST\TEST.odb'
outfilename= OdbFilePath + 'STRESS.txt'
nodesetname='NSET-SZ'
#intancename='PART-1-1'
#打開ODB文件
Odb =odbAccess.openOdb[OdbFile]
if notintancename: intancename = Odb.rootAssembly.instances.keys()[-1]
nodeset= Odb.rootAssembly.instances[intancename].nodeSets[nodesetname]
lastStep = Odb.steps.keys()[-1]
lastFrame= Odb.steps[lastStep].frames[-1]
# 提取YY方向應力, 如需要XX或其它方向應力, 可更改x.data[0]或其它
stress_field= lastFrame.fieldOutputs['S']
stress_field_nodset= stress_field.getSubset(region=nodeset, position=ELEMENT_NODAL)
nset_val= stress_field_nodset.values
stress_data= map(lambda x:[x.nodeLabel, x.data[2]], nset_val)

只需將上述命令輸入到最下面的窗口即可提取所需要的結果,對于需要提取大量結果的使用起來能夠大大增加效率。
相關標簽搜索:Abaqus與python abaqus分析培訓 abaqus技術教程 abaqus巖土分析 鋼筋混凝土仿真 abaqus分析理論 abaqus軟件下載 abaqus umat用戶子程序編程 Abaqus代做 Abaqus基礎知識 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓