概要
太陽の位置を指定すると、緯度経度座標で表面の光強度のグリッドを簡単に作成できます(大気および地形効果を無視)。必要に応じてそのグリッドを再投影し、マップにオーバーレイします。
詳細
式は、球面座標の標準的なものです。球面座標(lon、lat)に対応する単位ベクトルは、
(cos(lon)cos(lat), sin(lon)cos(lat), sin(lat)).
強度は、ユニットの外側の法線(「上」)方向と太陽への方向との間の余弦に依存します。このコサインは、これらの2つの単位ベクトルの内積です。つまり、(x、y、z)を太陽に向けた単位ベクトル(地心座標)とし、各グリッドセルの中心点の測地(lat、lon)を単位ベクトル(xi、eta、zeta)に変換します。 、および計算
(x,y,z) . (xi, eta, zeta) = x*xi + y*eta + z*zeta.
0未満の結果は目に見えない太陽に対応するため、これらをゼロに設定します。
実装ノート
これらの計算は、マップ代数を使用して簡単に実行できます。(lat、lon)値のグリッド(それが私が行った方法)から開始するか、1対のグリッド(1つは緯度、もう1つは経度)で開始しますたとえば、ESRIソフトウェアを使用して実行します)。
(緯度または経度のグリッドを作成するには、地理座標でy座標グリッドまたはx座標グリッドをそれぞれ形成し、それを投影します。)この初期情報から、3つのグリッド[xi]、[eta ]、および[zeta](または単一のベクトル値グリッド[xi、eta、zeta])は、グリッドセルで上方向を表します。任意の太陽の位置について、計算は上記の[xi]、[eta]、[zeta]の単純な線形結合になります。太陽は、係数x、y、およびz(もちろん数字です)を決定します。
例
このような強度グリッド(216 x 432セル)のPlate Carree投影の世界地図を次に示します。
通常どおり、本初子午線は中央にあり、北は最上部にあります。この計算では、太陽ベクトルを(0.6、-0.8、0.5)に比例して設定し、中部大西洋の正午の夏の日を近似します。(振り返ってみると、0.4のz値はより現実的です。太陽はこれほど北に行くことはありません。)
Asterカラーマップ上のアルファオーバーレイ(明るい領域もわずかに透明になります)は、この画像を生成します。
時間の変化に伴い、太陽のベクトル(x、y、z)が再計算され、強度グリッドの再計算が必要になります。これは高速な計算です。高解像度も必要ありません。この図では、元のグリッドの1/10(2160 x 4320セル)の解像度を使用しました。より粗い強度グリッドを表示するために使用される補間は、ギャップを埋めるためにうまく機能します。これにより、必要に応じてディスプレイをほぼ瞬時に変更して、スムーズなアニメーションを作成できるようになります。