案例 - 使用TEDDY输入模式分析简支梁
TEDDY简介
TEDDY程序为一个命令控制中心,也是一个功能强大的编辑器,同时完全支持CADINP语言。
TEDDY 提供了一个在输入数据的同时还能交互帮助的功能。 当前行的命令的选项自动显示在状态栏里,如果使用F1功能键就会同时显示当前行命令所在用户手册(PDF文件)的对应页数,而不会影响或中断输入编辑的过程。用ESC按键可以关闭帮助窗口。
1, 输入数据
每一个 SOFiSTiK 程序都需要输入数据。输入数据为文本文件。为了让数据正确执行,它们必须以一定的顺序排列。每个模块通过预设的段落名 PROG 开始,后面跟着程序的名字。 在一个数据文件中,可以写入多个程序模块。例如:
+PROG AQUA
AQUA 模块输入数据
+PROG SOFIMSHA
SOFIMSHA 模块输入数据
+PROG SEPP
SEPP 模块输入数据
每个模块都是以HEAD开始,以END结束。在HEAD 行,您可以给出本模块的标题。
2, 基本的输入语法
2.1,基本输入形式
· 输入由语句组成。
· 输入语句由语句名以及跟在后面的数据组成,数据应该符合输入数据的顺序。
· 如果语句同上面的语句,语句名的输入可以省略。
· 语句可以从一行的任意位置开始。
· 数据通过一个或者多个空格间隔开。
2.2,默认值
如果一个语句输入的数据相对于其语句描述的要少,缺少的位置就假设为默认值。
2.3, 注释
注释符号$、!或者//作用为,将该行后面的输入看作注释,并不再进行解释。注释符号必须通过分隔符前后隔开。
2.4, 续行
两个美元符号$$表示,下一行为该语句的续行。
2.5,语句分隔
多个语句可以写在一行中。 语句通过分号(;)彼此隔开。
启动TEDDY
TEDDY 是一个Windows应用程序,允许通过常规方式启动。
双击程序图标,或者任意点击DAT文件启动TEDDY程序。
例题
以一简支梁为例,介绍如何读取TEDDY信息。
本例题通过以下5个模块,对简支梁建模,施加荷载和创建荷载组合。
模块 功能
AQUA 定义规范,材料和截面
SOFIMSHA 定义系统,节点坐标和约束,梁截面
SOFILOAD 定义荷载
STAR2 定义分析类型
MAXIMA 定义荷载组合和叠加
+PROG AQUA
HEAD MATERIAL
NORM EN 1992-2004 ; CONC 1 ; SREC 1 1000[mm] 800[mm]
END
说明:
+PROG AQUA :AQUA模块输入
HEAD MATERIAL:定义标题 – MATERIAL
多个命令NORM,CONC和SREC可以写在一行,但必须用分号(;)彼此隔开。
NORM EN 1992-2004 ; CONC 1 ; SREC 1 800[mm] 1000[mm]
将鼠标放在NORM下面,点击鼠标,在屏幕最下方的状态栏显示当前命令(NORM)的选项和当前模块(AQUA)。
按F1,即可显示AQUA手册中NORM 命令(PDF)。
在状态栏中,请注意每个命令都是由预设顺序的关键词组成的。如果您按照关键词的顺序输入相应的数据,则不用输入关键词。当然,您也可以将关键词写在命令行上。
以NORM EN 1992-2004为例,NORM 命令的顺序为DC(规范族) NDC(指定规范) COUN(EN内部的国家代码) CAT(类别) 等等,在DC选项中,我们选择EN,NDC选项中,我们选择1992-2004。因为EN 和1992-2004完全按照DC和NDC的顺序放置,因此,在命名行在可以不用输入DC和NDC。
在这里,定义了EN 1992-2004规范。
CONC 1:CONC(定义混凝土性能),1 为关键词NO(材料编号)的数值。即混凝土的材料编号为1。CONC中的其它关键词对本案例无意义,故可以不用定义。
SREC 1 1000[mm] 800[mm]:SREC(定义矩形,T形梁和板截面),1 为关键词NO(截面编号)的数值,1000[mm]为H(高度)的数值,单位为mm。800[mm] 为B(宽度)的数值,单位为mm。
通过此命令,我们可以得到一个高度为1000mm,宽度为800mm的矩形截面1。
END:输入模块结束
+PROG SOFIMSHA
HEAD System
SYST 2D GDIR NEGY
NODE 1 0 0 FIX PP ; NODE 2 4.0 4.0 FIX PY
BEAM 1 1 2 DIV 4
END
说明:
+PROG SOFIMSHA:SOFIMSHA模块输入
SYST 2D GDIR NEGY:SYST(定义全局系统),2D为关键词TYPE(系统类型)的选项,GDIR(重力方向)的选项为NEGY(Y轴负方向)。
由此可知,本例题采用2D系统,其重力方向沿Y轴的负方向。
注意,因为将GDIR放置在TYPE之后,改变了关键词的顺序,命令行中必须输入GDIR。
NODE 1 0 0 FIX PP: NODE(节点,坐标和约束),1 为关键词NO(节点编号)的数值,0为关键词X(X坐标)的数值,0为关键词Y(Y坐标)的数值,FIX(节点约束)的选项为PP(约束X,Y和Z方向的位移)。
由此可知,节点1的(X Y)坐标为(0 0),并在该节点上约束X,Y和Z方向的位移。
NODE 2 4.0 4.0 FIX PY:NODE(节点,坐标和约束),2 为关键词NO(节点编号)的数值,4.0为关键词X(X坐标)的数值,4.0为关键词Y(Y坐标)的数值,FIX(节点约束)的选项为PY(约束Y方向的位移)。
由此可知,节点2的(X Y)坐标为(4.0 4.0),并在该节点上约束Y方向的位移。
BEAM 1 1 2 DIV 4:BEAM(梁单元),1 为关键词NO(单元编号)的数值,1为关键词NA(梁起点的节点编号)的数值,2为关键词NE(梁终点的节点编号)的数值,DIV(梁的等分段)的数值为4。
由此可知,梁1的起点为节点1,终点为节点2,并将梁1划分为4段。
+PROG SOFILOAD
HEAD Loads, Safety factors and Combination Coefficients
ACT G
LC 1 DLY -1.0
LC 2
BEAM 1 TYPE PYY PA -2.0
ACT S
LC 3
BEAM 1 TYPE PYP PA -7.5
ACT W
LC 4
BEAM 1 TYPE PZ PA 5.0
END
说明:
+PROG SOFILOAD:SOFILOAD模块输入
ACT G:ACT(定义作用),G(恒载)为TYPE(指定作用)的选项。
定义作用为恒载。
LC 1 DLY -1.0:LC(定义荷载工况),1 为关键词NO(荷载工况数)的数值,即荷载工况1。DLY(Y方向的自重分量)为 -1.0(即自重方向与Y方向相反)。
由此可知,荷载工况1为自重,自重方向沿Y轴的负方向。
LC 2:LC(定义荷载工况),2为关键词NO(荷载工况数)的数值,即荷载工况2。
BEAM 1 TYPE PYY PA -2.0:BEAM(梁上的荷载分布),1 为关键词FROM(第一单元的编号或GRP)的数值,也就是说,第一根梁的编号为1。因为我们只有一根梁,因此不需要关键词TO和INC。TYPE(荷载类型和方向)的选项采用PYY(荷载沿Y方向作用在整根梁上),单位为KN/m。PA(梁起始端处的荷载值)为 -2.0(即该荷载的方向与Y方向相反,大小为2KN/m)。因为紧接着PA的关键词是PE(梁终端处的荷载值),而PE的默认值为PA,由于我们没有赋予PE其他值,程序默认梁终端处的荷载值也为-2.0KN/m。
因此在梁单元1上施加了均布荷载,方向沿Y轴负向,大小为2.0KN/m。
ACT G
LC 1 DLY -1.0
LC 2
BEAM 1 TYPE PYY PA -2.0
从以上的命令,我们可以得到,荷载工况1和2都采用了作用G(恒载),荷载工况1为自重,荷载工况2的大小和方向在梁荷载的定义中给出。
ACT S:ACT(定义作用),S(雪载)为TYPE(指定作用)的选项。
定义作用为雪载。
LC 3:LC(定义荷载工况),3为关键词NO(荷载工况数)的数值,即荷载工况3。
BEAM 1 TYPE PYP PA -7.5:BEAM(梁上的荷载分布),1 为梁的编号。TYPE(荷载类型和方向)的选项采用PYP(荷载作用在与Y方向垂直的梁的投影长度上),单位为KN/m。PA(梁起始端处的荷载值)为 -7.5(即该荷载的方向与Y方向相反,大小为10KN/m)。
因此在梁单元1上施加了沿X方向梁的投影长度上的均布荷载,方向沿Y轴负向,大小为7.5KN/m。
ACT S
LC 3
BEAM 1 TYPE PYP PA -7.5
从以上的命令,我们可以得到,荷载工况3采用了作用S(雪载),其大小和方向在梁荷载的定义中给出。
ACT W:ACT(定义作用),W(风载)为TYPE(指定作用)的选项。
定义作用为风载。
LC 4:LC(定义荷载工况),4为关键词NO(荷载工况数)的数值,即荷载工况4。
BEAM 1 TYPE PZ PA 5.0:BEAM(梁上的荷载分布),1 为梁的编号。TYPE(荷载类型和方向)的选项采用PZ(荷载沿局部z方向作用在整根梁上),单位为KN/m。PA(梁起始端处的荷载值)为 5.0(即该荷载的方向沿局部z方向,大小为5.0KN/m)。
因此在梁单元1上施加了均布荷载,方向沿局部z方向,大小为5.0KN/m。
ACT W
LC 4
BEAM 1 TYPE PZ PA 5.0
从以上的命令,我们可以得到,荷载工况4采用了作用W(风载),其大小和方向在梁荷载的定义中给出。
+PROG STAR2
HEAD Calculation of the Single Load Cases
CTRL I
LC ALL
END
说明:
+PROG STAR2:STAR2模块输入
CTRL I:CTRL(控制分析方法的参数),I(一阶理论)为OPT(控制选择)的选项。即采用一阶理论进行分析。
LC ALL:LC(定义荷载工况),ALL(所有荷载工况)为NO(荷载工况编号)的选项。即定义所有荷载工况。
HEAD Calculation of the Single Load Cases
CTRL I
LC ALL
END
从以上的命令,我们可以得到,所有荷载工况都采用一阶理论进行分析。
+PROG MAXIMA
HEAD Superposition ultimate limit state
ECHO FULL
$ according to INI comb_4100
COMB 1 EXPL TYPE DESI
ADD G FACU 1.35 FACF 1.0
ADD S FACU PSIU FACF 1.0
ADD W FACU PSIU FACF 0.0
SUPP 1 MAMI ETYP BEAM TYPE N, VZ, MY
SUPP 1 MAMI ETYP NODE TYPE PX, PY
END
说明:
+PROG MAXIMA:MAXIMA模块输入
ECHO FULL:ECHO(输出范围),FULL(全部输出)为OPT(选择列表中的文字)的选项。此命令为所有结果全部输出的意思。
$ according to INI comb_4100:$符号后的输入均为注释,与命令无关。
COMB 1 EXPL TYPE DESI:COMB(组合规则),1为NO(组合编号)的选项,EXPL(明确定义组合)为EXTR(叠加类型)的选项。TYPE(结果荷载工况的类型)的选项为DESI(承载能力极限状态验算)。
组合1的叠加类型采用明确定义组合的方式,进行承载能力极限状态的验算。
ADD G FACU 1.35 FACF 1.0:ADD(明确定义组合的作用),G为TYPE(指定一个作用或定义一个作用组)的选项,FACU(不利系数)为1.35,FACF(有利系数)为1.0。
在组合1中,作用G被赋予不利系数1.35和有利系数1.0参加组合。
ADD S FACU PSIU FACF 0.0:ADD(明确定义组合的作用),S为TYPE(指定一个作用或定义一个作用组)的选项,FACU(不利系数)使用PSIU(不利的安全系数ψ0),FACF(有利系数)为1.0。
在组合1中,作用S被赋予不利系数ψ0和有利系数1.0参加组合。
ADD W FACU PSIU FACF 0.0:解释同上
在组合1中,作用W被赋予不利系数ψ0和有利系数0.0参加组合。
SUPP 1 MAMI ETYP BEAM TYPE N, VZ, MY:SUPP(定义叠加),1为COMB(组合规则的编号)的选项,MAMI(最大值和最小值)为EXTR(极值条件的类型)的选项。ETYP(单元类型)的选项为BEAM(梁)。在TYPE(标量变量或定义目标函数)中选择N(轴力),VZ(剪力Vz)和MY(弯矩My)。
在组合1中,通过叠加,得到梁单元轴力N,剪力Vy和弯矩My的最大和最小值。
注意:TEDDY中可以输入数列,例如N,VY,MY,这些数据通过逗号分开,数列不能包括分隔符,也不能续行。
SUPP 1 MAMI ETYP NODE TYPE PX, PY:SUPP(定义叠加),1为COMB(组合规则的编号)的选项,MAMI(最大值和最小值)为EXTR(极值条件的类型)的选项。ETYP(单元类型)的选项为NODE(节点)。在TYPE(标量变量或定义目标函数)中选择PX(沿X方向的支座反力)和PY(沿Y方向的支座反力)。
在组合1中,通过叠加,得到沿X,Y方向支座反力的最大和最小值。
COMB 1 EXPL TYPE DESI
ADD G FACU 1.35 FACF 1.0
ADD S FACU PSIU FACF 1.0
ADD W FACU PSIU FACF 0.0
SUPP 1 MAMI ETYP BEAM TYPE N, VZ, MY
SUPP 1 MAMI ETYP NODE TYPE PX, PY
从以上的命令,我们可以得到,作用G,S和W以不同的不利系数和有利系数参与到组合1,进行梁的承载能力极限状态验算。通过叠加,获得梁轴力,剪力和弯矩,以及节点支座反力的最大和最小值。