董立坤 王 徽
(中國(guó)建筑科學(xué)研究院,北京 100013)
PKPM中PMCAD模塊采用人機(jī)交互方式,逐層布置各層柱、梁、墻等構(gòu)件及荷載,通過樓層組裝建立起一套描述建筑物整體結(jié)構(gòu)的數(shù)據(jù)[1],是PKPM系列結(jié)構(gòu)設(shè)計(jì)軟件前處理的核心,為后續(xù)功能設(shè)計(jì)模塊(如SATWE)提供數(shù)據(jù)接口。對(duì)于層概念清晰的建筑結(jié)構(gòu),PMCAD建模簡(jiǎn)便快捷、效率較高。
ETABS(Extented Three-dimensional Analysis of Building Systems)是由CSI公司開發(fā)研制的集成化的建筑結(jié)構(gòu)分析與設(shè)計(jì)軟件,是美國(guó)乃至全球公認(rèn)的高層結(jié)構(gòu)計(jì)算程序,在世界范圍內(nèi)廣泛應(yīng)用,為世界上主要的標(biāo)志性建筑所采用,是房屋建筑結(jié)構(gòu)分析與設(shè)計(jì)軟件的業(yè)界標(biāo)準(zhǔn)[2]。其適用于各種建筑結(jié)構(gòu)體系,包括框架體系、支撐框架體系、剪力墻體系、坡屋面、多塔建筑等。
建筑抗震設(shè)計(jì)規(guī)范規(guī)定,利用計(jì)算機(jī)進(jìn)行結(jié)構(gòu)抗震分析時(shí),復(fù)雜結(jié)構(gòu)在多遇地震作用下的內(nèi)力和變形分析,應(yīng)采用不少于兩個(gè)合適的不同力學(xué)模型,并對(duì)其計(jì)算結(jié)果進(jìn)行分析比較。結(jié)構(gòu)設(shè)計(jì)主要包括結(jié)構(gòu)方案、結(jié)構(gòu)內(nèi)力分析、構(gòu)件截面設(shè)計(jì)、構(gòu)造措施四個(gè)層次,對(duì)結(jié)構(gòu)安全的影響依次遞減。前兩個(gè)層次是后續(xù)設(shè)計(jì)的基礎(chǔ),為保證結(jié)構(gòu)方案和內(nèi)力分析的合理與正確,結(jié)構(gòu)設(shè)計(jì)人員經(jīng)常需要使用不同軟件進(jìn)行校核。
目前,當(dāng)結(jié)構(gòu)設(shè)計(jì)人員使用某種結(jié)構(gòu)設(shè)計(jì)軟件初步完成結(jié)構(gòu)布置方案和內(nèi)力分析后,若要進(jìn)行不同程序校核,通常是在其它程序中建立同樣的結(jié)構(gòu)模型以完成結(jié)構(gòu)分析。然而重復(fù)建模將耗費(fèi)大量的人力和時(shí)間,而且可能由于疏忽遺漏,不能保證兩種模型數(shù)據(jù)信息的一致性,包括結(jié)構(gòu)幾何信息、材料及截面信息、荷載信息等。如何實(shí)現(xiàn)不同的結(jié)構(gòu)分析程序模型之間的轉(zhuǎn)換,簡(jiǎn)化建模工作、提高工作效率成為了亟待解決的問題。
本文建立了一種結(jié)構(gòu)模型數(shù)據(jù)轉(zhuǎn)換的方法,利用該方法使用編寫了將PKPM結(jié)構(gòu)模型轉(zhuǎn)換為ETABS模型輸入文件e2k格式的接口程序,并通過工程實(shí)例驗(yàn)證了模型轉(zhuǎn)換方法的可行性與模型的轉(zhuǎn)換的正確性。
建筑結(jié)構(gòu)主要由梁、柱、支撐、板、墻等基本構(gòu)件類型組成。
使用計(jì)算機(jī)語言運(yùn)用面向?qū)ο蠹夹g(shù)中類、對(duì)象的概念進(jìn)行數(shù)據(jù)的抽象及操作行為的抽象可以建立高度結(jié)構(gòu)化的數(shù)據(jù)模型。計(jì)算分析程序中建筑結(jié)構(gòu)模型基本的實(shí)體對(duì)象主要包括軸網(wǎng)、樓層、節(jié)點(diǎn)、梁、墻、柱、支撐、樓板等;屬性對(duì)象主要包括設(shè)計(jì)計(jì)算信息、材料特性信息、截面尺寸信息、門窗洞信息、荷載信息等。
建筑結(jié)構(gòu)設(shè)計(jì)計(jì)算分析中常用的有限元軟件有 PKPM/SATWE、ETABS、SAP2000、MIDAS 等,各種結(jié)構(gòu)分析軟件內(nèi)部使用各自的數(shù)據(jù),這些數(shù)據(jù)的結(jié)構(gòu)、格式各不相同,通常情況下不能直接實(shí)現(xiàn)模型間數(shù)據(jù)信息的共享與交換。然而這些結(jié)構(gòu)分析軟件中基本都實(shí)體對(duì)象和屬性對(duì)象是基本相同的,且數(shù)據(jù)結(jié)構(gòu)基本都基于有限元分析原理,所以數(shù)據(jù)結(jié)構(gòu)又是相似的,基本包括節(jié)點(diǎn)信息、單元信息(單元節(jié)點(diǎn)、單元類型、材料、截面等)、荷載信息(點(diǎn)、線、面荷載)、約束信息等。通過定義一種通用建筑結(jié)構(gòu)模型的一般表達(dá)方法,可以實(shí)現(xiàn)結(jié)構(gòu)模型在各種結(jié)構(gòu)分析軟件之間的轉(zhuǎn)換。
結(jié)構(gòu)模型數(shù)據(jù)主要包括結(jié)構(gòu)的幾何數(shù)據(jù)、結(jié)構(gòu)設(shè)計(jì)計(jì)算參數(shù)信息、材料數(shù)據(jù)、截面數(shù)據(jù)、約束數(shù)據(jù)和荷載數(shù)據(jù)等。建立通用建筑結(jié)構(gòu)模型的主要數(shù)據(jù)如下:
(1)參數(shù)信息(Parameter Information):包括結(jié)構(gòu)類型、模型數(shù)據(jù)的單位(Units,長(zhǎng)度單位和力的單位)等數(shù)據(jù)。
(2)樓層信息(Floor):樓層的編號(hào)、樓層的高度。
(3)節(jié)點(diǎn)信息(Node):節(jié)點(diǎn)的編號(hào)、節(jié)點(diǎn)的坐標(biāo)X、Y、Z。
(4)材料信息(Material):材料的編號(hào)(ID)、材料的類型、材料的屬性值(彈性模量、泊松比、容重、密度、熱膨脹系數(shù)等)。
(5)桿件截面(Frame Section):桿件截面的編號(hào)、截面的形狀(如矩形、圓形、工字形)、截面幾何參數(shù)、采用的材料編號(hào)。
(6)墻截面(Wall Section):墻截面的編號(hào)、截面厚度、采用的材料編號(hào);面的類型(如殼、膜)。
(7)單元信息(Element):單元的編號(hào)、單元的單元類型、單元的截面編號(hào)、單元的材料編號(hào)、單元的節(jié)點(diǎn)編號(hào)等。
(8)約束信息(Constraint):點(diǎn)約束和線約束。
(9)荷載信息(Load):點(diǎn)荷載、線荷載、面荷載、風(fēng)荷載和地震荷載等信息,荷載作用荷載類型、荷載作用的大小、方向荷載作用的位置。
結(jié)構(gòu)模型主要數(shù)據(jù)類圖[3]如圖1所示。
圖1 結(jié)構(gòu)模型主要數(shù)據(jù)類圖
接口程序中,對(duì)于不同的結(jié)構(gòu)分析程序,對(duì)應(yīng)不同的讀寫轉(zhuǎn)換函數(shù)。結(jié)構(gòu)模型轉(zhuǎn)換接口程序?qū)崿F(xiàn)流程見圖2,首先根據(jù)轉(zhuǎn)換需求設(shè)置參數(shù),再由程序根據(jù)參數(shù)信息,調(diào)用相應(yīng)的應(yīng)用程序數(shù)據(jù)的讀取函數(shù),經(jīng)過模型數(shù)據(jù)的準(zhǔn)備,根據(jù)目標(biāo)輸出程序的設(shè)置,調(diào)用相應(yīng)的應(yīng)用程序數(shù)據(jù)的輸出函數(shù)。
圖2 接口程序?qū)崿F(xiàn)流程圖
通用結(jié)構(gòu)模型與各種結(jié)構(gòu)分析模型的轉(zhuǎn)換包括兩部分:(1)將某種結(jié)構(gòu)分析程序(如 PKPM/SATWE、ETABS、SAP2000、MIDAS 等)的結(jié)構(gòu)模型轉(zhuǎn)換成為通用結(jié)構(gòu)模型數(shù)據(jù);(2)將通用結(jié)構(gòu)模型轉(zhuǎn)換成為需求的結(jié)構(gòu)分析軟件的結(jié)構(gòu)模型。以上兩部分的結(jié)合即實(shí)現(xiàn)了任意兩種建筑結(jié)構(gòu)模型數(shù)據(jù)之間的相互轉(zhuǎn)換。不同程序建筑結(jié)構(gòu)模型數(shù)據(jù)轉(zhuǎn)換框架示意圖見圖3。
圖3 不同程序建筑結(jié)構(gòu)模型數(shù)據(jù)轉(zhuǎn)換框架示意圖
模型數(shù)據(jù)轉(zhuǎn)換中重要的環(huán)節(jié)是建立通用建筑結(jié)構(gòu)模型數(shù)據(jù)與各結(jié)構(gòu)分析軟件數(shù)據(jù)之間的映射關(guān)系。由于一般情況下兩者的對(duì)應(yīng)并不是嚴(yán)格一對(duì)一的,從不同結(jié)構(gòu)分析軟件模型數(shù)據(jù)中提取來的對(duì)象數(shù)據(jù)必須映射到通用建筑結(jié)構(gòu)模型數(shù)據(jù)結(jié)構(gòu)中的對(duì)應(yīng)對(duì)象,同樣,從通用建筑結(jié)構(gòu)模型數(shù)據(jù)輸出不同結(jié)構(gòu)分析軟件模型時(shí)也要進(jìn)行相反過程的映射。這些過程中可能要根據(jù)各自模型的特點(diǎn)對(duì)數(shù)據(jù)進(jìn)行適當(dāng)?shù)霓D(zhuǎn)換或簡(jiǎn)化處理。
目前,國(guó)內(nèi)高層結(jié)構(gòu)建筑設(shè)計(jì)通常采用的軟件是PKPM/SATWE和ETABS,很多復(fù)雜的高層建筑都采用這兩種軟件進(jìn)行計(jì)算分析和設(shè)計(jì)作為校核。
PKPM 的模型數(shù)據(jù)構(gòu)主要包含[1,4]:結(jié)構(gòu)設(shè)計(jì)參數(shù)、材料信息、構(gòu)件截面信息、荷載定義信息、節(jié)點(diǎn)信息、網(wǎng)格信息、構(gòu)件布置信息、構(gòu)件荷載信息等。PKPM建筑模型中構(gòu)件主要包括柱、梁、支撐、墻、墻洞口、板等,構(gòu)件的定義方法是描述其截而信息及材料信息。各種構(gòu)件布置時(shí)的參照定位不同,規(guī)則如下:柱布置在節(jié)點(diǎn)上,每節(jié)點(diǎn)上只能布置一根柱;梁、墻的定位是以網(wǎng)格線作為參照,以桿件的中心與網(wǎng)格線的偏心來確定實(shí)際位置;洞口布置在布置有墻的網(wǎng)格上;現(xiàn)澆樓板以閉合的網(wǎng)格線作為參照,一般根據(jù)結(jié)構(gòu)平面的梁、墻布置信息自動(dòng)生成,樓板洞口通過基點(diǎn)和轉(zhuǎn)角的方法來描述其相對(duì)位置。
ETABS[2]軟件以空間有限元分析為基礎(chǔ),針對(duì)建筑結(jié)構(gòu)的特點(diǎn),所有的構(gòu)件按照幾何形狀使用“對(duì)象”進(jìn)行模擬。對(duì)象是將模型中真實(shí)構(gòu)件及作用在構(gòu)件上荷載等屬性,從空間角度上的抽象,對(duì)象包含幾何信息、指定屬性、指定荷載信息。ETABS有三種對(duì)象,即面對(duì)象、線對(duì)象、點(diǎn)對(duì)象。面對(duì)象代表的構(gòu)件有墻肢、連梁、樓板、坡道等。對(duì)于面對(duì)象,可以指定截面、剛性隔板、局部坐標(biāo)軸、剛度修正、質(zhì)量、彈黃、面對(duì)象剖分、均布荷載、風(fēng)荷載等。線對(duì)象代表的構(gòu)件有柱、梁、支撐等。對(duì)于線對(duì)象,可以指定截面、構(gòu)件端部約束釋放、沿軸線端部偏移、軸線偏移、局部坐標(biāo)軸、剛度修正、連接屬性、質(zhì)量、集中荷載、線荷載等。
在PKPM中材料屬性除重度外,其它屬性如彈性模量等都是程序內(nèi)嵌的[5]。在ETABS中的材料定義是開放性,可以通過參數(shù)定義得到各種性能材料。轉(zhuǎn)換中讀取到PKPM中各種等級(jí)材料后,根據(jù)《混凝土結(jié)構(gòu)設(shè)計(jì)規(guī)范》中材料規(guī)定生成并記錄相應(yīng)材料的各種屬性,用于ETABS材料屬性定義。
PKPM和ETABS兩者對(duì)于墻包含洞口的描述有較大差別,PKPM為洞口布置在有墻的網(wǎng)格上,程序自動(dòng)識(shí)別墻肢和開洞形成的連梁;ETABS中墻肢和連梁在建模時(shí)即是區(qū)分開來的。因此,在模型數(shù)據(jù)轉(zhuǎn)換中,根據(jù)洞口的位置見開洞墻轉(zhuǎn)換為墻肢和連梁。
ETABS中墻上不能指定線荷載,當(dāng)PKPM中墻上布置有線荷載時(shí),模型轉(zhuǎn)換時(shí)可將線荷載轉(zhuǎn)換為墻端節(jié)點(diǎn)荷載或在對(duì)應(yīng)墻上添加虛梁,其中對(duì)應(yīng)材料的密度、重度為0,彈性模量、剪切模量指定成比C30混凝土相應(yīng)屬性低4個(gè)量級(jí),保證基本不影響結(jié)構(gòu)質(zhì)量及剛度,僅起導(dǎo)荷作用。
考慮樓板作為梁翼緣對(duì)梁剛度和承載力的影響以及地震作用分析時(shí)連梁剛度折減,對(duì)梁和連梁剛度進(jìn)行修正,目前程序采用對(duì)話框人工交互輸入的方式確定放大或折減系數(shù)的取值,可以滿足一般工程需要,若需調(diào)整可在模型導(dǎo)入后對(duì)需要修改的單獨(dú)指定。
根據(jù)PKPM模型數(shù)據(jù)與ETABS模型數(shù)據(jù)的描述,基于Microsoft Visual C++程序開發(fā)環(huán)境,建立結(jié)構(gòu)模型數(shù)據(jù),主要數(shù)據(jù)結(jié)構(gòu)見表1所示,以PKPM的模型數(shù)據(jù)文件和ETABS.e2k文本文件為對(duì)象,編寫模型轉(zhuǎn)換接口程序,模型轉(zhuǎn)換流程簡(jiǎn)圖見圖4?;舅悸窞?(1)根據(jù)設(shè)定的參數(shù)信息,讀取PKPM的結(jié)構(gòu)模型信息;(2)將各種數(shù)據(jù)信息進(jìn)行計(jì)算和整合,形成整個(gè)結(jié)構(gòu)模型的數(shù)據(jù);(3)輸出模型ETABS.e2k文本文件。
圖4 PKPM-ETABS模型轉(zhuǎn)換流程簡(jiǎn)圖
表1 接口程序中主要數(shù)據(jù)結(jié)構(gòu)表
ETABS計(jì)算用模型數(shù)據(jù)文件為*.EDB文件,另外提供導(dǎo)入部分格式模型文件,包括ETABS.e2k文本文件、DXF文件、IFC文件、ProSteel.mdb文件等。本文模型輸出文件選擇ETABS.e2k文本文件。ETABS數(shù)據(jù)文件以數(shù)據(jù)塊為單位進(jìn)行組織,數(shù)據(jù)塊由數(shù)據(jù)行組成。每個(gè)數(shù)據(jù)塊的第一行稱之為分隔符行,以開頭,用以識(shí)別該數(shù)據(jù)塊。數(shù)據(jù)行由一個(gè)或多個(gè)數(shù)據(jù)項(xiàng)組成,數(shù)據(jù)項(xiàng)之間用逗點(diǎn)與空格分隔。模型文本文件的輸出主要就是根據(jù)ETABS數(shù)據(jù)文件對(duì)應(yīng)的數(shù)據(jù)塊分別形成相應(yīng)的信息。輸出的ETABS.e2k文本文件數(shù)據(jù)塊主要包括以下內(nèi)容:
$PROGRAM INFORMATION
PROGRAM"ETABS"VERSION"9.2.0"(程序版本)
$CONTROLS//UNITS"N""MM"(單位制)
$STORIES-IN SEQUENCE FROM TOP(樓層數(shù)據(jù))
STORY"STORY1"HEIGHT 3000 MASTERSTORY"Yes"(樓層編號(hào)、層高、是否為控制層)
$GRIDS(軸網(wǎng)定義,作為輔助參考,可以不轉(zhuǎn)入,不影響計(jì)算分析)
$MATERIAL PROPERTIES(材料屬性定義)
$FRAME SECTIONS(框架截面定義)
$CONCRETE SECTIONS(混凝土截面定義)
$WALL/SLAB/DECK PROPERTIES(墻、樓板、組合樓板屬性定義)
$LINK PROPERTIES(連接單元屬性)
$PIER/SPANDREL NAMES(墻肢、連梁名稱定義)
$POINT COORDINATES(節(jié)點(diǎn)坐標(biāo))
$LINE CONNECTIVITIES(線單元坐標(biāo))
$AREA CONNECTIVITIES(面單元連接)
$POINT ASSIGNS(節(jié)點(diǎn)指定)
$LINE ASSIGNS(線指定)
$AREA ASSIGNS(面指定)
$STATIC LOADS(荷載定義)
$POINTOBJECT LOADS(節(jié)點(diǎn)荷載指定)
$LINE OBJECT LOADS(線荷載指定)
$AREA OBJECT LOADS(面荷載指定)
$ANALYSISOPTIONS(分析選項(xiàng))
$END OFMODEL FILE
輸出ETABS.e2k文本文件后,打開ETABS,選擇菜單→文件→導(dǎo)入→ETABS.e2k文本文件,選擇生成的文件導(dǎo)入ETABS程序,在計(jì)算分析前,可以根據(jù)特殊要求對(duì)模型進(jìn)行部分完善,如剛性隔板指定、框架和殼剛度修正、面對(duì)象剖分、風(fēng)荷載定義、反應(yīng)譜定義、反應(yīng)譜工況定義等。
使用較多各種結(jié)構(gòu)類型的工程實(shí)例對(duì)模型轉(zhuǎn)換接口進(jìn)行了測(cè)試和驗(yàn)證,下面選取框架結(jié)構(gòu)、剪力墻結(jié)構(gòu)、框架-剪力墻結(jié)構(gòu)的3個(gè)典型工程實(shí)例模型,使用開發(fā)的轉(zhuǎn)換程序?qū)KPM模型轉(zhuǎn)換成ETABS模型,分別在 PKPM的 SATWE模塊和ETABS中對(duì)結(jié)構(gòu)進(jìn)行彈性計(jì)算分析,提取結(jié)構(gòu)的質(zhì)量、恒活荷載作用下基底豎向反力、振型周期、地震作用下基底剪力和結(jié)構(gòu)頂點(diǎn)位移進(jìn)行對(duì)比驗(yàn)證。
a)某框架結(jié)構(gòu)
某6層框架結(jié)構(gòu),模型簡(jiǎn)圖見圖5,計(jì)算振型數(shù)為15,兩種分析軟件計(jì)算分析結(jié)果比較見表2。
圖5 某框架結(jié)構(gòu)模型簡(jiǎn)圖
表2 某框架結(jié)構(gòu)計(jì)算分析結(jié)果比較表
b)某剪力墻結(jié)構(gòu)
案例2:某24層剪力墻結(jié)構(gòu),模型簡(jiǎn)圖見圖6,計(jì)算振型數(shù)為21,兩種分析軟件計(jì)算分析結(jié)果比較見表3。
圖6 某剪力墻結(jié)構(gòu)模型簡(jiǎn)圖
表3 某剪力墻結(jié)構(gòu)計(jì)算分析結(jié)果比較表
c)某框架-剪力墻結(jié)構(gòu)
某24層框架-剪力墻結(jié)構(gòu),模型簡(jiǎn)圖見圖7,計(jì)算振型數(shù)為27,兩種分析軟件計(jì)算分析結(jié)果比較見表4。
圖7 某框架-剪力墻結(jié)構(gòu)模型簡(jiǎn)圖
表4 某框架-剪力墻結(jié)構(gòu)計(jì)算分析結(jié)果比較表
綜上所述,從以上三個(gè)典型工程實(shí)例結(jié)構(gòu)模型的計(jì)算分析結(jié)果對(duì)比可知,各工程PKPM模型與ETABS模型具有較好的一致性,模型轉(zhuǎn)換效果良好,兩種軟件計(jì)算的結(jié)構(gòu)質(zhì)量、恒活荷載作用下基底豎向反力、振型周期、地震作用下基底剪力和結(jié)構(gòu)頂點(diǎn)位移接近,誤差在工程應(yīng)用的允許范圍內(nèi),對(duì)比結(jié)果表明轉(zhuǎn)換程序是成功的。
本文建立了一種通過中間通用的結(jié)構(gòu)模型數(shù)據(jù)實(shí)現(xiàn)不同軟件結(jié)構(gòu)模型數(shù)據(jù)轉(zhuǎn)換的方法,并利用該方法使用Microsoft Visual C++編寫了將PKPM結(jié)構(gòu)模型轉(zhuǎn)換為ETABS模型輸入文件e2k格式的接口程序,初步實(shí)現(xiàn)了結(jié)構(gòu)設(shè)計(jì)所需的構(gòu)件幾何信息、材料信息、截面信息、荷載信息的轉(zhuǎn)換,并通過工程實(shí)例驗(yàn)證了模型轉(zhuǎn)換方法的可行性與模型的轉(zhuǎn)換的正確性。該方法可供編寫不同軟件數(shù)據(jù)接口的人員參考,下一步可基于該方法建立與其它軟件的結(jié)構(gòu)模型轉(zhuǎn)換接口。
[1]中國(guó)建筑科學(xué)研究院PKPMCAD工程部.PMCAD結(jié)構(gòu)平面CAD軟件用戶手冊(cè)及技術(shù)條件[M].2009.
[2] 北京金土木軟件技術(shù)有限公司,中國(guó)建筑標(biāo)準(zhǔn)設(shè)計(jì)研究院.ETABS中文版使用指南[M].北京:中國(guó)建筑工業(yè)出版社,2004.
[3] 邸元,袁明武.高層建筑結(jié)構(gòu)CAD系統(tǒng)的數(shù)據(jù)模式[J].計(jì)算機(jī)輔助設(shè)計(jì)與圖形學(xué)學(xué)報(bào),2001,13(2):151-157.
[4] 中國(guó)建筑科學(xué)研究院PKPMCAD工程部.SATWE多層及高層建筑結(jié)構(gòu)空間有限元分析與設(shè)計(jì)軟件用戶手冊(cè)及技術(shù)條件[M].2011.
[5] 劉慧鵬,李云貴,周新煒.PKPM與ABAQUS結(jié)構(gòu)模型數(shù)據(jù)接口開發(fā)研究及應(yīng)用[J].上海:工程三維模型與虛擬現(xiàn)實(shí)表現(xiàn)——第二屆工程建設(shè)計(jì)算機(jī)應(yīng)用創(chuàng)新論壇論文集,2009.