学界雏鹰 发表于 2009-10-11 22:00

程序中不明白的地方

各位先知,学生最近看了一个小程序,如下所示:
/PREP7
/TITLE, MODE OF THE ROTOR
!(1)选单元
ET,1,PIPE16         !用于模拟整个轴系
ET,2,MASS21         !集中质量单元用于将复杂叶轮等进行简化
ET,3,MATRIX27,,,4   !用于模拟弹性支撑(KEYOPT(3)=4——表示此单元定义的是12×12 的刚度阵)
   
!(2)定义材料常数
MP,EX,1,2.06E11   !铁的弹性模量       均为标准单位
MP,DENS,1,7850      !铁的密度
MP,PRXY,1,0.3       !铁的泊松比
!如各轴段材料不一样,可以分别定义
!(3)输入几何参数
AA=25 !轴段数
*dim,Matrix2,ARRAY,3,AA+1   !定义数组,用于存放几何数据(AA+1行3列)
!!!!!!!!!!!!!!!      输入轴段参数单位mm
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!!!!!!!!!!      L(轴段长) D(轴外径)    D0 (轴内径)      
matrix2(1,1)=      32.025,         17.684,            0
matrix2(1,2)=      32.025,         17.684,            0
matrix2(1,3)=      32.025,         17.684,            0
matrix2(1,4)=      32.025,         17.684,            0
matrix2(1,5)=      32.025,         17.684,            0
matrix2(1,6)=      32.025,         17.684,            0
matrix2(1,7)=      32.025,         17.684,            0
matrix2(1,8)=      30.630,         210.00,            0
matrix2(1,9)=      40.187,         17.684,            0
matrix2(1,10)=   40.187,         17.684,            0
matrix2(1,11)=   40.187,         17.684,            0
matrix2(1,12)=   40.187,         17.684,            0
matrix2(1,13)=   40.187,         17.684,            0
matrix2(1,14)=   40.187,         17.684,            0
matrix2(1,15)=   40.187,         17.684,            0
matrix2(1,16)=   40.187,         17.684,            0
matrix2(1,17)=   40.187,         17.684,            0
matrix2(1,18)=   22.000,         200.00,            0
matrix2(1,19)=   32.642,         17.684,            0
matrix2(1, 20)=      32.642,         17.684,            0
matrix2(1,21)=   32.642,         17.684,            0
matrix2(1, 22)=      32.642,         17.684,            0
matrix2(1,23)=   32.642,         17.684,            0
matrix2(1, 24)=      32.642,         17.684,            0
matrix2(1, 25)=      32.642,         17.684,            0
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
*dim,ll2,array,AA   !用于存放轴段长度
*dim,dd2,array,AA   !用于存放轴段外径
*dim,dd20,array,AA!用于存放轴段内径
*dim,mm2,array,AA+1 !用于存放等价在各节点的质量
*dim,JJ2,array,AA+1 !用于存放等价在各节点的转动惯量

*DO,I,1,AA                      !!!!!!!!!存入轴段参数,并划成标准单位
ll2(I,1)=Matrix2(1,I)/1000
dd2(I,1)=Matrix2(2,I)/1000
dd20(I,1)=Matrix2(3,I)/1000
*ENDDO
*DO,I,1,AA+1                      !!!!!!!!!附加质量,如有在相应的位置添加
mm2(I,1)=0
JJ2(I,1)=0
*ENDDO
!(4)绘制节点
*dim,xx2,array,AA+1 !用于存放节点坐标
xx2(1,1)=0
*DO,I,2,AA+1
xx2(I,1)=xx2(I-1,1)+ll2(I-1,1)    !沿轴向将每一个节点的坐标求出
*ENDDO
*DO,I,1,AA+1         !!!!!!!!!绘制节点(轴段)
N,I,xx2(I,1)
*ENDDO
N,101,0,-0.1,0      !绘制支撑节点
N,100+AA+1,xx2(AA+1,1),-0.1,0
!(5)绘制单元
MAT,1
TYPE,1                  !!!!!!! 选择管单元
*DO,I,1,AA
R,I,dd2(I,1),dd2(I,1)/2-dd20(I,1)/2    !定义每一个轴段的实常数
REAL,I      !对应启用该实常数
E,I,I+1       !绘制单元
*ENDDO
!(6)引入约束条件
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!工况1,左端简支,右端轴向可以滑动
D,1,UX!限制x方向移动         
D,1,UY!限制y方向移动
D,1,UZ!限制z方向移动             ! 以上语句表示刚性支撑,如果弹性支撑即用到步骤7则应把这些语句隐去
!节点1可以转动
D,AA+1,UX !限制x方向移动
D,AA+1,UY !限制y方向移动
D,AA+1,UZ!可以轴向移动
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
D,101,ALL
D,100+AA+1,ALL
!(7)定义支撑刚度,并绘制单元
TYPE,3          !!!!!!!! 选择矩阵单元,用于模拟支撑刚度
ZSTIFF=1.3e+006!支撑刚度值(各向同性)
R,200+1

RMODIF,200+1,13,ZSTIFF         
RMODIF,200+1,24,ZSTIFF
RMODIF,200+1,19,-ZSTIFF      !定义支撑刚度 ,对称的   
RMODIF,200+1,30,-ZSTIFF   
RMODIF,200+1,64,ZSTIFF         
RMODIF,200+1,69,ZSTIFF

REAL,200+1
E,1,101                     !绘制单元
E,AA+1,100+AA+1
FINISH
!(8)计算
/SOLU   
ANTYPE,MODAL    !计算类行为算模态
MODOPT,REDUC,20,.1!采用模态缩减法
MXPAND,20
*DO,I,1,AA+1   !定义主自由度
M,I,UY    !x方向为轴向,显示y方向的模态
*ENDDO
SOLVE   ! 求解
FINISH
其中的黑体部分看不明白,请求给予指点!谢谢:funk:

学界雏鹰 发表于 2009-10-12 16:56

等待

请各位老师不吝赐教!感激之至!:@D
页: [1]
查看完整版本: 程序中不明白的地方