西暦から算術イラン暦変換|2暦法・日別一覧

西暦から算術イラン暦変換|2暦法・日別一覧

グレゴリオ暦またはユリウス暦の年月を、2820年周期の算術イラン暦、算術ヒジュラ暦、曜日、JDNへ日別変換します。

入力

両暦を自動切替せず、選んだ閏年規則をprolepticに適用します。

算術イラン暦元以後の正の西暦年に限定します。622年の元期前を含む月は計算時に拒否します。

選んだ西暦月の1日から連続した日別表を作ります。

開始月1日から、選んだ暦で1・2・6か月後または翌年同月の月初直前までを表示します。

イスラム暦列だけに適用します。観測に基づく公式宗教日程とは異なる場合があります。

使い方

  1. グレゴリオ暦またはユリウス暦、開始年月、期間、ヒジュラ暦方式を選びます。
  2. 日別の算術イラン暦月名・日・年とJDNを確認します。
  3. 2025年など方式差が生じる年は、公式天文学暦と同一視しないでください。

計算式・考え方

選択した西暦を整数JDNへ変換し、2820年周期と年内通算日を逆算して、31日月・30日月・Esfandへ分配します。

注意事項

  • 西暦から算術イラン暦変換では、入力側をグレゴリオ暦またはユリウス暦として固定し、開始年月、期間、算術ヒジュラ方式を選びます。各西暦月初をJDNへ変換し、JDN以下となる最大の算術イラン暦年初を有界に求め、月長を差し引いて月日を決めます。
  • 入力年は622〜9997年です。ただし622年の1月など、選んだ暦法の月初がJDN 1948321より前になる範囲は計算時に拒否します。範囲内へ黙って切り詰めると月の途中から始まる不完全な表になるため、全期間を計算できる場合だけ結果を返します。
  • 2025年3月20日グレゴリオ暦を含む表では、2820年算術方式の1404年Farvardin 1を確認できます。公式イラン暦の1404年Farvardin 1として公的予定へ転用せず、方式比較の既知点として扱ってください。
  • 西暦月の途中でFarvardin 1を跨ぐ場合、算術イラン暦の年が表の途中で切り替わります。JDNは必ず1ずつ増え、Esfand末日の次がFarvardin 1になるため、年末・閏日・曜日を一つの表で検算できます。
  • ユリウス暦を選んだ場合も入力された年・月をそのままユリウス規則で解釈し、グレゴリオ暦へ自動補正しません。歴史的採用日を判断する資料ではないので、史料整理では入力暦法、元の表記、変換後のJDNを併記してください。
  • この2ページでいうイラン暦・ペルシャ暦は、2820年を一周期とする決定論的な算術モデルです。現行イランの公式暦はテヘラン付近の春分を基準とする天文学的な暦であり、同じSolar Hijriという名称でも計算根拠が異なります。本ツールは参照ページとの互換性と再現性を優先し、ページ名、結果説明、注意事項で必ず『算術』と明記します。
  • 参照ページを実測すると、算術年1404年Farvardin 1はグレゴリオ暦2025年3月20日になります。一方、公式天文学暦および公式期間を近似するICU方式では2025年3月21日です。この1日差は誤差を隠す対象ではなく、2820年算術方式を識別する重要な既知点です。公文書、祝日、契約、査証、出生証明などにはイラン側が公表した公式暦を確認してください。
  • 算術暦元はJDN 1948321で、ユリウス暦622年3月19日、prolepticグレゴリオ暦622年3月22日、算術イラン暦1年Farvardin 1を同じ暦日として結びます。すべての行は整数Julian Day Numberを共通の橋にして換算するため、端末の地域設定やタイムゾーンで日付が変わりません。
  • 年の計算ではyから2820年周期内の年eyを求め、平年365日を積み上げ、周期内の閏日数を整数のfloor演算で加えます。1〜6月は各31日、7〜11月は各30日、Esfandは平年29日・算術閏年30日です。存在しないEsfand 30を翌月へ繰り越すような曖昧な補正は行いません。
  • 年0や負の年は公開入力として認めません。参照ページが年0を受理しても、一般的なイラン暦年号と混同しやすいため修正対象としました。元期より前、入力上限より後、小数年、NaN、Infinity、未知の選択値、未使用または重複した入力はエラーとして止めます。
  • 表示期間は開始月の1日を含み、選んだ元暦で1・2・6か月後または翌年同月の1日を含まない半開区間です。1か月を30日へ固定せず、イラン暦なら29〜31日、西暦なら28〜31日、1暦年なら365日または366日を行ごとに列挙します。最大385行の共通上限内で全日を省略しません。
  • グレゴリオ暦とユリウス暦は、歴史上の導入日や廃止日を自動判定せず、各閏年規則を前後へ数学的に延長するproleptic calendarです。史料の日付を換算するときは、その地域と時代が実際に採用した暦法を別途確認し、結果列の名称とJDNを一緒に保存してください。
  • 曜日はJavaScript Dateへ渡さず、整数JDNの7日周期から月曜日〜日曜日を直接決めます。同一JDNのイラン暦、グレゴリオ暦、ユリウス暦、算術ヒジュラ暦は必ず同じ曜日です。改暦で表記日が異なる場合も、曜日とJDNを使って一日ずれを検算できます。
  • 算術ヒジュラ暦列はStandard、参照Kuwaiti、Fatimidの3方式から選びます。これは月の観測、地域宗教当局の宣言、日没後の境界を再現するものではありません。同じcivil dateでも実際の宗教日は場所と時刻で変わり得るため、礼拝や宗教行事には公式発表を優先してください。
  • 算術イラン暦元から算術ヒジュラ暦元までの初期約118日は、正のAH年へ変換できません。その行は年0や負のヒジュラ年を創作せず『イスラム暦元期前』と表示します。イラン暦とヒジュラ暦は名前に暦を含んでも、一方が太陽暦、他方が太陰暦であり、年や月の進み方は一致しません。
  • 日付は時刻を持たない暦日として扱います。春分の瞬間、テヘランの真太陽正午、UTC、夏時間、経度、日没、日の出は入力も計算もしません。そのため公式天文学暦のFarvardin 1を求める機能ではなく、2820年算術規則によるラベル対応表として利用してください。
  • 結果は利用者のブラウザー内だけで計算します。JavaScript Date、現在時計、外部API、fetch、XMLHttpRequest、WebSocket、CDN暦ライブラリ、位置情報、Cookie、ファイルアップロードを使用しません。入力した年月、方式、生成した表をサーバーへ送信せず、利用者側のCPUとメモリだけを使います。
  • 結果セルは1〜192 UTF-16 code unitの単行文字列として検証し、制御文字を拒否します。TSVコピーでは表計算ソフトの自動日付変換や数式解釈に注意し、暦法名とJDN列を残してください。狭い画面では表領域だけを横スクロールさせ、列を削除せず既存サイトのフォントと余白を継承します。
  • 正常例、算術暦元、2025年の方式差、入力上限、元期前、年0の不正例を固定テストにします。Python整数実装、独立した算術oracle、ブラウザーJavaScriptをJDN、月長、往復変換、代表セル、行数で照合し、1024pxと375pxの実ブラウザでも操作・折返し・横スクロールを確認します。
  • ページ先頭にはcalculator-firstで入力欄、計算ボタン、結果表を配置し、その下へ使い方、式、公式暦との差、範囲、FAQを掲載します。既存ページのデザイン、フォント、余白を継承し、本文・追加CSS・追加JavaScriptの3点で完結できる構成をローカルに生成します。
  • builderはWordPress本文、追加CSS、追加JavaScript、preview、manifest、QA記録の元定義をローカルへ保存するだけです。WordPressの下書き作成、記事更新、公開操作は行いません。ユーザーから明示的な公開指示があるまでready-localで管理し、公開時も1ページ1ツールを維持します。
  • Reingoldの公開暦算法、Unicode ICUの公式暦と各近似方式の説明、US Naval ObservatoryのJDN資料を照合しました。参照URLと確認日はレビュー用メタデータに固定し、実行時には接続しません。式、適用範囲、2025年の差の最終確認日は2026年7月15日です。
  • 2820年周期の算術暦による学習・照合用です。イラン公式暦、祝日、公文書、宗教日程を自動確定しません。

よくある質問

2025年3月20日はFarvardin 1ですか?

本ページの2820年算術方式では該当しますが、公式天文学暦の1404年Farvardin 1とは1日違います。

グレゴリオ暦とユリウス暦を自動判定しますか?

しません。選んだ規則をprolepticに適用するため、史料が使った暦法を確認してください。

結果が別サービスと1日違うのはなぜですか?

公式天文学方式、33年近似、2820年算術方式の違いが主因になり得ます。方式名とJDNを比較してください。

入力した暦法、年月、期間、方式と生成結果はこの端末のブラウザー内だけで処理し、外部へ送信・保存しません。