ユリウス通日は桁数が大きいため、ユリウス通日から2400000.5を差し引いた日数を、修正ユリウス日 (Modified Julian Date : MJD) と呼びます。 修正ユリウス日の元期は1858年11月17日0時0分0秒 (世界時) です。 そのため、ユリウス通日と異なり観測夜間に日が変わります。 2400000.5という値はグレゴリオ暦からユリウス通日を求めるの例題2の結果と同等です。

例題1
2000年1月1日0時0分0秒 (日本時) における修正ユリウス日を計算してください。
日本時と世界時の時差は+9時間なので、1999年12月31日15時 (世界時) の修正ユリウス日を求めます。
[365.25 * 1999] + [1999 / 400] - [1999 / 100] + [30.59 * (12 - 2)]
+ 31 + 1721088.5 + 15 / 24 + 0 / 1440 + 0 / 86400 - 2400000.5
= [730134.75] + [4.9975] - [19.99] + [305.9] - 678880.375
= 730134 + 4 - 19 + 305 - 678880.375
= 51543.625
例題2
以下3つの公式を修正ユリウス日が求められるように修正してください。
但し、時・分・秒の変数は公式に含めないでください。
グレゴリオ暦からユリウス通日を求める
紀元後のユリウス暦からユリウス通日を求める
紀元前のユリウス通日を求める

・グレゴリオ暦から修正ユリウス日を求める公式
[365.25 * Y] + [Y / 400] - [Y / 100] + [30.59 * (M - 2)] + D + 1721088.5 - 2400000.5
= [365.25 * Y] + [Y / 400] - [Y / 100] + [30.59 * (M - 2)] + D - 678912

・紀元後のユリウス暦から修正ユリウス日を求める公式
[365.25 * Y] + [30.59 * (M - 2)] + D + 1721086.5 - 2400000.5
= [365.25 * Y] + [30.59 * (M - 2)] + D - 678914

・紀元前の修正ユリウス日を求める公式
[-365.25 * Y - 0.75] + [30.59 * (M - 2)] + D + 366 + 1721086.5 - 2400000.5
= [-365.25 * Y - 0.75] + [30.59 * (M - 2)] + D - 678548

世界時のグレゴリオ暦から修正ユリウス日を求めるプログラム

年  月  日  時  分 

 

Julian Day :