配列の一部分だけを作画するにはどうしたらよいのだろうか?
u2df02.fと同じ格子点座標で同じ格子点値を持った配列を用い,
経度60°から300°,緯度 -60°から +60°
の部分だけを描くことを考えてみよう.
u2df02.fと異なる点は,
5, 6番目のパラメータ文で描く範囲を決める
いくつかの定数を定義していることと,
UWSGXB
, UWSGYB
, UDCNTR
の引数の
指定方法が少し違うことである.
(コンターレベルの設定に関する3つのサブルーチンはu2df02.fから除いた. )
配列の一部分を作画するためにはまず, UWPACKを用い,
自分が描きたいと考えている範囲で格子点座標系を設定しなければならない.
この例では, 格子点座標系を,
X方向についてはUWSGXB
を使って経度60から
300°まで20°おきの13点と設定し,Y方向については
UWSGYA
を使って-60°から+60°
に対応するサイン緯度で不等間隔に13点設定している.
こうした上で, UDCNTR
にわたす最初の引数としては,
この矩形領域の左下 (60°, sin(-60°))
に対応する配列要素(ここではその添字が(IXZ1
, IYZ1
))
を陽に書き, 2 番目には実際に宣言した配列の第1次元寸法,
3, 4 番目には実際の作画に使う配列の第1次元および第2次元寸法を
与えることによって配列の一部分だけを作画することができる.
この辺の事情を正しく理解するためには, FORTRANが記憶領域上で配列要素を どのように順序づけているのかを知る必要がある. (FORTRANの文法書などを参照のこと.)