curtain 发表于 2003-1-26 07:04:13

【转帖】一个火车过桥动态加载的例子(但愿以前没人贴过)

2001/8/19
!用对话框提示用户输入基本数据
!:reread
!multipro,'start',3
!   *cset,1,3,y_bot,'enter the value of y_bot',0
!   *cset,4,6,y_top,'enter the value of y_bot',0
!   *cset,7,9,ttype,'enter the value of train type',0    !输入火车活载的类型

!multipro,'end'
y_bot=13.9
y_top=14.1
ttype = 0
*if,ttype,eq,0, then
   q1 = 147000       !中-活载
   q2 = 92000
   q3 = 80000
   L1 = 7.5
   L2 = 30
*elseif,ttype,eq,1,then
   q1 = 0
   q2 = 0
   q3 = 0
   L1 = 0
   L2 = 0
*else
   *msg,ui
   error valueof ttype(1 or 2),please enter again
   *go,: reread
*endif
!识别桥面过列车的单元,并将单元按节点坐标从小到大排序
lsel,s,loc,y,y_bot,y_top
esll,s             ! 选中桥面单元
elmax = elmiqr(0,14)! 最大单元号
ndmax = ndinqr(0,14)! 最大节点号
*dim,eldk,,elmax       !存放桥面过车单元
*dim,ndx,,elmax      !存放过车单元的节点x坐标(两节点坐标中的较小值)
*dim,nodes,,ndmax      !存放桥面过车的节点
j=0
*do,i,1,elmax
  *if,esel(i),gt,0, then
    j = j+1
    eldk(j) = i
  *endif
*enddo         !记录桥面单元的标号,保存于数组eldk中
eldknum = j      !总桥面单元数
!对eldk数组排序,按节点坐标从小到大排列
*do,i,1,eldknum
   ii = eldk(i)
   ndi = nelem(ii,1)
   ndj = nelem(ii,2)
   i1= nx(ndi)
   i2= nx(ndj)
   ndx(i) = i1
   *if,i2,lt,i1,then
     ndx(i) = i2
   *endif
*enddo
*do,i,1,eldknum-1
  *do,j,i+1,eldknum
    *if,ndx(j),lt,ndx(i),then
      temp   = ndx(i)
      ndx(i) = ndx(j)
      ndx(j) = temp
      temp   = eldk(i)
      eldk(i)= eldk(j)
      eldk(j)= temp
    *endif
  *enddo
*enddo
nsle,s               ! 选中桥面单元的节点
j=0
*do,i,1,ndmax
  *if,nsel(i),gt,0,then
     j=j+1
     nodes(j)=i
  *endif
*enddo
ndnum = j            ! 总桥面节点数
xmin = nx(nelem(eldk(1),1))
temp = nx(nelem(eldk(1),2))
*if,temp,lt,xmin,then
  xmin = temp
*endif
xmax = nx(nelem(eldk(eldknum),1))
temp = nx(nelem(eldk(eldknum),2))
*if,temp,gt,xmax,then
  xmax = temp
*endif
qth = xmax -xmin   ! 桥面过车长度
lth1 = 2*qth + L1+L2 +182.5
lth= (nint(lth1/5)+8)*5   !总长度
dim = lth/5 +1
*dim,disy,table,dim,ndnum   !桥面节点的y方向的位移值
*dim,disy1,table,dim,ndnum    !桥面节点的y方向的位移值(从大到小)
*dim,disx,table,dim,ndnum   !桥面节点的x方向的位移值
*dim,disa,table,dim,ndnum   !桥面节点的转角
*dim,disymax,,ndnum
*dim,diy,table,dim
*dim,ffx,table,elmax,dim      !单元轴力
*dim,fmz,table,elmax,dim      !单元弯矩
*dim,detaf,,elmax             !每个单元轴力变化值
*dim,detaf1,,elmax            !每个单元轴力变化值(从小到大)
*dim,elnum,,elmax             !轴力变化最大的单元号
*dim,detaf2,,20               !前20个轴力变化最大值
*dim,elnum2,,20               !前20个轴力变化最大值的单元
*dim,fmax,,elmax            !每个单元的轴力最大值
*dim,fmin,,elmax            !每个单元的轴力最小值
*dim,fabs,,elmax            !每个单元轴力最大值(绝对值)
*dim,elnum3,,elmax            !轴力最大的单元号
*dim,elnum4,,20               !前20个轴力最大的单元号
*dim,nmax,,20
*dim,dfmaxel,table,dim,20   !前20各轴力变化最大单元的轴力
*dim,dmmaxel,table,dim,20   !前20各轴力变化最大单元的弯矩
*dim,fmaxel,table,dim,20      !前20各轴力最大单元的轴力
*dim,mmaxel,table,dim,20      !前20各轴力最大单元的弯矩
eplot            ! plot element
allsel
time = 0
*do,kk,0,lth,5,
time = time+1
!/uis,msgpop,3      ! 不显示数组被重新定义的警告
!/uis,msgpop,2
/solu   !进入求解器
antype,static
esel,all
sfedele,all,1,pres,   !先删除上一次加上的所有单元荷载
! 计算列车各部分在桥上的单元号
tpos1 = kk       ! 火车头所在的位置
*if,tpos1,lt,(qth+L1+L2), then!火车进桥情况
   xlth1 = 0
   *do,i,1,eldknum
     ii= eldk(i)
     ndi = nelem(ii,1)
     ndj = nelem(ii,2)
     elth1 = abs(nx(ndi)-nx(ndj))
     xlth1 = xlth1 + elth1
     *if,xlth1,ge,tpos1,then
        *exit
     *endif
   *enddo
   tele1 =i   ! 火车头所在的单元
   *if,tpos1,gt,L1,then
      tpos2 =tpos1 -L1!煤水车头所在的位置
      xlth2 = 0
      *do,i,1,eldknum
        ii= eldk(i)
        ndi = nelem(ii,1)
        ndj = nelem(ii,2)
        elth2 = abs(nx(ndi)-nx(ndj))
        xlth2 = xlth2 + elth2
        *if,xlth2,ge,tpos2,then
          *exit
        *endif
      *enddo
      tele2 = i       !旅客列车头所在的单元
      *if,tpos1,gt,(L1+L2),then
        tpos3 =tpos1 -(L1+L2)!旅客车头所在的位置
        xlth3 = 0
        *do,i,1,eldknum
          ii= eldk(i)
          ndi = nelem(ii,1)
          ndj = nelem(ii,2)
          elth3 = abs(nx(ndi)-nx(ndj))
          xlth3 = xlth3 + elth3
          *if,xlth3,ge,tpos3,then
             *exit
          *endif
        *enddo
        tele3 = i       !旅客列车头所在的单元
      *endif
   *endif
*endif
*if,tpos1,gt,(qth+L1+L2+182.5),then! 火车过桥情况(182.5为任意取的一个常数)

  *if,tpos1,lt,lth1, then
    tpos4 = tpos1-(qth+L1+L2+182.5)   !旅客列车尾部所在的位置
    xlth4 = 0
    *do,i,1,eldknum
      ii= eldk(i)
      ndi = nelem(ii,1)
      ndj = nelem(ii,2)
      elth4 = abs(nx(ndi)-nx(ndj))
      xlth4 = xlth4 + elth4
      *if,xlth4,ge,tpos4,then
        *exit
      *endif
    *enddo
    tele4 = i       !旅客列车尾部在的单元
  *endif
*endif
! 加荷载于相应的单元
!SFBEAM, ELEM, LKEY, Lab, VALI, VALJ, VAL2I, VAL2J, IOFFST, JOFFST
*if,tpos1,le,L1, then       ! 火车头进桥
  c1 = xlth1 -tpos1
  c2 = elth1 - c1
  *if,tele1,eq,1,then
     qq = q1*c2/elth1
     sfbeam,eldk(tele1),1,pres,qq,qq,,,,,
  *else
     *do,j,1,tele1-1
        sfbeam,eldk(j),1,pres,q1,q1,,,,,
     *enddo
     qq = q1*c2/elth1
     sfbeam,eldk(tele1),1,pres,qq,qq,,,,,
  *endif
*elseif,tpos1,le,(L1+L2),then   ! 煤水车进桥
  c1 = xlth1 - tpos1
  *if,tele1,eq,tele2,then!火车头在同一个单元上
    c2 = xlth2 - tpos2
    c3 = elth2 - c2
    qq = (q1*L1+q2*c3)/elth1
    sfbeam,eldk(tele1),1,pres,qq,qq,,,,,
    *do,j,1,tele1-1
       sfbeam,eldk(j),1,pres,q2,q2,,,,,
    *enddo
  *else
    dtele = tele1 - tele2
    *if,dtele,eq,1, then
       c2 = xlth2 - tpos2
       c3 = elth2 - c2
       qq0 = q1*(elth1-c1)/elth1
       qq = (q1*c2+q2*c3)/elth2
       sfbeam,eldk(tele1),1,pres,qq0,qq0,,,,,
       sfbeam,eldk(tele2),1,pres,qq,qq,,,,,
       *do,j,1,tele2-1
          sfbeam,eldk(j),1,pres,q2,q2,,,,,
       *enddo
    *else
       c2 = xlth2 - tpos2
       c3 = elth2 - c2
       qq0 = q1*(elth1-c1)/elth1
       sfbeam,eldk(tele1),1,pres,qq0,qq0,,,,,
       *do,j,tele2+1,tele1-1
          sfbeam,eldk(j),1,pres,q1,q1,,,,,
       *enddo
       qq = (q1*c2+q2*c3)/elth2
       sfbeam,eldk(tele2),1,pres,qq,qq,,,,,
       *do,j,1,tele2-1
          sfbeam,eldk(j),1,pres,q2,q2,,,,,
       *enddo
     *endif
   *endif
*elseif,tpos1,le,qth,then    ! 旅客列车进桥
  c1 = xlth1 - tpos1
  *if,tele1,eq,tele2, then
    c2 = xlth2 - tpos2
    c3 = elth2 - c2
    qq = (q1*L1+q2*c3)/elth1
    sfbeam,eldk(tele1),1,pres,qq,qq,,,,,
    c4 = xlth3 - tpos3
    c5 = elth3 - c4
    dtele1 = tele2 - tele3
    *if,dtele1,eq,1,then
        qq1 = (q2*c4+q3*c5)/elth3
        sfbeam,eldk(tele3),1,pres,qq1,qq1,,,,,
        *do,j,1,tele3-1
           sfbeam,eldk(j),1,pres,q3,q3,,,,,
        *enddo
     *else
       *do,j,tele3+1,tele2-1
          sfbeam,eldk(j),1,pres,q2,q2,,,,,
       *enddo
       qq1 = (q2*c4+q3*c5)/(elth3)
       sfbeam,eldk(tele3),1,pres,qq1,qq1,,,,,
       *do,j,1,tele3-1
          sfbeam,eldk(j),1,pres,q3,q3,,,,,
       *enddo
     *endif
  *else
    dtele1 = tele1 -tele2
    *if,dtele1,eq,1,then
       c2 = xlth2 - tpos2
       c3 = elth2 -c2
       qq0 = q1*(elth1-c1)/elth1
       sfbeam,eldk(tele1),1,pres,qq0,qq0,,,,,
       c4 = xlth3- tpos3
       c5 = elth3 - c4
       dtele2 = tele2 - tele3
       *if,dtele2,eq,0,then
          qq0 = (q1*c2+q2*L2+q3*c3)/elth2
          sfbeam,eldk(tele2),1,pres,qq0,qq0,,,,,
          *do,j,1,tele2-1
             sfbeam,eldk(j),1,pres,q3,q3,,,,,
          *enddo
       *elseif,dtele2,eq,1,then
          qq0 = (q1*c2+q2*c3)/elth2
          sfbeam,eldk(tele2),1,pres,qq0,qq0,,,,,
          qq1 = (q2*c4+c3*c5)/elth3
          sfbeam,eldk(tele3),1,pres,qq1,qq1,,,,,
          *do,j,1,tele3-1
            sfbeam,eldk(j),1,pres,q3,q3,,,,,
       *else
          qq0 = (q1*c2+q2*c3)/elth2
          sfbeam,eldk(tele2),1,pres,qq0,qq0,,,,,
          *do,j,tele3+1,tele2-1
             sfbeam,eldk(j),1,pres,q2,q2,,,,,
          *enddo
          qq1 = (q2*c4+q3*c5)/(elth3)
          sfbeam,eldk(tele3),1,pres,qq1,qq1,,,,,
          *do,j,1,tele3-1
             sfbeam,eldk(j),1,pres,q3,q3,,,,,
          *enddo
       *endif
    *else
       c2 = xlth2 - tele2
       c3 = elth2 - c2
       qq0 = q1*(elth1-c1)/elth1
       sfbeam,eldk(tele1),1,pres,qq0,qq0,,,,,
       *do,j,tele2+1,tele1-1,
          sfbeam,eldk(j),1,pres,q1,q1,,,,,
       *enddo
       qq = (q1*c2+q2*c3)/(elth2)
       sfbeam,eldk(tele2),1,pres,qq,qq,,,,,
       dtele2 = tele2 - tele3
       *if,dtele2,eq,1,then
          qq1 = (q2*c4+q3*c5)/(elth3)
          sfbeam,eldk(tele3),1,pres,qq1,qq1,,,,,
          *do,j,1,tele3-1
             sfbeam,eldk(j),1,pres,q3,q3,,,,,
          *enddo
       *else
          *do,j,tele3+1,tele2-1
             sfbeam,eldk(j),1,pres,q2,q2,,,,,
          *enddo
          qq1 = (q2*c4+q3*c5)/(elth3)
          sfbeam,eldk(tele3),1,pres,qq1,qq1,,,,,
          *do,j,1,tele3-1
             sfbeam,eldk(j),1,pres,q3,q3,,,,,
          *enddo
       *endif
    *endif
  *endif
*elseif,tpos1,le,(qth+L1),then   !火车头出桥
   c1 = tpos1 - qth   !火车头出桥长度
   dtele1 =eldknum - tele2
   *if,dtele1,eq,0,then
     c2 = xlth2 - tpos2
     c3 = elth2 - c2
     qq = (q1*c2+q2*c3)/(elth2)
     sfbeam,eldk(tele2),1,pres,qq,qq,,,,,
     dtele2 = tele2 - tele3
     c4 = xlth3 -tpos3
     c5 = elth3 - c4
     *do,j,tele3+1,tele2-1
        sfbeam,eldk(j),1,pres,q2,q2,,,,,
     *enddo
     qq1 = (q2*c4+q3*c5)/elth3
     sfbeam,eldk(tele3),1,pres,qq1,qq1,,,,,
     *do,j,1,tele3-1
        sfbeam,eldk(j),1,pres,q3,q3,,,,,
     *enddo
   *elseif,dtele1,eq,1,then
     sfbeam,eldk(eldknum),1,pres,q1,q1,,,,,
     qq = (q1*c2+q2*c3)/(elth2)
     sfbeam,eldk(tele2),1,pres,qq,qq,,,,,
     dtele2 = tele2- tele3
     c4 = xlth3 - tpos3
     c5 = elth3 - c4
     *do,j,tele3+1,tele2-1
        sfbeam,eldk(j),1,pres,q2,q2,,,,,
     *enddo
     qq1 = (q2*c4+q2*c5)/elth3
     sfbeam,eldk(tele3),1,pres,qq1,qq1,,,,,
     *do,j,1,tele3-1
        sfbeam,eldk(j),1,pres,q3,q3,,,,,
     *enddo
   *elseif,dtele1,gt,1,then
     *do,j,tele2+1,eldknum
        sfbeam,eldk(j),1,pres,q1,q1,,,,,
     *enddo
     qq = (q1*c2+q2*c3)/(elth2)
     sfbeam,eldk(tele2),1,pres,qq,qq,,,,,
     c4 = xlth3 - tpos3
     c5 = elth3 - c4
     *do,j,tele3+1,tele2-1
         sfbeam,eldk(j),1,pres,q2,q2,,,,,
     *enddo
     qq1 = (q2*c4+q2*c5)/elth3
     sfbeam,eldk(tele3),1,pres,qq1,qq1,,,,,
     *do,j,1,tele3-1
         sfbeam,eldk(j),1,pres,q3,q3,,,,,
     *enddo
   *endif
*elseif,tpos1,le,(qth+L1+L2),then   !煤水车头出桥
   c4 = xlth3 - tpos3
   c5 = elth3 - c4
   dtele1 = eldknum - tele3
   *if,dtele1,eq,0,then
     qq = (q2*c4+q3*c5)/elth3
     sfbeam,eldk(tele3),1,pres,qq,qq,,,,,
     *do,j,1,tele3-1
         sfbeam,eldk(j),1,pres,q3,q3,,,,,
     *enddo
   *else
     *do,j,tele3+1,eldknum
       sfbeam,eldk(j),1,pres,q2,q2,,,,,
     *enddo
     qq = (q2*c4+q3*c5)/elth3
     sfbeam,eldk(tele3),1,pres,qq,qq,,,,,
     *do,j,1,tele3-1
        sfbeam,eldk(j),1,pres,q3,q3,,,,,
     *enddo
   *endif
*elseif,tpos1,le,(qth+L1+L2+182.5),then    ! 全桥均布列车荷载(182.5为任意取的
常数)
   *do,j,1,eldknum
      sfbeam,eldk(j),1,pres,q3,q3,,,,,
   *enddo
*elseif,tpos1,le,lth1,then   ! 均布列车荷载出桥
   c1 = xlth4 - tpos4
   c2 = elth4 - c1
   *do,j,tele4+1,eldknum
      sfbeam,eldk(j),1,pres,q3,q3,,,,,
   *enddo
   qq = q3*c1/elth4
   sfbeam,eldk(tele4),1,pres,qq,qq,,,,,
*endif
/psf,pres,norm,1
/replot
solve
finish
/post1
diy(time,0) = tpos1
diy(time) = uy(91)    ! 得到中间节点的y坐标
*vplot,diy(1,0),diy(1,1)   !动态显示中间节点位移结果
disx(time,0) = tpos1
disy(time,0) = tpos1
disa(time,0) = tpos1
*do,j,1,ndnum
  disx(0,j) = nodes(j)
  disy(0,j) = nodes(j)
  disa(0,j) = nodes(j)
  disx(time,j) = ux(nodes(j))
  disy(time,j) = uy(nodes(j))
  disa(time,j) = rotz(nodes(j))
*enddo
etable,forcex,smisc,1      ! 定义单元轴力表
etable,momentz,smisc,6   ! 定义单元弯矩表
*vget,ffx(1,time),elem,1,etab,forcex,,,,
*vget,fmz(1,time),elem,1,etab,momentz,,,,
ffx(0,time) = tpos1
fmz(0,time) = tpos1
*if,time,eq,1,then
  *do,j,1,elmax
     ffx(j,0) = j
     fmz(j,0) = j
  *enddo
*endif
*enddo
save,,,,all
! 结果处理
*do,i,1,ndnum
  nd = nodes(i)
  disymax(i) = abs(disy(1,nd))
  *do,j,2,dim
    *if,abs(disy(j,nd)),gt,disymax(i),then
      disymax(i) = abs(disy(j,nd))
    *endif
  *enddo
*enddo
*do,i,1,ndnum-1
   *do,j,i+1,ndnum
     *if,disymax(j),gt,disymax(i),then
        temp = disymax(i)
        disymax(i) = disymax(j)
        disymax(j) = temp
        temp = nodes(i)
        nodes(i) = nodes(j)
        nodes(j) = temp
     *endif
   *enddo
*enddo
*do,i,1,ndnum               ! 前5个位移最大的节点
   numnd = nodes(i)
   disy1(0,i) = numnd
   *do,j,1,dim
      kk = (j-1)*5
      disy1(j,0) = kk
      disy1(j,i) = disy(kk,numnd)
   *enddo
*enddo
*do,i,1,elmax
   fmin(i) = ffx(i,1)
   fmax(i) = ffx(i,1)
   *do,j,2,dim
     *if,ffx(i,j),gt,fmax(i),then
        fmax(i) = ffx(i,j)
     *endif
     *if,ffx(i,j),lt,fmin(i),then
        fmin(i) = ffx(i,j)
     *endif
   *enddo
detaf(i) = fmax(i) - fmin(i)    ! 每个单元的内力变化值
detaf1(i) = detaf(i)
*enddo
*do,i,1,elmax
   elnum(i) = i
*enddo
*do,i,1,elmax-1
   *do,j,i+1,elmax
     *if,detaf1(j),gt,detaf1(i),then
       temp = detaf1(i)
       detaf1(i) = detaf1(j)
       detaf1(j) = temp
       temp = elnum(i)
       elnum(i) = elnum(j)
       elnum(j)=temp
     *endif
   *enddo
*enddo
*do,i,1,20
  detaf2(i) = detaf1(i)   !前20个内力变化最大的单元
  elnum2(i) = elnum(i)
*enddo
*do,i,1,20               ! 前20个内力变化最大的单元
   numel = elnum2(i)
   dfmaxel(0,i) = i
   dmmaxel(0,i) = i
   *do,j,1,dim
      kk = (j-1)*5
      dfmaxel(j,0) = kk
      dfmaxel(j,i) = ffx(numel,kk)!轴力变化最大单元的轴力
      dmmaxel(j,0) = kk
      dmmaxel(j,i) = fmz(numel,kk)   ! 相应的弯矩
   *enddo
*enddo
! 前20个内力最大的单元
*do,i,1,elmax
   fabs(i) =abs(fmax(i))
   *if,fabs(i),lt,abs(fmin(i)),then
       fabs(i) =abs(fmin(i))
   *endif
*enddo
*do,i,1,elmax
   elnum3(i) =i
*enddo
*do,i,1,elmax-1
   *do,j,i+1,elmax
     *if,fabs(j),gt,fabs(i),then
         temp = fabs(i)
         fabs(i) = fabs(j)
         fabs(j) =temp
         temp= elnum3(i)
         elnum3(i) = elnum3(j)
         elnum3(j) = temp
     *endif
    *enddo
*enddo
*do,i,1,20
  elnum4(i) = elnum3(i)
  nmax(i) = fabs(i)
*enddo
*do,i,1,20               ! 前20个内力最大的单元
   numel = elnum4(i)
   fmaxel(0,i) = i
   mmaxel(0,i) = i
   *do,j,1,dim
      kk = (j-1)*5
      fmaxel(j,0) = kk
      fmaxel(j,i) = ffx(numel,kk)!轴力最大单元的轴力
      mmaxel(j,0) = kk
      mmaxel(j,i) = fmz(numel,kk)   ! 相应的弯矩
   *enddo
*enddo
save,,,,all
!/title,the 91 node displament vs train position   ! 显示图形的名称
!*vplot,diy(1,0),diy(1,1)
!/ui,copy,save,bmp,graph
!/title
!/replot
*do,i,1,30
cc = nodes(i)
/title, y displacement of node %cc% VS. train position
*vplot,disy1(1,0),disy1(1,i)
/ui,copy,save,bmp,graph
*enddo
/title
/sys,rename njq*.bmp aaa*.bmp
*do,i,31,ndnum
cc = nodes(i)
/title, y displacement of node %cc% VS. train position
*vplot,disy1(1,0),disy1(1,i)
/ui,copy,save,bmp,graph
*enddo
/title
/sys,rename njq*.bmp aa*.bmp
!*do,i,1,20
!cc = elnum2(i)
!/title,axis of element %cc% VS. train position
! *vplot,dfmaxel(1,0),dfmaxel(1,i)
!/ui,copy,save,bmp,graph
!/title,moment of element %cc% VS. train position
! *vplot,dmmaxel(1,0),dmmaxel(1,i)
!/ui,copy,save,bmp,graph
!*enddo
!/title
*do,i,1,20
cc = elnum4(i)
/title,axis of element %cc% vs train position
*vplot,fmaxel(1,0),fmaxel(1,i)
/ui,copy,save,bmp,graph
/title,moment of element %cc% vs train position
*vplot,mmaxel(1,0),mmaxel(1,i)
/ui,copy,save,bmp,graph
*enddo
/title
*cfopen,result,txt,,,
*vwrite
('                                                               ')
*vwrite
('**********************南京桥计算结果*****************************')
*vwrite
('                                                               ')
*vwrite
('               ****节点最大位移****                            ')
ndnum1 = 5*nint(ndnum/5)
*do,i,1,ndnum1,5
a=nodes(i)
b=nodes(i+1)
c=nodes(i+2)
d=nodes(i+3)
e=nodes(i+4)
*vwrite,a,b,c,d,e
('荷载位置',5(f8.0,5x))
*vwrite,disy1(1,0),disy1(1,i),disy1(1,i+1),disy1(1,i+2),disy1(1,i+3),disy1(
1,i+4)
(f5.0,,5(3x,f10.5))
*enddo
*vwrite
('   ****前20个轴力变化最大的单元和相应的轴力值****             ')
*vwrite,elnum2(1),detaf2(1)
(f15.0,'', f15.1)
*vwrite
('                                                                ')
*do,i,1,18,3
*vwrite
('                                                                ')
a= elnum2(i)
b= elnum2(i+1)
c= elnum2(i+2)
*vwrite,a,b,c
('荷载位置',9x,'单元',f4.0,14x,'单元',f4.0,14x,'单元',f4.0)
*vwrite,dfmaxel(1,0),dfmaxel(1,i),dmmaxel(1,i),dfmaxel(1,i+1),dmmaxel(1,i+1)
,dfmaxel(1,i+2),dmmaxel(1,i+2)
(f5.0,3(f11.1,' ',f11.1))
*enddo
*vwrite
('                                                                ')
a= elnum2(19)
b= elnum2(20)
c= elnum2(20)
*vwrite,a,b,c
('荷载位置',9x,'单元',f4.0,14x,'单元',f4.0,14x,'单元',f4.0)
*vwrite,dfmaxel(1,0),dfmaxel(1,19),dmmaxel(1,19),dfmaxel(1,20),dmmaxel(1,20)
,dfmaxel(1,20),dmmaxel(1,20)
(f5.0,3(f11.1,' ',f11.1))
*vwrite
('                                                       ')
*vwrite
('                                                       ')
*vwrite
('      ***前20个轴力最大的单元和相应的弯矩值***         ')
*vwrite,elnum4(1),detaf2(1)
(f15.0,'', f15.1)
*do,i,1,18,3
*vwrite
('                                                       ')
a= elnum4(i)
b= elnum4(i+1)
c= elnum4(i+2)
*vwrite,a,b,c
('荷载位置',9x,'单元',f4.0,14x,'单元',f4.0,14x,'单元',f4.0)
*vwrite,fmaxel(1,0),fmaxel(1,i),mmaxel(1,i),fmaxel(1,i+1),mmaxel(1,i+1),fmax
el(1,i+2),mmaxel(1,i+2)
(f5.0,3(f11.1,' ',f11.1))
*vwrite
('                                                       ')
*enddo
*vwrite
('                                                       ')
a= elnum4(19)
b= elnum4(20)
c= elnum4(20)
*vwrite,a,b,c
('荷载位置',9x,'单元',f4.0,14x,'单元',f4.0,14x,'单元',f4.0)
*vwrite,fmaxel(1,0),fmaxel(1,19),mmaxel(1,19),fmaxel(1,20),mmaxel(1,20),fmax
el(1,20),mmaxel(1,20)
(f5.0,3(f11.1,' ',f11.1))
*cfclos

Jeffjia 发表于 2003-1-26 11:15:23

回复: 【转帖】一个火车过桥动态加载的例子(但愿以前没人贴过)

谢谢,我正准备搞一个桥面铺装的动载课题。很有帮助,收藏了!

ganggong 发表于 2003-4-19 21:30:27

回复: 【转帖】一个火车过桥动态加载的例子(但愿以前没人贴过)

太感谢

77152587 发表于 2003-5-8 17:05:54

回复: 【转帖】一个火车过桥动态加载的例子(但愿以前没人贴过)

curtain,由于没有车、桥模型,所以无法正常运行。能否把整个命令流给我发一份?谢谢!

[ 本帖最后由 77152587 于 2006-10-29 01:25 编辑 ]

yjzhang_xaut 发表于 2003-5-8 23:00:49

回复: 【转帖】一个火车过桥动态加载的例子(但愿以前没人贴过)

谢谢你,很宝贵,要是能将整个文件共享就好了。

cswbww 发表于 2003-5-10 01:32:59

回复: 【转帖】一个火车过桥动态加载的例子(但愿以前没人贴过)

如果没错,这个是水木里的。原帖就没有完全版,它只是提供了与用户互动的APDL怎么操作(如用户可以随意改变参数),以及过程是什么样的。建模要自己来。

curtain 发表于 2003-5-10 05:02:48

回复: 【转帖】一个火车过桥动态加载的例子(但愿以前没人贴过)

cswbww,确实是你说的这样的.不过似乎建模本身并不是大家很怵的事情,最简单的可以把sap2000搬来,甚至可以用apdl直接将建模的界面写出来,关键是制定一下桥的类型就可以了.

谢谢大家.

aluntj 发表于 2003-5-22 15:19:14

回复: 【转帖】一个火车过桥动态加载的例子(但愿以前没人贴过)

不错
不错

小东北 发表于 2003-5-24 10:16:52

回复: 【转帖】一个火车过桥动态加载的例子(但愿以前没人贴过)

例子很好!!水木清华的如何登陆?可以告诉我吗?

xglchx393 发表于 2003-7-19 10:25:10

ywz99043118 发表于 2003-8-30 09:51:09

suqiwang 发表于 2003-10-20 09:24:05

回复: 【转帖】一个火车过桥动态加载的例子(但愿以前没人贴过)

老兄,能否把整个命令流给我发一份?谢谢!su_qi_wang@sohu.com

hubintj 发表于 2004-1-9 08:58:09

caozhouyang 发表于 2006-7-13 00:54:02

inkey 发表于 2006-9-19 01:03:21

谁给完善一下就好了

nakata 发表于 2006-10-21 20:12:04

十分感谢楼主,   向高手致敬!

gxg198009 发表于 2009-7-16 17:25:19

好认真啊!

lijinlong 发表于 2009-7-16 21:52:14

楼主太强了!

crruose 发表于 2009-9-23 21:51:24

不错不错顶

qingcheng100 发表于 2009-9-24 14:20:34

很好很强大,下来学习
页: [1] 2 3
查看完整版本: 【转帖】一个火车过桥动态加载的例子(但愿以前没人贴过)