由于預應力結構能有效地降低結構高度、提高抗裂性能、擴大柱網,近年來在大跨度結構中得到較為廣泛的應用。但預應力結構延性較差,在抗震設防烈度較高的地區應用時,其抗震能力應予以重視。2020年實施的《預應力結構抗震設計標準》規定預應力結構應采用靜力彈塑性分析方法或彈塑性時程分析方法,驗算其抗震能力,但目前缺乏有效的分析手段。
大型通用有限元軟件ABAQUS非線性分析能力強大,近年來已被廣泛用于復雜結構的動力彈塑性分析,但其建模困難、使用復雜。為此諸多學者對ABAQUS二次開發,以解決大型復雜結構建模困難的問題。王玄玄[1]開發了Revit軟件到ABAQUS軟件的框架結構模型轉換接口,最終生成ABAQUS的INP有限元模型文件。楊律磊[2]開發了將SAP2000和MIDAS結構模型轉化為ABAQUS模型的接口程序,以用于結構的動力彈塑性分析。王強等[3-5]開發了PKPM軟件到ABAQUS軟件的建筑結構參數化建模軟件PA-TRANS,可以生成結構的CAE模型,用于建筑結構動力彈塑性分析與倒塌過程模擬。
以往的研究成果均未能實現預應力結構在ABAQUS中的自動化建模,因此基于ABAQUS進行預應力結構的非線性分析是極為困難的。為實現預應力結構的高效建模分析,本文對預應力結構模型的復雜數據結構進行深入研究,將結構幾何模型和配筋信息進行數據融合與匹配,進而探索預應力結構在ABAQUS中的自動化建模技術。
PKPM是我國建筑設計中常見的結構設計軟件,擁有PMSAP和SATWE兩大設計計算核心。PMSAP主要用于復雜空間結構設計分析,并以開放的文本形式提供較為完備的結構幾何模型和構件配筋信息,但目前尚不能進行預應力結構設計分析。SATWE主要用于多、高層建筑結構設計,結構的幾何模型和構件配筋信息可以導出至SQLITE數據庫。對于預應力結構設計,PKPM是通過調用SATWE核心計算,但預應力筋信息保存至封閉的數據文件中。
鑒于PMSAP數據的開放性、完備性,課題組開發的PA-TRANS轉換程序是采用Python語言編程,首先讀取PMSAP設計計算的結構模型信息,隨后調用ABAQUS提供的建模函數庫,實現了普通結構在ABAQUS中參數化建模。對于預應力結構而言,其幾何模型信息、非預應力筋配筋信息、預應力筋配筋信息的數據來源不同,使得數據結構差異較大、信息不匹配。為使PA-TRANS能夠進行預應力結構的自動化建模,本文首先研究預應力結構的配筋數據結構、數據獲取方式以及各類數據的匹配關系,實現預應力結構模型信息的數據融合。在ABAQUS中建立預應力結構模型,可以在普通結構模型的基礎上,根據預應力結構的受力特點進一步開展預應力筋的建模、預應力施加。具體流程如圖1所示。

圖1 預應力結構建模流程
在PA-TRANS程序中可根據分析需求,參數化轉換PMSAP模型為ABAQUS軟件的有限元模型。現階段在PKPM中以PMSAP和SATWE進行計算設計時,結構的幾何模型信息具有通用性,因此本文仍采用原有的研究成果獲取預應力結構的幾何模型數據。
PKPM預應力模塊調用SATWE核心進行預應力結構設計,結構模型信息被存儲至封閉的PDB文件中。借助PKPM提供的數據導出功能,非預應力配筋數據可被導出至開放的SQLITE數據庫Calc.jwd文件中。
SQLITE是一種輕量級嵌入式數據庫,不需要在系統中配置,且數據訪問查詢極為方便。預應力結構模型中不同類型的數據存儲在相應的表格中,其中梁、柱構件的非預應力筋信息數據表分別為pkpmRCBeamDsn、pkpmRCColumDsn。每行數據完整存儲了一個構件的非預應力筋信息,包括構件號、PmID、頂部鋼筋面積、底部鋼筋面積、軸壓比等。其中,PmID號作為PKPM軟件輸出結構信息時構件獨有的索引號,同一構件在PMSAP和SATWE計算模型中具有唯一的PmID號。按照相同PmID號為同一根構件的原則,將SATWE中構件配筋信息和PMSAP幾何構件模型信息匹配。經對配筋數據內容轉化、格式整理后,將SATWE的構件配筋信息融入到PA-TRANS程序原有的數據結構中,實現不同來源的結構幾何模型信息和配筋信息匹配融合。
PKPM軟件中預應力筋數據的存儲方式同非預應力筋數據存儲方式存在較大差異,預應力筋數據信息為獨立且封閉的存儲文件PRECPM.PRE、PCABLE.PRE,且不能被導出至SQLITE數據庫。依據PKPM約定的數據存儲格式,可以從預應力筋數據文件中獲取預應力結構的總體設計參數、預應力構件的布置、預應力筋的線型等信息,并在PA-TRANS中增加相應的數據結構。通過預應力構件布置信息數據中的構件號能夠實現與結構幾何模型的數據匹配。
本文在原有的PA-TRANS轉換程序基礎上接力開發預應力結構的預應力筋建模模塊。通過利用數據融合規則將多源異構[6]數據建立預應力結構模型,通過Python語言編程,實現預應力筋模塊的自動化建模。預應力筋的參數化建模包括繪制預應力筋線、施加張拉控制應力、網格劃分、節點約束等建模步驟。
在PKPM軟件中有四段拋物線、三段拋物線、三段折線等8種線型,在保證應力筋模型的準確性,本文將預應力筋線型簡化為直線、兩段折線、三段折線、弧曲線4種類型。通過預應力筋線型數據以及預應力筋所匹配的幾何構件模型可以獲得線型關鍵點坐標。通過調用ABAQUS內置函數WirePolyLine、WireSpline分別建立分離式的預應力筋線型,完成預應力筋的幾何布置。
依據PKPM所給出的預應力筋材料屬性,本文選用可考慮拉壓不等強的材料本構模型,并在ABAQUS中自動建立相應的材料模型參數。預應力筋的有效張拉控制力通過ABAQUS提供的降溫法實現,數值按式(1)計算。

T:為要給預應力筋施加的溫度;σ:為預加力施加后預應力筋達到的應力值;E:為預應力筋的彈性模量;α:為預應力筋的膨脹系數。
鑒于整體結構非線性分析計算工作量的合理性,預應力梁柱構件采用梁單元模擬,預應力筋采用桿單元模擬。為準確描述在構件全長內預應力筋和構件混凝土在橫截面方向的變形協調特性,本文采用預應力筋單元與構件單元的節點就近原則對預應力筋進行網格劃分,使得預應力筋單元節點和構件單元節點一一對應,并形成節點對。隨后本文采用Equation方法耦合預應力筋單元與構件單元節點對的自由度,對于有粘結應力筋,耦合節點對的三個平動自由度,來描述預應力筋和混凝土的變形協調。對于無粘結預應力筋,耦合[7]構件端部節點對的三個平動自由度,中部節點對在橫截面方向的兩個平動自由度,來描述構件中部無粘結預應力筋和混凝土沿梁長方向的滑移狀態。流程圖見圖2。

圖2 Equation約束流程圖
為驗證本文預應力結構建模思想的合理性以及程序編制的正確性,本文對PKPM軟件設計的預應力結構模型進行轉化,得到ABAQUS有限元模型。本文對PKPM和ABAQUS模型的結構質量、周期、振型結果進行對比,以驗證預應力結構模型轉換的正確性。模型的質量周期對比如表1所示,1-3階振型圖對比如圖3所示。從圖可以看到,結構在PKPM和ABAQUS中的前三階振型,形態基本一致。

表1 PKPM模型與ABAQUS模型的質量和周期對比

圖3 PKPM與ABAQUS結構模態分析圖
本文對PKPM預應力結構模型轉換為ABAQUS有限元預應力結構模型的建模方法深入研究,獲得如下結論:
①PKPM預應力結構設計模型的數據內容復雜且多源異構,必須采用合適的獲取方式得到數據。基于PmID號與構件號進行數據匹配,能夠實現預應力結構的幾何模型信息、非預應力筋信息、預應力筋信息的數據融合。從而可形成預應力結構模型的完整信息。
②采用Equation約束方程,能夠實現預應力筋桁架單元與構件梁單元的位移協調。該方法具有建模靈活、計算工作量少的特點,可通用于無粘結和有粘結預應力結構的建模與分析。
③采用Python語言編程調用ABAQUS內部函數庫,在已有的建筑結構參數化建模軟件PA-TRANS基礎上開發預應力結構自動化建模模塊,能夠用于ABAQUS預應力框架結構有限元高效建模。
本文所述方法解決了預應力結構在通用有限元軟件ABAQUS中建模復雜的問題,為進一步開展預應力結構非線性分析奠定了良好的基礎。