引 言
隨著(zhù)城市化的發(fā)展,地震對經(jīng)濟發(fā)展和人民生活的潛在威脅越來(lái)越嚴重,城市建筑震害預測成為防災減災的一個(gè)重要方面。城市區域內的建筑群震害預測包含兩個(gè)層次:宏觀(guān)層次和微觀(guān)層次。宏觀(guān)層次模型將建筑抽象成一個(gè)或少量自由度的結構,進(jìn)行不同烈度下地震損失分析預測。微觀(guān)層次模型[2]將建立建筑物更加精細化的分析模型(例如桿系模型等),可以考慮結構的足夠多的自由度和精確的動(dòng)力特性,進(jìn)行高精度的震害分析預測。
城市建筑震害預測,需要獲取和存儲城市建筑的基礎數據。如果只是建立宏觀(guān)層次模型,則只需要建筑面積、年代、層數、結構類(lèi)型等少量宏觀(guān)數據,其數據來(lái)源可以是城市GIS數據庫等?;贕IS的城市震害預測已經(jīng)有一定的研究基礎[3]。而建立微觀(guān)層次的精細化模型需要更詳細的數據,如梁柱的尺寸、配筋等,若采用手動(dòng)方法建立精細化模型,不僅工作量太大,也容易出錯,特別對于某些開(kāi)源的有限元軟件(如OpenSees),沒(méi)有前處理界面,建模極不方便。比較合理的方法是利用建筑已有的數字化模型,從中提取建筑震害分析所需要的詳細數據,自動(dòng)建模供計算模塊進(jìn)行分析計算。然而不同軟件生成的建筑數字化模型有著(zhù)不同的數據格式,而計算模塊也可能由不同的結構分析軟件組成(如Marc,OpenSees等)。因此,需要采用一個(gè)統一的數據標準,以實(shí)現不同軟件之間的數據交換。
建筑信息模型(Building Information Model,BIM)致力于在建筑的全生命期實(shí)現不同建筑工程領(lǐng)域的信息共享和協(xié)同管理,基于BIM的建筑數字化模型是未來(lái)重要的發(fā)展方向。目前,BIM采用IFC標準作為建筑產(chǎn)品的數據交換標準,不同軟件之間通過(guò)IFC這個(gè)統一的標準來(lái)交換數據。然而研究表明[4],基于IFC標準的建筑模型與結構模型之間的信息傳遞與共享還不是十分成熟。張劍濤等[5],劉照球[6, 7]等開(kāi)發(fā)了IFC與PKPM結構模型的數據轉換接口,能初步實(shí)現二者的幾何、材料等信息的轉換,但缺乏載荷信息等的轉換。也有學(xué)者嘗試建立通用建筑結構模型轉換平臺,以IFC為通用數據轉換標準,實(shí)現任意常用結構分析軟件間的結構分析模型數據轉換。但這類(lèi)研究尚處于起步階段,目前僅實(shí)現了SATWE、ETABS、SAP2000等軟件與IFC標準的轉換接口,所能實(shí)現的數據轉換也僅限于幾何、材料等信息。
因此,能否利用BIM的共享性,解決城市建筑震害預測的數據獲取以及自動(dòng)建模問(wèn)題,具有重要的研究?jì)r(jià)值。
1. 建筑震害分析及數據需求
對于鋼筋混凝土框架結構,通常采用纖維梁模型作為抗震彈塑性分析的精細化計算模型。不少軟件都能具備建筑抗震彈塑性分析能力,其中兩類(lèi)典型的軟件是Marc和OpenSees。
由于城市建筑信息是以單體建筑為基礎的,因此,本文利用C++編寫(xiě)了一個(gè)模型轉換程序,從一個(gè)單體鋼筋混凝土建筑的(IFC格式的)數字化模型中,提取建筑震害分析所需的信息,自動(dòng)生成Marc和OpenSees軟件模型,驗證轉換后的模型能否用于分析建筑結構在地震作用下的響應,如圖1所示。
圖1 編寫(xiě)模型轉換程序,將IFC格式模型轉換成Marc模型和OpenSees模型
Fig.1 Convert IFC-format files into Marc and OpenSees models using a model converter
1.1 Marc與OpenSees軟件
Marc是一款功能齊全的高級非線(xiàn)性通用有限元軟件[8],用Marc進(jìn)行建筑震害模擬,可以得到較為理想的分析結果,且適用于大多數分析需求。
基于纖維模型原理,清華大學(xué)土木工程系利用Marc軟件提供的二次開(kāi)發(fā)接口,編寫(xiě)了THUFIBER程序[9],使Marc軟件能對鋼筋混凝土結構進(jìn)行纖維模型計算。THUFIBER將混凝土構件的截面分為36個(gè)混凝土纖維,以及4個(gè)鋼筋纖維(纖維劃分方法也可以由用戶(hù)自定義),各纖維的面積由截面尺寸和配筋決定。對每根纖維定義特定的本構關(guān)系,便可以進(jìn)行不同精度的有限元分析。
OpenSees(Open System for Earthquake Engineering Simulation),是一個(gè)能進(jìn)行結構抗震彈塑性分析的開(kāi)源軟件[10]。相比內部代碼不透明的商用有限元軟件,OpenSees的開(kāi)源性使得研究者能全面掌握它的運行機制,并能根據自身需求進(jìn)行二次開(kāi)發(fā),因此,OpenSees是進(jìn)行建筑震害研究的重要工具。OpenSees中,混凝土梁柱也用纖維模型模擬。
選用上述兩種軟件進(jìn)行震害分析,可以同時(shí)利用商業(yè)軟件的健壯性和開(kāi)源軟件的透明性。
1.2 建筑震害分析的數據需求
為了從IFC文件中提取充分的信息,以自動(dòng)生成Marc和OpenSees結構模型,需要全面了解這兩種軟件的建筑震害分析建模方法,并總結震害分析所需的數據信息。這些數據信息分為兩類(lèi),一類(lèi)與混凝土結構模型有關(guān),如結構構件的位置、幾何信息、材料信息、載荷等。另一類(lèi)則與震害分析的方法和過(guò)程有關(guān),如地震波的選取、載荷工況的增量步總數和每個(gè)增量步的時(shí)間步長(cháng)等,這類(lèi)數據隨著(zhù)分析方法和要求的變化而變化,并且在軟件中可以很方便地實(shí)現這類(lèi)參數的調整。因此,應該重點(diǎn)關(guān)注第一類(lèi)數據需求,即與混凝土結構模型有關(guān)的數據。
通過(guò)考察這兩種軟件的建筑抗震分析模型,得到抗震分析的數據需求如表1所示。
表1 建筑抗震分析的數據需求
Tab.1 Data requirements for structural seismic analysis
2. 抗震分析的數據需求的IFC表達
IFC的復雜性,也是限制它發(fā)展、導致常用軟件普遍無(wú)法導出滿(mǎn)足抗震分析的IFC文件的原因之一。因此本文在仔細考察IFC4體系的基礎之上,選擇其中的常用部分,建立IFC4結構分析子信息模型。例如配筋的描述僅保留了方法(4)。雖然這降低了IFC的全面性,但仍能描述抗震分析所需的關(guān)鍵信息,增強了實(shí)用性。
描述IFC(子信息)模型的最方便的工具是EXPRESS-G[15],圖3是它的部分圖例。
2.3.2 其他建筑抗震分析數據的IFC4描述方法
與2.3.1小節類(lèi)似地,建立了結構構件、載荷、支座約束、材料、截面幾何特性等信息的IFC4描述方法。以載荷為例,如圖5所示,圖中實(shí)體屬性未全部列出。IFC4能描述線(xiàn)性變化的分布載荷,但為了降低復雜性,本文建議將這類(lèi)載荷轉換成等效均布載荷,用IfcStructuralLinearAction實(shí)體表達。
圖5 載荷信息在IFC4中的描述方法
Fig.5 Description of load in IFC4 standard
3. 模型轉換程序設計
根據第2章所建立的完整的IFC4結構分析子信息模型框架,可以構建滿(mǎn)足抗震分析數據需求的IFC4模型文件,進(jìn)而采用C++語(yǔ)言設計模型轉換程序,解析IFC模型文件,自動(dòng)生成Marc和OpenSees軟件模型。
IFC模型由EXPRESS語(yǔ)言定義,是ASCII格式純文本文件形式,因此IFC文件需要經(jīng)過(guò)解析識別,才能供程序代碼處理。本文使用IFCEngine.dll作為IFC文件解析工具,這是一款免費工具包,但要求編程者對IFC體系十分熟悉。
根據表1所示建筑震害的數據需求,設計了節點(diǎn)、單元、支座約束、截面幾何、材料等5個(gè)類(lèi)(class),并用Map、Vector等C++標準模板庫中的容器將各個(gè)類(lèi)的不同對象有序地組織起來(lái)。程序的輸入模塊通過(guò)調用類(lèi)的成員函數,從IFC模型文件中提取所需數據,賦值給相應的數據成員。例如節點(diǎn)類(lèi)Node調用SetCoordinate函數提取并設置節點(diǎn)坐標。模型轉換程序的IFC解析及提取數據部分的流程如圖6所示。
圖6 模型轉換程序的IFC解析及提取數據部分的流程圖
Fig.6 Flow chart of the IFC parse and data obtaining part of the model converter
由于采用了合理的數據結構設計,程序的輸出模塊的實(shí)現比較方便,分別遍歷相應容器,按照Marc和OpenSees的建模規則輸出節點(diǎn)、單元、材料等類(lèi)的數據成員,便可自動(dòng)生成這兩種軟件模型。
4. 實(shí)例驗證模型轉換效果
為了驗證模型轉換程序的正確性,用IFC4標準建立了一個(gè)鋼筋混凝土框架模型。模型為清華大學(xué)主樓的一榀10層3跨平面框架[16],邊跨7.5米,中跨3.5米,框架總高度45.05米,模型詳細尺寸及配筋等信息見(jiàn)文獻。IFC模型以及轉換后的Marc模型如圖7所示(OpenSees沒(méi)有顯示模型的界面),由圖可知單元、節點(diǎn)、支座約束轉換正確。檢查模型參數,截面、材料、載荷等也都轉換正確。
圖7 IFC模型(左)及自動(dòng)生成的Marc模型(右)
Fig.7 IFC model(left) and auto-generated Marc model(right)
分別用Marc和OpenSees對自動(dòng)生成的模型進(jìn)行模態(tài)分析,得到的前三階振型所對的頻率相差小于1%,如表3所示:
表3 Marc與OpenSees模態(tài)分析結果對比
Tab.3 Modal analysis result of Marc and OpenSees
對框架輸入Y方向地震動(dòng)加速度,分別用Marc和OpenSees進(jìn)行彈塑性時(shí)程分析。選用El Centro地震波,地震峰值加速度設為400Gal,頂點(diǎn)位移的時(shí)程曲線(xiàn)如圖8所示,吻合得很好。
圖8 Marc與OpenSees彈塑性時(shí)程分析結果對比
Fig.8 Elasto-plastic time-history analysis result of Marc and OpenSees
兩個(gè)軟件的模態(tài)分析和時(shí)程分析結果的一致性,進(jìn)一步說(shuō)明了模型的單元、材料等各參數都得到了正確轉換。
5. 結 論
本文從建筑震害分析的數據需求出發(fā),逐一分析了這些數據需求在IFC4中的表達方法,建立了一個(gè)完整的IFC4結構分析子信息模型。利用該子信息模型,就能通過(guò)IFC4標準來(lái)描述可進(jìn)行建筑抗震彈塑性分析的鋼筋混凝土結構模型。
根據建立的IFC4結構分析子信息模型以及Marc和OpenSees軟件的建模規則,編寫(xiě)了模型轉換程序,實(shí)現了節點(diǎn)、構件、載荷、支座約束、材料、截面幾何等所有抗震分析所必要的信息的正確轉換,進(jìn)行了IFC文件到Marc和OpenSees軟件之間的數據轉換的新嘗試。
在此基礎上,還有很多研究?jì)热菘梢岳^續開(kāi)展。例如,擴展本文建立的IFC4結構分析子信息模型,使之能描述樓板、剪力墻等其他結構構件;考慮城市建筑群信息的IFC表達方法等。