abaqusabaqus箱型橋梁的gui二次開(kāi)發(fā)_第1頁(yè)
abaqusabaqus箱型橋梁的gui二次開(kāi)發(fā)_第2頁(yè)
abaqusabaqus箱型橋梁的gui二次開(kāi)發(fā)_第3頁(yè)
abaqusabaqus箱型橋梁的gui二次開(kāi)發(fā)_第4頁(yè)
abaqusabaqus箱型橋梁的gui二次開(kāi)發(fā)_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、網(wǎng)絡(luò)出版時(shí)間:2012-03-15 14:47網(wǎng)絡(luò)出版地址: 190.U.20120315.1447.015.html精品資料D01:10.3969/j.issn. 1674-0696.2012.02ABACUS箱型橋梁的GUI二次開(kāi)發(fā)鋼筋三維線(xiàn)型模型批量創(chuàng)建插件制作李平,王家林2,康竹良(1.安徽省建筑科學(xué)研究設(shè)計(jì)院,安徽合肥230001; 2.重慶交通大學(xué),垂慶400047; 3.同濟(jì)大學(xué),上海200092) 摘要:介紹了利用ABAQUS軟件二次開(kāi)發(fā)的功能制作鋼筋三維線(xiàn)型模型創(chuàng)建插件方法,該插件實(shí)現(xiàn)了普通鋼筋 與預(yù)應(yīng)力鋼筋的三維線(xiàn)型模型快速批量創(chuàng)建功能。為箱型橋梁的糟細(xì)有限元分析提供了有力

2、的支持。關(guān)鍵詞:ABAQUS;二次開(kāi)發(fā):三維線(xiàn)型;鋼筋中圖分類(lèi)號(hào):0319.56; TP311文獻(xiàn)標(biāo)志碼:A文章編號(hào):1674-0696 (2012) 02Secondary Development of GUI for Box Girder Bridges in ABAQUS鄉(xiāng)鄉(xiāng) 鄉(xiāng) 鄉(xiāng)Plug ins of mass production of linear three dimensional bar modelLi Ping 11 2, Wang Jialin2, Kang Zhuliang3(1. Anhui Institute of Building Research & Desig

3、n ,Hefei 230001,Anhui,China;2.Chongqing Jiaotong University, Chongqing 400074,China;3.Tongji University,Shangliai 200092,China) Abstract: method of GUI secondary development in ABAQUS is described Plug-ins of reinforced three-dimensional linear bar model are described in detail The plug-ins provid p

4、owerfill support for finite element analysis of Box Girder Bridges.Key words: ABAQUS; Secondary development; three-dimensional linear; Reinforced輔品資料輔品資料觀(guān)察混凝土與鋼筋的應(yīng)力應(yīng)變。該方法可以較真實(shí)在鋼筋混凝土三維實(shí)體加筋模型中使川立六 血體、四血體和五血體單元?jiǎng)澐只炷?,川桿、梁 單元模擬普通鋼筋和預(yù)應(yīng)力筋。模型中通過(guò)節(jié)點(diǎn)耦 合或非節(jié)點(diǎn)連接方法U刊實(shí)現(xiàn)鋼筋單元節(jié)點(diǎn)與混凝七單元節(jié)點(diǎn)耦合。在該模型計(jì)算結(jié)構(gòu)中,可以分別1 ABAQUS -次開(kāi)發(fā)功能

5、簡(jiǎn)介ABAQUS是最先進(jìn)的大型通用有限元分析軟 件之一,具有良好的模擬性能,擁有大最不同類(lèi)型 的單元、材料模型;在ABAQUS中,材料庫(kù)和單 元庫(kù)分離,材料和單元Z間的組合能力很強(qiáng),可以輔品資料輔品資料的模擬空間位置與實(shí)際受力分析。在通用有限冗軟勝任復(fù)雜結(jié)構(gòu)的靜態(tài)與動(dòng)態(tài)分析,能夠駕馭卄常龐輔品資料前后處理進(jìn)彳了操作;創(chuàng)建新圖形用戶(hù)界曲(GUI)件ABAQUS的單元埋植與MIDAS FEA都能通過(guò) 簡(jiǎn)單的設(shè)置實(shí)現(xiàn)鋼筋節(jié)點(diǎn)與混凝土實(shí)體單元的快 速勰合連接。由于土木工程中鋼筋的使用量非常 人,所以鋼筋的模型非常龐人,同時(shí)預(yù)應(yīng)力鋼筋常 常包含橫向和豎向的彎曲,給建模帶來(lái)了困難。若 在ABAQUS/CA

6、E界而下逐個(gè)創(chuàng)建鋼筋的空間線(xiàn)型 模型,將是一個(gè)繁重的工作,口極易因輸入失誤導(dǎo) 致模型錯(cuò)誤。本文通過(guò)ABAQUS GUI二次開(kāi)發(fā)功 能刪,創(chuàng)建-個(gè)具有鋼筋空間線(xiàn)型模型批量快速創(chuàng) 建功能的插件,為實(shí)現(xiàn)鋼筋混凝土結(jié)構(gòu)三維加筋實(shí) 體冇限元分析提供幫助。人的問(wèn)題和模擬材料與兒何高度非線(xiàn)性的影響。同 時(shí),ABAQUS提供了 4種二次開(kāi)發(fā)方式:使用用 戶(hù)子程序。用戶(hù)子程序允許用戶(hù)改變 ABAQUS/Standard 和 ABAQUS/Explicit 的計(jì)算過(guò) 程;修改環(huán)境文件。通過(guò)改變環(huán)境文件中關(guān)于ABAQUS的各種默認(rèn)設(shè)置來(lái)改變ABAQUS/CAE的 計(jì)算分析過(guò)程和相關(guān)文件操作;運(yùn)行白定義內(nèi)核 腳本。內(nèi)

7、核腳本允許用八通過(guò)創(chuàng)建新的功能模塊対4o 4種二次開(kāi)發(fā)方式為用戶(hù)改善和擴(kuò)展,ABAQUS 的前后處理、單元模型、材料模型冋等提供了可能。輔品資料輔品資料收稿日期:2011-06-09;修訂日期:2011-09-08作者簡(jiǎn)介:李平(1980-),男,安徽合肥人,工程師,碩士,主要從事鋼筋混凝土工程檢測(cè)及力學(xué)有限元計(jì)算研究。E-mail:hcfcilipingo 電話(huà)輔品資料精品資料2功能設(shè)計(jì)及制作過(guò)程完成模型創(chuàng)建。數(shù)據(jù)流程如圖2。輔品資料精品資料輔品資料精品資料鋼筋快速建模插件是通過(guò)鋼筋關(guān)鍵點(diǎn)三維坐 標(biāo)建立空間折線(xiàn)實(shí)現(xiàn)模擬。折線(xiàn)沒(méi)有樣條曲線(xiàn)圓

8、 滑,但排除了山于樣條曲線(xiàn)彎曲使得曲線(xiàn)伸出混凝 土外部,致使鋼筋和混凝土之間無(wú)法實(shí)現(xiàn)耦合。插 件人機(jī)交互界血對(duì)話(huà)框如圖Io圖1插件示意Fig.l Figure of the pluginssteelDB. py對(duì)話(huà)框程序文件數(shù)據(jù)文件名 部件名一 數(shù)據(jù)表格-steel_plugins. py插件注冊(cè)文件 class steel_plugin() seif cmd=AFXGuiCojnjnand ()self. PartnameKw孝咅B(yǎng)件名取量 一 self. pointKw 舉鋼筋坐標(biāo)點(diǎn)變量 self, filenameKw #數(shù)據(jù)文件名變量regist erGuiMenuButt on ()

9、孝菜單注冊(cè)命令r eg i st e r Gui T o o IBut t on ()#廚標(biāo)注冊(cè)命吞steel_function, py主函數(shù)程序文件 def steel ()數(shù)據(jù)整理函數(shù)環(huán)境變量讀取創(chuàng)建模型函數(shù)部件組裝函數(shù) 輔品資料精品資料輔品資料精品資料插件對(duì)話(huà)框中包含了以下幾個(gè)重要控件:1) Partname部件名編輯框。程序會(huì)依據(jù)輸入 在模型創(chuàng)建部件和組裝實(shí)例。2) File name鋼筋數(shù)據(jù)文件打開(kāi)按鈕及數(shù)據(jù)導(dǎo) 入按鈕Inputo插件支持從文木文件中讀取鋼筋關(guān)鍵 點(diǎn)坐標(biāo)。通過(guò)Input按鈕可以將文件屮數(shù)據(jù)導(dǎo)入對(duì) 話(huà)框表格中。3) 鋼筋關(guān)鍵點(diǎn)處標(biāo)輸入表。表中每-單元格 代表一個(gè)點(diǎn)x,y

10、,z三個(gè)塑標(biāo),每一行代表一根鋼筋。 鋼筋的町以是2-60個(gè)不限。輸入后的數(shù)據(jù)可以保 存為文本文件,以備再次使用和修改。鋼筋關(guān)鍵點(diǎn) 處標(biāo)數(shù)據(jù)也可以從文木文件中打開(kāi)讀入或從 EXCEL文件屮拷貝粘貼。插件保證了同一工程數(shù)據(jù)的多次重復(fù)使用。避 免多次輸入帶來(lái)的重復(fù)性工作和數(shù)據(jù)輸入帶來(lái)的 錯(cuò)誤。以表格形式的鋼筋批童生成工具不僅可以略 去大量的鼠標(biāo)操作,而FL可以快速的檢查輸入錯(cuò) 誤。降低了模型錯(cuò)誤幾率和提高了工作效率。2.1插件程序解析鋼筋建模插件創(chuàng)建流程與箱梁插件相同,R模 型創(chuàng)建功能模塊比較簡(jiǎn)單。插件由對(duì)話(huà)框程序 stcclDB.py、框架與注冊(cè)命令steel_plugins.py和建 模stee

11、l function.py三個(gè)Python程序文件構(gòu)成。對(duì)話(huà)框?yàn)槌绦虻慕换ソ缪绦驅(qū)⑤斎霐?shù)據(jù)傳 遞至框架及注冊(cè)命令文件steel_plugins.py中的變 量,并將這些數(shù)據(jù)傳遞至主函數(shù)文件中相關(guān)變量。 主程序文件steel function.py在得到數(shù)據(jù)后整理并圖2插件程序數(shù)據(jù)傳遞Fig.2 Figure of the plugins2. 2鋼筋模型創(chuàng)建主函數(shù)文件鋼筋模型創(chuàng)建主函數(shù)(steel_fbnction.py)首先 對(duì)得到對(duì)話(huà)框傳入的數(shù)據(jù)進(jìn)行甄別和預(yù)處理,然后 根據(jù)得到的部件名創(chuàng)建部件,再依據(jù)每行數(shù)據(jù)逐- 創(chuàng)建鋼筋并組裝實(shí)例。def stccl(Partnamc,filcnamc

12、,point):# (1)導(dǎo)入模塊,建立必要變量 from abaqus import mdb from abaqusConstants import THREE D, DEFORMABLEBODY,ON,CARTESIAN import partimport string current_Models=mdb.models.keys() current_Models.sort() model_name=current_Models 0 J part_name=Partname+,_lines_, instance_ name=part_ name+ 1 linelist=,temp,xyz=

13、, x=0.0,y=0.0,z=0.0,N=len(point)# (2)整理由對(duì)話(huà)框中表格中傳輸來(lái)的數(shù)據(jù) ifpoint!=:for i in range(len(point):for j in range( len(po inti):ifpointij!=ff:xyz=pointij.split(7)if len(xyz)=3:if(xyz0!=H)or(xyzl!=n)or(xyz2!=H):x=float(xyz0)y=float(xyzl) z=float(xyz2) temp.append(x,y,z) linelist.append(temp)# (3)建立鋼筋部件p=mdbjn

14、odeIsmodel_namePart(name=part_na me,dimensionality=THREE_D,type=DEFORM ABLE_BODY) #創(chuàng)建部件p.DatumPointByCoordinate(coords=(0,0, 0.0, 0.0)#創(chuàng)建參考點(diǎn)#依據(jù)鋼筋的個(gè)數(shù)開(kāi)始循環(huán)逐個(gè)畫(huà)出鋼筋for i in range(len(linelist):temp=linelistiJOJJfor j in range(len(linelisti)-1): iflinelistij!= linelistij+l: temp.append(linelisti j+1 ) p.Wi

15、rePolyLine(points=temp,mergeWire=ON, meshable=ON,smoothClosedSpline=ON) #以直線(xiàn)形式創(chuàng)建鋼筋#(4)裝成實(shí)例assembly=mdb.modelsmodel nameJ.rootAssembly assembly.DatumCsysByDefault(CARTESIAN)assembly.Instance(name=instance_name, part=p,dependent=ON)2. 3對(duì)話(huà)框程序函數(shù)鋼筋插件對(duì)話(huà)框類(lèi)在由AFXDataDialog派生得 到,在其基礎(chǔ)上加入文本編輯框、文件打開(kāi)編輯框、導(dǎo)入數(shù)據(jù)按鈕、數(shù)據(jù)

16、輸入表格、演示圖片控件。下對(duì)程序主要語(yǔ)句作以簡(jiǎn)單說(shuō)明。#程序文件頂部首先導(dǎo)入必要的模塊及變量。from abaqusConstants import *from abaqusGui import *import osthisPath = os.path.abspath(_file_)thisDir = os.path.dirname(thisPath)class seetlDB(AFXDataDialog):#通過(guò)繼承AFXDataDialog派生出新的對(duì)話(huà)框類(lèi)ID INPUT2,=range(AFXDataDialog.ID_LAST,AFXDataDialog. ID_LAST+1)def

17、 _init_(self form):AFXDataDialog._init_()self.form=f()rmFXMAPFUNC(self, SEL_COMMAND, self .IDNPUT2,seetlDB.Filetotab) self.Partname=AFXTextField(p=HFrame 2, ncols=12, labclTcxt=Partnamc:; tgt= form.PartnameKw, seI=0) from rsg.rsgGui import RsgFileHandler #打開(kāi)文件功能設(shè)置HleHandler = RsgFileHandler(form, fi

18、le namc All files廣txt)J fileTextHf = FXHorizontalFrame()self.filename=AFXTextField() FXButton(p= fileTextHf, tgt=fileHandler,) #打開(kāi)文件功能函數(shù)#從文件導(dǎo)入數(shù)據(jù)按鈕功能(略) #表格定義與設(shè)置功能函數(shù)gb = FXGroupBox(VFrame 1, steel points,)# 組框self.table = AFXTable(gb, 10, 6, 60, 40, form.pointKw,0, AFXTABLE_EDITABLE |LAYOUT_F1LL_X)#由

19、基類(lèi)定義一個(gè)40行60列的表格 sclf.tablc.sctPopupOptions( )#右鍵菜單self.table.setLeadingRows( 1) selftable.setLeadi ngCo 山 mns( 1) self.table.setColuinnWidth(l, 140); self.table.setColumnType( 1, AFXTable. TEXT) self.table.setLeadingRowLabels(,I(x,y,z) r) selftable.setStretchableColumn( selftable.get NumColumns()-l

20、)#設(shè)置展示的圖片pictugb = FXGroupBox(VFnime_l, n , LAYOUT_F【LL_Y|FRAME_GROOVE)#設(shè)置圖片顯示區(qū)域fileName = os.path.join(thisDir, fsteel.bmp1) a=afxCrcatcBMPIcon(filcNamc) FXLabel(p=pictugb,text-ic=a)2. 4注冊(cè)函數(shù)文件Steel_plugin. py該文件的功能是完成插件的注冊(cè)。文件中首先 通過(guò)繼承AFXFonn定義一個(gè)新的應(yīng)用程序框架類(lèi)。 初構(gòu)函數(shù)主要完成數(shù)據(jù)接收與傳遞等工作,以及命 令函數(shù)處理。from abaqusGui

21、import *from abaqusConstants import ALL輔品資料精品資料輔品資料精品資料from picture import steel_p #圖標(biāo)函數(shù)import osutils, os#應(yīng)川程序框架class sectl_plugin(AFXForm):def_init_(self, owner): #初始函數(shù)定義 AFXForm._init_(self owner) self radioButtonGroups = #建立命令連接 將插件與主函數(shù)文件建立連接AbaqusToolsartAbout Plug-insTools I Plug-ins Help Tool

22、boxesSSteelLJvl| FartBox_grider bridge 圖3菜單注冊(cè)效果Fig.3 Fig of the menuselfcmd = AFXGuiCommand(mode=self) method=,steelobjectName=steel_function registerQuery=False)pickedDefault =1self. Partname Kw = AFXStringKeyword(self.cmd, Partname; True,)self.filenameKw = AFXStringKeyord(self.cmd, filename; True,

23、 M)self.pointKw = AFXTableKeyword(selfcmd, rpoint True,Or 1 ,AFX1ABLE_TYPE_ STRING)一 一#為對(duì)話(huà)框屮個(gè)控件建立傳遞和保持?jǐn)?shù)據(jù)的變 量,并將這些變量傳遞給主函數(shù)文件def gctFirstDialog(sclf): #獲取對(duì)話(huà)框函數(shù)import seetlDB self.a=seetlDB.seetlDB(self) return self.a利用registerGuiMenuButton實(shí)現(xiàn)菜單注冊(cè)。注 冊(cè)前需要獲得ABAQUS主函數(shù)的工作路徑和插件 工具。# Register the plug-in # 注冊(cè)

24、插件 aa=FXXPMIcon(getAFXApp(), steel_p) thisPath = os.path.abspath(_file_)#獲取路徑 thisDir = os.pcith.dirname(thisPath) toolset = getAFXApp()getAFXMainWindow(). getPIuginToolset() # 獲取插件句柄#插件菜單注冊(cè).1.具條注冊(cè)需耍一個(gè)圖標(biāo),從Concrctc icon.py文件中導(dǎo)入圖標(biāo)concrctc tool,命名為icon。toolset.registerGuiToolButton(rBridges #工具條名稱(chēng)objec

25、t=seetl_plugin(toolset),buttonText=,tBox_grider bridgeSteelkernel InitSting=import steel function;icon=aa,version- 1.0author=, N/A applicableModules=ALL, description-N/AhelpUrl=N/A?用rcgistcrGuiToolButton函數(shù)將插件注冊(cè)為 Plug-ins菜單下Toolboxes下的Bridges工貝條。注冊(cè)效果如圖4。點(diǎn)擊Bridges就可彈出Bridge T具條。其屮圖標(biāo)冒為本次定義的按鈕。AbaqusBox

26、_gri der bri dge ToolsartExamplesAbout Plug-insToolboxesBri dgesTools I Plugins Help圖4工具條注冊(cè)Fig.4 Fig of the toolbartoolset.rcgistcrGuiMcnuButton(buttonText-Boxgrider bridge|Steel object=seetl_plugin(toolset),messageId=AFXMod e.ID ACTIVATE,iconaakernellnitStrinimpor t steel_function applicableModulcs

27、=ALL, vcrsion=,N/Aauthor=,N/A3插件使用實(shí)例圖中顯示為變截而箱梁橋頂板與腹板中的預(yù) 應(yīng)力鋼筋,該部件冇24根鋼筋,每根鋼筋4個(gè)關(guān) 鍵點(diǎn)。輸入完畢后點(diǎn)擊確定鍵程序白動(dòng)完成模型創(chuàng) 建。description=,N/A helpUrl=,N/A)圖5實(shí)例模型Fig.5 Model of the steel通過(guò)以上代碼將插件注冊(cè)為ABAQUS主界血Plug-ins菜單中的Box grider bridge子菜單的 Modeling命令。效果如圖3。輔品資料精品資料4結(jié)論筆者基于ABAQUS二次開(kāi)發(fā)功能創(chuàng)建了鋼筋輔品資料精品資料空間線(xiàn)型快速建模插件。與文獻(xiàn)1相結(jié)合實(shí)現(xiàn)了箱 型

28、橋梁三維實(shí)體加筋有限元模型的快速創(chuàng)建。為苴 有限元分析提供幫助。參考文獻(xiàn)(References):1 王家林非節(jié)點(diǎn)連接冇限元理論及其軟件實(shí)現(xiàn)D重慶:重慶人學(xué)土 木工程學(xué)院,200&2 李平,壬家林預(yù)應(yīng)力鋼筋混凝土構(gòu)件冇限元模擬方法對(duì)比卩重慶交 通大學(xué)學(xué)報(bào):自然科學(xué)版,2010.29(1):27-30.Li Ping.Whng Jialin.Comp;irison of EEM simulation methods of pre sire sscd reinforced concrete mcmbcrsJ Journal of Chongqing Jiaotong University,20l 0*29( I ):27-30.3 王家林,李平.ABAQUS箱型橋梁的GUI二次開(kāi)發(fā)卩車(chē)慶交通大學(xué)學(xué)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論