⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 模态分析.mac

📁 《ANSYS工程分析进阶实例》-王呼佳-源代码 看文件吧.不多说了.
💻 MAC
字号:
!参数定义
FINI
/CLE
/FILNAME,MOTAI
/TITLE,MODEL ANALYSIS OF DUCAO
*CREATE,MODEL,MAC				!创建宏文件MODEL
!几何参数设定
LK=40								!渡槽单跨跨度
W=27								!渡槽宽度
H=7									!槽体高度
HS=5.74							!设计水深
HD=15								!槽墩高度
D1=4								!槽墩上部圆弧直径
D2=6								!槽墩下部圆弧直径
HW1=1.5							!槽底横梁截面下底宽度
HH3=1.475							!槽底横梁截面惯性轴高度
DW1=3								!顶梁截面上底宽度
DH1=0.5							!顶梁截面高度1
DH2=0.7							!顶梁截面总高度
!槽底纵梁截面尺寸
ZW=0.85							!槽底纵梁截面宽度
ZH=0.5								!槽底纵梁截面高度
!顶部拉杆截面尺寸
LW=0.5								!顶部拉杆宽度
LH=0.35							!顶部拉杆高度
T1=0.7								!墙板厚度
T2=0.35							!槽底厚度
T3=0.6								!槽墩厚度
!材料参数设定
E1=3.25E10							!槽体弹性模量
E2=2.8E10							!槽墩弹性模量
E3=3.86E9							!盆式支座弹性模量
DS1=2500							!槽体密度
DS2=2500							!槽墩密度
DS3=2500							!盆式支座密度
V1=0.167							!槽体泊松比
V2=0.167							!槽墩泊松比
SS=3E7								!盆式支座的屈服应力
!定义单元类型
/PREP7
ET,1,BEAM189
ET,2,SHELL63
ET,3,COMBIN40
ET,4,COMBIN40
ET,5,COMBIN14
KEYOPT,3,3,0   					!X方向
KEYOPT,4,3,2   					!Y方向
KEYOPT,5,1,0						!设置为线性单元
KEYOPT,5,2,3   					!Z方向
SECTYPE,1,BEAM,MESH
SECOFFSET,USER,HH3,HW1/2		!移动槽底横梁截面的惯性轴位置	
SECREAD,'SEC1','SECT',' ',MESH	!读取槽底横梁截面库文件
SECTYPE,2,BEAM,MESH
SECOFFSET,USER,DH2-DH1/2,DW1/2	!移动顶梁截面的惯性轴位置	
SECREAD,'SEC2','SECT',' ',MESH	!读取顶梁截面库文件
SECTYPE,3,BEAM,RECT			!定义槽底纵梁横截面
SECOFFSET,USER,ZH/2,ZW			
SECDATA,ZW,ZH
SECTYPE,4,BEAM,RECT			!定义顶部拉杆横截面
SECDATA,LW,LH
!定义材料属性
MP,EX,1,E1							!槽体弹性模量
MP,EX,2,E2							!槽墩弹性模量
MP,DENS,1,DS1						!槽体密度
MP,DENS,2,DS2						!槽墩密度
MP,PRXY,1,V1						!槽体泊松比
MP,PRXY,2,V2						!槽墩泊松比
MP,DAMP,3,0
!定义实常数
R,1,T1								!墙板厚度
R,2,T2								!槽底厚度
R,3,T3								!槽墩空心壳厚度
R,4,E3,0,0,0,SS						!x、y向弹簧支座
R,5,E3								!z向弹簧支座
!实体建模
!槽体线面分布
LOCAL,11,0,,,,,-90					!创建坐标系
CSYS,11							!转换到新坐标系下
WPCSYS,,11						!将工作平面移到与新坐标系一致
K,1									!建立关键点
K,100,LK							!建立关键点
KFILL,1,100,15,,1					!填充关键点
NUMCMP,ALL						!压缩编号
KSEL,S,KP,,1,17						!选择关键点
KGEN,2,ALL,,,,W,,20				!复制关键点
NUMCMP,ALL						!压缩编号
KSEL,S,KP,,1,17,16					!选择关键点
KGEN,3,ALL,,,,W/3,,200				!复制关键点
NUMCMP,ALL						!压缩编号
ALLS								!全部选择
L,1,17								!创建线
L,18,34								!创建线
L,35,36								!创建线
L,37,38								!创建线
*DO,I,1,17
L,I,I+17								!创建线
*ENDDO
LGEN,2,ALL,,,,,H,200				!复制线
NUMCMP,ALL						!压缩编号
L,1,39								!创建线
L,17,55								!创建线
L,18,56								!创建线
*DO,I,34,38
L,I,I+38								!创建线
*ENDDO
AL,1,5,2,21							!由线生成面
AL,1,43,22,44						!由线生成面
AL,3,47,24,48						!由线生成面
AL,4,49,25,50						!由线生成面
AL,2,45,23,46						!由线生成面
 	 
!建立槽墩模型
CONE,D2/2,D1/2,-HD,,-180,-90		!创建1/4圆台体积
VDELE,1,,,0							!删除体积
ADELE,9,10							!删除多余的面
CONE,D2/2,D1/2,-HD,,-90,0			!创建另外1/4圆台体积
VDELE,1,,,0							!删除体积
ADELE,12,13						!删除多余的面
NUMCMP,ALL						!压缩编号
WPOFFS,,W							!将工作平面沿y轴移动w距离
CONE,D2/2,D1/2,-HD,,0,90			!创建1/4圆台体积
VDELE,1,,,0							!删除体积
ADELE,15,16						!删除多余的面
CONE,D2/2,D1/2,-HD,,90,180		!创建另外1/4圆台体积
VDELE,1,,,0							!删除体积
ADELE,18,19						!删除多余的面
NUMCMP,ALL						!压缩编号
A,80,78,97,99						!创建面
A,87,92,90,85						!创建面
A,78,97,90,85						!创建面
A,80,99,92,87 						!创建面
ASEL,S,AREA,,6,21					!选择面6到21
LSLA,S								!选择属于已选面的所有线
LSEL,S,LINE,,51,52					!选择线
LSEL,A,LINE,,55,56					!选择线
LSEL,A,LINE,,69,70					!选择线
LSEL,A,LINE,,73,74					!选择线
LSEL,A,LINE,,64,65					!选择线
LSEL,A,LINE,,82,83					!选择线
LSEL,A,LINE,,60,61					!选择线
LSEL,A,LINE,,78,79					!选择线
LESIZE,ALL,,,4						!指定线的网格份数

LSEL,S,LINE,,91,94					!选择线
LESIZE,ALL,,,8						!指定线的网格份数
LSEL,S,LINE,,87,90					!选择线
LESIZE,ALL,,,9						!指定线的网格份数

LSEL,S,LINE,,57,58					!选择线
LSEL,A,LINE,,75,76					!选择线
LSEL,A,LINE,,66,67					!选择线
LSEL,A,LINE,,84,85					!选择线
LESIZE,ALL,,,5						!指定线的网格份数

ASEL,S,AREA,,6,21					!选择面
AATT,2,3,2							!设置所选面的单元属性
AMESH,ALL							!对面划分网格
AGEN,2,ALL,,,LK,,,100				!将已建好的单墩模型复制到另一侧
ALLS								!全选
NUMMRG,NODE						!合并重节点
NUMCMP,ALL						!压缩编号

ALLS								!选择已建好的槽墩模型
CM,CAODUN,NODE					!将槽墩的所有节点归为caodun一组
NSEL,S,LOC,Z						!选择节点
NSEL,R,LOC,X						!选择节点
NSEL,R,LOC,Y,0,W					!选择节点
CM,CAODUN1,NODE				!将已选节点归为caodun1一组
NSEL,S,LOC,Z						!选择节点
NSEL,R,LOC,X,LK					!选择节点
NSEL,R,LOC,Y,0,W					!选择节点
CM,CAODUN2,NODE 				!将已选节点归为caodun2一组
!划分单元
!指定相关线的单元分数
LSEL,S,LINE,,26,42					!选择线
LSEL,A,LINE,,6,20					!选择线
LESIZE,ALL,,,3						!指定线的网格份数

LSEL,S,LINE,,22,25					!选择线
LSEL,A,LINE,,1,4					!选择线
LESIZE,ALL,,,16						!指定线的网格份数

LSEL,S,LINE,,43,50					!选择线
LESIZE,ALL,,,3						!指定线的网格份数
!划分单元
!划分槽底横梁网格
LSEL,S,LINE,,1,4					!选择线
LATT,1,,1,,,,1						!设置线单元属性
LMESH,ALL							!划分线单元
!划分顶梁网格
LSEL,S,LINE,,22,25					!选择线
LATT,1,,1,,,,2						!设置线单元属性
LMESH,ALL							!划分线单元
!划分槽底纵梁网格
LSEL,S,LINE,,6,20					!选择线
LATT,1,,1,,,,3						!设置线单元属性
LMESH,ALL							!划分线单元
!划分顶部拉杆网格
LSEL,S,LINE,,26,42					!选择线
LATT,1,,1,,,,4						!设置线单元属性
LMESH,ALL							!划分线单元
!划分槽底网格
LSEL,S,LINE,,5,21,16				!选择线
LESIZE,ALL,,,9						!指定线单元份数
ASEL,S,AREA,,1						!选择面
AATT,1,2,2							!设置面单元属性
AMESH,ALL							!划分面单元
!划分墙板网格
ASEL,S,AREA,,2,5					!选择面
AATT,1,1,2							!设置面单元属性
AMESH,ALL 						!划分面单元
!模拟盆式支座
NSEL,S,LOC,Z						!选择节点
NSEL,R,LOC,X						!选择节点
CMSEL,U,CAODUN1					!去掉属于caodun1集的节点
CM,CAOTI1,NODE					!将已选节点归为caoti1组
NSEL,S,LOC,Z						!选择节点
NSEL,R,LOC,X,LK					!选择节点
CMSEL,U,CAODUN2					!去掉属于caodun2集的节点
CM,CAOTI2,NODE					!将已选节点归为caoti2组
ALLS								!全选
CMSEL,U,CAODUN,NODE			!去掉属于caodun集的节点
NUMMRG,NODE						!合并重节点
NUMCMP,ALL						!压缩编号
CSYS,0								!转到原始笛卡儿坐标系
*DIM,N_MID,,16						!定义长度为16的数组
*DO,I,1,8
!*****选择与槽墩重合的属于槽体的节点********
ALLS
*IF,I,LE,4,THEN			
	NSEL,S,LOC,Z,-(I-1)*W/3
	NSEL,R,LOC,Y,
	NSEL,R,LOC,X,
	CMSEL,R,CAODUN1
	N_MID(I)=NODE(,,-(I-1)*W/3)		!将所选的节点编号赋给数组N_MID
	ALLS
	NSEL,S,LOC,Z,-(I-1)*W/3
	NSEL,R,LOC,Y,
	NSEL,R,LOC,X,
	CMSEL,R,CAOTI1
	N_MID(I+8)=NODE(,,-(I-1)*W/3)		!将所选的节点编号赋给数组N_MID
*ELSE
	NSEL,S,LOC,Z,-(I-5)*W/3
	NSEL,R,LOC,Y,
	NSEL,R,LOC,X,LK
	CMSEL,R,CAODUN2
	N_MID(I)=NODE(LK,,-(I-5)*W/3)		!将所选的节点编号赋给数组N_MID
	ALLS
	NSEL,S,LOC,Z,-(I-5)*W/3
	NSEL,R,LOC,Y,
	NSEL,R,LOC,X,LK
	CMSEL,R,CAOTI2
	N_MID(I+8)=NODE(LK,,-(I-5)*W/3)	!将所选的节点编号赋给数组N_MID
*ENDIF
!******************************************
TYPE,3
REAL,4
E,N_MID(I),N_MID(I+8)					!模拟x向支座
TYPE,4
REAL,4
E,N_MID(I),N_MID(I+8)					!模拟y向支座
TYPE,5
REAL,5
E,N_MID(I),N_MID(I+8)					!模拟z向支座
*ENDDO 
ALLS									!全选
CMSEL,U,CAODUN1						!去掉属于caodun1集的节点
CMSEL,U,CAODUN2						!去掉属于caodun2集的节点
CMSEL,U,CAOTI1						!去掉属于caoti1集的节点
CMSEL,U,CAOTI2						!去掉属于caoti2集的节点
NUMMRG,NODE							!合并重节点
NUMMRG,KP							!合并重合的关键点
NUMCMP,ALL							!压缩编号
!边界条件
!将槽体两侧节点x方向的自由度约束,以模拟邻槽的影响。
CSYS,11							!转换到11号坐标系下
ALLS								!全选
ESEL,S,TYPE,,2						!选择单元类型号为2的单元
NSLE,S,ALL							!选择属于已选单元的所有节点
NSEL,R,LOC,X						!选择节点
NSEL,R,LOC,Y,0,W					!选择节点
NSEL,R,LOC,Z,0,H					!选择节点
D,ALL,UX							!约束所选节点x方向自由度
ALLS								!全选
ESEL,S,TYPE,,2						!选择单元类型号为2的单元
NSLE,S,ALL							!选择节点
NSEL,R,LOC,X,LK					!选择节点
NSEL,R,LOC,Y,0,W					!选择节点
NSEL,R,LOC,Z,0,H					!选择节点
D,ALL,UX							!约束所选节点x方向自由度
!约束底部节点的所有自由度
ALLS								!全选
NSEL,S,LOC,Z,-HD					!选择节点
D,ALL,ALL 							!约束所选节点所有自由度
*END								!结束宏文件
PIER								!运行宏生成模型
FINI								!退出前处理器
!加载与求解
!预应力静力分析
FINI
/SOLU								!进入求解器
ANTYPE,STATIC					!指定为静力学求解类型
ACEL,,9.8							!施加重力加速度
AUTOTS,ON						!打开自动时间步长
PSTRES,ON							!打开预应力开关
NSUB,5								!设定子步数为5
ALLS								!选择所有元素
SOLVE								!求解
!模态分析
FINI
/SOLU
ANTYPE,2							! 指定为模态求解类型
MODOPT,LANB,10					!提取前10阶模态
MXPAND,10,,,0						!指定扩展模态为10阶
PSTRES,ON							!打开预应力开关
MODOPT,LANB,10,0,100,,OFF
ALLS
SOLVE
!结果后处理
!静力求解结果
FINI
/POST1
PLDISP,1							!查看变形图
PLNSOL,S,EQV						!查看等效应力云图
 	 
!模态分析结果
FINI
/POST1
SET,LIST							!查看各阶频率,如表5-3所示
*DO,I,1,10
SET,,, ,,, ,I 						!查看各阶振型						
PLDISP,0
*ENDDO

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -