三角関数

最近、昼間眠い。なぜだろうかと考えると、やはり「夜が長い」ということがある。もちろん「昼が短かい」と言いかえてもいい。「何で? 逆じゃないの」と思われるかもしれないが、おそらく、「昼が短かい」「体が活動しない」「体が疲れない」「眠たくならない」「夜遅くなる」という悪循環なのだろう。冬休みはバスがなかったため研究所に行く手段が(徒歩、スキー以外)なかったため家で仕事したりしていたのだが、それが悪循環を断ち切れなかった要因の一つでもある。これからの時期は昼も長くなっていき、研究所時間に縛られるので回復していくと思われる。

いや、言い訳ではないが、頭は疲れている。ただ、頭の疲れの回復は体に比べて早いと聞いたことがある。

それにしても極地の夏、冬の明るさの違いというのはすごい。 夏は夏で白夜で、夜がない。ずっと昼。一方冬は冬で極夜と呼ばれ、太陽が昇らない。それでも太陽が地平線の下にあっても空は明るい。大気によって太陽光線が散乱されて空は明るいのだ。

たまにはアカデミックに行かないと、、、、、というわけで

まず単純に考えてみよう。白夜(太陽が沈まない日)から極夜(太陽が出ない日、ただし明るい)まで、半年である。実際には白夜が40日程度、極夜が10日程度あるので、(365-50)÷2で、ほぼ160日としてみよう。昼の長さが白夜のときの24時間から極夜のときの0時間まで24時間変化するのだから、1日平均、24時間÷160日=9分である(逆ももちろん同様)。つまり、

1日平均昼間が9分長く(短く)なる

ということになる。9分と言われるとなんだと思うかもしれないが、一週間どっかに旅行に行って帰ってくると、1時間昼が長く(短く)なる、ということだ。 これってすごいことだと思わない?

でもこれで終わってたんじゃあ、科学者のハシクレとして名がすたる。ちゃんと計算してみようと思いたったわけである。

天頂の方向と太陽の方向のなす角度、われわれはソーラーゼニスアングルというビックリマンチョコの付録に出てきそうな名前で呼んでいる。0度が真上、90度が地平線である。地球中心から見て観測者の位置ベクトルは天頂ベクトルに一致する。したがって、太陽方向と観測者の位置ベクトルがわかれば、その内積をとることで、ソーラーゼニスアングルのコサインが出てくるのである。

したがって、地球を中心として太陽の方向と観測者の方向を求めればいいのである。

えっ、この説明は天動説だからダメだって? いや、フタアナは天動説を信じているからいいのだ。

そろそろ忠告。数学アレルギーの方はもうそろそろ見ない方がいい。万が一気分が悪くなっても責任は取れないので一気に図まで飛んでくれ!!! その方が精神衛生上良ろしかろう。

まず座標系を設定する。地球は一年で太陽のまわりを一周するから、以下のようにxyz座標を取るのがよかろう。(冬至を基準にしているのは気持ち悪いが、簡単のためだ。) 冬至の時の地球から太陽の方向をx軸、黄道面に垂直にz軸をとる。したがってy軸は地球の進行方向反対方向(春分から秋分の方向)になる。

すると、地球から見た太陽の方向は

x = cos(day)
y = sin(day)
z = 0             ... (1)

と書ける。ここでdayは、冬至から数えた日数nを365で割って360度をかけたもの。つまり太陽を中心として、冬至のときの地球の位置と現在の地球の位置のなす角度である。

次に、観測者は、気付かないかもしれないが地軸の回りを一日で一周している。したがって以下のようにXYZ座標を取るとわかりやすい。 地球の北極方向にZ軸、y軸と平行にY軸を取る。 すると、冬至の時のX軸は太陽と地軸を含む平面内におさまる。

で、冬至の日について考えると、観測者の位置ベクトルは

X = -sin(colat) cos(LT)
Y = -sin(colat) sin(LT)
Z =  cos(colat)           ... (2)

で書ける。ここで、LTはローカルタイム、colatは余緯度、つまり90度−緯度である。

このように定義したXYZ座標とxyz座標の間の変換は簡単で、Y軸中心に-23.4度回転させたらXYZ座標はxyz座標に早がわりである。 したがって、冬至の日の観測者の位置ベクトルは、

x = X cos(inc) - Z sin(inc) = -sin(colat) cos(LT) cos(inc) - cos(colat) sin(inc)
y = Y                       = -sin(colat) sin(LT)
z = X sin(inc) + Z cos(inc) = -sin(colat) cos(LT) sin(inc) + cos(colat) cos(inc) 
                                  ... (3)

と書ける。23.4度と書くのは気持ち悪いのでincと表記した。

まだこれでは冬至の日しか計算できないので、一般の日、dayに変換しないといけない。地球を中心とした観測者の位置ベクトルは、地球が公転してもかわらないので、上の式がほとんどそのまま使える。ほとんどと書いたのは、ローカルタイムの基準点(深夜0時)が動くからである。具体的に、基準点は太陽と反対方向になるので、(3)の式でのLTをLT+dayにおきかえるだけでいい。

x = -sin(colat) cos(LT+day) cos(inc) - cos(colat) sin(inc)
y = -sin(colat) sin(LT+day)
z = -sin(colat) cos(LT+day) sin(inc) + cos(colat) cos(inc)    ... (4)

(1)と(4)の内積がスーパーゼウスエンジェル、じゃない、ソーラーゼニスアングルのコサインになる。 つまり、

cos(SZA) = -sin(colat) cos(LT+day) cos(inc) cos(day) 
           -cos(colat) sin(inc) cos(day)
	   -sin(colat) sin(LT+day) sin(day)          ... (5)

となる。

長かったがこれで結論が出た。ここまで到達した人はよっぽど奇特な人だよ。図もなにもなしだからな(手抜き)。

ということで、式がわからなくても図にしたらわかるかもね。 ということで、 キルナ(北緯67.8度)における一年の通算日数に対してソーラーゼニスアングルを書いてみた。 90度が地平線である。

また、日の出(赤)、日の入(緑)、そして地平線から10度下に達する時間(青)もプロットしてみた。

赤と青で囲まれているのが昼間である。冬期間は昼間がなく、夏期間は夜がない。

日本(北緯35度)での同様の図も置いてみよう。

やっぱだいぶん違うな。

あれ、なんで左右対称じゃないんだ? あ、夏至原点で回転対称やからいいんだろうな。実際、dayにはLTの効果ちょっとは入るし。

ふう、科学者のハシクレとしてやるべきことはやったに違いない。

いや、多分気のせい。