2.1 基本操作

データ解析でも数値計算でも一刻も早く計算結果が見たいものですが, そんな 時, DCLを用いるとわずか数行でデータをグラフ化できます. 最初の例題とし て, リサジューの図形を描いてみましょう. FORTRAN プログラムは, 次の HOP です.

  PROGRAM HOP  
 
  PARAMETER( NMAX=400 )  
  REAL X(NMAX), Y(NMAX)  
  
 
*- リサジューの図 --  
  DT = 2.*3.14159 / (NMAX-1) 
  DO 10 N=1,NMAX  
    T = DT*(N-1)  
    X(N) = 1.E 2*SIN(4.*T)  
    Y(N) = 1.E-3*COS(5.*T) + 6.  
10 CONTINUE  
 
*- グラフ --  
    WRITE(*,*) ' WORKSTATION ID (I)  ? ;'  
    CALL SGPWSN  
    READ (*,*) IWS  
  
  
    CALL GROPN( IWS )  
    CALL GRFRM  
  
 
    CALL USSTTL( 'X-TITLE', 'x-unit', 'Y-TITLE', 'y-unit' )  
    CALL USGRPH( NMAX, X, Y )  
  
    CALL GRCLS  

    END   
PROGRAM HOP

UNIX システムで DCL が標準的にインストールされている場合には,

% dclfrt -o hop hop.f
によって hop という実行ファイルが作られます. そこで,
% hop
といれると,
WORKSTATION ID (I) ? ;
1:X, 2:PS, 3:Tek ;
ときいてきます. プログラムの17行めでサブルーチン SGPWSN を呼んだ ので, このように今の環境で利用可能な図形出力装置のリストが書き出されま す.

この場合, 3つの出力先が可能です. X ウインドウシステムが起動されている 状態で1を入力すると, ウインドウがひとつ現れます. マウスクリックでウイ ンドウの位置を確定すると, 描画がはじまり下のようなグラフが得られます. このとき, 次の警告メッセージが出ると思いますが, 特に気にする必要はあり ません. 図形表示の終了はまたマウスクリックで行ないます.

*** WARNING (STSWTR) *** WORKSTATION VIEWPORT WAS MODIFIED.

一方, 2 (PS)を指定すると, カレントディレクトリに dcl.ps というポストス クリプトファイルができます. そこで,

% lpr dcl.ps
と入力すれば, ポストスクリプトプリンタに結果が出力されます. また, 3 (Tek)を指定するとテクトロ端末で描画ができます.




\resizebox{10cm}{!}{\includegraphics{hop/hop.eps}}
hop.f: frame1