鄒 新, 林焯銘, 楊旭杰, 彭修寧
(廣西大學(xué) 土木建筑工程學(xué)院, 廣西 南寧 530004)
在工程設(shè)計(jì)階段,結(jié)構(gòu)設(shè)計(jì)人員除了建立用于配筋計(jì)算的結(jié)構(gòu)分析模型之外,按照我國(guó)現(xiàn)行的GB 50011—2010《建筑抗震設(shè)計(jì)規(guī)范》和JGJ 3—2010《高層建筑混凝土結(jié)構(gòu)技術(shù)規(guī)程》規(guī)定,對(duì)于體型復(fù)雜、結(jié)構(gòu)布置復(fù)雜和超過一定高度的高層建筑物應(yīng)至少采用兩個(gè)不同力學(xué)模型的結(jié)構(gòu)分析軟件進(jìn)行整體計(jì)算[1,2]。因此,當(dāng)使用BIM(Building Information Modeling)技術(shù)進(jìn)行結(jié)構(gòu)正向設(shè)計(jì)時(shí),結(jié)構(gòu)設(shè)計(jì)人員需要在不同的軟件中搭建計(jì)算模型,特別是對(duì)于前處理比較復(fù)雜的有限元計(jì)算軟件,這將會(huì)導(dǎo)致結(jié)構(gòu)設(shè)計(jì)效率十分低下。隨著BIM正向設(shè)計(jì)在結(jié)構(gòu)設(shè)計(jì)階段不斷推廣,BIM模型與有限元分析軟件之間的模型轉(zhuǎn)換問題也日益突出,因此目前急需開發(fā)出結(jié)構(gòu)設(shè)計(jì)階段所涉及的BIM模型與各結(jié)構(gòu)分析軟件之間模型轉(zhuǎn)換接口,以實(shí)現(xiàn)BIM模型的“一模多用”,減少結(jié)構(gòu)設(shè)計(jì)人員的工作量。
目前許多結(jié)構(gòu)分析軟件如PKPM,SAP2000,MIDAS/CIVIL等均有與BIM建模軟件之間的模型轉(zhuǎn)換接口[3,4]。王強(qiáng)等[5]采用參數(shù)化建模的方法,通過ABAQUS軟件自帶的腳本語言Python開發(fā)出PKPM與ABAQUS模型轉(zhuǎn)換接口。孟仲永等[6,7]以AutoCAD為圖形處理平臺(tái),利用C++語言開發(fā)出復(fù)雜高層和大跨度空間結(jié)構(gòu)從SAP2000和YJK到ABAQUS的模型轉(zhuǎn)換程序。董立坤等[8]提出一種中間通用的結(jié)構(gòu)模型數(shù)據(jù)描述實(shí)現(xiàn)不同結(jié)構(gòu)分析程序模型數(shù)據(jù)轉(zhuǎn)換方法,并利用該方法實(shí)現(xiàn)PKPM結(jié)構(gòu)模型和ETABS結(jié)構(gòu)模型的轉(zhuǎn)換。劉照球等[9,10]基于IFC(Industry Foundation Classes)中間數(shù)據(jù)格式從結(jié)構(gòu)分析模型的數(shù)據(jù)轉(zhuǎn)換角度對(duì)轉(zhuǎn)換方法進(jìn)行了研究,提出一種BIM和各類結(jié)構(gòu)分析軟件之間模型數(shù)據(jù)轉(zhuǎn)換的間接方法,并開發(fā)了相應(yīng)的數(shù)據(jù)轉(zhuǎn)換接口。但以上研究在模型轉(zhuǎn)換過程中,將實(shí)體構(gòu)件簡(jiǎn)化成結(jié)構(gòu)單元(梁?jiǎn)卧卧?,或僅針對(duì)由矩形構(gòu)件組成的簡(jiǎn)單結(jié)構(gòu),導(dǎo)致轉(zhuǎn)換后的有限元模型不適用于結(jié)構(gòu)精細(xì)化分析。
目前BIM模型向有限元模型轉(zhuǎn)換通常有三種方式:(1)基于IFC中間標(biāo)準(zhǔn)格式文件實(shí)現(xiàn)不同軟件之間的模型轉(zhuǎn)換以及信息傳遞,但在實(shí)際應(yīng)用中,各軟件公司并未嚴(yán)格按照IFC標(biāo)準(zhǔn)格式構(gòu)建數(shù)據(jù)庫,從而導(dǎo)致僅使用IFC中間格式進(jìn)行模型轉(zhuǎn)換時(shí)出現(xiàn)IFC文件讀取及輸出錯(cuò)誤、信息丟失等情況,此轉(zhuǎn)換方式不適用結(jié)構(gòu)精細(xì)化分析;(2)基于軟件二次開發(fā)直接提取BIM模型的幾何信息、材質(zhì)信息等,最終通過編程語言將提取出的信息整理成有限元軟件可識(shí)別的數(shù)據(jù)文件,進(jìn)而生成有限元模型, 但這種模型轉(zhuǎn)換方式并不能在有限元分析軟件中形成有限元幾何模型,并且需要在轉(zhuǎn)換程序中自行編寫模型網(wǎng)格劃分規(guī)則,無法進(jìn)一步修改、拓展結(jié)構(gòu)模型以及重新劃分網(wǎng)格,此轉(zhuǎn)換方式也無法滿足結(jié)構(gòu)精細(xì)化分析的需求;(3)基于統(tǒng)一的中心數(shù)據(jù)庫實(shí)現(xiàn)模型無損轉(zhuǎn)換,但中心數(shù)據(jù)庫只在同一軟件廠商內(nèi)部開放。
本文在上述三種轉(zhuǎn)換方式的基礎(chǔ)上提出一種ACIS-API模型轉(zhuǎn)換方法,實(shí)現(xiàn)BIM模型向精細(xì)化有限元模型的自動(dòng)化轉(zhuǎn)換。
ACIS格式文件由幾何信息、拓?fù)浣Y(jié)構(gòu)和屬性三部分組成,其中幾何信息只包含組成模型實(shí)體的點(diǎn)、線、面信息;拓?fù)浣Y(jié)構(gòu)描述了組成ACIS模型實(shí)體之間的連接方式;屬性則是用來儲(chǔ)存實(shí)體的附加信息或者用戶信息。ACIS格式文件可描述線框、曲面以及實(shí)體三種模型,并且ACIS格式文件采用邊界表達(dá)(B-rep)描述幾何體,能較好地描述復(fù)雜結(jié)構(gòu)幾何體,且定義的三維模型具有唯一性[11]。
因此,本文以ACIS格式文件為基礎(chǔ),API軟件二次開發(fā)為輔提出一種ACIS-API模型轉(zhuǎn)換方法,其主要流程如下:(1)在BIM建模軟件中導(dǎo)出ACIS格式文件,之后在有限元分析軟件中讀取ACIS格式文件生成ACIS幾何模型;(2)詳細(xì)分析精細(xì)化模型轉(zhuǎn)換所需信息,為BIM模型添加材質(zhì)、荷載及邊界條件等基礎(chǔ)信息,完善BIM模型向精細(xì)化有限元模型轉(zhuǎn)換所需信息;(3)建立外部模型信息數(shù)據(jù)庫,利用軟件二次開發(fā)提取BIM模型中的幾何、材質(zhì)、荷載及邊界條件等信息,并將提取出的信息儲(chǔ)存于外部數(shù)據(jù)庫中;(4)將ACIS幾何模型與數(shù)據(jù)庫儲(chǔ)存信息進(jìn)行信息匹配,通過軟件二次開發(fā)將材質(zhì)、荷載及邊界條件信息賦予相應(yīng)ACIS幾何模型上,形成有限元幾何模型;(5)對(duì)有限元幾何模型進(jìn)行網(wǎng)格劃分,形成有限元分析模型。具體流程如圖1所示。
圖1 ACIS-API模型轉(zhuǎn)換方法流程
為避免在模型轉(zhuǎn)換過程中出現(xiàn)冗余信息過多而導(dǎo)致轉(zhuǎn)換效率低下、信息丟失等情況,本文采用建立外部模型數(shù)據(jù)庫方式,對(duì)模型信息進(jìn)行儲(chǔ)存及傳遞。并采用ADO(Active Data Object)數(shù)據(jù)訪問技術(shù)[12]實(shí)現(xiàn)模型數(shù)據(jù)與外部數(shù)據(jù)庫交互,交互內(nèi)容主要包括:(1)根據(jù)模型轉(zhuǎn)換所需信息建立相應(yīng)的模型信息儲(chǔ)存數(shù)據(jù)庫;(2)提取BIM模型信息,并將其儲(chǔ)存至外部模型信息數(shù)據(jù)庫;(3)將數(shù)據(jù)庫中模型信息與ACIS幾何模型進(jìn)行匹配。
ABAQUS作為通用的有限元分析軟件,可以解決復(fù)雜結(jié)構(gòu)的線性以及非線性問題,但其結(jié)構(gòu)建模的前處理過程十分繁瑣,尤其是對(duì)于包含異形構(gòu)件的建筑,做到精細(xì)化建模則需要大量時(shí)間和精力。而作為被廣泛應(yīng)用的BIM建模軟件Revit,其強(qiáng)大的建模功能可以將復(fù)雜建筑物的幾何信息和非幾何信息集成在其建立的數(shù)字化模型中,且這些信息允許用戶通過二次開發(fā)提取使用[13,14],同時(shí)ABAQUS軟件開放了內(nèi)核程序(Kernel)的腳本接口,可通過Python語言調(diào)用Kernel建立幾何模型、指定材料屬性、施加荷載以及邊界條件等命令[15]。
本文以Revit與ABAQUS為例,采用上述ACIS-API模型轉(zhuǎn)換方法編寫精細(xì)化模型轉(zhuǎn)換程序,實(shí)現(xiàn)Revit與ABAQUS之間的精細(xì)化模型轉(zhuǎn)換。
由于Revit軟件中的基本單位制為英尺,而ABAQUS軟件中并未規(guī)定其基本單位制。因此,在模型轉(zhuǎn)換過程中需要人為規(guī)定ABAQUS軟件中的基本單位制,本文所規(guī)定的ABAQUS軟件中的基本單位制如表1所示。Revit API提供了UniUtils類,可通過UniUtils.ConvertFromInternal-Units()方法實(shí)現(xiàn)Revit與ABAQUS軟件之間的單位轉(zhuǎn)換。
表1 ABAQUS基本單位制
為滿足精細(xì)化有限元模型轉(zhuǎn)化的信息需求,應(yīng)對(duì)模型轉(zhuǎn)換所需信息進(jìn)行詳細(xì)分析。根據(jù)ABAQUS軟件中生成精細(xì)化有限元模型所需信息,可將模型信息分為幾何信息、材質(zhì)信息、荷載及邊界條件三大類。本文基于MySQL數(shù)據(jù)庫建立外部模型數(shù)據(jù)庫,其中外部模型信息數(shù)據(jù)庫包含三個(gè)數(shù)據(jù)庫:(1)幾何信息庫,用于儲(chǔ)存BIM模型中構(gòu)件的幾何信息;(2)材質(zhì)信息庫,用于儲(chǔ)存BIM模型的混凝土、鋼筋等材質(zhì)信息;(3)荷載及邊界條件信息庫,用于儲(chǔ)存BIM模型中荷載信息以及邊界條件。
同時(shí)為保證數(shù)據(jù)庫中BIM模型信息與ACIS幾何模型精確匹配,需要對(duì)BIM模型中的每個(gè)構(gòu)件定義一個(gè)唯一主鍵用于構(gòu)件與其對(duì)應(yīng)的材質(zhì)信息和荷載及邊界條件信息形成拓?fù)潢P(guān)系。圖2為外部模型信息數(shù)據(jù)庫存儲(chǔ)的數(shù)據(jù)類型,以幾何信息庫中的構(gòu)件ID為唯一主鍵,通過構(gòu)件ID將幾何數(shù)據(jù)庫、材質(zhì)信息庫、荷載及邊界條件信息庫聯(lián)系在一起,便于數(shù)據(jù)的關(guān)聯(lián)查詢和使用[16]。
圖2 外部模型信息數(shù)據(jù)庫存儲(chǔ)數(shù)據(jù)
本文以ACIS文件格式為基礎(chǔ),利用Revit二次開發(fā)將BIM模型中的幾何模型信息整理成ACIS格式描述的數(shù)據(jù)文件,其次利用ABAQUS二次開發(fā)讀取ACIS格式文件在ABAQUS中生成ACIS幾何模型。
以下為生成幾何模型核心代碼:
(1)Revit中輸出ACIS格式數(shù)據(jù)文件
//文件夾儲(chǔ)存位置
string folderPath=@"F:DesktopExportSAT";
//ACIS格式輸出文件名
string fileName="GeometricModel";
List
//遍歷各個(gè)視圖的BIM模型構(gòu)件
foreach (Element elment in views)
{
View3Dview3D=elment as View3D;
List
//需要轉(zhuǎn)換模型視圖ID
ElementId viewId=view3D.Id;
elementIds1.Add(viewId);
SATExportOptions exportOptions=new SATExportOptions();
經(jīng)過十余年的探索實(shí)踐,重慶市婚姻家庭社會(huì)工作內(nèi)容逐漸完善,主要包括三方面:一是打造“家和計(jì)劃”特色服務(wù)品牌;二是構(gòu)建“4+5+5”服務(wù)創(chuàng)新模式;三是初步形成標(biāo)準(zhǔn)體系。
// ACIS格式文件輸出函數(shù)
document.Export(folderPath, fileName,
elementIds1,exportOptions);
}
(2)形成ACIS幾何模型
filepath="F:/Desktop/ExportSAT/GeometricModel.s-at"
//讀取ACIS格式文件
acis=mdb.openAcis(filepath,scaleFromFile=OFF)
//生成幾何模型
mdb.models['Model-1'].PartFromGeometryFile(na-me=partName,geometryFile=acis,bodyNum=i1, combine=False,dimensionality=THREE_D,type=DEFORMABLE_BODY)
ACIS幾何模型與外部數(shù)據(jù)庫模型信息匹配主要包含以下步驟:(1)通過判斷ACIS模型幾何特征與數(shù)據(jù)庫中存儲(chǔ)的模型幾何信息是否一致,將ACIS幾何模型與構(gòu)件ID關(guān)聯(lián);(2)根據(jù)構(gòu)件ID查找ACIS幾何模型對(duì)應(yīng)的材質(zhì)、荷載及邊界條件等信息,并通過ABAQUS二次開發(fā)賦予相應(yīng)構(gòu)件;(3)根據(jù)構(gòu)件ID查找ACIS幾何模型對(duì)應(yīng)的空間坐標(biāo)信息,并通過ABAQUS二次開發(fā)對(duì)幾何模型進(jìn)行裝配,最終形成ABAQUS有限元幾何模型。具體流程如圖3所示。
圖3 信息匹配流程
在Revit軟件中運(yùn)行模型轉(zhuǎn)換程序?qū)С鯝CIS格式文件,圖4為ACIS格式文件截取片段,程序自動(dòng)獲取BIM模型信息并將其儲(chǔ)存入外部模型數(shù)據(jù)庫,之后在ABAQUS中讀取ACIS格式文件生成ACIS幾何模型。圖5為門式鋼框架模型、水閘、斜拉橋BIM模型轉(zhuǎn)換后示意圖,由圖可見轉(zhuǎn)換后模型并未出現(xiàn)構(gòu)件丟失、錯(cuò)位等現(xiàn)象,從而驗(yàn)證該模型轉(zhuǎn)換程序可實(shí)現(xiàn)幾何模型精細(xì)化轉(zhuǎn)換。
圖4 ACIS格式文件片段
圖5 幾何模型轉(zhuǎn)換對(duì)比
網(wǎng)格劃分的質(zhì)量以及單元類型對(duì)結(jié)構(gòu)計(jì)算結(jié)果有著巨大影響,模型轉(zhuǎn)換程序在完成幾何模型轉(zhuǎn)換之后,幾何模型可按照結(jié)構(gòu)計(jì)算精細(xì)化程度自行在ABAQUS中進(jìn)行網(wǎng)格劃分、賦予單元類型,同時(shí)也可對(duì)網(wǎng)格大小以及單元類型進(jìn)行調(diào)整,最終形成有限元分析模型。圖6為不同網(wǎng)格尺寸的網(wǎng)格劃分對(duì)比圖,其中圖6a網(wǎng)格大小為300 mm、六面體單元類型(C3D8 ),圖6b網(wǎng)格大小為150 mm、四面體單元(C3D10)類型。
圖6 不同網(wǎng)格尺寸的網(wǎng)格劃分對(duì)比
3.3.1 靜力計(jì)算分析
為驗(yàn)證轉(zhuǎn)化之后有限元模型的正確性,對(duì)T形螺栓連接鋼梁柱節(jié)點(diǎn)進(jìn)行靜力分析,采用上述轉(zhuǎn)換方法將BIM模型轉(zhuǎn)化成ABAQUS有限元模型,如圖7所示。梁柱及相關(guān)附件采用Q235鋼、螺栓采用10.9級(jí)M16高強(qiáng)度螺栓,其初始預(yù)拉力根據(jù)GB 50017—2003《鋼結(jié)構(gòu)設(shè)計(jì)規(guī)范》[17]選取,模型材質(zhì)信息及單元類型如表2所示。同時(shí)對(duì)梁施加30 kN,柱頂施加10 kN集中力,柱底采用固端約束,并對(duì)梁端以及柱頂施加面外約束。
圖7 轉(zhuǎn)換后T形節(jié)點(diǎn)ABAQUS模型
表2 材質(zhì)信息及單元類型
圖8為T形螺栓連接鋼梁柱節(jié)點(diǎn)靜力計(jì)算結(jié)果,由圖可知最大應(yīng)力出現(xiàn)在鋼梁柱節(jié)點(diǎn)連接處,梁端最大位移為6.2 mm,T形板發(fā)生小幅度屈曲,計(jì)算結(jié)果符合實(shí)際工程狀況。并且T形節(jié)點(diǎn)在力的作用下位移場(chǎng)保持連續(xù),各構(gòu)件連接處未出現(xiàn)突變。從而表明轉(zhuǎn)換后的有限元分析模型無材質(zhì)、荷載邊界條件信息丟失,適用于有限元精細(xì)化分析。
圖8 T形節(jié)點(diǎn)計(jì)算結(jié)果
3.3.2 模態(tài)分析
另外以三層混凝土框架結(jié)構(gòu)為例(圖9),用以驗(yàn)證轉(zhuǎn)換后有限元分析模型的正確性以及對(duì)計(jì)算效率進(jìn)行說明。其中,柱采用C35混凝土,梁板采用C30混凝土,結(jié)構(gòu)縱筋采用HRB400鋼筋,箍筋采用HRB335鋼筋。底層柱均采用剛接,部分模型信息如圖10所示。
圖9 SAP2000與ABAQUS計(jì)算分析模型對(duì)比
圖10 Revit-ABAQUS模型信息數(shù)據(jù)庫部分模型信息
同時(shí)本文還在SAP2000中建立構(gòu)件尺寸、材質(zhì)信息以及荷載邊界條件完全相同的結(jié)構(gòu)分析模型,計(jì)算其前3階的固有頻率,然后與ABAQUS中的計(jì)算結(jié)果進(jìn)行對(duì)比。SAP2000模型與ABAQUS模型模態(tài)分析結(jié)果如表3所示,前三階振型對(duì)比如圖11所示。
圖11 三層框架結(jié)構(gòu)模型振型對(duì)比
表3 SAP2000模型與ABAQUS模態(tài)分析結(jié)果
由表3可知,兩個(gè)模型的結(jié)構(gòu)總質(zhì)量基本一致,結(jié)構(gòu)前三階自振周期誤差在5%之內(nèi),各階模態(tài)MAC值均在0.9以上,說明兩者計(jì)算出的振型符合程度較高,進(jìn)而表明模型轉(zhuǎn)換正確,可用于計(jì)算。
就前處理建模效率而言,采用本文的模型轉(zhuǎn)換方法,ABAQUS模型前處理建模效率明顯高于SAP2000,但由于ABAQUS中轉(zhuǎn)換之后的有限元模型采用計(jì)算精度更高實(shí)體單元類型,相較于SAP2000中采用纖維梁?jiǎn)卧?、殼單元的?jì)算模型分析所需時(shí)間更長(zhǎng),并且兩者計(jì)算結(jié)果相差無幾。
(1)為解決當(dāng)前BIM模型向有限元分析模型轉(zhuǎn)換后模型無法用于精細(xì)化分析問題,本文提出ACIS-API模型轉(zhuǎn)換方法,該方法可將BIM模型中包含的幾何、材質(zhì)、荷載及邊界條件等信息完整精確地賦予有限元模型,實(shí)現(xiàn)BIM模型向精細(xì)化有限元模型自動(dòng)轉(zhuǎn)換,無需在有限元軟件中重復(fù)建模以及結(jié)構(gòu)參數(shù)賦予等操作,為結(jié)構(gòu)進(jìn)行精細(xì)化分析奠定基礎(chǔ)。
(2)同時(shí)本文根據(jù)上述模型轉(zhuǎn)換方法編寫了Revit與ABAQUS之間精細(xì)化模型轉(zhuǎn)換程序,該模型轉(zhuǎn)換程序可將BIM模型向ABAQUS精細(xì)化有限元模型自動(dòng)轉(zhuǎn)換,并且轉(zhuǎn)換之后的有限元模型可根據(jù)計(jì)算精細(xì)化程度自行在ABAQUS中劃分網(wǎng)格、賦予網(wǎng)格單元類型、重新劃分網(wǎng)格以及修改和拓展結(jié)構(gòu)模型。
(3)本文提出的模型轉(zhuǎn)換方法主要針對(duì)于需要精細(xì)化分析的復(fù)雜結(jié)構(gòu)類型,采用本文提出的模型轉(zhuǎn)換方法可明顯提高計(jì)算效率。同時(shí)也可用于規(guī)則簡(jiǎn)單的BIM模型轉(zhuǎn)換,但轉(zhuǎn)換之后的有限元模型相較于采用纖維梁?jiǎn)卧?、殼單元?jì)算模型,其計(jì)算效率提高程度不明顯,在如何既保證計(jì)算精度又能提高計(jì)算效率這一方面今后可進(jìn)行更加深入研究。