Abaqus與python

    2016-12-27  by:CAE仿真在線  來源:互聯(lián)網(wǎng)

    Abaqus軟件提供的二次開發(fā)接口兩種:Fortran開發(fā)的用戶子程序,主要用于自定義本構(gòu)關(guān)系、自定義單元等;二是在python語言基礎(chǔ)上進(jìn)行定制開發(fā),主要用于前處理(例如,快速建模)、后處理(例如創(chuàng)建和訪問輸出數(shù)據(jù)庫)、自定義模型(例如自動后處理)等。

    Python接口允許用戶繞過ABAQUS/CAE的GUI界面,直接與內(nèi)核交互。

    使用Python編寫的包含腳本接口命令的程序可實(shí)現(xiàn)如下功能:

    1、在Abaqus輸入文件(Input file)中,用Python腳本定義關(guān)鍵詞*Parameter項(xiàng)下的數(shù)據(jù)行,例如有的關(guān)鍵字在Abaqus/CAE界面中沒有,則需要在inp文件里添加。

    2、能夠?qū)崿F(xiàn)自動化過程,編寫腳本可以實(shí)現(xiàn)各種判斷語句、循環(huán)語句、數(shù)據(jù)存儲等,例如對一個過程進(jìn)行多次重復(fù)計算,將會是一個繁瑣的過程,使用python編程則可以自動實(shí)現(xiàn)這個功能。

    3、能夠?qū)崿F(xiàn)參數(shù)化分析,編寫腳本可以進(jìn)行參數(shù)化分析、優(yōu)化分析、系統(tǒng)分析、多系列多型號的產(chǎn)品分析等,使產(chǎn)品的設(shè)計更加合理,產(chǎn)品研發(fā)周期更短。


    學(xué)習(xí)編寫Python腳本

    借助于abaqus.rpy文件,Abaqus/CAE中的每一步操作都記錄在abaqus.rpy中。Rpy文件可以使用PythonReader.exe軟件來查看內(nèi)容??梢訡AE與python混合建模,不會的命令就利用CAE生成,然后用PythonReader打開并進(jìn)行修改,可以彌補(bǔ)不熟悉python的缺點(diǎn),逐句修改python語句,可以去掉一些不必要的語句。

    Abaqus的python看似繁瑣,但有著固定、嚴(yán)謹(jǐn)?shù)慕Y(jié)構(gòu),很多都是固定格式,因此并不難理解。

    下面是提取結(jié)果中應(yīng)力的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方向應(yīng)力, 如需要XX或其它方向應(yīng)力, 可更改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與pythonabaqus有限元培訓(xùn)資料圖片1

    只需將上述命令輸入到最下面的窗口即可提取所需要的結(jié)果,對于需要提取大量結(jié)果的使用起來能夠大大增加效率。


    開放分享:優(yōu)質(zhì)有限元技術(shù)文章,助你自學(xué)成才

    相關(guān)標(biāo)簽搜索:Abaqus與python abaqus分析培訓(xùn) abaqus技術(shù)教程 abaqus巖土分析 鋼筋混凝土仿真 abaqus分析理論 abaqus軟件下載 abaqus umat用戶子程序編程 Abaqus代做 Abaqus基礎(chǔ)知識 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓(xùn) 

    編輯
    在線報名:
    • 客服在線請直接聯(lián)系我們的客服,您也可以通過下面的方式進(jìn)行在線報名,我們會及時給您回復(fù)電話,謝謝!
    驗(yàn)證碼

    全國服務(wù)熱線

    1358-032-9919

    廣州公司:
    廣州市環(huán)市中路306號金鷹大廈3800
    電話:13580329919
              135-8032-9919
    培訓(xùn)QQ咨詢:點(diǎn)擊咨詢 點(diǎn)擊咨詢
    項(xiàng)目QQ咨詢:點(diǎn)擊咨詢
    email:kf@1cae.com