この文書の現在のバージョンと選択したバージョンの差分を表示します。
Both sides previous revision Previous revision | |||
movie [2009/09/16 08:13] 10.249.202.212 |
movie [2009/09/16 08:42] (現在) 10.249.202.212 |
||
---|---|---|---|
ライン 79: | ライン 79: | ||
</code> | </code> | ||
また,動画をつくる際,グラフの範囲を指定して置く. | また,動画をつくる際,グラフの範囲を指定して置く. | ||
+ | |||
+ | ===== fortranでスクリプト作成 ===== | ||
+ | シェルの文法を覚えるのが面倒なときはfortranでスクリプトを作成してもよい. | ||
+ | 以下,サンプル. | ||
+ | <code fortran> | ||
+ | implicit none | ||
+ | integer i,n | ||
+ | character(len=20) giffile,datafile | ||
+ | |||
+ | n=100 | ||
+ | do i=1,n | ||
+ | write(giffile,"(a,i4.4,a)") "wave",i,".gif" | ||
+ | write(datafile,"(a,i4.4,a)") "wave",i,".dat" | ||
+ | write(*,'(a)') "gnuplot << EOF" | ||
+ | write(*,'(a)') "set terminal gif" | ||
+ | write(*,'(a)') "set yrange [-1:1]" | ||
+ | write(*,'(a,a,a)') "set output '",trim(giffile),"'" | ||
+ | write(*,'(a,a,a)') "plot '",trim(datafile),"'" | ||
+ | write(*,'(a)') "EOF" | ||
+ | end do | ||
+ | |||
+ | write(*,'(a)',advance="no") "gifsicle --delay=10" | ||
+ | do i=1,n | ||
+ | write(giffile,"(a,i4.4,a)") "wave",i,".gif" | ||
+ | write(*,'(a,a)',advance="no") " ",trim(giffile) | ||
+ | end do | ||
+ | write(*,'(a)') " > anime.gif" | ||
+ | |||
+ | end program | ||
+ | </code> | ||
+ | |||
+ | 使い方はコンパイルして,スクリプト作成,実行の順.上のファイルがanime.f90として | ||
+ | <code bash> | ||
+ | gfortran anime.f90 | ||
+ | ./a.out > anime.sh | ||
+ | sh anime.sh | ||
+ | </code> | ||
===== convertコマンドのオプション ===== | ===== convertコマンドのオプション ===== |