Extra 1. Almagestで使用される暦
|
|
「Almagest」ではエジプト暦(太陽暦)を採用しており、バビロニアのNabonassar王の時代から起算しています。 1年が365日、1年に30日の月が12ヵ月あり残り5日を12月の後に付けます。
暦の第1日目は-746年2月26日でその日がNabonassar 1年1月1日となります。
但し、時刻は昼間正午(12時)が0時です。
エジプト暦の月の名前(ギリシャ語訳)
| Month | Name |
| I | Thoth |
| II | Phaophi |
| III | Athyr |
| IV | Choiak |
| V | Tybi |
| VI | Mechir |
| VII | Phamenoth |
| VIII | Pharmouthi |
| IX | Pachon |
| X | Payni |
| XI | Epiphi |
| XII | Mesore |
(「Ptolemy's Almagest」p.9より)
|
|
「Almagest」で使われている暦は以下のプログラムで簡単に換算できる。
(但し、12月は35日まであることにしている。)
// Nabonassar紀年の年月日より暦元からの日数を計算するプログラム
double ND(double year,double month,double day,double hour)
{
double nday;
nday = (year-1.0)*365.0 + (month-1.0)*30.0 + (day-1.0) + hour/24.0;
return nday;
}
なおユリウス通日に変換するためには、Nabonassar通日に"1448638.5日"を加えます。
// 暦元からの日数をからNabonassar紀年の年月日を計算するプログラム
void Nab(double nabday,double *nyear, double *nmonth,double *nday,double *nhour)
{
double ny,nm,nd,nh;
ny=(double)(int)(nabday/365.0);
nabday=nabday-ny*365.0;
nm=(double)(int)(nabday/30.0);
nabday=nabday-nm*30;
nd=(double)(int)(nabday);
nh=nabday-nd;
if(nm==12){nm=11;nd=nd+30;}
*nyear=ny+1.0;
*nmonth=nm+1.0;
*nday =nd+1.0;
*nhour=nh*24.0;
}
|
|
|
2016/03/16 Up
2016/03/18 修正
2016/03/24 修正
Copyright(C) 2016 Shinobu Takesako
All rights reserved
|
|