きしだのはてな このページをアンテナに追加 RSSフィード

2015-01-09(金) tz databaseの1888年以前の時差は2秒ずれてる?

tz databaseの1888年以前の時差は2秒ずれてる? 12:02 tz databaseの1888年以前の時差は2秒ずれてる?を含むブックマーク

tz databaseというのは、世界の時差がまとめられたデータベースです。Java SE 8のDate and Time APIでも、この情報が使われています。

IANA ― Time Zone Database


ここで次のようなコードを実行すると、日本の時差情報が得れます。

ZoneId.of("Asia/Tokyo").getRules().getTransitions()
  .forEach(System.out::println);

そうすると、次のようなデータが表示されます。

ここで、1888年1月1日に、時差が+9:18:59から現在の+9:00になったという情報があることがわかります。

Transition[Overlap at 1888-01-01T00:18:59+09:18:59 to +09:00]
Transition[Gap at 1948-05-02T02:00+09:00 to +10:00]
Transition[Overlap at 1948-09-11T02:00+10:00 to +09:00]
Transition[Gap at 1949-04-03T02:00+09:00 to +10:00]
Transition[Overlap at 1949-09-10T02:00+10:00 to +09:00]
Transition[Gap at 1950-05-07T02:00+09:00 to +10:00]
Transition[Overlap at 1950-09-09T02:00+10:00 to +09:00]
Transition[Gap at 1951-05-06T02:00+09:00 to +10:00]
Transition[Overlap at 1951-09-08T02:00+10:00 to +09:00]

1888年1月1日に日本の標準時が東経135度を基準に変更されました。

問題は、それ以前の標準時です。9時間18分59秒というのは、東京天文台の位置を東経139度44'40".90を基準に算出したということが、tz databaseのコメントに書かれています。

こちらに抜粋があります。

日付と時刻の豆知識 (4)tz databaseと日本のサマータイム - hnwの日記


また、この記述はこちらに日本語でまとめられています。

日本の標準時


しかし、国立天文台wikiによると、1888年以前の基準は元江戸城天守台で、東経139度45'17".0が基準にされ、時差は9時19分1.13秒となっていたことがわかります。

暦Wiki/時刻/日本の本初子午線 - 国立天文台暦計算室


次のサイトでも、「星の古記録」という本に1888年以前の時差は9時間19分1秒ということが書いてあったという記述があります。

すのものの「いろいろ」(その4)

斉藤国治「星の古記録」(岩波新書、1982)の 195 ページによれば、 現行の日本標準時が採用されたのは 1888 年 1 月 1 日だそうだ。 それまでは旧江戸城本丸跡中央気象台の地方平均太陽時を使っており、 両者の差は 19 分 1 秒、とのこと。


ということで、どうやら1888年以前の時差を9時間18分59秒とするのは妥当ではなく、9時間19分1秒とするほうがいいように思います。


「星の古記録」は未読なので、あとで確認してみます。

星の古記録 (岩波新書)

星の古記録 (岩波新書)