| 
结构就是一个悬臂梁,一端固支,在梁的另一头施加环境激励,激励时间历程是由Matlab里randn生成的一个长度为1000的任意数组,然后乘上幅值,荷载子步为10,取梁上某点(靠近悬臂端)位移响应,按理说得到的响应时间历程曲线也应该是和激励信号相似,但是曲线确几乎偏向于负值,起初以为是重力的影响,但是我又没有开启重力作用,固支端的约束也没有问题,提取了加速度响应,加速度响应又是合理的。问题在哪呢?下面是我的命令流
x
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。您需要 登录 才可以下载或查看,没有账号?我要加入 
  /config,nres,10000
 /PREP7
 ET,1,SHELL63
 l=1.0                             !梁长
 h=0.01                            !高
 b=0.03                            !宽
 EX0=73E9
 PRXY0=0.33
 DENS0=2270
 N0=80                             !长度方向单元数
 Nh=3                              !高度方向单元数
 f=5                               !力幅值
 !生成节点
 *DO, j, 1, Nh+1
 *DO, i, 1, N0+1
 N,i+(j-1)*(N0+1),(i-1)*l/N0,(j-1)*h/(Nh),0,,,,
 *ENDDO
 *ENDDO
 !生成单元
 *DO,j,1,Nh
 *DO,i,1,N0
 E,i+(j-1)*(N0+1),i+1+(j-1)*(N0+1),i+1+j*(N0+1),i+j*(N0+1)
 *ENDDO
 *ENDDO
 !厚度设定
 R,1,b, , , , , ,               !厚度
 RMORE, , , ,
 RMORE
 RMORE, ,
 !
 !属性
 MPTEMP,,,,,,,,
 MPTEMP,1,0
 MPDATA,EX,1,,EX0
 MPDATA,PRXY,1,,PRXY0
 MPTEMP,,,,,,,,
 MPTEMP,1,0
 MPDATA,DENS,1,,DENS0
 !施加约束
 /SOL
 ANTYPE,4
 TRNOPT,FULL
 !
 *do,i,1,Nh+1
 D,1+(i-1)*(N0+1), , , , , ,ALL, , , , ,
 *enddo
 D,all, ,0, , , ,UZ, , , , ,
 !施加力
 *dim,randforce,array,1000,1
 *vread,randforce(1,1),randomsig2,txt, ,ijk,1000,1
 (2f8.5)
 !荷载步
 timint,on,all                               !打开瞬态效应
 alphad,0.02                                 !a阻尼
 betad,0.004                                !bete阻尼
 OUTRES,all,all
 *do,i,1,1000,1
 time,0.1*i                                !时间轴
 NSUBST, 10                                !荷载子步
 kbc,0
 f,(N0+1)*(Nh+1)-1,fy,-f*randforce(i,1)    !作用力
 solve
 *enddo
 finish
 !提取结果
 /POST26
 *DIM,dis,array,10000,17
 *DIM,velocity,array,10000,17
 *DIM,accel,array,10000,17
 NUMVAR,200
 !在梁上表面均匀提取17个节点位移、速度、加速度响应
 *do,i,1,17,1
 j=i+1
 N=(N0+1)*Nh+(i-1)*5+1
 NSOL,j,N,U,Y                         !j为变量名,须大于2
 *enddo
 XVAR,1                                 !定义时间变量为坐标轴
 *do,j,2,18,1
 DERIV,j+20,j,1,,vy                   ! 求导得速速
 DERIV,j+40,j+20,1,,ay                ! 再求导得加速度
 VGET,dis(1,j-1),j
 VGET,velocity(1,j-1),j+20
 VGET,accel(1,j-1),j+40
 *enddo
 !
 *CFOPEN,displaceran0,TXT
 *Vwrite,dis(1,1),dis(1,2),dis(1,3),dis(1,4),dis(1,5),dis(1,6),dis(1,7),dis(1,8),dis(1,9),dis(1,10),dis(1,11),dis(1,12),dis(1,13),dis(1,14),dis(1,15),dis(1,16),dis(1,17)
 (17F13.8,' ')
 *CFCLOS
 finish
 *CFOPEN,veloran0,TXT
 *Vwrite,velocity(1,1),velocity(1,2),velocity(1,3),velocity(1,4),velocity(1,5),velocity(1,6),velocity(1,7),velocity(1,8),velocity(1,9),velocity(1,10),velocity(1,11),velocity(1,12),velocity(1,13),velocity(1,14),velocity(1,15),velocity(1,16),velocity(1,17)
 (17F13.8,' ')
 *CFCLOS
 finish
 *CFOPEN,acceran0,TXT
 *Vwrite,accel(1,1),accel(1,2),accel(1,3),accel(1,4),accel(1,5),accel(1,6),accel(1,7),accel(1,8),accel(1,9),accel(1,10),accel(1,11),accel(1,12),accel(1,13),accel(1,14),accel(1,15),accel(1,16),accel(1,17)
 (17F13.5,' ')
 *CFCLOS
 |