この計算機でできること
このツールは、開始となる日付と時刻に対して、日数・時間・分・秒で表した経過時間を加算(または減算)し、求める暦日・時刻・曜日を表示します。先発グレゴリオ暦(プロレプティック・グレゴリオ暦)を用い、1分を厳密に60秒として扱います(うるう秒は考慮しません)。計算ロジックそのものは万国共通ですが、任意で選べる元号セレクターを使えば、明治・大正・昭和・平成・令和といった和暦で年を入力でき、計算前に自動で西暦(CE)へ換算されます。
使い方
まず元号を選びます(通常の年であれば「西暦(CE)」のままで構いません)。次に開始の年・月・日・時・分・秒を入力します。方向は、未来へ進める場合は「経過後(+)」、過去へさかのぼる場合は「経過前(−)」を選択。続けて経過日数・時間・分・秒を入力してください。該当しない項目は 0 のままで問題ありません。実行すると、求める日時と曜日が表示されます。
計算式の解説
開始日は、連続した通日番号であるユリウス通日(JDN)に変換されます。この日数と当日の時刻を合算して総秒数を求め、符号付きの経過秒を加えます。その合計を床関数による除算で再び日数と時刻に分解するため、負の値(深夜・月またぎ・年またぎをまたぐ減算)でも正しい日付が得られます。最後にJDNをグレゴリオ暦の年・月・日へ戻し、曜日もJDNから直接導出します。
$$\begin{gathered} T_{\text{result}} = T_{\text{start}} + \text{Dir} \cdot \Delta \\[1.5em] \text{where}\quad \left\{ \begin{aligned} Y &= \text{Era} + \text{Year} \\ T_{\text{start}} &= \text{JDN}(Y,\,\text{Mon},\,\text{Day}) \cdot 86400 \\ &\quad + 3600\,\text{Hr} + 60\,\text{Min} + \text{Sec} \\ \Delta &= 86400\,\text{Days} + 3600\,\text{Hrs} \\ &\quad + 60\,\text{Mins} + \text{Secs} \end{aligned} \right. \end{gathered}$$
計算例
開始を 2024-06-15 00:00:00、方向は「経過後」、経過時間を 0日11時間40分30秒 とします。2024-06-15 のJDNは 2,460,477。42,030秒を加えても日付は変わらず、時刻は 11:40:30 となります。結果は 2024-06-15 11:40:30 で、曜日は土曜日です。
$$\Delta = 3600 \cdot 11 + 60 \cdot 40 + 30 = 42030\ \text{s}$$
よくある質問
うるう年には対応していますか? はい。ユリウス通日への変換時に、グレゴリオ暦のうるう年規則がすべて自動的に適用されます。
時間を引くこともできますか? はい。「経過前(−)」を選べば、経過時間全体が減算され、日・月・年をまたいでも正しくさかのぼります。
タイムゾーンやサマータイムは? 本計算はタイムゾーンや夏時間(DST)の補正を行わない純粋な暦上の時点として扱うため、結果は常に一意に定まります。