📄 ex2.4.txt
字号:
!2.4 悬臂梁的双向弯曲
! 本程序来源于邢静忠等编著的《ANSYS分析实例与工程应用》,机械工业出版社(2004年)
Finish
/CLEAR, START
/FileName,EX2.4
/PREP7
/TITLE, EX2.4(1), STRAIGHT CANTILEVER BEAM BY SOLID5 ELEMENT.
! (1) 利用SOLID5单元计算悬臂梁的组合变形
C*** USING SOLID5 HEXAHEDRONS
ANTYPE,STATIC
ET,1,SOLID5,2
MP,EX,1,69E3
MP,NUXY,1,0.3
! (2) 定义悬臂梁上的8个的关键点
K,1
K,2,152.4
! 用关键点生成命令KGEN, ITIME, NP1, NP2, NINC, DX, DY, DZ, KINC 生成其它关键点
KGEN,2,1,2,1,,5.08
KGEN,2,1,4,1,,,2.54
! 上面两行命令完成了节点3到4的定义和节点5到8的位置定义
! (3) 定义一条边线,制定这条线划分单元的个数和一般单元的尺寸
L,1,2
smrt,off
LESIZE,ALL,,,10
ESIZE,25.4
V,1,2,4,3,5,6,8,7
VMESH,1
! (4) 选择左侧截面处的所有节点,并固定这些节点。在右侧的所有节点上施加集中力
NSEL,S,LOC,X,0
D,ALL,ALL
NSEL,ALL
FK,2,FX,4.4483/4
*REPEAT,4,2
NOORDER
FINISH
! (5) 求解在自由端拉力作用下悬臂梁的变形,主要是拉压变形
/SOLU
SOLVE
! (6) 改变荷载,计算在Y方向的集中力作用下的情形
FKDELE,ALL,FX
FK,2,FY,4.4483/4
*REPEAT,4,2
SOLVE
! (7) 改变荷载,计算在Z方向的集中力作用下的情形
FKDELE,ALL,FY
FK,2,FZ,4.4483/4
*REPEAT,4,2
SOLVE
FINISH
! (8) 进入一般后处理模块
/POST1
CSYS,0
! (9) 定义宏程序,完成自由端位移计算结果的处理
*CREATE,MAC
SET,ARG1,1
LCDEF,ARG1,ARG1
NSEL,S,LOC,X,152.4
PRNSOL,U,COMP
LCFACT,ARG1,ARG2
LCASE,ARG1
PRNSOL,U,COMP
*END
! (10) 使用上面定义的宏程序处理所有的3个工况
/COM ***
*USE,MAC,1,(1/7.6E-4)
SET,1,1
LCSEL,S,0,0
N1=NODE(152.4 , 0, 0)
*GET,UX1,NODE,N1,U,X
! (11) 处理第2个荷载步的计算结果
*USE,MAC,2,(1/2.4712)
SET,2,1
LCSEL,S,0,0
*GET,UY1,NODE,N1,U,Y
! (12) 处理第3个荷载步的计算结果
*USE,MAC,3,(1/10.9646)
SET,3,1
LCSEL,S,0,0
*GET,UZ1,NODE,N1,U,Z
! (13) 定义字符串变量和相应的理论计算结果
*DIM,LABEL,CHAR,3,2
*DIM,VALUE,,3,3
LABEL(1,1) = 'DEFL X ','DEFL Y ','DEFL Z '
LABEL(1,2) = 'mm','mm','mm'
*VFILL,VALUE(1,1),DATA,7.6E-4,2.471,10.965
*VFILL,VALUE(1,2),DATA,UX1,UY1,UZ1
*VFILL,VALUE(1,3),DATA,ABS(UX1/(7.6E-4)),ABS(UY1/2.471),ABS(UZ1/10.965)
SAVE, TABLE_1
FINISH
!
! (14) 改变单元类型,重新分析矩形截面悬臂梁在端部集中力作用下的变形
/CLEAR, NOSTART
/PREP7
/TITLE, EX2.4(2), STRAIGHT CANTILEVER BEAM by SOLID92 ELEMENT.
smrt,off
MOPT,VMESH,MAIN
MOPT,AMESH,ALTE
! (15) 使用10节点四面体单元SOLID92
ANTYPE,STATIC
ET,1,SOLID92
MP,EX,1,69E3
MP,PRXY,1,0.3
K,1
K,2,,5.08
KGEN,2,1,2,1,,,2.54
KGEN,2,1,4,1,152.4/9
ESIZE,25.4
V,1,2,4,3,5,6,8,7
VMESH,1
! (16) 利用第1块体的单元模式,生成其余的8部分单元,定义固定端部的约束
VGEN,9,1,1,1,152.4/9,,,4
NSEL,S,LOC,X,0
D,ALL,ALL
SAVE
! (17) 获取相应节点的编号,并在这些节点上施加荷载
/COM *** GET NODE NUMBERS FOR LOAD APPLICATION ***
NSEL,S,LOC,X,152.4
NSEL,R,LOC,Y,2.54
NSEL,R,LOC,Z,1.27
*GET,MIDD,NDMX
NSEL,S,LOC,X,152.4
NSEL,R,LOC,Y,5.08
NSEL,R,LOC,Z,1.27
*GET,TOPP,NDMX
NSEL,S,LOC,X,152.4
NSEL,R,LOC,Y,0.0
NSEL,R,LOC,Z, 1.27
*GET,BOTT,NDMX
NSEL,S,LOC,X, 152.4
NSEL,R,LOC,Y, 2.54
NSEL,R,LOC,Z, 2.54
*GET,LFT,NDMX
NSEL,S,LOC,X,152.4
NSEL,R,LOC,Y, 2.54
NSEL,R,LOC,Z,.00
*GET,RGHT,NDMX
NSEL,ALL
! (18) 给上面选择出的这些节点施加沿着X方向的轴向荷载
/COM *** APPLY LOADS TO PARAMETRIC NODE NUMBERS ***
F,RGHT,FX, 4.4483/6
F,LFT,FX, 4.4483/6
F,TOPP,FX, 4.4483/6
F,BOTT,FX, 4.4483/6
F,MIDD,FX, 4.4483/3
FINISH
! (19) 对这种荷载情况进行计算
/SOLU
SOLVE
! (20) 改变荷载,给上面选择出的这些节点施加沿着Y方向的轴向荷载,重新计算
FDELE,ALL
F,RGHT,FY, 4.4483/6
F,LFT,FY, 4.4483/6
F,TOPP,FY, 4.4483/6
F,BOTT,FY, 4.4483/6
F,MIDD,FY, 4.4483/3
SOLVE
! (21) 改变荷载,给上面选择出的这些节点施加沿着Z方向的轴向荷载,重新计算
FDELE,ALL
F,RGHT,FZ, 4.4483/6
F,LFT,FZ, 4.4483/6
F,TOPP,FZ, 4.4483/6
F,BOTT,FZ, 4.4483/6
F,MIDD,FZ, 4.4483/3
SOLVE
FINISH
! (22) 在后处理模块中,显示位移计算结果和理论结果的比值
/POST1
/COM *** USE MACRO TO PROCESS ALL 3 LOADCASES ***
! (23) 利用前面定义的宏,处理前面计算的3中荷载工况
*USE,MAC,1,(1/7.6E-4)
SET,1,1
LCSEL,S,0,0
N1=NODE(152.4,0,0)
*GET,UX2,NODE,N1,U,X
!
*USE,MAC,2,(1/2.4712)
SET,2,1
LCSEL,S,0,0
*GET,UY2,NODE,N1,U,Y
!
*USE,MAC,3,(1/.432)
SET,3,1
LCSEL,S,0,0
*GET,UZ2,NODE,N1,U,Z
!
! (24) 定义字符变量,比较理论结果和有限元结果的比值
*DIM,LABEL,CHAR,3,2
*DIM,VALUE,,3,3
LABEL(1,1) = 'DEFL X ','DEFL Y ','DEFL Z '
LABEL(1,2) = 'in','in','in'
*VFILL,VALUE(1,1),DATA,7.6E-4,2.4712,10.9646
*VFILL,VALUE(1,2),DATA,UX2,UY2,UZ2
*VFILL,VALUE(1,3),DATA,ABS(UX2/(7.6E-4)),ABS(UY2/2.4712),ABS(UZ2/10.9646)
SAVE, TABLE_2
FINISH
!
! (25) 改变为10节点四面体耦合场单元SOLID98,重新计算悬臂梁在端部集中力作用下的双向弯曲
/CLEAR, NOSTART
/PREP7
/TITLE, EX2.4(3), STRAIGHT CANTILEVER BEAM by SOLID98 ELEMENT.
smrt,off
MOPT,VMESH,MAIN
MOPT,AMESH,ALTE
/COM *** REPEAT USING SOLID98 TETRAHEDRONS ***
RESUME
ET,1,SOLID98,2
! (26) 选择边界上的某些节点,施加约束和荷载
/COM *** GET NODE NUMBERS FOR LOAD APPLICATION ***
NSEL,S,LOC,X,152.4
NSEL,R,LOC,Y,2.54
NSEL,R,LOC,Z,1.27
*GET,MIDD,NDMX
!
NSEL,S,LOC,X,152.4
NSEL,R,LOC,Y,5.08
NSEL,R,LOC,Z,1.27
*GET,TOPP,NDMX
!
NSEL,S,LOC,X,152.4
NSEL,R,LOC,Y,0.0
NSEL,R,LOC,Z, 1.27
*GET,BOTT,NDMX
!
NSEL,S,LOC,X, 152.4
NSEL,R,LOC,Y, 2.54
NSEL,R,LOC,Z, 2.54
*GET,LFT,NDMX
!
NSEL,S,LOC,X,152.4
NSEL,R,LOC,Y, 2.54
NSEL,R,LOC,Z,.00
*GET,RGHT,NDMX
NSEL,ALL
! (27) 给上面选择出的这些节点施加沿着X方向的轴向荷载
/COM *** APPLY LOADS TO PARAMETRIC NODE NUMBERS ***
F,RGHT,FX, 4.4483/6
F,LFT,FX, 4.4483/6
F,TOPP,FX, 4.4483/6
F,BOTT,FX, 4.4483/6
F,MIDD,FX, 4.4483/3
FINISH
! (28) 改变荷载,给上面选择出的这些节点施加沿着Y方向的轴向荷载,重新计算
/SOLU
SOLVE
FDELE,ALL
F,RGHT,FY, 4.4483/6
F,LFT,FY, 4.4483/6
F,TOPP,FY, 4.4483/6
F,BOTT,FY, 4.4483/6
F,MIDD,FY, 4.4483/3
! (29) 改变荷载,给上面选择出的这些节点施加沿着Z方向的轴向荷载,重新计算
SOLVE
FDELE,ALL
F,RGHT,FZ, 4.4483/6
F,LFT,FZ, 4.4483/6
F,TOPP,FZ, 4.4483/6
F,BOTT,FZ, 4.4483/6
F,MIDD,FZ, 4.4483/3
SOLVE
FINISH
! (30) 在后处理模块中,显示位移计算结果和理论结果的比值
/POST1
/COM *** USE MACRO TO PROCESS ALL 3 LOADCASES ***
! (31) 利用前面定义的宏,处理前面计算的3中荷载工况
*USE,MAC,1,(1/7.6E-4)
SET,1,1
LCSEL,S,0,0
N1=NODE(152.4,0,0)
*GET,UX3,NODE,N1,U,X
!
*USE,MAC,2,(1/2.4712)
SET,2,1
LCSEL,S,0,0
*GET,UY3,NODE,N1,U,Y
!
*USE,MAC,3,(1/.432)
SET,3,1
LCSEL,S,0,0
*GET,UZ3,NODE,N1,U,Z
! (32) 定义字符变量,比较理论结果和有限元结果的比值
*DIM,LABEL,CHAR,3,2
*DIM,VALUE,,3,3
LABEL(1,1) = 'DEFL X ','DEFL Y ','DEFL Z '
LABEL(1,2) = 'mm','mm','mm'
*VFILL,VALUE(1,1),DATA,7.6E-4,2.471,10.965
*VFILL,VALUE(1,2),DATA,UX3,UY3,UZ3
*VFILL,VALUE(1,3),DATA,ABS(UX3/(7.6E-4)),ABS(UY3/2.471),ABS(UZ3/10.965)
SAVE, TABLE_3
FINISH
!
! (33) 改变为20节点四面体3D单元SOLID147,重新计算悬臂梁在端部集中力作用下的双向弯曲
/CLEAR,NOSTART
/PREP7
/TITLE, EX2.4(4), STRAIGHT CANTILEVER BEAM by SOLID147 ELEMENT.
smrt,off
MOPT,VMESH,ALTE
MOPT,AMESH,ALTE
ANTYPE,STATIC
ET,1,SOLID147
MP,EX,1,69E3
MP,NUXY,1,0.3
! (34) 定义梁上的8个关键点
K,1
K,2,152.4
KGEN,2,1,2,1,,5.08
KGEN,2,1,4,1,,,2.54
! (35) 定义一条边线,制定这条线划分单元的个数和一般单元的尺寸
L,1,2
LESIZE,ALL,,,10
ESIZE, 25.4
V,1,2,4,3,5,6,8,7
VMESH,1
! (36) 选择左侧截面处的所有节点,并固定这些节点。在右侧的所有节点上施加集中力
NSEL,S,LOC,X,0
D,ALL,ALL
NSEL,ALL
FK,2,FX,4.4483/4
*REPEAT,4,2
NOORDER
FINISH
! (37) 求解在自由端拉力作用下悬臂梁的变形,主要是拉压变形
/SOLU
SOLVE
FKDELE,ALL,FX
FK,2,FY,1.1121
*REPEAT,4,2
SOLVE
FKDELE,ALL,FY
FK,2,FZ, 1.1121
*REPEAT,4,2
SOLVE
FINISH
! (38) 在后处理模块中,列表显示有限元计算结果和理论解的差别
/POST1
CSYS,0
! (39) 定义宏程序,完成自由端位移计算结果的处理
*CREATE,MAC
SET,ARG1,1
LCDEF,ARG1,ARG1
NSEL,S,LOC,X,152.4
PRNSOL,U,COMP
LCFACT,ARG1,ARG2
LCASE,ARG1
PRNSOL,U,COMP
*END
! (40) 使用上面定义的宏程序处理所有的3个工况
/COM *** USE MACRO TO PROCESS ALL 3 LOADCASES ***
*USE,MAC,1,(1/7.6E-4)
SET,1,1
LCSEL,S,0,0
N1=NODE(152.4 , 0, 0)
*GET,UX1,NODE,N1,U,X
! (41) 提取第二步结果
*USE,MAC,2,(1/2.4712)
SET,2,1
LCSEL,S,0,0
*GET,UY1,NODE,N1,U,Y
! (42) 提取第三步结果
*USE,MAC,3,(1/10.9646)
SET,3,1
LCSEL,S,0,0
*GET,UZ1,NODE,N1,U,Z
! (43) 定义字符串变量和相应的理论计算结果
*DIM,LABEL,CHAR,3,2
*DIM,VALUE,,3,3
LABEL(1,1) = 'DEFL X ','DEFL Y ','DEFL Z '
LABEL(1,2) = 'mm','mm','mm'
*VFILL,VALUE(1,1),DATA,7.6E-4,2.471,10.965
*VFILL,VALUE(1,2),DATA,UX1,UY1,UZ1
*VFILL,VALUE(1,3),DATA,ABS(UX1/(7.6E-4)),ABS(UY1/2.471),ABS(UZ1/10.965)
SAVE, TABLE_4
! (44) 从第1个表中恢复数据,绘制单元应力云图
RESUME,TABLE_1
/COM *** CLIPPED AND CAPPED DISPLAY OF STRESS CONTOURS ***
NSEL,ALL
/VIEW,1,2,1,1
EPLOT
/TYPE,1,CAP
/DIST,1,5.08
/FOCUS,1,.3,.15,.09
/Auto
PLNSOL,S,X
! (45) 形成计算结果文本文件
/COM
/OUT, EX2_4, out
/COM,------------------- EX2.4 RESULTS COMPARISON ------------
/COM,
/COM, TARGET | ANSYS | RATIO
/COM, SOLID5
/COM,
*VWRITE,LABEL(1,1),LABEL(1,2),VALUE(1,1),VALUE(1,2),VALUE(1,3)
(1X,A8,A8,' ',F11.6,' ',F11.6,' ',1F6.3)
/NOPR
RESUME,TABLE_2
/GOPR
/COM,
/COM, SOLID92
/COM,
*VWRITE,LABEL(1,1),LABEL(1,2),VALUE(1,1),VALUE(1,2),VALUE(1,3)
(1X,A8,A8,' ',F11.6,' ',F11.6,' ',1F6.3)
/NOPR
RESUME,TABLE_3
/GOPR
/COM,
/COM, SOLID98
/COM,
*VWRITE,LABEL(1,1),LABEL(1,2),VALUE(1,1),VALUE(1,2),VALUE(1,3)
(1X,A8,A8,' ',F11.6,' ',F11.6,' ',1F6.3)
/NOPR
RESUME,TABLE_4
/GOPR
/COM
/COM, SOLID147
/COM,
*VWRITE,LABEL(1,1),LABEL(1,2),VALUE(1,1),VALUE(1,2),VALUE(1,3)
(1X,A8,A8,' ',F11.6,' ',F11.6,' ',1F6.3)
/COM,---------------------------------------------------- -
/OUT
FINISH
! (46) 删除宏文件,临时表文件TABLE_*
/DELETE,MAC
/DELETE,TABLE_1
/DELETE,TABLE_2
/DELETE,TABLE_3
/DELETE,TABLE_4
*LIST, EX2_4, out
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -