! ccxで計算した変形図や座屈解析した座屈モードをcgxに描かせる手順。
! まずinpファイルの中の上の方の節点座標のところを
! zahyou.dにコピーし、冒頭に節点数を書いておく。
! 次に、変位を描かせる場合は、ccxで計算して出力されたdatファイルの
!  冒頭にあるdisplacements(vx,vy,vz)と書かれているところの下の
!  変位をhenni.dにコピーしておく。
! 次に、ccxで座屈解析したdatファイルの中の
!                   E I G E N V A L U E    N U M B E R     1
! と書かれてるところをviの/E\ で検索する。
      !変位を書かせるときは、冒頭のdisplacementのとこ
! この下に1次の座屈モード(変位の場合は変位)uvwが書かれているので、
!この部分を
! henni.dにコピーしておく。
! ./tasudat を実行すると、tasita.dが生成されるので、
! frdファイルの中の節点座標のところをtasita.dと置き換えれば、
! cgxで座屈モード(変位図)が見れる。
! frdの書き換えがうまくいかずにinpファイルを書き換える場合は、
! tasita.inpを使う。
implicit real*8(a-h,o-z)
! 座屈後の変位量を初期座標に足す。
print*,'モードの倍率をいれて'
read*,bai
open(7,file='zahyou.d')
open(8,file='henni.d')
open(9,file='tasita.d')
open(10,file='tasita.inp')
read(7,*) n
do i=1,n
read(7,*) nsetten,x,y,z
!            read(7,*) ngomi,nsetten,x,y,z
! 2007年の卒論生は、フォーマットなしで読めてたらしいんだけど、
! たまたま変位に-がつかなかったからとか?
read(8,*) msetten,u,v,w
xu=x+u*bai
yv=y+v*bai
zw=z+w*bai
write(9,100) -1,nsetten,xu,yv,zw
write(10,110) nsetten,',',xu,',',yv,',',zw
100          format(i3,i10,1p3e12.5)
110          format(i10,a,1pe12.5,a,1pe12.5,a,1pe12.5)
end do
close(7)
close(8)
close(9)
close(10)
end
