計算結果を可視化するために, Javaを使って数値計算を教えようとする教科書を見かけた. Fortran用の可視化ライブラリはたくさんあるので, Fortranでも計算結果は簡単に可視化できる. アルゴリズムの研究にはJavaでもいいかもしれないが, ゆくゆくは大きな計算をするのならばやはりFortranを使った方がよいと思う.

計算するプログラムと可視化するプログラムは別であることも多く, 言語は同じである必要はない.

ともかく, Fortranから可視化ライブラリを呼んで実際に図を書いてみることにする. PLplotはC (もとはFortran 77) で書かれた可視化ライブラリである. C++, Fortran, Java, Tclなど多数の言語から使える. PLplotを使って, 正弦曲線を描いてみよう.

まずはMacPortsを使ってplplotをインストール.

sudo -d install plplot +g95

正弦曲線を描くプログラムは次の通り.

program p01
  use plplot, pi=>pl_pi
  implicit none

  integer, parameter :: n = 20
  integer :: i

  real(kind=plflt), dimension(n) :: x, y

  do i=1, n
    x(i) = -pi + 2*pi*(i-1)/(n-1)
    y(i) = sin(x(i))
  end do


  call plinit()
  call plenv(-pi, pi, -1._plflt, 1._plflt, 0, 1)
  call pllab("x", "y", "plot 1 y = sin(x)")
  call plline(x, y)
  call plend()

end program p01

必要なライブラリをpkg-configで取得してコンパイル.

g95 p01.f90 `pkg-config --cflags --libs plplotd-f95`

実行すると, 出力先の選択肢が示される. X Windowに表示するには1を選ぶ. ほかの番号を選んで, PostScriptやPNG形式で保存することもできる.