grdgradient − z(x,y) を表す 2 次元グリッドファイルから方向微分又は勾配 を計算する |
grdgradient in_grdfile −Gout_grdfile [ −Aazim[/azim2] ] [ −D[c][o][n] ] [ −E[s|p]azim/elev[/ambient/diffuse/specular/shine] ] [ −Lflag ] [ −M ] [ −N[e][t] [amp][/sigma[/offset]] ] [ −Sslopefile ] [ −V ] |
grdgradient は与えられた向きにおける方向微分(
−A )、又はデータのベク ト ル勾配の向き(
−S )[と大きさ( −D
)]を計算することができる。 |
in_grdfile |
方向微分を計算する 2 次元グリッドファイル。 |
−G |
方向微分の出力グリッドファイルの名前。 |
オ プションフラグとそれに付属する引き数の間にスペースを入れないこと。オ プションフラグには大文字を使い、その付属コードには小文字を使うこと。 |
−A |
方向微分の方位の向き。 azim は x,y 平面における北( +y の 方 向)から東( +x の方向)へ時計回りに測った度単位の角度である。方向 微分の負、 −[dz/dx*sin(azim) + dz/dy*cos(azim)] は、 z(x,y) の 傾 きが azim の向きにおいて下りのときに正の値になり、 azim の向 きから照らす x,y 平面の上の光源による画 像 へ の 陰 影 付 け ( grdimage 及び grdview 参照)としては正しくなる。随意で、 2 つの 方位 −Aazim/azim2 を与えると、各向きにおける勾配が計算され、 大 きな方だけが残される。これは 2 方向の線状構造を持つデータを照ら すのに有用である。例えば、 −A0/270 は北(上)と西(左)から照らす。 |
||
−D |
データの勾配の向きを見つける。デフォルトでは、向きは上の −A の azim と同様に北から時計回りに測られる。伝統的なカルテジア ン 角 度を用いて正の x (東)方向から反時計回りに測るには c を付ける こと。向き( 0-360 )ではなく方向( 0-180 )を報告するには o を付け ること。 90 度を全ての角度に加えるには n を付けること (例えば、 線状構造の方向を与えるために)。 |
||
−E |
grdimage 及び grdview で使うのに適したランベルト放射を計 算 す る。ランベルト反射は当たった全ての光を反射する理想的な表面を 仮定しており、その表面は全ての方向から見て等しく光る。 azim と elev は光ベクトルの方位角と仰角である。随意で、表面の反射特性を 支配するパラメータである ambient diffuse specular shine を与 え ること。デフォルト値は 0.55/0.6/0.4/10 である。これらの値の一部 を保持するには、新しい値として = を指定 す る こ と 。 例 え ば −E60/30/=/0.5 は azim elev 及び diffuse を 60, 30 及び 0.5 に設 定し他の反射パラメータを保持する。より単純なランベルトアルゴ リ ズムを使うには s を付けること。この形式では方位角と仰角のパラメ ータだけ与えなければならないので注意。 Peucker の区分的線 形 推 定(単純だが高速なアルゴリズム)を使うには p を付けること。この場 合 azim と elev は 315 と 45 度に固定される。これは他の値を与え ても無視されることを意味する。 |
||
−L |
境界条件を flag で指定する。これを x 又は y 又は xy とする と x 又は y 又はその両方の範囲が周期的であることを示す。ある い は flag を g とすると地理的な境界条件であることを示す( x と y は経度と緯度) [デフォルトでは「自然」境界条件が使われる(枠に 垂 直な成分の 2 階偏微分がゼロ)]。 |
||
−M |
デフォルトでは grdgradient の単位は( z の単位)/( dx 及び dy の単位)である。しかし、ユーザはこのオプションを選んで、経度、緯 度 の度単位の dx,dy をメートル単位に変換して、 grdgradient の単 位を( z の単位)/メートルにすることができる。 |
||
−N |
規格化[デフォルトでは規格化しない]。実際の勾配 g はオフセッ ト 及びスケールされて最大出力の大きさが amp である規格化勾配 gn になる。 amp が与えられないときは、デフォルトで amp = 1 とな る 。 offset が与えられないときは、 g の平均に設定される。 −N とす ると gn = amp * (g - offset)/max(abs(g - offset)) となる。 −Ne は 累 積 ラ プ ラ ス 分 布 を用いて規格化して gn = amp * (1.0 - exp(sqrt(2) * (g - offset)/ sigma)) とする。ここで sigma が与え ら れなければ (g - offset) の L1 ノルムを用いて推定される。 −Nt は累積コーシー分布を用いて規格化して gn = (2 * amp / PI) * atan( (g - offset)/ sigma) となる。ここで sigma が与えられなけ れば (g - offset) の L2 ノルムを用いて推定される。 |
||
−S |
勾配ベクトルのスカラーの大きさの出力グリッドファイルの名 前 。 −D を必要とする。 |
||
−V |
冗長モードを選択する。標準エラー出力に経過報告を送る[デフォ ルトでは「黙って」実行する]。 |
grdimage や grdview 用の強度ファイルを作るのに使う −N オプションをど う すれば良いのか分からなければ、始めは −Ne0.6 を試してみると良い。 大 きなデータセットの複数のサブ領域の陰影図を作りたいときで、地図全体に 渡って一定の陰影効果が必要となるときは、各地図の grdgradient の −N オプ ションに同じ sigma と offset の値を与えること。 offset = 0 及び規格化さ れていない勾配グリッドに grdinfo −L2 又は −L1 を適用して求まる sigma を 使うと良い。 単にグリッドの x または y の微分が必要なのであれば、 grdmath を使うこと 。 |
geoid.grd のデータに陰影を付けるためのファイルを、北と西の方向にある 光 源を模して、指数分布に規格化した勾配を用いて作る。 grdgradient geoid.grd −A0/270 −Ggradients.grd −Ne0.6 −V ファイル topo.grd の海底地形構造の方位方向を見つける。 grdgradient topo.grd −Dno −Gazimuths.grd −V |
Horn, B.K.P., Hill-Shading and the Reflectance Map, Proceedings of the IEEE, Vol. 69, No. 1, January 1981, pp. 14-47. (http://people.csail.mit.edu/ bkph/papers/Hill-Shading.pdf) |
GMT(l), gmtdefaults(l), grdhisteq(l), grdimage(l), grdview(l), grdvector(l) |