2011年 10月 1日 掲載
grdgradient の正規化オプション -N のつづきである. grdgradient の正規化には,-N,-Ne,-Nt の 3つのタイプがある. 今回はそれぞれの特性を見ていく.
サンプルデータは,前回同様 AWKスクリプト mountains.awk で作る.
$ awk -f mountains.awk > mountains.txt $ xyz2grd mountains.txt -Gmountains.grd -R138.5/139.2/34.5/35.5 -I0.002
grdgradient で -N をつけない場合は,陰影付きの地形図は以下のようになる.
$ grdgradient mountains.grd -Gg.grd -A90 -M $ makecpt -Cglobe > g.cpt $ grdimage mountains.grd -Cg.cpt -Jm10 -Ig.grd -K > mountains.eps $ pscoast -J -R -Sblue -Df -O >> mountains.eps
まずは -Nオプションで,傾斜を正規化する. あとで正規化しない場合と比較するため,傾斜のファイルは gn.grd と変えておこう.
$ grdgradient mountains.grd -Ggn.grd -A90 -M -N $ grdimage mountains.grd -Cg.cpt -Jm10 -Ign.grd -K > mountains.eps $ pscoast -J -R -Sblue -Df -O >> mountains.eps
正規化前よりも,明暗が濃くなっているのがわかる.
-Nオプションでどのように正規化されたかは, 元の傾斜ファイル g.grd と正規化後の傾斜ファイル gn.grd を比較して確かめることができる.
$ grd2xyz g.grd | awk '{print $3}' > g.txt $ grd2xyz gn.grd | awk '{print $3}' > gn.txt $ paste g.txt gn.txt | sort -u | psxy -Jx15/3 -R-0.2/0.2/-1/1 -Sc0.1 -Bg0.1a0.2 > g_gn.eps
x軸の値が正規化前の傾き g,y軸の値が正規化後の傾き gn である. 正規化前の g と正規化後の gn は比例関係にあることが,この図からわかる.
さて,次は -Ne による正規化である. man grdgradient によると,ラプラス分布の累積分布関数に従うとのことである.
$ grdgradient mountains.grd -Ggn.grd -A90 -M -Ne $ grdimage mountains.grd -Cg.cpt -Jm10 -Ign.grd -K > mountains.eps $ pscoast -J -R138.5/139.2/34.5/35.5 -Sblue -Df -O >> mountains.eps
ここで,pscoast の -Rオプションのパラメータを省略すると, 上で psxyを実行したときの -R-0.2/0.2/-1/1 が使われてしまうので, めんどうでも描画範囲を打ちこまなくてはならない.
できあがった地形図は以下のようになる.
-N で正規化したときより,明暗の境目がはっきりしている. 正規化前の g と正規化後の gn の関係は,以下のようになっている.
$ grd2xyz gn.grd | awk '{print $3}' > gn.txt $ paste g.txt gn.txt | sort -u | psxy -Jx15/3 -R-0.2/0.2/-1/1 -Sc0.1 -Bg0.1a0.2 > g_gn.eps
g=0 付近の傾きが急で,正の値の半分が 1,負の値の半分が -1 に変換されている.
最後は,-Nt である. man grdgradient によると,コーシー分布の累積分布関数に従うとのこと.
$ grdgradient mountains.grd -Ggn.grd -A90 -M -Nt $ grdimage mountains.grd -Cg.cpt -Jm10 -Ign.grd -K > mountains.eps $ pscoast -J -R138.5/139.2/34.5/35.5 -Sblue -Df -O >> mountains.eps
なんか,まったりとした図になった. g と gn の関係は以下のようになっている.
$ grd2xyz gn.grd | awk '{print $3}' > gn.txt $ paste g.txt gn.txt | sort -u | psxy -Jx15/3 -R-0.2/0.2/-1/1 -Sc0.1 -Bg0.1a0.2 > g_gn.eps
カーブはゆるやかで,最大値が 1 に達していない.
ここで,ラプラス分布とコーシー分布の累積分布関数がどういうものか,簡単に紹介しておこう.
ラプラス分布の累積分布関数は,
である. μはこの分布の平均値で,分散σ2 は 2φ2 になる. ラプラス分布の累積分布関数のグラフを描いてみる (μ=0,φ=0.2/√2(σ=0.2)の場合.使用スクリプト:laplace.awk).
$ cat laplace.awk BEGIN{ for(x = -2; x <= 2; x += 0.125){ if(x < 0){ print x, 0.5 * exp(sqrt(2) * x / 0.2) }else{ print x, 1 - 0.5 * exp(- sqrt(2) * x / 0.2) } } } $ awk -f laplace.awk | psxy -Jx3 -R-2/2/0/1 -Ba1g0.5 -W4 > laplace.eps
コーシー分布の累積分布関数は,
である. この分布には,平均値,分散というものがなくて, μは最頻値をあたえる位置母数,φは半値半幅をあたえる尺度母数である. コーシー分布の累積分布関数は以下のような形をしている (μ=0,φ=0.2 の場合.使用スクリプト cauchy.awk).
$ cat cauchy.awk BEGIN{ for(x = -2; x <= 2; x += 0.125){ print x, 0.5 + 1 / 3.1415 * atan2(x, 0.2) } } $ awk -f cauchy.awk | psxy -Jx3 -R-2/2/0/1 -Ba1g0.5 -W4 > cauchy.eps
要するに,
にしたがうように変換しているのである.
さて,-Nオプションには,3つのパラメータをあたえることができるのだが, 長くなるので次回に説明することとしたい.
[ KDOホームにもどる] [ いちからはじめる GMT インデックスにもどる ]
(C) 2011 KDO