• 沒有找到結果。

空间钢结构APDL参数化 - 万水书苑-出版资源网

N/A
N/A
Protected

Academic year: 2021

Share "空间钢结构APDL参数化 - 万水书苑-出版资源网"

Copied!
85
0
0

加載中.... (立即查看全文)

全文

(1)第 5 章 弦支穹顶结构分析 在空间结构中,预应力技术已经得到了广泛的应用。预应力钢结构是预应力技术引入传 统结构而得到的一种新型杂交空间结构形式。此种结构形式把柔性的钢索与刚性的钢结构完 美地融合在一起,为建筑师提供了既实用又经济的覆盖大面积、大空间的建设手段,因而成 为当今体育场馆、机场、大型机库、会展中心等大型建筑首选的结构类型。目前在工程中常 用的预应力钢结构有单向弦支梁或者弦支桁架、双向弦支梁或者弦支桁架、弦支穹顶和悬索 结构等。 在预应力钢结构的有限元分析理论方面,由于预应力钢索的引入,使得结构分析方法与 普通非预应力空间结构有很大的不同,这主要体现在:①预应力钢结构的分析起点为预应力 索张拉完成后的整体模型;②预应力钢结构的几何非线性特征极其明显;③为了得到最优的 预应力需要进行预应力优化设计阶段;④在进行各种工况分析之前,必须完成结构的形态分 析;⑤稳定分析、模态分析、时程响应分析等需要考虑预应力的影响;⑥需要对施工阶段进 行力学模拟以便指导工程施工。本节将结合典型的、最具有代表性的预应力钢结构一弦支穹 顶实例来详细介绍如何在 ANSYS 中实现弦支穹顶结构的各种结构分析,其操作步骤可为其他 预应力钢结构的分析提供重要参考。. 5.1. 弦支穹顶结构概述. 5.1.1 弦支穹顶的基本概念 典型的弦支穹顶结构体系由上部单层网壳、下部的竖向撑杆、径向拉杆或者拉索和环向 拉索组成(如图 5-1 至图 5-3 所示),其中各环撑杆的上端与单层网壳对应的各环节点铰接, 撑杆下端由径向拉索与单层网壳的下一环节点连接,同一环的撑杆下端由环向拉索连接在一 起,使整个结构形成一个完整的体系,结构的传力路径也比较明确。在正常使用荷载作用下, 内力通过上端的单层网壳传到下端的撑杆上,再通过撑杆传给索,索受力后,产生对支座的 反向推力,使整个结构对下端约束环梁的横向推力大大减小。与此同时,由于撑杆的作用, 大大减小了上部单层网壳各环节点的竖向位移和变形。. 图 5-1. 弦支穹顶结构体系简图.

(2) 第 5 章 弦支穹顶结构分析. 图 5-2. 弦支穹顶上部单层网壳. 图 5-3. 弦支穹顶下部索撑体系. 161. 弦支穹顶体系作为刚柔结合的新型复合空间预应力结构,与单层球面网壳结构及索穹顶 结构相比,具有如下特点:①从设计角度看,弦支穹顶结构受力合理,效能较高;②从施工 角度看,施工过程得以简化,对支座环梁要求降低。因此,自 1993 年日本法政大学川口卫教 授提出弦支穹顶概念以来,弦支穹顶结构已在国内外 10 余项大型工程中得到了应用,如天津 博物馆、2008 北京奥运会羽毛球馆、安徽大学体育馆等。 5.1.2 弦支穹顶结构实例描述 弦支穹顶结构属于预应力钢结构,在各类有限元分析的方法和操作上与网架、网壳等传 统的空间结构相比,具有一定的特殊性。本章将结合一工程实例来详细介绍如何使用 ANSYS 对弦支穹顶结构进行各种类型的结构分析。 问题描述:某体育馆屋盖采用弦支穹顶结构,其轴测图和立面图如图 5-4 所示。体育馆球 冠直径为 92m,支承于角度等分圆周的钢筋混凝土圆柱上,钢筋混凝土圆柱共 24 根,布置于 球壳的最外环,上部单层网壳采用凯维特网格,共 16 环,由里至外依次为第 1 圈、第 2 圈、…… 第 16 圈。结构各杆件之间的连接采用铸钢节点连接。弦支穹顶单层网壳的构件规格有 P203×6、 P219×7、P245×7、P273×8、P299×8,具体的杆件布置见表 5-1。弦支穹顶结构下部索撑体系 共布置 7 道预应力环索,环索、径向拉索和撑杆编号由里至外依次为第 1 圈、第 2 圈、……、 第 7 圈;重力荷载作用下,环索预应力由里至外依次为 488kN、457kN、365kN、816kN、783kN、 1140kN、1520kN;撑杆高度由里至外依次为 4.5m、4.5m、4.5m、4.5m、5.0m、5.5m、6.0m。 支座采用橡胶支座,为径向释放,环向和竖向完全约束。体育馆的具体荷载见表 5-2。.

(3) 空间钢结构 APDL 参数化计算与分析. 162. (a)立面图. (b)轴测图 图 5-4. 弦支穹顶结构的整体模型. 表 5-1 弦支穹顶结构杆件布置图 杆件位置. 杆件规格. 杆件位置. 杆件规格. 单层网壳环向杆件第 1 圈. P219×7. 单层网壳径向杆件第 1 圈. P219×7. 单层网壳环向杆件第 2 圈. P219×7. 单层网壳径向杆件第 2 圈. P203×6. 单层网壳环向杆件第 3 圈. P219×7. 单层网壳径向杆件第 3 圈. P203×6. 单层网壳环向杆件第 4 圈. P219×7. 单层网壳径向杆件第 4 圈. P203×6. 单层网壳环向杆件第 5 圈. P219×7. 单层网壳径向杆件第 5 圈. P203×6. 单层网壳环向杆件第 6 圈. P245×7. 单层网壳径向杆件第 6 圈. P203×6. 单层网壳环向杆件第 7 圈. P219×7. 单层网壳径向杆件第 7 圈. P203×6. 单层网壳环向杆件第 8 圈. P245×7. 单层网壳径向杆件第 8 圈. P203×6. 单层网壳环向杆件第 9 圈. P273×8. 单层网壳径向杆件第 9 圈. P203×6. 单层网壳环向杆件第 10 圈. P299×8. 单层网壳径向杆件第 10 圈. P203×6. 单层网壳环向杆件第 11 圈. P219×7. 单层网壳径向杆件第 11 圈. P203×6. 单层网壳环向杆件第 12 圈. P299×8. 单层网壳径向杆件第 12 圈. P203×6.

(4) 第 5 章 弦支穹顶结构分析. 163 续表. 杆件位置. 杆件规格. 杆件位置. 杆件规格. 单层网壳环向杆件第 13 圈. P219×7. 单层网壳径向杆件第 13 圈. P203×6. 单层网壳环向杆件第 14 圈. P299×8. 单层网壳径向杆件第 14 圈. P203×6. 单层网壳环向杆件第 15 圈. P219×7. 单层网壳径向杆件第 15 圈. P219×7. 单层网壳环向杆件第 16 圈. P299×8. 单层网壳径向杆件第 16 圈. P219×7. 下部索撑体系环向索第 1 圈 半平行钢丝束 Φ7×73. 下部索撑体系环向索第 5 圈. 半平行钢丝束 Φ7×121. 下部索撑体系环向索第 2 圈 半平行钢丝束 Φ7×73. 下部索撑体系环向索第 6 圈. 半平行钢丝束 Φ7×121. 下部索撑体系环向索第 3 圈 半平行钢丝束 Φ7×73. 下部索撑体系环向索第 7 圈. 半平行钢丝束 Φ7×121. 下部索撑体系环向索第 4 圈 半平行钢丝束 Φ7×73. 下部索撑体系撑杆. P219×7. 下部索撑体系径向拉杆. 钢拉杆 Φ80 表 5-2 主要荷载. 屋面恒载. 屋面活载. 2. 2. 0.8kN/m. 0.5kN/m. 基本风压. 温度作用. 0.5kN/m2,B 类地面. ±20 度. 5.2. 基本雪压 2. 0.35kN/m. 弦支穹顶结构有限元模型的建立. 5.2.1 基本理论 1.单元选取 对于弦支穹顶而言,建立其有限元模型时一般直接建立其节点、单元,无须先建立几何 模型再经过网格划分产生有限元模型。 弦支穹顶的上部单层网壳一般使用铸钢节点或者相贯节点,因此上部单层网壳各个单元 之间的连接简化为刚接,即上部单层网壳单元应该用梁单元来模拟,通常 BEAM4 单元就能满 足工程分析的精度,有时为了考虑大变形效应、定义杆件截面和进行材料非线性分析,也可 使用 BEAM188 或 BEAM189 单元;对于径向拉杆与竖向撑杆,它们与上部单层网壳之间的连 接简化为铰接,因此径向拉杆与竖向撑杆应采用杆单元模拟,通常使用 LINK8 单元来模拟弦 支穹顶结构的径向拉杆和竖向撑杆;对于环向拉索,可以简化两端均为铰接的杆单元模拟, 但是它具有特殊性,即拉索为只拉不压单元,因此可利用 LINK10 单元来模拟拉索单元。弦支 穹顶结构有限元模型的周边约束可根据实际的支座构造来定义,一般情况下定义为径向释放, 环向和竖向约束。 2.模型的建立 对于弦支穹顶而言,尤其是大跨度弦支穹顶而言,其节点和单元数目极其庞大,一般为 几千左右,因此若是利用 GUI 形式来建立其模型,显得不切实际,但是 ANSYS 有强大的 APDL 描述性程序语言,可借助 APDL 语言轻松地建立其有限元模型。.

(5) 空间钢结构 APDL 参数化计算与分析. 164. 利用 APDL 语言建立有限元模型的大概思路为:定义几何参数和数组;建立上部单层网 壳节点;不考虑上部单层网壳构件截面的变化,利用特定的某一截面建立全部上部单层网壳 节点单元;按照设计图纸修正上部单层网壳的单元截面;建立下部节点;建立竖向撑杆单元; 建立径向拉杆单元;建立环索单元,设置支座约束。 3.建模注意问题 在建立弦支穹顶有限元模型时,这里有几个问题需要注意: (1)建立上部单层网壳节点时,一定要注意 ANSYS 目前激活的角度单位是弧度还是角 度,可利用*AFUN 命令设置。 (2)建立弦支穹顶结构的周边约束时,一定要先将局部柱坐标系激活,然后再将需要设 置约束的节点旋转到与激活局部坐标系平行的状态,否则将会产生约束设置错误,使得约束 状态偏离实际,相关命令为 CSYS 和 NROTAT。 (3)设置环索单元的实常数时,初始应变一定是经过形态分析后得到的初始应变,否则 模型中实际的预应力将偏离设计预应力。 4.施加预应力方法 下面主要介绍如何在 ANSYS 中施加预应力。在 ANSYS 中给单元施加预应力的方法主要 有两种,即施加初始应变法和施加虚拟温度法。 初始应变法的计算公式为:   / E ,其中  为索单元初始应变, 为索单元的预应力(不 同于设计预应力,与弦支穹顶结构的形态分析相关) ; E 为弹性模量,这种施加预应力的方法 需要在设置单元的实常数的时候设定。另一种施加预应力的方法是虚拟温度法,其计算公式 为    (T2  T1 ) E ,其中  为索单元的线膨胀系数; T2 和 T1 分别为变化后和变化前的温度, 这种施加预应力的方式是通过给预应力索施加温度荷载实现的。具体的计算操作可参考后面 的算例,在预应力钢结构的分析中,预应力的施加是必需的。 5.2.2 实例分析 本节将基于 5.1 节介绍的工程实例,详细介绍如何使用 APDL 语言在 ANSYS 中实现弦支 穹顶结构的参数化建模。分析过程如下。 1.计算假定和单元选取 上部单层网壳结构采用铸钢节点,因此上部单层结构杆件之间的连接应简化为刚接,采 用梁单元模拟,本实例中采用 BEAM4,撑杆与上部单层网壳之间的连接简化为铰接,因此撑 杆采用 LINK8 单元模拟,环索具有只拉不压的特性,采用 LINK10 单元模拟,支座约束为径 向释放,环向和竖向约束。 2.材料属性的设定 在实际工程中,该弦支穹顶采用的基本材料有两种,一种为建筑型钢,一种为索材。在 有限元模型中使用的材料常数如表 5-3 所示。 表 5-3 材料参数表 材料. 2. 弹性模量(N/m ). 泊松比. 3. 密度(kg/m ). 2. 屈服强度(N/m ). 温度膨胀系数. 建筑型钢. 2.06e11. 0.3. 7850. 315. 1.2e-5. 索材. 1.8e11. 0.3. 7850. 1330. 2.0e-5.

(6) 第 5 章 弦支穹顶结构分析. 165. 3.参数设定 单位采用国际单位制,力:N;长度:m;质量:kg;时间:s。有限元模型中整体几何参 数含义如表 5-4 至表 5-6 所示。 表 5-4 几何参数设定及其含义 几何参数或者数组. 参数含义. Kn=6. 上部凯威特单层网壳采用 K6 型. Nx=16. 上部凯威特单层网壳划分为 16 圈. f=17.025. 上部单层网壳结构的矢高为 17.025m. Span=92. 上部单层网壳结构的跨度为 92m. [numnode]Nx. 上部单层网壳结构各圈节点数量. [num] Nx+1. 上部单层网壳结构各圈最大节点编号数组(其中中心点单独作为一圈). [numcg]7. 下部索撑结构部分撑杆的高度数组. [area] 32. 上部单层网壳结构各径向杆件和环向杆件的实常数数组 表 5-5 上部单层网壳构件的几何参数. 构件规格. 截面面积. 绕 Z 轴的惯 绕 Y 轴的惯 Z 轴方向 Y 轴方向 性矩. 性矩. 厚度. 构件位置. 厚度. 钢管 P203×6 37.13e-4. 1803.07e-8. 1803.07e-8. 0.203. 0.203. 径向杆第 2~14 圈. 钢管 P219×7 46.62e-4. 2622.04e-8. 2622.04e-8. 0.219. 0.219. 钢管 P245×7 52.34e-4. 3709.06e-8. 3709.06e-8. 0.245. 0.245. 环向杆第 6、8 圈. 钢管 P273×8 66.6e-4. 5851.71e-8. 5851.71e-8. 0.273. 0.273. 环向杆第 9 圈. 钢管 P299×8 73.14e-4. 7747.42e-8. 7747.42e-8. 0.299. 0.299. 环向杆第 10、12、14、16 圈. 环向杆第 1~5、7、11、13、15 圈;径向杆第 1、15、16 圈. 表 5-6 下部索撑结构构件的几何参数 构件规格. 截面面积. 初始缺陷. 构件位置. 半平行钢丝束 Φ7×73. 2809e-6. 9E-05. 第 1 圈环索. 半平行钢丝束 Φ7×73. 2809e-6. 8.97E-04. 第 2 圈环索. 半平行钢丝束 Φ7×73. 2809e-6. 7.18E-04. 第 3 圈环索. 半平行钢丝束 Φ7×73. 2809e-6. 1.60E-03. 第 4 圈环索. 半平行钢丝束 Φ7×121. 4657e-6. 1.54E-03. 第 5 圈环索. 半平行钢丝束 Φ7×121. 4657e-6. 2.23E-03. 第 6 圈环索. 半平行钢丝束 Φ7×121. 4657e-6. 2.98E-03. 第 7 圈环索. 钢管 P219×7. 46.62e-4. 0. 全部撑杆. 钢拉杆 Φ80. 5024e-6. 0. 全部拉杆.

(7) 166. 空间钢结构 APDL 参数化计算与分析. 4.弦支穹顶结构有限元模型参数化建模 APDL 程序 FINISH /CLEAR !清除 ANSYS 内存 *AFUN,DEG !设置角度单位 /FILENAME, suspendome !定义工作文件名 /TITLE, the model of suspendome !定义工作标题 !(1)设置模型基本参数 *SET,Kn,6 !设置凯威特网壳的类型 *SET,Nx,16 !设置圈数 *SET,f,17.025 !设置矢高 *SET,Span,92 !设置跨度 !(2)定义弦支穹顶结构上部单层网壳的几何参数数组 *DIM,numnode,,Nx,1 !定义单层网壳每圈节点个数数组 *DO,i,1,Nx,1 *SET,numnode(i),Kn*i !计算单层网壳每圈的个数并赋值给数组 *ENDDO *DIM,num,,Nx+1,1 !定义每圈节点的最大编号数组,其中中心点单独作为一圈 *SET,num(1),1 !定义第 1 圈(即中心点)的最大节点编号为 1 *DO,i,2,Nx+1,1 *SET,num(i),num(i-1)+numnode(i-1) !计算第 I 圈的最大节点编号并赋值给数组 num *ENDDO *DIM,numcg,,7,1 !定义弦支穹顶结构索撑体系的每圈撑杆高度数组 *SET,numcg(1),4.5 !定义索撑体系第 1 圈的撑杆高度为 4m *SET,numcg(2),4.5 !定义索撑体系第 2 圈的撑杆高度为 4.5m *SET,numcg(3),4.5 !定义索撑体系第 3 圈的撑杆高度为 4.5m *SET,numcg(4),4.5 !定义索撑体系第 3 圈的撑杆高度为 4.5m *SET,numcg(5),5.5 !定义索撑体系第 5 圈的撑杆高度为 5.5m *SET,numcg(6),6 !定义索撑体系第 6 圈的撑杆高度为 6m *SET,numcg(7),6.5 !定义索撑体系第 7 圈的撑杆高度为 6.5m /PREP7 !进入前处理模块 !(3)定义单元类型、材料属性和杆件实常数 ET,1,BEAM4 !单层网壳杆件的单元类型为 BEAM4 ET,2,LINK8 !定义索撑体系中径向拉杆和竖向撑杆的单元类型为 LINK8 ET,3,LINK10 !定义索撑体系中环向拉索的单元类型为 LINK10 MP,ex,1,2.06e11 !定义钢管的材料的弹性模量 MP,dens,1,7850 !定义钢管的材料的密度 MP,alpx,1,1.2e-5 !定义钢管的材料的线膨胀系数 MP,prxy,1,0.3 !定义钢管的材料的泊松比 TB,BISO,1,1,2, !定义钢管的本构关系为双线性模型 TBTEMP,0 !定义钢管的本构关系所对应的温度 TBDATA,,345e6,0,,,, !定义钢管的屈服强度为 345MPa MP,ex,2,1.9e11 !定义拉索的材料的弹性模量 MP,dens,2,7850 !定义拉索的材料的密度 MP,alpx,2,1.2e-5 !定义拉索的材料的线膨胀系数 MP,prxy,2,0.3 !定义拉索的材料的泊松比 TB,BISO,2,1,2, !定义拉索的本构关系为双线性模型.

(8) 第 5 章 弦支穹顶结构分析 TBTEMP,0 TBDATA,,1330e6,0,,,, !定义单元实常数 R,1,37.13e-4,1803.07e-8,1803.07e-8,0.203,0.203 R,2,46.62e-4,2622.04e-8,2622.04e-8,0.219,0.219 R,3,52.34e-4,3709.06e-8,3709.06e-8,0.245,0.245 R,4,66.6e-4,5851.71e-8,5851.71e-8,0.273,0.273 R,5,73.14e-4,7747.42e-8,7747.42e-8,0.299,0.299 R,6,2809e-6,9E-05 R,7,2809e-6,8.97E-04 R,8,2809e-6,7.18E-04 R,9,2809e-6,1.60E-03 R,10,4657e-6,1.54E-03 R,11,4657e-6,2.23E-03 R,12,4657e-6,2.98E-03 R,13,46.62e-4 R,14,5024e-6 !建立上层单层网壳单元 !(4)建立上弦节点坐标 CSYS,2 R=(Span*Span/4+f*f)/(2*f) DPha=Atn(Span/2/Sqrt(R*R-Span*Span/4))/Nx N,1,R,0,90 *DO,i,1,Nx *DO,j,1,Kn*i x=R y=(j-1)*360/(Kn*i) z=90-i*DPha N,1+Kn*(i-1)*i/2+j,x,y,z *ENDDO *ENDDO LOCAL,11,1,0,0,0 CSYS,11 !(5)建立上部单层网壳杆件 TYPE,1 MAT,1 REAL,1 ! 环向杆连接 *DO,i,1,Nx *DO,j,1,Kn*i-1 E,1+Kn*(i-1)*i/2+j,1+Kn*(i-1)*i/2+j+1 *ENDDO E,1+Kn*(i-1)*i/2+1,1+Kn*(i-1)*i/2+Kn*i *ENDDO ! 径向的单元连接 *DO,i,1,Kn. 167. !定义拉索的本构关系所对应的温度 !定义拉索的屈服强度为 1330MPa !定义钢管 P203×6 的实常数 !定义钢管 P219×7 的实常数 !定义钢管 P245×7 的实常数 !定义钢管 P273×8 的实常数 !定义钢管 P299×8 的实常数 !第 1 圈环索的实常数 !第 2 圈环索的实常数 !第 3 圈环索的实常数 !第 4 圈环索的实常数 !第 5 圈环索的实常数 !第 6 圈环索的实常数 !第 7 圈环索的实常数 !撑杆 P219×7 的实常数 !径向拉杆的实常数. !转换为球面坐标系 !根据矢高和跨度计算曲面半径 R !计算相邻两圈环杆对应的球心夹角 Dpha !定义顶点 1 号节点的位置坐标为(R,0,90) !第 1~Nx 圈的节点循环 !对称区的节点循环,第 i 圈可分为 Kn*i 份 !输入 x 坐标 !输入 y 坐标,各圈上的节点数目为 Kn 倍圈号 !输入 z 坐标 !依次计算并定义节点的编号和位置. !在原点处定义一柱坐标系,并定义编号为 11 !激活局部坐标系 11 !设置当前的单元编号为 1 !设置当前的材料属性编号为 1 !设置当前的实常数编号为 1 !第 1~Nx 圈的节点循环 !第 1~Kn*i-1 对称区的节点循环 !连接相邻两节点生成单元 !连接最后一对称区的环杆. !对各对称区循环.

(9) 空间钢结构 APDL 参数化计算与分析. 168 E,1,1+i. !定义中心处径向杆单元. *ENDDO *DO,j,1,Nx-1 *DO,k,1,Kn *DO,i,1,j+1 *IF,i,EQ,j+1,THEN *IF,k,EQ,Kn,THEN. !从里圈第 2 圈开始向最外圈循环 !对各个对称区循环 !对每个对称区内的杆循环 !判断是否是当前对称区内的最后一根杆 !判断是否是最后一个对称区. E,1+Kn*(j-1)*j/2+1,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i !第 1 个节点和最后一个节点的连杆 *ELSE E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i !一般区内的最后一根连杆 *ENDIF *ELSE E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i *ENDIF *ENDDO *DO,i,1,j E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i+1. !一般正向连杆. !一般负向连杆. *ENDDO *ENDDO *ENDDO !(6)根据图纸修改单层网壳的截面特性 *DIM,area,,32 !定义每环径向杆和环向杆的实常数编号数组 !根据图纸中第 1~8 圈环向杆的钢管规格给数组 area 的第 1~8 个位置赋值 *SET,area(1),2,2,2,2,2,3,2,3 !根据图纸中第 9~16 圈环向杆的钢管规格给数组 area 的第 9~16 个位置赋值 *SET,area(9),4,5,2,5,2,5,2,5 !根据图纸中第 1~8 圈径向杆的钢管规格给数组 area 的第 17~24 个位置赋值 *SET,area(17),2,1,1,1,1,1,1,1 !根据图纸中第 9~16 圈径向杆的钢管规格给数组 area 的第 25~32 个位置赋值 *SET,area(25),1,1,1,1,1,1,2,2 !修改环向杆截面特性 num_elem_b=1 num_elem_e=6 *DO,i,1,Nx,1 ESEL,s,,,num_elem_b,num_elem_e,1 EMODIF,all,real,area(i) ESEL,all num_elem_b=num_elem_b+i*Kn num_elem_e=num_elem_e+(i+1)*Kn *ENDDO sum_num=Nx*Kn+Nx*(Nx-1)/2*Kn !修改径向杆截面属性 num_elem_b=sum_num+1 num_elem_e=sum_num+6. !定义第一圈环向杆的起始编号 !定义第一圈环向杆的末尾编号 !环向杆 1~16 圈循环 !选择第 I 圈的所有环向杆 !修改第 I 圈的环向杆单元的实常数 !选择所有单元 !定义第 I 圈环向杆的起始编号 !定义第 I 圈环向杆的末尾编号 !计算环向杆单元总数,并赋值给变量 sum_num !定义第 1 圈径向杆的起始编号 !定义第 1 圈径向杆的末尾编号.

(10) 第 5 章 弦支穹顶结构分析. 169. *DO,i,1,Nx,1 !径向杆 1~16 圈循环 ESEL,s,,,num_elem_b,num_elem_e,1 !选择第 I 圈的所有径向杆 EMODIF,all,real,area(i+16) !修改第 I 圈的径向杆单元的实常数 ESEL,all !选择所有单元 num_elem_b=num_elem_b+6+12*(i-1) !定义第 I 圈径向杆的起始编号 num_elem_e=num_elem_e+6+12*i !定义第 I 圈径向杆的末尾编号 *ENDDO !(7)建立下部索撑体系的节点 *SET,nodeinc,NDINQR(0,14) !提取当前节点定义的最大数目 *DO,i,1,7,1 !弦支穹顶下部索撑体系第 1~7 圈循环 NGEN,2,nodeinc,num(2*i)+1,num(2*i+1),2,0,0,-numcg(i) !利用复制上部单层网壳节点的方法建立下部第 I 圈索撑体系的节点 *ENDDO !(8)建立下部索撑体系中撑杆单元 TYPE,2 !定义撑杆的单元类型编号为 2 MAT,1 !定义撑杆的材料属性编号为 1 REAL,13 !定义撑杆的实常数编号为 13 *DO,i,1,7,1 !撑杆第 1~7 圈循环 *DO,j,num(2*i)+1,num(2*i+1),2 E,j,j+nodeinc !建立撑杆单元 *ENDDO *ENDDO !(9)建立下部索撑体系中的环索单元 *DO,j,1,7,1 !环索第 1~7 圈循环 TYPE,3 !定义环索的单元类型编号为 3 MAT,2 !定义环索的材料属性编号为 2 REAL,5+j !定义环索的实常数编号为 5+J *DO,i,num(2*j)+1,num(2*j+1)-2,2 E,i+nodeinc,i+2+nodeinc !建立环索单元 *ENDDO E,num(2*j)+1+nodeinc,num(2*j+1)-1+nodeinc !建立环索单元 *ENDDO !(10)建立下部索撑体系中的径向拉索单元 TYPE,2 MAT,1 REAL,14 *DO,j,1,7,1 *DO,i,1,6,1 E,num(2*j)+1+nodeinc+2*j*(i-1),num(2*j+2)+1+(2*j+2)*(i-1) *ENDDO *ENDDO. !定义环索的单元类型编号为 2 !定义环索的材料属性编号为 1 !定义环索的实常数编号为 14 !建立凯维特等分线上的径向拉杆. !建立径向拉杆单元. !建立凯维特等分线以外的径向拉杆 *DO,j,1,7,1 *SET,m,0 *DO,i,1,numnode(2*j)/2-1,1.

(11) 空间钢结构 APDL 参数化计算与分析. 170. *SET,t,mod(i-1,j) *IF,t,eq,0,then m=m+2 E,num(2*j)+1+nodeinc+2*(i-1),num(2*j+2)+1+2*(i-1)+m E,num(2*j)+1+nodeinc+2*i,num(2*j+2)+1+2*(i-1)+m *ELSE E,num(2*j)+1+nodeinc+2*(i-1),num(2*j+2)+1+2*(i-1)+m E,num(2*j)+1+nodeinc+2*(i),num(2*j+2)+1+2*(i-1)+m *ENDIF *ENDDO E,num(2*j+1)-1+nodeinc,num(2*j+3)-1 E,num(2*j)+1+nodeinc,num(2*j+3)-1 *ENDDO !(11)压缩节点编号 NUMCMP,node NUMCMP,elem !(12)建立弦支穹顶结构的约束 CSYS,11 !激活局部坐标 11 !将节点 722~814 中以 4 为间隔的 24 个节点旋转到与局部坐标系 11 平行的位置 NROTAT,722,814,4 *DO,i,1,24 D,718+4*i,uz,0 D,718+4*i,uy,0 *ENDDO. !约束节点 718+4*i 的竖向位移 !约束节点 718+4*i 的环向位移. 将上述命令流命名为 EX5.1.MAC,保存路径为 E:\BOOK_APDL\chapter_5\exzample5.2。 运行上述 APDL(使用*user 或者/input 命令调用)程序可得到如图 5-5 所示的弦支穹顶有限元 模型。. 图 5-5. 弦支穹顶结构的有限元模型.

(12) 第 5 章 弦支穹顶结构分析. 5.3. 171. 等效节点荷载宏文件的形成. 5.3.1 基本理论 在进行弦支穹顶结构设计时,结构屋面均布荷载一般均转化为节点集中荷载来分析,因 此在进行弦支穹顶结构常规分析之前,必须先确定屋面恒荷载、屋面活荷载、屋面雪荷载、 屋面风荷载的等效节点荷载。一般情况下可以参考第 4 章中介绍的方法确定等效节点荷载, 并形成等效节点荷载施加宏文件。对于弦支穹顶结构而言,在形成等效节点荷载宏文件时只 需要建立上部单层网壳结构的模型,且此时也不需要按照结构图纸修改杆件实常数。下面结 合 5.1 节实例中的弦支穹顶结构来说明如何在 ANSYS 程序中形成弦支穹顶结构的等效节点荷 载宏文件。 5.3.2 实例分析 1.恒荷载等效节点荷载施加宏文件的形成 在本实例中,屋面恒荷载为 0.8kN/m2,但要注意,在本章中所有程序使用的是国际单位 制,因此在进行荷载设置时,应该为 800N/m2。编制根据本章 5.1 节描述的弦支穹顶结构模型 及其恒荷载值编写形成恒荷载等效节点荷载施加宏文件的 APDL 程序。程序的具体步骤和内 容如下: !(1)清除内存,并定义工作名和工作标题 /PMACRO !指定宏的内容将被写入到 ANSYS 的 INPUT 文件中 FINISH /CLEAR !清除 ANSYS 内存 *AFUN,DEG !设置角度单位 /FILENAME, suspendome !定义工作文件名 /TITLE, the model of suspendome !定义工作标题 !(2)设置模型基本参数 *SET,Kn,6 !设置凯威特网壳的类型 *SET,Nx,16 !设置圈数 *SET,f,17.025 !设置矢高 *SET,Span,92 !设置跨度 !(3)定义弦支穹顶结构上部单层网壳的几何参数数组 *DIM,numnode,,Nx,1 !定义单层网壳每圈节点个数数组 *DO,i,1,Nx,1 *SET,numnode(i),Kn*i !计算单层网壳每圈的个数并赋值给数组 *ENDDO *DIM,num,,Nx+1,1 !定义每圈节点的最大编号数组,其中中心点单独作为一圈 *SET,num(1),1 !定义第 1 圈(即中心点)的最大节点编号为 1 *DO,i,2,Nx+1,1 *SET,num(i),num(i-1)+numnode(i-1) !计算第 I 圈的最大节点编号并赋值给数组 num *ENDDO /PREP7. !进入前处理模块.

(13) 172. 空间钢结构 APDL 参数化计算与分析 !(4)定义单元类型、材料属性和杆件实常数 ET,1,beam4 MP,ex,1,2.06e11 MP,dens,1,7850 MP,alpx,1,1.2e-5 MP,prxy,1,0.3 R,1,37.13e-4,1803.07e-8,1803.07e-8,0.203,0.203 !(5)建立上弦节点坐标 CSYS,2 R=(Span*Span/4+f*f)/(2*f) DPha=Atn(Span/2/Sqrt(R*R-Span*Span/4))/Nx. !定义上部单层网壳结构的单元类型 !定义钢管的材料的弹性模量 !定义钢管的材料的密度 !定义钢管的材料的温度线膨胀系数 !定义钢管的材料的泊松比 !p203x6 !建立上层单层网壳单元 !转换为球面坐标系 !根据矢高和跨度计算曲面半径 R. !计算相邻两圈环杆对应的球心夹角 Dpha N,1,R,0,90 !定义顶点 1 号节点的位置坐标为(R,0,90) *DO,i,1,Nx !第 1~Nx 圈的节点循环 *DO,j,1,Kn*i !对称区的节点循环,第 i 圈可分为 Kn*i 份 x=R !输入 x 坐标 y=(j-1)*360/(Kn*i) !输入 y 坐标,各圈上的节点数目为 Kn 倍圈号 z=90-i*DPha !输入 z 坐标 N,1+Kn*(i-1)*i/2+j,x,y,z !依次计算并定义节点的编号和位置 *ENDDO *ENDDO LOCAL,11,1,0,0,0 !在原点处定义一柱坐标系,并定义编号为 11 CSYS,11 !激活局部坐标系 11 !(6)建立上部单层网壳杆件 TYPE,1 !设置当前的单元编号为 1 MAT,1 !设置当前的材料属性编号为 1 REAL,1 !设置当前的实常数编号为 1 !环向杆连接 *DO,i,1,Nx !第 1~Nx 圈的节点循环 *DO,j,1,Kn*i-1 !第 1~Kn*i-1 对称区的节点循环 E,1+Kn*(i-1)*i/2+j,1+Kn*(i-1)*i/2+j+1 !连接相邻两节点生成单元 *ENDDO E,1+Kn*(i-1)*i/2+1,1+Kn*(i-1)*i/2+Kn*i !连接最后一对称区的环杆 *ENDDO !径向的单元连接 *DO,i,1,Kn !对各对称区循环 E,1,1+i !定义中心处径向杆单元 *ENDDO *DO,j,1,Nx-1 !从里圈第 2 圈开始向最外圈循环 *DO,k,1,Kn !对各个对称区循环 *DO,i,1,j+1 !对每个对称区内的杆循环 *IF,i,EQ,j+1,THEN !判断是否是当前对称区内的最后一根杆 *IF,k,EQ,Kn,THEN !判断是否是最后一个对称区 E,1+Kn*(j-1)*j/2+1,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i !第 1 个节点和最后一个节点的连杆.

(14) 第 5 章 弦支穹顶结构分析. 173. *ELSE E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i !一般区内的最后一根连杆 *ENDIF *ELSE E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i !一般正向连杆 *ENDIF *ENDDO *DO,i,1,j E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i+1 !一般负向连杆 *ENDDO *ENDDO *ENDDO !(7)建立表面效应单元 SURF154 local,11,0,0,0,0 !定义一柱局部坐标系,并设置编号为 11 ET,10,SURF154,,1,,1 !定义屋面的单元类型为 SURF154 R,10,,,,,,,0.1,0.1,0.1 !定义 SURF154 单元的实常数 MP,DENS,10,0 !定义 URF154 单元的材料密度 TYPE,10 !设置当前的单元类型 MAT,10 !设置当前的材料属性 REAL,10 !设置当前的实常数 esys,11 !设置单元坐标系为局部坐标系 11 !找到最后一个杆单元编号,便于知道第一个面单元的编号 ENUMmax1=ELMIQR(0,14)+1 *DO,j,1,Kn-1 !连接顶点与第 1 圈节点形成三角形面单元 E,1,j+1,j+2 *ENDDO E,1,Kn+1,2 *DO,i,1,Nx-1 !从里圈第 2 圈开始向最外圈循环 *DO,j,1,Kn !对各个对称区循环 *DO,k,1,i+1 !对每个对称区内的杆循环 *IF,k,EQ,i+1,THEN !判断是否是当前对称区内的最后一根杆 *IF,j,EQ,Kn,THEN !判断是否是最后一个对称区 E,1+Kn*(i-1)*i/2+1,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k,1+Kn*(i+1)*i/2+1 !第 1 个节点和最后一个节点对应的单元连接 *ELSE E,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k+1 !一般区内的最后一根连杆对应的单元连接 *ENDIF *ELSE E,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k+1 !一般正向连杆对应的单元连接 *ENDIF *ENDDO *DO,k,1,i *IF,k,EQ,i,then.

(15) 174. 空间钢结构 APDL 参数化计算与分析 *IF,j,EQ,Kn,then E,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k+1,1+Kn*(i-1)*i/2+1 *ELSE E,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k+1,1+Kn*(i-1)*i/2+(j-1)*i+k+1 !一般负向连杆对应单元 *ENDIF *ELSE E,1+Kn*(i-1)*i/2+(j-1)*i+k,1+Kn*(i+1)*i/2+(j-1)*(i+1)+k+1,1+Kn*(i-1)*i/2+(j-1)*i+k+1 !一般负向连杆对应单元 *ENDIF *ENDDO *ENDDO *ENDDO !找到最后一个杆单元编号,便于知道第一个面单元的编号 ENUMmax2=ELMIQR(0,14) !(8)约束单层网壳的所有节点的自由度 *DO,i,1, 1+Kn*(Nx-1)*Nx/2+Kn*Nx D,i,UX,0 !定义约束 D,i,UY,0 D,i,UZ,0 *ENDDO !(9)施加面荷载 MULTIPRO,'START',1 !生成荷载输入对话框 *CSET,1,3,P,'Surface Load(N/㎡)',2000 *CSET,61,62,'Please Input Surface Load Value:' MULTIPRO,'END' *DO,i, ENUMmax1, ENUMmax2,1 SFE,i,3,PRES,, P *ENDDO !(10)所有节点约束情况下的静力求解 FINISH !退出前处理模块 /SOLU !进入求解器 SOLVE !求解 FINISH !退出求解器 /post1 !进入后处理器 set,last !选择最后一个荷载步的计算结果 Num_node=ndinqr(0,12) !提取节点定义的数目,并赋值给变量 Num_node !(11)提取等效节点荷载 rsys,0 !将结果坐标系旋转到笛卡尔坐标系下 *DIM,Force_X,,Num_node !定义 X 向支座反力数组,用于存储各节点的 X 向支座反力 *DIM,Force_y,,Num_node !定义 Y 向支座反力数组,用于存储各节点的 Y 向支座反力 *DIM,Force_z,,Num_node !定义 Z 向支座反力数组,用于存储各节点的 Z 向支座反力 *DO,i,1,Num_node,1 !所有节点循环 !提取各节点的 X 向支座反力值赋给 X 向支座反力数组 *GET,Force_X(i),NODE,i,RF,FX !提取各节点的 Y 向支座反力值赋给 Y 向支座反力数组 *GET,Force_Y(i),NODE,i,RF,FY.

(16) 第 5 章 弦支穹顶结构分析. 175. !提取各节点的 Z 向支座反力值赋给 Z 向支座反力数组 *GET,Force_Z(i),NODE,i,RF,FZ *ENDDO !(12)编写施加等效节点荷载的命令文件 permanent.mac *DIM,Array_PreName,CHAR,Num_node !定义一维字符串型数组 *DIM,Node_Num,ARRAY,Num_node !定义一维数组作为节点号数组 *DIM,Array_PostName,CHAR,Num_node,4 !定义三维字符串型数组 *DO,i,1,Num_node *SET,Array_PreName(i),'f,' *SET,Node_Num(i),i *SET,Array_PostName(i,1),',fx,'. !给一维字符串数组赋字符串'f,' !给节点号数组赋节点编号 !给三维字符串数组的第一列赋字符串',fx,'. *SET,Array_PostName(i,2),',fy,' !给三维字符串数组的第二列赋字符串',fy,' *SET,Array_PostName(i,3),',fz,' !给三维字符串数组的第三列赋字符串',fz,' *SET,Array_PostName(i,4),'*arg1' *ENDDO *CFOPEN,E:\BOOK_APDL\chapter_5\exzample5.3\dead_load,mac !(13))在本程序的运行目录下创建/打开文件 dead_load.mac !按照格式顺序将数据写入文件中,给各节点赋 X 向等效 !节点荷载,并设定第一个字符串总长 6 个字符,第二个字符串总长 6 位数,第三个字符串总长 6 个字 !符,第四个字符串总长 16 位数,小数点后保留 8 位 *VWRITE,Array_PreName(1),Node_Num(1),Array_PostName(1,1),Force_X(1),Array_PostName(1,4) (a2,f4.0,a4,f16.8,a5) !按照格式顺序将数据写入文件中,给各节点赋 Y 向等效节点荷载 *VWRITE,Array_PreName(1),Node_Num(1),Array_PostName(1,2),Force_Y(1),Array_PostName(1,4) (a2,f4.0,a4,f16.8,a5) !按照格式顺序将数据写入文件中,给各节点赋 Z 向等效节点荷载 *VWRITE,Array_PreName(1),Node_Num(1),Array_PostName(1,3),Force_Z(1),Array_PostName(1,4) (a2,f4.0,a4,f16.8,a5) *CFCLOS. 将 上 述 APDL 程 序 保 存 至 目 录 E:\BOOK_APDL\chapter_5\exzample5.3\ 中 文 件 load_create.TXT 中。运行上述 APDL 程序(使用*user 或者/input 命令调用)后,会出现如图 5-6 所示的对话框,在对话框中输入 800,则程序会自动在路径 E:\BOOK_APDL\chapter_5\ exzample5.3\下形成恒荷载等效节点施加宏文件 dead_load.mac,形成的等效节点荷载宏文件如 图 5-7 所示。 2.活荷载等效节点荷载宏文件的形成 在 5.1 节描述的弦支穹顶结构工程实例中,屋面的活荷载为 0.5kN/m2。由于屋面恒荷载和 屋面活荷载的荷载性质和特点基本相同,因此上述形成恒荷载等效节点荷载施加宏文件的 APDL 程序同样适用于活荷载等效节点荷载施加宏文件的形成,但有两点需要注意: (1)注意更改活荷载等效节点荷载施加宏文件的保存路径及其文件名,即将*CFOPEN 后的文件创建路径修改为: *CFOPEN,E:\BOOK_APDL\chapter_5\exzample5.3\live_load,mac.

(17) 空间钢结构 APDL 参数化计算与分析. 176. 图 5-6. 图 5-7. 定义屋面面荷载的对话框. 弦支穹顶结构恒荷载等效节点荷载施加宏文件. (2)运行上述形成恒荷载等效节点荷载施加宏文件的 APDL 程序,当出现如图 5-6 所示 的对话框时,在对话框中输入 500。 当将上述两点做相应修改后,运行目录 E:\BOOK_APDL\chapter_5\exzample5.3\中文件 load_create.TXT 程序,可形成活荷载等效节点荷载施加宏文件,如图 5-8 所示。 3.雪荷载等效节点荷载文件的形成 本章 5.1 节所描述的弦支穹顶结构实例中,雪荷载的基本风压为 0.5kN/m2。参考《建筑结 构荷载规范》中式 6.1.1(即 sk  r s0 ),将雪荷载基本风压转换为雪荷载标准值。计算时屋面 积雪分布系数取 0.7。因此本实例中弦支穹顶结构的雪荷载标准值为 0.35kN/m2。与活荷载等 效节点荷载施加宏文件一样,可以使用 load_create.TXT 程序形成雪荷载等效节点荷载施加宏 文件,但仍需注意以下两点: (1)注意更改雪荷载等效节点荷载施加宏文件的保存路径及其文件名,即将*CFOPEN 后的文件创建路径修改为: *CFOPEN,E:\BOOK_APDL\chapter_5\exzample5.3\snow_load,mac.

(18) 第 5 章 弦支穹顶结构分析. 图 5-8. 177. 弦支穹顶结构活荷载等效节点荷载施加宏文件. (2)运行上述形成恒荷载等效节点荷载施加宏文件的 APDL 程序,当出现如图 5-6 所示 的对话框时,在对话框中输入 350。 当将上述两点做相应修改后,运行目录 E:\BOOK_APDL\chapter_5\exzample5.3\中文件 load_create.TXT 程序,可形成雪荷载等效节点荷载施加宏文件,如图 5-9 所示。. 图 5-9. 弦支穹顶结构雪荷载等效节点荷载施加宏文件.

(19) 178. 空间钢结构 APDL 参数化计算与分析. 4.风荷载等效节点荷载的形成 本章 5.1 节所描述的弦支穹顶结构的基本风压为 0.5kN/m2。在进行弦支穹顶结构屋面风荷 载等效节点荷载施加宏文件时,要注意以下两个问题: (1)风压方向为屋面的法线方向。 (2)根据工程所在地的基本风压、场地类别和结构模型,参考《建筑结构荷载规范》, 建筑物表面法线方向上的风荷载标准值,可按下式计算: wk   z  s  z w0 式中: wk 为风荷载标准值(kN/m2);  z 为高度 z 处的风振系数;  s 为风荷载体型系数;  z 为风压高度变化系数; w0 为基本风压(kN/m2); 对于本章中的弦支穹顶结构实例,  z 和  z 可分别偏于安全地取 1.61 和 1.5,下面将着重 介绍如何用 ANSYS 的 APDL 语言计算弦支穹顶结构屋面体型系数和施加屋面法线面荷载。 《建筑结构荷载规范》给出了旋转球壳结构屋面的体型系数计算公式,如图 5-10 所示。 对于本实例,矢跨比 f / l  0.185  0.25 ,因此球壳表面风压表现为风吸,应按照(b)工况进 行分析计算。根据(b)工况中计算球壳表面风压的计算公式可知,球面各点处的体型系数仅 与该点与球心的连线与竖直轴的夹角有关,而该夹角在 ANSYS 中很容易通过旋转节点坐标系 的方法求得。. 图 5-10. 球面体型系数计算简图. 计算弦支穹顶各面单元处体型系数和给各面单元施加法线方向面荷载的 APDL 程序如下: !定义局部球面坐标系 13,坐标原点为(0,0,-30),即弦支穹顶球壳的中心 local,13,2,0,0,0 csys,13 !将局部坐标系 13 设置为当前坐标系 *AFUN,DEG !将 ANSYS 的角度单位设置为角度 !定义数组 numwu,存储弦支穹顶结构的表面效应单元的体型系数 *dim,numwu,,ENUMmax2 *do,i,ENUMmax1,ENUMmax2,1 !SURF154 表面效应单元 ENUMmax1~ENUMmax2 循环 *get,mz,elem,i,cent,z !提取表面效应单元 I 中心的 Z 坐标 *set,numwu(i),90-mz !计算表面效应单元 I 的体型系数并赋值给数组 numwu(i) *enddo.

(20) 第 5 章 弦支穹顶结构分析. 179. !计算表面效应单元的风压值,并将其值施加在相应的表面效应单元上 *set,v_windup,1.5*1.61*500*(-1) *do,i,ENUMmax1,ENUMmax2,1 SFE,i,1,PRES,,v_windup*cos(numwu(i))**2 *enddo. 在形成风荷载等效节点荷载施加宏文件时,其大部分程序与恒荷载相同,但需注意以下 两个问题: (1)将上述计算恒荷载等效节点荷载施加宏文件的 APDL 中第 9 步“!(9)施加面荷载” 的一段程序替换为上述计算弦支穹顶各面单元处体型系数和给各面单元施加法线方向面荷载 的 APDL 程序。 (2)注意更改风荷载等效节点荷载施加宏文件的保存路径及其文件名,即将*CFOPEN 后的文件创建路径修改为: *CFOPEN,E:\BOOK_APDL\chapter_5\exzample5.3\wind_load,mac 当将上述两点做相应修改后,运行目录 E:\BOOK_APDL\chapter_5\exzample5.3\中文件 load_create.TXT 程序,可形成风荷载等效节点荷载施加宏文件,如图 5-11 所示。. 图 5-11 弦支穹顶结构风荷载等效节点荷载施加宏文件. 5.4. 弦支穹顶结构的形态分析. 5.4.1 基本理论 形态分析是力的平衡分析的逆过程,包括找力分析和找形分析。形态分析理论是基于柔 性张拉结构的设计需要而提出的,是近年来才被重视且正在逐步完善的理论,国内外对索杆 张力结构的形态分析研究较多,且较为成熟。 对于弦支穹顶结构而言,由于其上部单层网壳是传统意义上形状确定的结构体系,且为.

(21) 180. 空间钢结构 APDL 参数化计算与分析. 高次超静定结构,在未施加预应力之前已有一定刚度,所以弦支穹顶结构的形态分析具有一 定的特殊性。本章将结合弦支穹顶结构这一新型结构体系,详细介绍其形态分析问题,并给 出相应的实用计算方法。根据弦支穹顶结构建造和使用过程,其状态可分为以下三个阶段: (1)放样态:上部网壳和下部索杆安装就位但没有进行张拉时的状态。 (2)预应力平衡态:下部索杆结构张拉完毕后,体系在自重和预应力作用下的平衡状态。 (3)荷载态:弦支穹顶结构体系在预应力平衡态的基础上,承受其他外荷载的受力状态。 上述弦支穹顶结构在建造过程中的三个形态如图 5-12 所示。. 图 5-12. 弦支穹顶结构的三个形态. 对于一个既定的弦支弯顶结构,从设计图纸上能够确定预应力平衡态几何参数和各索杆 的内力值。弦支穹顶结构的几何构形在施加预应力后可能发生较大改变,即预应力平衡态和 放样态下的几何构形可能存在较大差异,因此结构构件能否按建筑设计图纸进行下料、放样 与安装有待研究。合理的做法是先对弦支穹顶结构进行形态分析,确定放样态下结构的几何 构形以及索内预应力张拉控制值,并以此为分析起点,确定结构预应力平衡态下的内力分布、 荷载平衡态下的受力响应以及进行结构的施工模拟等后续计算内容。如何由一切已知条件,利 用 ANSYS 的 APDL 语言求得结构在放样态下的几何构形和索杆预应力张拉控制值,以及结构 在施工过程中和使用过程中各个状态下的几何构形与内力值共同构成了本节的主要研究内容。 根据以上分析,对于弦支穹顶结构而言,其形态分析主要包括以下两个问题: (1)找力分析。无论是在应用有限元程序对弦支穹顶结构进行受力分析的过程中,还是 弦支穹顶结构索张拉的过程中,都涉及到索预应力的张拉控制问题。程序分析时,若将预应 力值换算成初应变施加到相应环索上,由于预应力重分布,在未施加其他外荷载之前,索内 预应力已有损失,且损失值较大,不能满足工程上的精度要求。因此在对弦支穹顶进行各类 荷载工况下的结构分析时,必须寻找出一组初应变值,使弦支穹顶结构在预应力平衡态下的 索杆内力值等于设计值,寻找这组初应变的过程即为弦支穹顶结构的找力分析。 (2)找形分析。弦支穹顶结构的找形分析的基本任务就是确定弦支穹顶结构的放样态几 何和放样态下索杆的初始缺陷。所谓的“形”就是几何意义上的形状,所谓的“态”就是结 构的内力分布状态,即索杆的初始缺陷分布状态。弦支穹顶结构的找形分析就是同时寻找其 放样态几何形状和索杆初始缺陷,使得在寻找得到的放样态几何形状上施加索杆初始缺陷后, 弦支穹顶结构在预应力平衡态下的几何形状和预应力分布为设计值。 1.使用张力补偿法进行找力分析 找力分析目的是为各组索寻找出一组初始应变值,使得当将此应变值施加给弦支穹顶结.

(22) 第 5 章 弦支穹顶结构分析. 181. 构的预应力索后,在一定的荷载工况下(通常为 1.0 恒荷载+0.5 活荷载),各组索的实际内力 值等于各组索对应的张力设计值。在弦支穹顶结构的找力分析中,常用的为张力补偿法。下 面对此方法的理论知识做简要介绍。 在张力补偿法中,同一组索指同时被张拉的若干条索,即处于同一圈的环向索;不同批 次是指张拉时间上的区分。设弦支穹顶结构中有 n 组索(即有 n 圈环索) ,张力设计值分别为 P1 、 P2 、 P3 、……、 Pn 。 其中: ,在弦支穹顶结构中指同一 i ——索组号,为同时被张拉的若干根索的序号(位置参数) 圈的环向索。 k ——循环计算序号。 Pi ——第 i 组索中主动索的张力设计值。  i (k ) —— k 次循环计算中,由第 i 组索中主动索的张力设计值计算出的初应变值。 计算步骤如下: 第 k 次循环, k =1,2,3…… ( 1 ) 给 所 有 预 应 力 索 施 加 初 应 变  i (k ) , ANSYS 程 序 计 算 索 实 际 内 力 值 Fi (k ) ( i  1, 2, , n ),此时 Fi (k )  Pi ( i  1, 2, , n ),第一次循环时,即 k  1 时,给环索施加的除 应变可通过式  i (1)  Pi ( Ei Ai ) ( i  1, 2, , n )。 (2)计算各组索的实际内力值与张力设计值差值为: Fi ( k )  Pi  Fi (k ) ( i  1, 2, , n )。 这里 Fi (k ) ( i  1, 2, , n )为第 k 次循环计算后,各组索中实际内力与张力设计值的差值。 (3)当第 k 次循环结束时,若 Fi ( k ) Pi  0 ( i  1, 2, , n ),即计算误差足够小时,结束 循环计算。此时,Fi (k )( i  1, 2, , n )近似等于相应各组索的设计张力值,而  i (k )( i  1, 2, , n ) 则是 ANSYS 程序中第 1,2,3,…,n 组索应施加的初应变值。若计算误差太大,不能满足 工程要求,则需要进行第 k+1 次循环计算。 (4)在第 k+1 次循环计算前先修改各组索的张力控制值,方法是将内力变化值补偿给上 一次循环时索的张力控制值,然后换算成应变值。即  i ( k  1)   Pi  Fi (k )  ( Ei Ai ) ( i  1, 2, , n ).  i (k  1) ( i  1, 2, , n )作为第 k+1 次循环计算时应施加的初应变值,循环计算方法与第 k 次完全相同。 (5)重复步骤 2~4,直至 Fi ( k ) Pi  0 ( i  1, 2, , n ),即计算误差足够小时,结束循 环计算。 2.使用逆迭代法进行找形分析 逆迭代法实际上是一种非常自然的思路:既然设计蓝图上的弦支穹顶几何尺寸是预应力 平衡态的尺寸,就可以以此预应力平衡态尺寸为近似放样态尺寸建立有限元模型,然后对其 施加预应力(采用施加初始应变的方法对环索施加初应变,首次初应变值可通过各环索的预 应力设计值估计,即    E )进行分析,得到近似预应力平衡态。然后将此近似预应力平衡 态的几何尺寸与设计图中真正的预应力平衡态的几何尺寸的差值反向增加到原有限元模型的 节点坐标上,作为近似放样态重新建模,并再次进行张拉,如此循环迭代,直到近似预应力 平衡态与设计图纸上的预应力平衡态的坐标差值足够小,即可视此近似预应力平衡态为预应.

(23) 182. 空间钢结构 APDL 参数化计算与分析. 力平衡态,而由之张拉而来的近似放样态为要求的放样态。如此即可得到放样态几何尺寸(施 工人员据此放样),又可得到给各圈环索所施加的初应变,从而完成找形工作。程序流程图如 图 5-13 所示。. 图 5-13. 找形分析流程示意图.

(24) 第 5 章 弦支穹顶结构分析. 183. 5.4.2 实例分析 尽管张力补偿算法和逆迭代法的思路很自然,工程人员接受起来毫无困难但具体实现起 来具有相当的难度,主要表现在非线性程序编制和调试费时费力,不适合工程人员针对具体 工程进行运用。通用有限元分析软件 ANSYS 本身具有很强的非线性计算能力,而且它提供 了一种 APDL 语言(ANSYS Parametric Design Language 的缩写),具有优良的循环、判断等 功能,可以有效地实现对程序的控制。因而借助 APDL 语言,方便地利用 ANSYS 强有力的 非线性计算能力来运行张力补偿算法和逆迭代法,解决弦支穹顶结构的形态分析问题就成为 一种可行的思路。 通过上述讲解的关于找力分析的张力补偿法和找形分析的逆迭代法,这两种方法的具体 求解思路在 ANSYS 中的实现方法具有一定的相似性,且弦支穹顶结构的找形分析基本包含其 找力分析内容,本书考虑到篇幅问题,在此仅给出弦支穹顶结构的找形分析的 APDL 程序, 读者可参考本书给出的理论知识,对其进行必要的删减,即可变为独立的找力分析程序。 本节将结合 5.1 节中的弦支穹顶实例及上述弦支穹顶结构找形分析的基本理论和方法,详 细介绍如何利用 ANSYS 的 APDL 语言实现弦支穹顶结构的找形分析。分析中,预应力误差精 度取 8%,节点的坐标误差取 0.005m。具体的 APDL 程序如下: !(1)利用宏文件,建立弦支穹顶结构的有限元模型 /INPUT, E:\BOOK_APDL\chapter_5\exzample5.2\EX5.1,txt !(2)定义弦支穹顶结构的 7 圈环索的预应力设计值 E=1.8e11 !定义索材的弹性模量 P1=4.88E+05 !定义第 1 圈环索的设计预应力值 p2=4.57E+05 !定义第 2 圈环索的设计预应力值 p3=3.65E+05 !定义第 3 圈环索的设计预应力值 p4=8.16E+05 !定义第 4 圈环索的设计预应力值 p5=7.83E+05 !定义第 5 圈环索的设计预应力值 p6=1.14E+06 !定义第 6 圈环索的设计预应力值 p7=1.52E+06 !定义第 7 圈环索的设计预应力值 !(3)定义弦支穹顶结构的几何参数数组 *GET,n,node,,count !提取弦支穹顶结构有限元模型节点总数 *DIM,wfinalx,,n,1 !定义节点设计几何(即预应力平衡态)的 x 坐标数组 *DIM,wfinaly,,n,1 !定义节点设计几何(即预应力平衡态)的 y 坐标数组 *DIM,wfinalz,,n,1 !定义节点设计几何(即预应力平衡态)的 z 坐标数组 *DIM,wzerox,,n,1 !定义节点放样态几何 x 坐标数组 *DIM,wzeroy,,n,1 !定义节点放样态几何 y 坐标数组 *DIM,wzeroz,,n,1 !定义节点放样态几何 z 坐标数组 *DIM,wbalanx,,n,1 !定义节点平衡态几何 x 坐标数组 *DIM,wbalany,,n,1 !定义节点平衡态几何 y 坐标数组 *DIM,wbalanz,,n,1 !定义节点平衡态几何 z 坐标数组 *DIM,wx,,n,1 !定义节点设计态与平衡态几何 x 坐标差值数组 *DIM,wy,,n,1 !定义节点设计态与平衡态几何 y 坐标差值数组 *DIM,wz,,n,1 !定义节点设计态与平衡态几何 z 坐标差值数组 !(4)提取弦支穹顶结构的设计几何坐标并赋值给数组 wfinalx *DO,i,1,n *GET,wfinalx(i),node,i,loc,x !存储节点设计几何的 x 坐标数组.

(25) 184. 空间钢结构 APDL 参数化计算与分析. *GET,wfinaly(i),node,i,loc,y !存储节点设计几何的 y 坐标数组 *GET,wfinalz(i),node,i,loc,z !存储节点设计几何的 z 坐标数组 *ENDDO ! (5)进入求解器,进行第一次非线性求解,本程序考虑重力荷载和预应力作用下的弦支穹顶结构的找 形分析 /SOLU ANTYPE,0 !指定分析类型为静力分析 NLGEOM,1 !打开大变形效应 SSTIF,on !打开应力刚化效应 AUTOTS,on !指定使用自动时间步长跟踪 KBC,0 !指定荷载为线性增加 OUTRES,all,last !控制写入到数据库中的数据 OUTPR,all,last !控制结果的输出 NSUBST,10 !指定子步数 NROPT,full !指定使用完全 N-R 法进行非线性方程求解 ACEL,0,0,9.8 !指定重力加速度,施加重力荷载 SOLVE !求解 FINISH !退出求解器 !利用张力补偿法进行迭代求解 *DO,k,1,60,1 !最大循环次数为 60 !(6)进入后处理,演算迭代结果是否满足求解精度 /POST1 !进入后处理 *GET,F1,ELEM,2521,SMISC,1 !获取 1 号索拉力 *GET,F2,ELEM,2527,SMISC,1 !获取 2 号索拉力 *GET,F3,ELEM,2539,SMISC,1 !获取 3 号索拉力 *GET,F4,ELEM,2557,SMISC,1 !获取 4 号索拉力 *GET,F5,ELEM,2581,SMISC,1 !获取 5 号索拉力 *GET,F6,ELEM,2611,SMISC,1 !获取 6 号索拉力 *GET,F7,ELEM,2647,SMISC,1 !获取 7 号索拉力 *GET,R1_6,RCON,6,CONST,2 !获取索 1 初应变 *GET,R2_7,RCON,7,CONST,2 !获取索 2 初应变 *GET,R3_8,RCON,8,CONST,2 !获取索 3 初应变 *GET,R4_9,RCON,9,CONST,2 !获取索 4 初应变 *GET,R5_10,RCON,10,CONST,2 !获取索 5 初应变 *GET,R6_11,RCON,11,CONST,2 !获取索 6 初应变 *GET,R7_12,RCON,12,CONST,2 !获取索 7 初应变 *GET,A1_6,RCON,6,CONST,1 !获取索 1 截面积 *GET,A2_7,RCON,7,CONST,1 !获取索 2 截面积 *GET,A3_8,RCON,8,CONST,1 !获取索 3 截面积 *GET,A4_9,RCON,9,CONST,1 !获取索 4 截面积 *GET,A5_10,RCON,10,CONST,1 !获取索 5 截面积 *GET,A6_11,RCON,11,CONST,1 !获取索 6 截面积 *GET,A7_12,RCON,12,CONST,1 !获取索 7 截面积 error1=abs((p1-f1)/p1) !计算索 1 误差 error2=abs((p2-f2)/p2) !计算索 2 误差 error3=abs((p3-f3)/p3) !计算索 3 误差 error4=abs((p4-f4)/p4) !计算索 4 误差.

(26) 第 5 章 弦支穹顶结构分析 error5=abs((p5-f5)/p5) !计算索 5 误差 error6=abs((p6-f6)/p6) !计算索 6 误差 error7=abs((p7-f7)/p7) !计算索 7 误差 error_max=max(error1,error2,error3,error4,error5,error6,error7) !寻找误差最大值作为判断依据 !存储放样态几何坐标 *DO,i,1,n *GET,wzerox(i),node,i,loc,x !存储放样态几何 x 坐标数组 *GET,wzeroy(i),node,i,loc,y !存储放样态几何 y 坐标数组 *GET,wzeroz(i),node,i,loc,z !存储放样态几何 z 坐标数组 *ENDDO /PREP7 !进入前处理 UPGEOM,1,LAST,LAST,'file','rst',' ' !更新坐标值(即更新放样态坐标) !存储平衡态几何坐标 *DO,i,1,n *GET,wbalanx(i),node,i,loc,x !存储平衡态几何 x 坐标数组 *GET,wbalany(i),node,i,loc,y !存储平衡态几何 y 坐标数组 *GET,wbalanz(i),node,i,loc,z !存储平衡态几何 z 坐标数组 *ENDDO wmax=0 *DO,i,1,n wx(i)=wfinalx(i)-wbalanx(i) !存储设计态与平衡态几何 x 坐标差值数组 wy(i)=wfinaly(i)-wbalany(i) !存储设计态与平衡态几何 y 坐标差值数组 wz(i)=wfinalz(i)-wbalanz(i) !存储设计态与平衡态几何 z 坐标差值数组 !寻找设计态与平衡态几何坐标差值绝对值最大值 wmax=max(wmax,abs(wx(i)),abs(wy(i)),abs(wz(i))) *ENDDO !判断是否满足误差要求 *IF,error_max,lt,0.08,then !预应力设计值允许误差控制在 8%以内 *IF,wmax,lt,0.005,then !坐标差值控制在 0.005m 以内 *DO,i,1,n NMODIF,i,wzerox(i),wzeroy(i),wzeroz(i)!用放样态几何坐标修改节点坐标 *ENDDO CSYS,0 !激活笛卡尔坐标系 NROTAT,1,n,1 !将全部节点的节点坐标系旋转到笛卡尔坐标系下 /PREP7 /FORMAT,,e,5,10 NWRITE,a,txt !将最终求得的放样态几何坐标输出到 a.txt 文件 *EXIT !退出循环 *ENDIF *ENDIF !(7)若不满足误差要求,更新初应变和节点坐标 R1_6=(p1-F1)/E/A1_6/1+R1_6 R2_7=(p2-F2)/E/A2_7/1+R2_7 R3_8=(p3-F3)/E/A3_8/1+R3_8 R4_9=(p4-F4)/E/A4_9/1+R4_9 R5_10=(p5-F5)/E/A5_10/1+R5_10. 185.

(27) 空间钢结构 APDL 参数化计算与分析. 186 R6_11=(p6-F6)/(E*A6_11)+R6_11 R7_12=(p7-F7)/E/A7_12/1+R7_12 R,6,A1_6,R1_6 R,7,A2_7,R2_7 R,8,A3_8,R3_8 R,9,A4_9,R4_9 R,10,A5_10,R5_10 R,11,A6_11,R6_11 R,12,A7_12,R7_12. !修改各索初应变参数. !修改节点坐标 *DO,i,1,n wzerox(i)=wzerox(i)+wx(i) wzeroy(i)=wzeroy(i)+wy(i) wzeroz(i)=wzeroz(i)+wz(i) nmodif,i,wzerox(i),wzeroy(i),wzeroz(i) *ENDDO !(8)进入求解器,重新进行非线性求解 /SOLU ANTYPE,0 NLGEOM,1 SSTIF,on AUTOTS,on KBC,0 OUTRES,all,last OUTPR,all,last NSUBST,10 NROPT,full ACEL,0,0,9.8 SOLVE FINISH k=k+1 *ENDDO !(9)结果评价. !计算第 I 个节点的 X 坐标 !计算第 I 个节点的 Y 坐标 !计算第 I 个节点的 Z 坐标 !修改第 I 个节点的节点坐标. !重新进行分析 !指定分析类型为静力分析 !打开大变形效应 !打开应力刚化效应 !指定使用自动时间步长跟踪或者荷载步跟踪 !指定荷载为线性增加 !控制写入到数据库中的数据 !控制结果的输出 !指定子步数 !指定使用完全 N-R 法 !指定重力加速度,施加重力荷载 !求解 !退出求解器. 上述关于弦支穹顶结构找形分析的 APDL 程序运行过程中,若分析停止,原因可能是下 面两种中的一种: (1)找形分析误差满足设计要求,找形分析结束。 (2)循环次数达到设定的循环次数,此时程序的结束并不意味着弦支穹顶结构找形分析 的成功,必须增大循环次数或者降低精度要求重新分析。 判断程序结束原因的方法是查看找形分析中最后一次循环的预应力差值和坐标差值误 差,看其是否已经达到设定的精度,具体方法如下: 首先执行路径【Parameters/Scalar Parameters…】,弹出如图 5-14 所示的参数对话框,在对 话框中寻找参数 error_max(预应力误差最大值)和 wmax(坐标误差最大值),然后将 error_max 和 wmax 的数值与设定的误差精度相比,若 error_max 和 wmax 小于设定的误差精度,则程序 的结束属于成功结束,否则应修改循环次数最大值,重新进行分析。 对于本书实例,从图 5-14 所示的对话框中可以得知 error_max=7.762975972E-02 和.

(28) 第 5 章 弦支穹顶结构分析. 187. wmax=4.885051738E-04,均分别小于 0.08 和 0.01,因此本实例中程序的结束属于成功结束。. 图 5-14. 参数对话框. 本实例找形分析中得到的放样态节点坐标和环索的初始应变值均为正确结果。其中放样 态的节点坐标被保存至工作目录下的 a.txt 文件中,如图 5-15 所示。环索初始应变值可参考上 述查看 error_max 和 wmax 的数值的方法得到,在本实例中,得到的 7 圈环索初始应变值分别 为 R1_6 = 2.039438381E-02、R2_7= 2.935582080E-03、R3_8 = 4.094923412E-04、R4_9= 2.373420942E-03 、 R5_10= 1.347832190E-03 、 R6_11= 1.977283099E-03 、 R7_12= 4.043167213E-03。在接下来弦支穹顶结构的各工况下的求解分析,应该施加上述找形分析得 到的初始应变值。. 图 5-15. 放样态的节点坐标.

(29) 空间钢结构 APDL 参数化计算与分析. 188. 5.5. 弦支穹顶结构的预应力优化分析. 5.5.1 基本理论 弦支穹顶结构的技术关键是寻找索内所施加的最佳预应力。索内预应力是一种可以受设 计人员人为控制的装配外力,它的大小对结构的内力分配、位移具有显著影响。索预应力如 施加不当,会起到适得其反的效果。过高的预应力不仅不能很好地发挥预应力的作用,甚至 使拉索在荷载作用下超过其极限拉力而破坏;而过低预应力满足不了结构对刚度的需求。在 满足所有要求的前提下,出于经济方面的考虑,预应力水平应该越低越好,这样才能降低结 构的造价,降低施工的难度,节省建筑材料等。所谓最理想的预应力状态应满足以下三点: ①要保证张拉整体结构在正常工作条件下所有的索都不能松弛;②要使所施加的预应力状态 能保证结构预想的几何形状;③在满足前两个条件下,要使顶应力水平最低。上述弦支穹顶 结构的预应力优化可在 ANSYS 的优化模块中实现。 ANSYS 的软件的优化模块(/OPT)是集成于 ANSYS 软件包之中,它必须与参数化设计 语言完全集合在一起工作才能发挥 ANSYS 优化设计的功能,APDL 的利用是优化设计的一个 核心步骤。ANSYS 的优化模块采用三大优化变量来描述优化过程,分别是:①设计变量(Design Variables)为自变量,优化结果的取得是通过改变设计变量的数值来实现的,每个设计变量都有 上下限,它定义了设计变量的变化范围;②状态变量(State Variables)是约束设计的数值,它 们可以是设计变量的函数,也可独立于设计变量,状态变量可能会有上下限,也可能只有单 方面的限制,即只有上限或只有下限;③目标函数(Objective Function)是一个尽量减少的数 值,它必须是设计变量的函数,改变设计变量的数值将改变目标函数的数值。 一个典型的 ANSYS 优化过程通常需要经过以下步骤来完成: (1)构建一个优化分析文件。①参数化建模:利用 ANSYS 软件提供的参数化建模功能 把将要参与优化的数据(设计变量 DV)初始化,并构建一个参数化分析模型,为以后软件修 正模型提供可能;②加载与求解:对结构的参数化模型进行加载与求解;③进入 ANSYS 的后 处理模块,提取有限元分析结构结果并赋值给状态变量 SV(约束条件)和目标函数 OBJ (优 化目标)。 (2)构建优化控制文件。①进入优化设计模块,指定优化分析文件;②声明优化变量, 选择优化工具或优化方法,还可以采用用户自己的外部优化程序;③指定优化循环控制方 式;④进行优化参数评价,优化处理器根据本次循环提供的优化参数(设计变量 DV、状 态变量 SV 及目标函数 OBJ)与上次循环提供的优化参数作比较之后确定该次循环目标函 数是否收敛,或者说结构是否达到了最优,如果最优,完成迭代,退出优化循环圈,否则, 进行下步。 (3)根据已完成的优化循环和当前优化变量的状态修正设计变量,重新投入循环。 (4)查看设计序列结果及后处理设计结果。以上过程可由如图 5-16 所示框图来说明整个 优化流程。.

(30) 第 5 章 弦支穹顶结构分析. 图 5-16. 189. 设计的优化过程. 5.5.2 实例分析 在进行弦支穹顶结构的预应力优化之前,必须首先利用 ANSYS 的 APDL 语言编写弦支穹 顶结构的分析宏文件。此处的弦支穹顶分析宏文件与本章 5.2 节中的弦支穹顶参数化建模的程 序基本相同,但有两点需要注意: (1)在优化分析中,结构的参数化分析宏文件必须包含优化变量参数,且优化变量参数 必须嵌入结构的参数建模程序。对于本章实例进行预应力优化时,设计变量有 7 个,即弦支 穹顶结构下部索撑体系中 7 圈环索的初始应变,为了分析方便,本实例中不直接定义环索的 初始应变为设计变量,而是定义虚预应力 Pi (i  1, 2,3, 4,5,6, 7) ,然后通过公式  i  Pi ( EA) 来计 算初始应变。 (2)在优化分析中,结构的参数化分析宏文件必须包含分析求解部分及其提取目标变量 和状态变量的程序,即求解模块和后处理模块程序部分;在本实例中忽略状态变量,仅定义 目标变量,根据弦支穹顶中预应力的作用,定义上部单层网壳结构的应力最大值为目标变量。 1.本实例的分析宏文件中的程序 !(1)环境初始化 FINISH /CLEAR /FILENAME, suspendome /TITLE, the model of suspendome !(2)设置优化变量参数 P1=4.88E+05 p2=4.57E+05 p3=3.65E+05. !清除 ANSYS 内存 !定义工作文件名 !定义工作标题 !定义第 1 圈环索的初始虚预应力值 !定义第 2 圈环索的初始虚预应力值 !定义第 3 圈环索的初始虚预应力值.

(31) 190. 空间钢结构 APDL 参数化计算与分析 p4=8.16E+05 !定义第 4 圈环索的初始虚预应力值 p5=7.83E+05 !定义第 5 圈环索的初始虚预应力值 p6=1.14E+06 !定义第 6 圈环索的初始虚预应力值 p7=1.52E+06 !定义第 7 圈环索的初始虚预应力值 /PREP7 !进入前处理模块 *AFUN,DEG !设置角度单位 !(3)设置模型基本参数 *SET,Kn,6 !设置凯威特网壳的类型 *SET,Nx,16 !设置圈数 *SET,f,17.025 !设置矢高 *SET,Span,92 !设置跨度 !(4)定义弦支穹顶结构上部单层网壳的几何参数数组 *DIM,numnode,,Nx,1 !定义单层网壳每圈节点个数数组. *DO,i,1,Nx,1 *SET,numnode(i),Kn*i !计算单层网壳每圈的个数并赋值给数组 *ENDDO *DIM,num,,Nx+1,1 !定义每圈节点的最大编号数组,其中心点单独作为一圈 *SET,num(1),1 !定义第 1 圈(即中心点)的最大节点编号为 1 *DO,i,2,Nx+1,1 *SET,num(i),num(i-1)+numnode(i-1) !计算第 I 圈的最大节点编号并赋值给数组 num *ENDDO *DIM,numcg,,7,1 !定义弦支穹顶结构索撑体系的每圈撑杆高度数组 *SET,numcg(1),4.5 !定义索撑体系第 1 圈的撑杆高度为 4.5m *SET,numcg(2),4.5 !定义索撑体系第 2 圈的撑杆高度为 4.5m *SET,numcg(3),4.5 !定义索撑体系第 3 圈的撑杆高度为 4.5m *SET,numcg(4),4.5 !定义索撑体系第 3 圈的撑杆高度为 4.5m *SET,numcg(5),5.5 !定义索撑体系第 5 圈的撑杆高度为 5.5m *SET,numcg(6),6 !定义索撑体系第 6 圈的撑杆高度为 6m *SET,numcg(7),6.5 !定义索撑体系第 7 圈的撑杆高度为 6.5m EA=1.8e11*2809e-6 /PREP7 !进入前处理模块 !(5)定义单元类型、材料属性和杆件实常数 ET,1,BEAM4 !单层网壳杆件的单元类型为 BEAM4 ET,2,LINK8 !定 义索撑体 系中径向 拉杆和竖 向撑杆的单 元类型 为 LINK8 ET,3,LINK10 !定义索撑体系中环向拉索的单元类型为 LINK10 MP,ex,1,2.06e11 !定义钢管的材料的弹性模量 MP,dens,1,7850 !定义钢管的材料的密度 MP,alpx,1,1.2e-5 !定义钢管的材料的线膨胀系数 MP,prxy,1,0.3 !定义钢管的材料的泊松比 TB,BISO,1,1,2, !定义钢管的本构关系为双线性模型 TBTEMP,0 !定义钢管的本构关系所对应的温度 TBDATA,,345e6,0,,,, !定义钢管的屈服强度为 345MPa MP,ex,2,1.9e11 !定义拉索的材料的弹性模量 MP,dens,2,7850 !定义拉索的材料的密度.

(32) 第 5 章 弦支穹顶结构分析 MP,alpx,2,1.2e-5 !定义拉索的材料的线膨胀系数 MP,prxy,2,0.3 !定义拉索的材料的泊松比 TB,BISO,2,1,2, !定义拉索的本构关系为双线性模型 TBTEMP,0 !定义拉索的本构关系所对应的温度 TBDATA,,1330e6,0,,,, !定义拉索的屈服强度为 1330MPa !定义单元实常数 R,1,37.13e-4,1803.07e-8,1803.07e-8,0.203,0.203 !定义钢管 P203×6 的实常数 R,2,46.62e-4,2622.04e-8,2622.04e-8,0.219,0.219 !定义钢管 P219×7 的实常数 R,3,52.34e-4,3709.06e-8,3709.06e-8,0.245,0.245 !定义钢管 P245×7 的实常数 R,4,66.60e-4,5851.71e-8,5851.71e-8,0.273,0.273 !定义钢管 P273×8 的实常数 R,5,73.14e-4,7747.42e-8,7747.42e-8,0.299,0.299 !定义钢管 P299×8 的实常数 R,6,2809e-6,p1/EA !第 1 圈环索的实常数 R,7,2809e-6,p2/EA !第 2 圈环索的实常数 R,8,2809e-6,p3/EA !第 3 圈环索的实常数 R,9,2809e-6,p4/EA !第 4 圈环索的实常数 R,10,4657e-6,p5/EA !第 5 圈环索的实常数 R,11,4657e-6,p6/EA !第 6 圈环索的实常数 R,12,4657e-6,p7/EA !第 7 圈环索的实常数 R,13,46.62e-4 !撑杆 P219×7 的实常数 R,14,5024e-6 !径向拉杆的实常数 !(6)建立上弦节点坐标 CSYS,2 !转换为球面坐标系 R=(Span*Span/4+f*f)/(2*f) !根据矢高和跨度计算曲面半径 R DPha=Atn(Span/2/Sqrt(R*R-Span*Span/4))/Nx !计算相邻两圈环杆对应的球心夹角 Dpha N,1,R,0,90 !定义顶点 1 号节点的位置坐标为(R,0,90) *DO,i,1,Nx !第 1~Nx 圈的节点循环 *DO,j,1,Kn*i !对称区的节点循环,第 i 圈可分为 Kn*i 份 x=R !输入 x 坐标 y=(j-1)*360/(Kn*i) !输入 y 坐标,各圈上的节点数目为 Kn 倍圈号 z=90-i*DPha !输入 z 坐标 N,1+Kn*(i-1)*i/2+j,x,y,z !依次计算并定义节点的编号和位置 *ENDDO *ENDDO LOCAL,11,1,0,0,0 !在原点处定义一柱坐标系,并定义编号为 11 CSYS,11 !激活局部坐标系 11 !(7)建立上部单层网壳杆件 TYPE,1 !设置当前的单元编号为 1 MAT,1 !设置当前的材料属性编号为 1 REAL,1 !设置当前的实常数编号为 1 !环向杆连接 *DO,i,1,Nx !第 1~Nx 圈的节点循环 *DO,j,1,Kn*i-1 !第 1~Kn*i-1 对称区的节点循环 E,1+Kn*(i-1)*i/2+j,1+Kn*(i-1)*i/2+j+1 !连接相邻两节点生成单元 *ENDDO E,1+Kn*(i-1)*i/2+1,1+Kn*(i-1)*i/2+Kn*i !连接最后一对称区的环杆. 191.

(33) 空间钢结构 APDL 参数化计算与分析. 192 *ENDDO. !径向的单元连接 !对各对称区循环 !定义中心处径向杆单元. *DO,i,1,Kn E,1,1+i *ENDDO *DO,j,1,Nx-1 !从里圈第 2 圈开始向最外圈循环 *DO,k,1,Kn !对各个对称区循环 *DO,i,1,j+1 !对每个对称区内的杆循环 *IF,i,EQ,j+1,THEN !判断是否是当前对称区内的最后一根杆 *IF,k,EQ,Kn,THEN !判断是否是最后一个对称区 E,1+Kn*(j-1)*j/2+1,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i !第 1 个节点和最后一个节点的连杆 *ELSE E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i !一般区内的最后一根连杆 *ENDIF *ELSE E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i !一般正向连杆 *ENDIF *ENDDO *DO,i,1,j E,1+Kn*(j-1)*j/2+(k-1)*j+i,1+Kn*(j+1)*j/2+(k-1)*(j+1)+i+1 !一般负向连杆 *ENDDO *ENDDO *ENDDO !(8)根据图纸修改单层网壳的截面特性 *DIM,area,,32 !定义每环径向杆和环向杆的实常数编号数组 !环向杆 *SET,area(1),2,2,2,2,2,3,2,3 !根据图纸中第 1~8 圈环向杆的钢管规格给数组 area 的第 1~8 个位置赋值 *SET,area(9),4,5,2,5,2,5,2,5 !根据图纸中第 9~16 圈环向杆的钢管规格给数组 area 的第 9~16 个位置赋值 !径向杆 *SET,area(17),2,1,1,1,1,1,1,1 !根据图纸中第 1~8 圈径向杆的钢管规格给数组 area 的第 17~24 个位置赋值 *SET,area(25),1,1,1,1,1,1,2,2 !根据图纸中第 9~16 圈径向杆的钢管规格给数组 area 的第 25~32 个位置赋值 !修改环向杆截面特性 num_elem_b=1 !定义第 1 圈环向杆的起始编号 num_elem_e=6 !定义第 1 圈环向杆的末尾编号 *DO,i,1,Nx,1 !环向杆 1~16 圈循环 ESEL,s,,,num_elem_b,num_elem_e,1 !选择第 I 圈的所有环向杆 EMODIF,all,real,area(i) !修改第 I 圈的环向杆单元的实常数 ESEL,all !选择所有单元 num_elem_b=num_elem_b+i*Kn !定义第 I 圈环向杆的起始编号 num_elem_e=num_elem_e+(i+1)*Kn !定义第 I 圈环向杆的末尾编号 *ENDDO.

(34) 第 5 章 弦支穹顶结构分析. 193. sum_num=Nx*Kn+Nx*(Nx-1)/2*Kn !计算环向杆单元总数,并赋值给变量 sum_num !修改径向杆截面属性 num_elem_b=sum_num+1 !定义第 1 圈径向杆的起始编号 num_elem_e=sum_num+6 !定义第 1 圈径向杆的末尾编号 *DO,i,1,Nx,1 !径向杆 1~16 圈循环 ESEL,s,,,num_elem_b,num_elem_e,1 !选择第 I 圈的所有径向杆 EMODIF,all,real,area(i+16) !修改第 I 圈的径向杆单元的实常数 ESEL,all !选择所有单元 num_elem_b=num_elem_b+6+12*(i-1) !定义第 I 圈径向杆的起始编号 num_elem_e=num_elem_e+6+12*i !定义第 I 圈径向杆的末尾编号 *ENDDO !(9)建立下部索撑体系的节点 *SET,nodeinc,NDINQR(0,14) !提取当前节点定义的最大数目 *DO,i,1,7,1 !弦支穹顶下部索撑体系第 1~7 圈循环 NGEN,2,nodeinc,num(2*i)+1,num(2*i+1),2,0,0,-numcg(i) !利用复制上部单层网壳的方法建立下部第 I 圈索撑体系的节点 *ENDDO !(10)建立下部索撑体系中撑杆单元 TYPE,2 !定义撑杆的单元类型编号为 2 MAT,1 !定义撑杆的材料属性编号为 1 REAL,13 !定义撑杆的实常数编号为 13 *DO,i,1,7,1 !撑杆第 1~7 圈循环 *DO,j,num(2*i)+1,num(2*i+1),2 E,j,j+nodeinc !建立撑杆单元 *ENDDO *ENDDO !(11)建立下部索撑体系中的环索单元 *DO,j,1,7,1 !环索第 1~7 圈循环 TYPE,3 !定义环索的单元类型编号为 3 MAT,2 !定义环索的材料属性编号为 2 REAL,5+j !定义环索的实常数编号为 5+j *DO,i,num(2*j)+1,num(2*j+1)-2,2 E,i+nodeinc,i+2+nodeinc !建立环索单元 *ENDDO E,num(2*j)+1+nodeinc,num(2*j+1)-1+nodeinc !建立环索单元 *ENDDO !(12)建立下部索撑体系中的径向拉索单元 TYPE,2 !定义环索的单元类型编号为 2 MAT,1 !定义环索的材料属性编号为 1 REAL,14 !定义环索的实常数编号为 14 *DO,j,1,7,1 *DO,i,1,6,1 E,num(2*j)+1+nodeinc+2*j*(i-1),num(2*j+2)+1+(2*j+2)*(i-1) !建立径向拉杆单元 *ENDDO *ENDDO *DO,j,1,7,1.

(35) 194. 空间钢结构 APDL 参数化计算与分析 *SET,m,0 *DO,i,1,numnode(2*j)/2-1,1 *SET,t,mod(i-1,j) *IF,t,eq,0,then m=m+2 E,num(2*j)+1+nodeinc+2*(i-1),num(2*j+2)+1+2*(i-1)+m E,num(2*j)+1+nodeinc+2*i,num(2*j+2)+1+2*(i-1)+m *ELSE E,num(2*j)+1+nodeinc+2*(i-1),num(2*j+2)+1+2*(i-1)+m E,num(2*j)+1+nodeinc+2*(i),num(2*j+2)+1+2*(i-1)+m *ENDIF *ENDDO E,num(2*j+1)-1+nodeinc,num(2*j+3)-1 E,num(2*j)+1+nodeinc,num(2*j+3)-1 *ENDDO !(13)合并节点与压缩节点编号 NUMCMP,node NUMCMP,elem !(14)建立弦支穹顶结构的约束 CSYS,11 !激活局部坐标 11 NROTAT,722,814,4 !将节点 722~814 中以 4 为间隔的 24 个节点旋转到与局部坐标系 11 平行的位置 *DO,i,1,24 D,718+4*i,uz,0 !约束节点 718+4*i 的竖向位移 D,718+4*i,uy,0 !约束节点 718+4*i 的环向位移 *ENDDO csys,0 finish !(15)进入求解模块,进行求解分析 /SOLU !重新进行分析 ANTYPE,0 !指定分析类型为静力分析 NLGEOM,1 !打开大变形效应 SSTIF,on !打开应力刚化效应 AUTOTS,on !指定使用自动时间步长跟踪或者荷载步跟踪 KBC,0 !指定荷载为线性增加 OUTRES,all,last !控制写入到数据库中的数据 OUTPR,all,last !控制结果的输出 NSUBST,10 !指定子步数 NROPT,full !指定使用完全 N-R 法 !调用荷载文件进行加载 *USE,E:\BOOK_APDL\chapter_5\exzample5.3\dead_load.mac,1.0 *USE,E:\BOOK_APDL\chapter_5\exzample5.3\live_load.mac,0.5 ACEL,0,0,9.8 !指定重力加速度,施加重力荷载 SOLVE !求解 FINISH !(16)进入后处理模块,定义目标变量 /POST1 !进入后处理 RSYS,11.

(36) 第 5 章 弦支穹顶结构分析 *GET,F1,ELEM,2521,SMISC,1 *GET,F2,ELEM,2527,SMISC,1 *GET,F3,ELEM,2539,SMISC,1 *GET,F4,ELEM,2557,SMISC,1 *GET,F5,ELEM,2581,SMISC,1 *GET,F6,ELEM,2611,SMISC,1 *GET,F7,ELEM,2647,SMISC,1 ESEL,s,REAL,,1,5 SET,last ETABLE,smax_i,nmisc,1 ETABLE,smax_j,nmisc,3 ESORT,etab,smax_i,1,1 *GET,smaxi,sort,,max ESORT,etab,smax_j,,1 *GET,smaxj,sort,,max smax=max(abs(smaxi),abs(smaxj)) FINISH. 195. !获取 1 号索拉力 !获取 2 号索拉力 !获取 3 号索拉力 !获取 4 号索拉力 !获取 5 号索拉力 !获取 6 号索拉力 !获取 7 号索拉力 !通过单元实常数选择上部单层网壳的所有单元 !读入最后一个荷载步的结果文件 !将单元 i 端的最大应力生成一个单元列表 !将单元 j 端的最大应力生成一个单元列表 !对单元列表 smax_i 按照绝对值进行升序排序 !提取上一个单元列表排序的最大值 !对单元列表 smax_j 按照绝对值进行升序排序 !提取上一个单元列表排序的最大值 !比较 smaxi 和 smaxj 的大小,并赋值给 smax. 将上述弦支穹顶结构的分析宏文件保存至目录 E:\BOOK_APDL\chapter_5\exzample5.5\ 下,并命名为 pre_solve.mac。 2.本实例的优化分析执行文件程序 /CLEAR /INPUT,'pre_solve','mac','E:\book_opt\',, 0 /OPT OPCLR OPANL,'pre_solve','mac',' ' OPVAR,p1,dv,10000,500000,100000 OPVAR,p2,dv,10000,500000,200000 OPVAR,p3,dv,10000,1000000,200000 OPVAR,p4,dv,10000,1000000,300000 OPVAR,p5,dv,10000,2000000,300000 OPVAR,p6,dv,10000,3000000,500000 OPVAR,p7,dv,10000,3000000,500000 OPVAR,SMAX,OBJ, , , , OPDATA, , , OPLOOP,PREP,IGNO,SCAL OPPRNT,ON OPKEEP,ON OPTYPE,SUBP OPSUBP,30,7, OPEQN,0,0,0,0,0, OPEXE. !清除当前 ANSYS 内存数据 !输入结构分析的宏文件,进行第一次参数化分析 !执行优化分析 !清除优化数据库 !指定优化分析的结构分析文件 !指定优化变量 p1 !指定优化变量 p2 !指定优化变量 p3 !指定优化变量 p4 !指定优化变量 p5 !指定优化变量 p6 !指定优化变量 p7 !定义目标函数变量 !指定优化数据将要保存的文件 !优化循环控制参数的设置 !激活详细的优化摘要输出 !保存最佳的优化结果和数据文件 !选择子问题法进行第一次优化计算 !开始优化循环. 将上述优化分析执行文件保存至目录 E:\BOOK_APDL\chapter_5\exzample5.5\下,并命名 为 opt.mac。 至此,弦支穹顶结构的预应力优化分析程序已编写完毕。执行优化分析时,只需要将文.

參考文獻

相關文件

覺得自己在這浩瀚的天地間,是如此的渺小不起眼,不管別人把我踢

飛機師〜空中工作、有特別訓練、周遊列國 郵差〜戶外工作、要穿制服、要背很重的東西 社工〜要接觸很多人、有愛心、對人的行為有興趣

1、电动力学 郭硕宏编 高等教育出版社 2、电动力学 尹真 编 南京大学出版社 3、Classical Electrodynamics J. Jackson

对于电磁现象,尽管我们仍然还是从力学的角度来理解各种各样的物理对象以及物理过程,但最关键

表 4-4-5 彙整了不同教育程度的民眾對祭品用品電子化的接受度之 單因子變異數分析統計結果。由表 4-4-5 的整體量表的 F

内蒙古大草原沙化退化,自然因素也好,人为因素也罢,最

现代农业技术 专题二 种质资源的保护和引进 Modern Agriculture Technology Topic 2 Germplasm Resources Protection and Introduction 通用技术 选修

这是我国 29 位画家画的“三 毛之父”—— 张乐平爷爷。他们 面对同一个人物,用了不同的表现