2019年春学期のパソコン教室での実習でつかった教材をすこし編集しなおしたものです。
「大気上端」に入射する太陽放射
主題: 地球の公転・自転にともなって、
「大気上端」に入射する太陽放射 (単位時間・単位面積あたりのエネルギーの流れ)は
どのように変化するか。
手段: 「R」をプログラム言語処理系として使い、数値計算と作図のプログラムを動かす。
(2) 季節変化と、万年のけたの時間スケールの変化
ここでは、各地点の「大気上端」に入射する太陽放射を日平均したものの季節変化を計算する。
日平均すると、経度にはよらなくなり、緯度と日付とによる。
【「日射量」ということばは、ここでは、「大気上端」に入射する太陽放射の
面積あたり・時間あたりのエネルギーの流れをさすことにする。
ほかの文脈では地上に達する太陽放射をさすこともあるが、ここではそれはあつかわない。】
緯度別・日付別の日射量は、
地球の公転と自転の軌道要素 (離心率、地軸の傾き、近日点黄経) によって
いくらか変化する。
(ここでいう「近日点黄経」は、だいたい、近日点の方向と春分点の方向とのあいだの角度であり、
近日点と季節との関係をあらわす。)
地球の軌道要素は、他の惑星の重力によって、万年から十万年のけたの周期で変化しており、
その変化は、天体力学の理論にもとづいて精密に計算されている。
この日射量の変化は、
[地球の歴史と気候の変化]の回に話題にふくめた、
第四紀 (地球の歴史のうちで最近の約2百万年間)の「氷期・間氷期サイクル」の
主要な原因(複数の原因のひとつという意味だが)だと考えられている。
ここでは、
ベルギー(フランス語圏) ルーヴァン カトリック大学の
Michel Crucifix 教授
[外][Michel Crucifix 研究室]が作成した
Rの応用パッケージ
[外][palinsol]の内容をみて、
必要なところをとりだし、実習用プログラムを作成した。
プログラム例
- 年の毎日(365日)、緯度5度きざみで、日平均の「大気上端」の日射量を計算する
- ex1 と同じだが、軌道要素の数値をひとつ かえたもの
- ex1 や ex2 で書き出された数値の表のテキストファイルを読んで、等値線図の画像をつくる。
- 2つの数値の表のテキストファイルを読み、差の等値線図の画像をつくる。
注
- 日付は1月1日を1とした年ごとのとおしの日付を使っている。
「月・日」とのあいだの相互変換は、Rのライブラリを使う方法も、
自まえでプログラムする方法もあるが、例文にはまだくみこんでいない。
- 日本語文字をあつかうところで、Windows 7 上の R では、
文字コードを 「Shift_JIS」にする必要があるようだ。
ほかのOSでは「UTF-8」にする必要があるかもしれない。
プログラム例はなるべく両方用意するが、文字化けしたらコード変化をこころみてほしい。
- 例文のプログラムを画面に表示させて保存すると、
ブラウザによっては、ファイル名の「拡張子」部分がが「.txt」になったり、
文字コードが変わったりする。
プログラムを表示させず、ファイルへのリンクが書かれているページで、
リンクを(たいていのブラウザでは)右クリックして、
「(Firefoxのばあいでいえば)名まえを付けてリンク先を保存」の機能で保存するのがよい。
演習課題
- 今回の ex1_sjis.R をもとに、次の変数に代入される数値のうち、すくなくともひとつをかえて、
ex1 の結果との差を等値線図にし、結果の特徴を簡単にのべてください。
- ecc 地球の軌道の離心率 [無次元] 現在の値は 0.0167。第四紀の変化範囲は 0 .. 0.06 ぐらいだが、太陽系の惑星にある 0 .. 0.2 ぐらいの範囲で変えてみる。
- epsdeg 地軸の傾き [度] 現在の値は 23.44。第四紀の変化範囲は 22 .. 25 ぐらいだが、0 .. 90 の範囲で変えてみる。
- perihdeg 地球の近日点黄経 [度] ... 現在の値は 103.002。0 .. 360 の範囲で変えてみる。
- 結果がはいるファイルの名まえも、それぞれ変える。(ex1のところを変えるとよい)。
- outtablefile ... 数値の表のテキストファイル。
- outimagefile ... 等値線図の画像ファイル。
- outparamfile ... 軌道要素を書きだされるテキストファイル。
- S0 (いわゆる太陽定数 [W/m2]) をかえてみてもよいが、定数倍されるだけなので、レポート課題にはふくめない。
結果の例
年の毎日(365日)、緯度5度きざみで、日平均の「大気上端」の日射量を計算する
- 現在の軌道要素
- 近日点黄経を180度ずらした。あとは現在の軌道要素と同じ。
- 離心率を 0 (つまり円軌道)にした。地軸の傾きは現在の地球と同じ。
- 離心率を 0.1 にした(現在よりだいぶ大きい)。近日点黄経と地軸の傾きは現在の地球と同じ。
- 地軸の傾き(obliquityという)を 22度にした。離心率と近日点黄経は現在の地球と同じ。
- 地軸の傾きを 25度にした。離心率と近日点黄経は現在の地球と同じ。
2つの数値の表のテキストファイルを読み、差の等値線図の画像をつくる
- 読んだ順に「データ1」「データ2」とすると、
「データ2 - データ1」を表示する。
そして、プログラムや結果のファイル名には、まず「データ2」のほうのパラメータを書くことにした。
- 近日点黄経が現在と180度ちがう場合 - 現在の軌道要素の場合
- 離心率が 0 (円軌道)の場合 - 現在の軌道要素の場合
- 地軸の傾きが 25度の場合 - 23度の場合 (他の軌道要素は現在の地球と同じ)
(2019-05-27, 2019-06-18) 2021-01-17
増田 耕一 (MASUDA Kooiti)