Việt
Nam
Văn
Hiến
Năm
Thứ
4889
www.vietnamvanhien.net
Âm Lịch Việt Nam
Âm lịch Việt Nam qua các thời kỳ lịch sử
Hồ Ngọc Đức
Âm lịch dùng tại Việt Nam (mà đúng hơn phải
gọi là âm-dương lịch) là loại lịch
có nguồn gốc tại Trung Quốc. Các hệ thống âm lịch
đều được tính dựa trên những nguyên tắc cơ bản giống
nhau [2, 6]: tháng âm lịch bắt đầu vào ngày
Sóc; tháng Nhuận đặt vào tháng không
có Trung khí. Trong lịch sử có nhiều giai đoạn
người Việt sử dụng lịch của Trung Quốc nhưng cũng có nhiều thời
kỳ chúng ta tự tính âm lịch cho mình
dùng. Tuy dựa vào các nguyên tắc chung nhưng
vì cách áp dụng nguyên tắc khi tính
lịch có thể khác nhau (chẳng hạn, xác định
Sóc và Trung khí dựa trên chuyển động thực
hay chuyển động trung bình; hoặc tính lịch theo
các múi giờ khác nhau) nên âm lịch
Việt Nam và Trung Quốc có nhiều điểm khác biệt.
Khi đọc các tác phẩm lịch sử Việt Nam cổ chúng ta
có thể nhận thấy nhiều khi ngày tháng ghi trong
đó khác với ngày tháng trong âm lịch
Trung Quốc. Nhiều tháng trong sử ta ghi là tháng
nhuận nhưng trong lịch Tàu thì tháng đó
không nhuận. Có tháng theo lịch ta là
tháng thiếu nhưng theo lịch Tàu lại là
tháng đủ và ngược lại.
Âm lịch
dùng tại Việt Nam là lịch nào?
Dựa vào kết quả của một công trình nghiên cứu
công phu về lịch và lịch Việt Nam của giáo sư
Hoàng Xuân Hãn [2], chúng ta biết được trước
năm 1945 tại Việt Nam dùng lịch nào và lịch
đó khác với lịch Trung Quốc ở những giai đoạn nào.
Thời Bắc thuộc: Lịch Trung Quốc được sử dụng
tại Việt Nam.
Từ nhà Ngô đến
đầu nhà Lý (khoảng 939-1078): Có lẽ các
vương triều đầu tiên của nước Việt Nam độc lập vẫn dùng
lịch Tàu.
Nhà Lý
và nhà Trần (1080-1300): Việt Nam tự tính lịch
riêng (theo một phép lịch thời nhà Tống bên
Trung Quốc). Có nhiều điểm khác biệt giữa lịch ta
và lịch Trung Quốc trong giai đoạn này. Đáng tiếc
là không có đủ tài liệu lịch sử để phục hồi
lịch này.
Nhà Trần, Hồ
và Lê (1306-1644): Thời kỳ này Việt Nam sử dụng
lịch giống như lịch nhà Nguyên và Minh dùng
tại Trung Quốc (có thể người Việt đã học được phép
lịch Thụ Thời khi đi sứ nhà Nguyên khoảng 1300 và
sau đó có thể tự tính lịch). Ngay cả trong thời kỳ
Trịnh-Nguyễn phân tranh (1627 trở đi), các chúa
Nguyễn ở miền Nam vẫn dùng lịch giống nhà Lê-Trịnh.
Năn 1384 nhà Minh ở Trung Quốc đổi tên lịch Thụ Thời
thành Đại Thống nhưng vẫn giữ nguyên cách
tính. Cho đến hết đời Minh (1644) lịch ta và lịch
Tàu không khác nhau.
Từ thời Trịnh-Nguyễn
phân tranh đến đầu nhà Nguyễn (1645-1812): Việt Nam
dùng lịch riêng, tính theo phép lịch Đại
thống. Tại Trung Quốc, năm 1644 nhà Thanh lên đã
dùng phép lịch mới (lịch Thời Hiến). Lịch ta và
lịch Tàu khác nhau nhiều.
Thời Tây Sơn
(1789-1801): Không rõ nhà Tây Sơn
dùng lịch gì vì các văn kiện thời Tây
Sơn sau bị phá hủy hết. Có lẽ Tây Sơn đã
chuyển sang dùng lịch giống lịch nhà Thanh bên
Trung Quốc (theo [2], tr. 949). Tại vùng chúa Nguyễn kiểm
soát trong giai đoạn này vẫn sử dụng lịch của nhà
Lê (tính theo phép lịch Đại Thống). Sau khi Gia
Long lên ngôi vẫn duy trì lịch cũ (tên
là lịch Vạn Toàn) đến 1812.
Thời nhà Nguyễn
và thuộc Pháp (1813-1945): Dùng lịch Hiệp Kỷ
(tính theo phép lịch Thời Hiến của nhà Thanh).
Không có sự khác biệt giữa lịch Việt Nam và
lịch Trung Quốc.
Giai đoạn kháng
chiến chống Pháp (1946-1954): Có lẽ Việt Nam
không còn cơ quan tính lịch riêng nên
làm lịch theo sách Vạn niên thư của Trung Quốc. Như
thế lịch ta và lịch Tàu không khác nhau.
Thời kỳ hai miền chia cắt
(1955-1975): Âm lịch tại hai miền Bắc Nam có chỗ
khác nhau (và khác với lịch Trung Quốc) do sử dụng
các múi giờ khác nhau cho việc tính
toán. Ở miền Bắc dùng múi giờ thứ 8 tới năm 1967
và múi giờ thứ 7 từ 1968 trở đi. Tại miền Nam sử dụng
múi giờ thứ 8.
Từ 1976 trở đi: Cả nước
Việt Nam tính lịch âm theo múi giờ thứ 7. Do
khác múi giờ nên có nhiều điểm lịch ta
và lịch Tàu khác nhau.
Ghi chú: Từ 1943 đến 1967 có
vài lần thay đổi múi giờ chính thức, tuy
nhiên có lẽ việc thay đổi múi giờ chỉ liên
quan tới việc tính giờ chứ không làm ảnh hưởng tới
việc tính ngày tháng âm lịch. Từ 01/01/1943
theo múi giờ thứ 8 (GMT+8, sớm hơn 1h so với giờ chuẩn). Từ
1/4/1945 theo giờ Nhật Bản dùng múi giờ thứ 9. Từ
1/4/1947 quay trở lại dùng múi giờ thứ 8. Ở miền Nam từ
1/7/1955 sử dụng múi giờ thứ 7, sau đó từ 1/1/1960 quay
lại dùng múi giờ thứ 8. Ở miền Bắc thì từ 8/8/1967
trở đi dùng múi giờ thứ 7 (trước đó theo
múi giờ thứ 8). Phải từ 1968 trở đi âm lịch tại miền Bắc
và từ 1976 trong cả nước mới được tính dựa theo
múi giờ chuẩn của Việt Nam.
Chương
trình tính âm lịch VNCal
Chương trình tính âm lịch VNCal mà
tôi thiết kế (http://www.informatik.uni-leipzig.de/~duc/amlich/)
có chức năng tính lịch pháp định ("Official
calendar"). Đây là lịch được chính quyền đương thời
phát hành và cho sử dụng. Lịch này cũng
có thể gọi là lịch chính thức, lịch hành
chính hay lịch lịch sử.
- Từ 900 đến 1300, chương trình hiển thị ngày
tháng âm lịch của lịch Trung Quốc [5]. Những dữ liệu
này thật ra không hoàn toàn phù hợp
với lịch Việt Nam trong khoảng 1080-1300 như ta đã biết, nhưng
vì không có đủ tài liệu để tái tạo
lịch nên chưa thể khắc phục được.
- Từ 1301 đến 1945 âm lịch pháp định của Việt
Nam được tính dựa theo nghiên cứu của Hoàng
Xuân Hãn [2]. Trong khoảng này có một thời
gian dài (1645-1812) lịch Việt Nam và lịch Trung Quốc
khác nhau.
- Từ 1946 trở đi lịch được tính theo các qui
tắc hiện đại, áp dụng cho múi giờ chính thức được
dùng tại Việt Nam. (Cách tính lịch được miêu
tả cụ thể tại [6]).
- Trong những thời kỳ mà ở hai miền dùng hai
loại âm lịch khác nhau (Tây Sơn-Nguyễn 1789-1802
và Bắc-Nam 1968-1975) thì chương trình hiển thị
ngày tháng của cả 2 lịch chính thức nếu như những
ngày tháng này khác nhau. Trong giai đoạn
1955-1975, ngày âm theo lịch miền Bắc được hiển thị ở
góc phải bên dưới (nơi bình thường vẫn in
ngày âm lịch) và ngày tháng âm
theo lịch miền Nam được in trong ngoặc vuông ở góc phải
bên trên (VD: [28/1]). Trong
giai đoạn 1789-1802, ngày tháng theo lịch Trung Quốc
(mà có thể là nhà Tây Sơn dùng
-- điều này còn là nghi vấn) được hiển thị trong
ngoặc vuông ở góc phải bên trên.
Tài liệu
tham khảo
[1] La Sơn Yên Hồ Hoàng Xuân Hãn,
Tập I, NXB Giáo Dục, Hà Nội, 1998
[2] Hoàng Xuân Hãn, Lịch và
lịch Việt Nam, trong [1] trang 851--
[3] Bách trúng kinh (bản in, lưu tại thư viện
Viện Hán Nôm, Hà Nội). Có lịch Lê -
Trịnh từ năm 1624 đến năm 1785. (Trong [2], tr. 940, Hoàng
Xuân Hãn nhắc tới việc năm 1945 ông "... thấy một
sách viết cũ, mang tên Bách-trúng-kinh,
có
chép
tháng
đủ
thiếu
và
tháng
nhuận
của
những
năm
từ
Lê
Thần-tông
Vĩnh-tộ
thứ
6
(1624)
đến
Tây-sơn
Cảnh-thịnh
thứ
7 (1799)..." Phải chăng hai bản
Bách trúng kinh này khác nhau?)
[4] Khâm định vạn niên thư (bản in, lưu tại Thư
viện Quốc gia, Hà Nội). In lịch Lê - Trịnh từ năm 1554 đến
năm 1630, lịch của Chúa Nguyễn Đàng trong từ năm 1631 đến
năm 1801 và lịch nhà Nguyễn từ năm 1802 đến năm 1903
[5] http://www.sinica.edu.tw/~tdbproj/sinocal/luso.html
(Âm lịch dùng tại Trung Quốc qua các thời đại)
[6] Hồ Ngọc Đức, Thuật toán tính âm
lịch (http://www.informatik.uni-leipzig.de/~duc/amlich/calrules.html)
Nguồn:
http://www.informatik.uni-leipzig.de/~duc/amlich/
Thuật toán tính âm lịch
Hồ Ngọc Đức
Bài viết sau giới thiệu cách tính âm lịch
Việt Nam và mô tả một số thuật toán dùng để
chuyển đổi giữa ngày dương lịch và ngày âm
lịch. Các thuật toán mô tả ở đây đã
được đơn giản hóa nhiều để bạn đọc tiện theo dõi
và dễ dàng sử dụng vào việc lập trình, do
đó độ chính xác của chúng thấp hơn độ
chính xác của chương trình âm lịch trực
tuyến tại http://www.informatik.uni-leipzig.de/~duc/amlich/.
(Một
phiên
bản
cũ
của
bài
viết
này
giới
thiệu
vài
thuật
toán
hơi
khác,
có
thể
khó
thực
hiện
hơn
một
chút. Bản cũ này có thể xem tại đây.)
[If you cannot read Vietnamese: Old version in English]
Quy luật của âm lịch
Việt Nam
Âm lịch Việt Nam là một loại lịch thiên văn.
Nó được tính toán dựa trên sự chuyển động
của mặt trời, trái đất và mặt trăng. Ngày
tháng âm lịch được tính dựa theo các
nguyên tắc sau:
- Ngày đầu tiên của tháng âm lịch
là ngày chứa điểm Sóc
- Một năm bình thường có 12 tháng
âm lịch, một năm nhuận có 13 tháng âm lịch
- Đông chí luôn rơi vào
tháng 11 âm lịch
- Trong một năm nhuận, nếu có 1 tháng
không có Trung khí thì
tháng
đó
là
tháng
nhuận.
Nếu
nhiều
tháng
trong
năm
nhuận
đều
không
có
Trung
khí
thì
chỉ
tháng
đầu
tiên
sau
Đông chí
là tháng nhuận
- Việc tính toán dựa trên kinh tuyến
105° đông.
Sóc
là thời điểm hội diện, đó là khi trái đất,
mặt trăng và mặt trời nằm trên một đường thẳng và
mặt trăng nằm giữa trái đất và mặt trời. (Như thế
góc giữa mặt trăng và mặt trời bằng 0 độ). Gọi là "hội diện" vì mặt trăng
và mặt trời ở cùng một hướng đối với trái đất. Chu
kỳ của điểm Sóc là khoảng 29,5 ngày. Ngày
chứa điểm Sóc được gọi là ngày Sóc,
và đó là ngày bắt đầu tháng âm
lịch.
Trung
khí là các điểm chia đường hoàng
đạo thành 12 phần bằng nhau. Trong đó, bốn Trung
khí giữa bốn mùa là đặc biệt nhất: Xuân phân (khoảng 20/3), Hạ
chí (khoảng 22/6), Thu phân (khoảng 23/9) và
Đông chí (khoảng 22/12).
Bởi vì dựa trên cả mặt trời và mặt trăng
nên lịch Việt Nam không phải là thuần âm lịch
mà là âm-dương-lịch.
Theo các nguyên tắc trên, để tính ngày
tháng âm lịch cho một năm bất kỳ trước hết chúng ta
cần xác định những ngày nào trong năm chứa
các thời điểm Sóc (New
moon) . Một khi bạn đã tính được ngày
Sóc, bạn đã biết được ngày bắt đầu và kết
thúc của một tháng âm lịch: ngày mùng
một của tháng âm lịch là ngày chứa điểm
sóc. Sau khi đã biết ngày bắt đầu/kết thúc
các tháng âm lịch, ta tính xem các
Trung khí (Major solar term)
rơi vào tháng nào để từ đó xác định
tên các tháng và tìm tháng
nhuận.
Đông chí luôn rơi vào tháng
11 của năm âm lịch. Bởi vậy chúng ta cần tính 2
điểm sóc: Sóc A ngay trước ngày Đông
chí thứ nhất và Sóc B ngay trước ngày
Đông chí thứ hai. Nếu khoảng cách giữa A và
B là dưới 365 ngày thì năm âm lịch có
12 tháng, và những tháng đó có
tên là: tháng 11, tháng 12, tháng 1,
tháng 2, …, tháng 10. Ngược lại, nếu khoảng cách
giữa hai sóc A và B là trên 365 ngày
thì năm âm lịch này là năm nhuận, và
chúng ta cần tìm xem đâu là tháng
nhuận. Để làm việc này ta xem xét tất cả
các tháng giữa A và B, tháng đầu tiên
không chứa Trung khí sau ngày Đông chí
thứ nhất là tháng nhuận. Tháng đó sẽ được
mang tên của tháng trước nó kèm chữ "nhuận".
Khi tính ngày Sóc và ngày
chứa Trung khí bạn cần lưu ý xem xét chính
xác múi giờ. Đây là lý do tại sao
có một vài điểm khác nhau giữa lịch Việt Nam
và lịch Trung Quốc.Ví dụ, nếu bạn biết thời điểm hội diện
là vào lúc yyyy-02-18 16:24:45 GMT thì
ngày Sóc của lịch Việt Nam là 18 tháng 2,
bởi vì 16:24:45 GMT là 23:24:45 cùng ngày,
giờ Hà nội (GMT+7, kinh tuyến 105° đông). Tuy
nhiên theo giờ Bắc Kinh (GMT+8, kinh tuyến 120° đông)
thì Sóc là lúc 00:24:45 ngày
yyyy-02-19, do đó tháng âm lịch của Trung Quốc lại
bắt đầu ngày yyyy-02-19, chậm hơn lịch Việt Nam 1 ngày.
Ví dụ 1: Âm lịch năm 1984
Chúng ta áp dụng quy luật trên để tính
âm lịch Việt nam năm 1984.
- Sóc A (ngay trước Đông chí năm 1983)
rơi vào ngày 4/12/1983, Sóc B (ngay trước
Đông chí năm 1984) vào ngày 23/11/1984.
- Giữa A và B là khoảng 355 ngày, như
thế năm âm lịch 1984 là năm thường. Tháng 11
âm lịch của năm trước kéo dài từ 4/12/1983 đến
2/01/1984, tháng 12 âm từ 3/1/1984 đến 1/2/1984,
tháng Giêng từ 2/2/1984 đến 1/3/1984 v.v.
Ví dụ 2: Âm lịch năm 2004
- Sóc A - điểm sóc cuối cùng trước
Đông chí 2003 - rơi vào ngày 23/11/2003.
Sóc B (ngay trước Đông chí năm 2004) rơi vào
ngày 12/12/2004.
- Giữa 2 ngày này là khoảng 385
ngày, như vậy năm âm lịch 2004 là năm nhuận.
Tháng 11 âm của năm 2003 bắt đầu vào ngày
chứa Sóc A, tức ngày 23/11/2003.
- Tháng âm lịch đầu tiên sau đó
mà không chứa Trung khí là tháng từ
21/3/2004 đến 18/4/2004 (Xuân phân rơi vào
20/3/2004, còn Cốc vũ là 19/4/2004). Như thế tháng
ấy là tháng nhuận.
- Từ 23/11/2003 đến 21/3/2004 là khoảng 120
ngày, tức 4 tháng âm lịch: tháng 11, 12, 1
và 2. Như vậy năm 2004 có tháng 2 nhuận.
Thuật toán chuyển đổi
giữa ngày dương và âm
Trong tính toán thiên văn người ta lấy ngày
1/1/4713 trước công nguyên của lịch Julius (tức ngày
24/11/4714 trước CN theo lịch Gregorius) làm điểm gốc. Số
ngày tính từ điểm gốc này gọi là số
ngày Julius (Julian day number) của một thời điểm. Ví dụ,
số ngày Julius của 1/1/2000 là 24515455.
Dùng các công thức sau ta có thể
chuyển đổi giữa ngày/tháng/năm và số ngày
Julius. Phép chia ở 2 công thức sau được hiểu là
chia số nguyên, bỏ phần dư: 23/4=5.
Đổi ngày dd/mm/yyyy ra số ngày Julius jd
a = (14 - mm) / 12 y = yy+4800-a m = mm+12*a-3
Lịch Gregory:
jd = dd + (153*m+2)/5 + 365*y + y/4 - y/100 + y/400 - 32045
Lịch Julius:
jd = dd + (153*m+2)/5 + 365*y + y/4 - 32083
Đổi số ngày Julius jd ra ngày dd/mm/yyyy
Lịch Gregory (jd lớn hơn 2299160):
a = jd + 32044; b = (4*a+3)/146097; c = a - (b*146097)/4;
Lịch Julius:
b = 0; c = jd + 32082;
Công thức cho cả 2 loại lịch:
d = (4*c+3)/1461; e = c - (1461*d)/4; m = (5*e+2)/153; dd = e - (153*m+2)/5 + 1; mm = m + 3 - 12*(m/10); yy = b*100 + d - 4800 + m/10;
Nếu ngôn ngữ lập trình bạn dùng không hỗ trợ
phép chia số nguyên bỏ phần dư (VD: JavaScript), bạn
có thể định nghĩa một hàm INT(x) để lấy số nguyên
lớn nhất không vượt quá x: INT(5)=5, INT(3.2)=3,
INT(-5)=-5, INT(-3.2)=-4 v.v. Khi đó, INT(m/10) sẽ trả lại kết
quả của phép chia số nguyên. (Nhiều ngôn ngữ
có sẵn hàm floor() cho phép làm việc
này.)
Các phép chuyển đổi giữa ngày
tháng và số ngày Julius có thể được thực
hiện với mã JavaScript như sau:
function jdFromDate(dd, mm, yy)
var a, y, m, jd; a = INT((14 - mm) / 12); y = yy+4800-a; m = mm+12*a-3; jd = dd + INT((153*m+2)/5) + 365*y + INT(y/4) - INT(y/100) + INT(y/400) - 32045; if (jd < 2299161) { jd = dd + INT((153*m+2)/5) + 365*y + INT(y/4) - 32083; } return jd;
function jdToDate(jd)
var a, b, c, d, e, m, day, month, year; if (jd > 2299160) { // After 5/10/1582, Gregorian calendar a = jd + 32044; b = INT((4*a+3)/146097); c = a - INT((b*146097)/4); } else { b = 0; c = jd + 32082; } d = INT((4*c+3)/1461); e = c - INT((1461*d)/4); m = INT((5*e+2)/153); day = e - INT((153*m+2)/5) + 1; month = m + 3 - 12*INT(m/10); year = b*100 + d - 4800 + INT(m/10); return new Array(day, month, year);
Trong các công thức sau, timeZone là số giờ
chênh lệch giữa giờ địa phương và giờ UTC (hay GMT). (Để
tính lịch Việt Nam, lấy timeZone = 7.0). Các phương
pháp sau được giới thiệu với mã JavaScript. Bạn có
thể tải thư viện JavaScript hoặc thư viện PHP hoàn chỉnh để tham khảo.
Tính ngày
Sóc
Như trên đã nói, để tính được âm lịch
trước hết ta cần xác định các tháng âm lịch
bắt đầu vào ngày nào.
Thuật toán sau tính ngày Sóc thứ k
kể từ điểm Sóc ngày 1/1/1900. Kết quả trả về là số
ngày Julius của ngày Sóc cần tìm.
function getNewMoonDay(k, timeZone)
var T, T2, T3, dr, Jd1, M, Mpr, F, C1, deltat, JdNew; T = k/1236.85; // Time in Julian centuries from 1900 January 0.5 T2 = T * T; T3 = T2 * T; dr = PI/180; Jd1 = 2415020.75933 + 29.53058868*k + 0.0001178*T2 - 0.000000155*T3; Jd1 = Jd1 + 0.00033*Math.sin((166.56 + 132.87*T - 0.009173*T2)*dr); // Mean new moon M = 359.2242 + 29.10535608*k - 0.0000333*T2 - 0.00000347*T3; // Sun's mean anomaly Mpr = 306.0253 + 385.81691806*k + 0.0107306*T2 + 0.00001236*T3; // Moon's mean anomaly F = 21.2964 + 390.67050646*k - 0.0016528*T2 - 0.00000239*T3; // Moon's argument of latitude C1=(0.1734 - 0.000393*T)*Math.sin(M*dr) + 0.0021*Math.sin(2*dr*M); C1 = C1 - 0.4068*Math.sin(Mpr*dr) + 0.0161*Math.sin(dr*2*Mpr); C1 = C1 - 0.0004*Math.sin(dr*3*Mpr); C1 = C1 + 0.0104*Math.sin(dr*2*F) - 0.0051*Math.sin(dr*(M+Mpr)); C1 = C1 - 0.0074*Math.sin(dr*(M-Mpr)) + 0.0004*Math.sin(dr*(2*F+M)); C1 = C1 - 0.0004*Math.sin(dr*(2*F-M)) - 0.0006*Math.sin(dr*(2*F+Mpr)); C1 = C1 + 0.0010*Math.sin(dr*(2*F-Mpr)) + 0.0005*Math.sin(dr*(2*Mpr+M)); if (T < -11) { deltat= 0.001 + 0.000839*T + 0.0002261*T2 - 0.00000845*T3 - 0.000000081*T*T3; } else { deltat= -0.000278 + 0.000265*T + 0.000262*T2; }; JdNew = Jd1 + C1 - deltat; return INT(JdNew + 0.5 + timeZone/24)
Với hàm này ta có thể tính được
tháng âm lịch chứa ngày N bắt đầu vào
ngày nào: giữa ngày 1/1/1900 (số ngày
Julius: 2415021) và ngày N có khoảng
k=INT((N-2415021)/29.530588853) tháng âm lịch, như thế
dùng hàm getNewMoonDay sẽ biết ngày đầu
tháng âm lịch chứa ngày N, từ đó ta biết
ngày N là mùng mấy âm lịch.
Tính tọa độ mặt
trời
Để biết Trung khí nào nằm trong tháng âm
lịch nào, ta chỉ cần tính xem mặt trời nằm ở khoảng
nào trên đường hoàng đạo vào thời điểm bắt
đầu một tháng âm lịch. Ta chia đường hoàng đạo
làm 12 phần và đánh số các cung này
từ 0 đến 11: từ Xuân phân đến Cốc vũ là 0; từ Cốc vũ
đến Tiểu mãn là 1; từ Tiểu mãn đến Hạ chí
là 2; v.v.. Cho jdn là số ngày Julius của bất kỳ
một ngày, phương pháp sau này sẽ trả lại số cung
nói trên.
function getSunLongitude(jdn, timeZone)
var T, T2, dr, M, L0, DL, L; T = (jdn - 2451545.5 - timeZone/24) / 36525; // Time in Julian centuries from 2000-01-01 12:00:00 GMT T2 = T*T; dr = PI/180; // degree to radian M = 357.52910 + 35999.05030*T - 0.0001559*T2 - 0.00000048*T*T2; // mean anomaly, degree L0 = 280.46645 + 36000.76983*T + 0.0003032*T2; // mean longitude, degree DL = (1.914600 - 0.004817*T - 0.000014*T2)*Math.sin(dr*M); DL = DL + (0.019993 - 0.000101*T)*Math.sin(dr*2*M) + 0.000290*Math.sin(dr*3*M); L = L0 + DL; // true longitude, degree L = L*dr; L = L - PI*2*(INT(L/(PI*2))); // Normalize to (0, 2*PI) return INT(L / PI * 6)
Với hàm này ta biết được một tháng âm lịch
chứa Trung khí nào. Giả sử một tháng âm lịch
bắt đầu vào ngày N1 và tháng sau đó
bắt đầu vào ngày N2 và hàm getSunLongitude
cho kết quả là 8 với N1 và 9 với N2. Như vậy tháng
âm lịch bắt đầu ngày N1 là tháng chứa
Đông chí: trong khoảng từ N1 đến N2 có một
ngày mặt trời di chuyển từ cung 8 (sau Tiểu tuyết) sang cung 9
(sau Đông chí). Nếu hàm getSunLongitude trả lại
cùng một kết quả cho cả ngày bắt đầu một tháng
âm lịch và ngày bắt đầu tháng sau đó
thì tháng đó không có Trung
khí và như vậy có thể là tháng
nhuận.
Tìm ngày
bắt đầu tháng 11 âm lịch
Đông chí thường nằm vào khoảng 19/12-22/12, như vậy
trước hết ta tìm ngày Sóc trước ngày 31/12.
Nếu tháng bắt đầu vào ngày đó không
chứa Đông chí thì ta phải lùi lại 1
tháng nữa.
function getLunarMonth11(yy, timeZone)
var k, off, nm, sunLong; off = jdFromDate(31, 12, yy) - 2415021; k = INT(off / 29.530588853); nm = getNewMoonDay(k, timeZone); sunLong = getSunLongitude(nm, timeZone); // sun longitude at local midnight if (sunLong >= 9) { nm = getNewMoonDay(k-1, timeZone); } return nm;
Xác định
tháng nhuận
Nếu giữa hai tháng 11 âm lịch (tức tháng có
chứa Đông chí) có 13 tháng âm lịch
thì năm âm lịch đó có tháng nhuận. Để
xác định tháng nhuận, ta sử dụng hàm getSunLongitude
như đã nói ở trên. Cho a11 là ngày
bắt đầu tháng 11 âm lịch mà một trong 13
tháng sau đó là tháng nhuận. Hàm sau
cho biết tháng nhuận nằm ở vị trí nào sau
tháng 11 này.
function getLeapMonthOffset(a11, timeZone)
var k, last, arc, i; k = INT((a11 - 2415021.076998695) / 29.530588853 + 0.5); last = 0; i = 1; // We start with the month following lunar month 11 arc = getSunLongitude(getNewMoonDay(k+i, timeZone), timeZone); do { last = arc; i++; arc = getSunLongitude(getNewMoonDay(k+i, timeZone), timeZone); } while (arc != last && i < 14); return i-1;
Giả sử hàm getLeapMonthOffset trả lại giá trị 4,
như thế tháng nhuận sẽ là tháng sau tháng 2
thường. (Tháng thứ 4 sau tháng 11 đáng ra
là tháng 3, nhưng vì đó là
tháng nhuận nên sẽ lấy tên của tháng trước
đó tức tháng 2, và tháng thứ 5 sau
tháng 11 mới là tháng 3).
Đổi ngày dương
dd/mm/yyyy ra ngày âm
Với các phương pháp hỗ trợ trên ta có thể
đổi ngày dương dd/mm/yy ra ngày âm dễ dàng.
Trước hết ta xem ngày monthStart bắt đầu tháng âm
lịch chứa ngày này là ngày nào
(dùng hàm getNewMoonDay như trên đã
nói). Sau đó, ta tìm các ngày a11
và b11 là ngày bắt đầu các tháng 11
âm lịch trước và sau ngày đang xem xét. Nếu
hai ngày này cách nhau dưới 365 ngày
thì ta chỉ còn cần xem monthStart và a11
cách nhau bao nhiêu tháng là có thể
tính được dd/mm/yy nằm trong tháng mấy âm lịch.
Ngược lại, nếu a11 và b11 cách nhau khoảng 13
tháng âm lịch thì ta phải tìm xem
tháng nào là tháng nhuận và từ
đó suy ra ngày đang tìm nằm trong tháng
nào.
function convertSolar2Lunar(dd, mm, yy, timeZone)
var k, dayNumber, monthStart, a11, b11, lunarDay, lunarMonth, lunarYear, lunarLeap; dayNumber = jdFromDate(dd, mm, yy); k = INT((dayNumber - 2415021.076998695) / 29.530588853); monthStart = getNewMoonDay(k+1, timeZone); if (monthStart > dayNumber) { monthStart = getNewMoonDay(k, timeZone); } a11 = getLunarMonth11(yy, timeZone); b11 = a11; if (a11 >= monthStart) { lunarYear = yy; a11 = getLunarMonth11(yy-1, timeZone); } else { lunarYear = yy+1; b11 = getLunarMonth11(yy+1, timeZone); } lunarDay = dayNumber-monthStart+1; diff = INT((monthStart - a11)/29); lunarLeap = 0; lunarMonth = diff+11; if (b11 - a11 > 365) { leapMonthDiff = getLeapMonthOffset(a11, timeZone); if (diff >= leapMonthDiff) { lunarMonth = diff + 10; if (diff == leapMonthDiff) { lunarLeap = 1; } } } if (lunarMonth > 12) { lunarMonth = lunarMonth - 12; } if (lunarMonth >= 11 && diff < 4) { lunarYear -= 1; }
Đổi âm lịch ra
dương lịch
Cách làm cũng tương tự như đổi ngày dương sang
ngày âm.
function convertLunar2Solar(lunarDay, lunarMonth,
lunarYear, lunarLeap, timeZone)
var k, a11, b11, off, leapOff, leapMonth, monthStart; if (lunarMonth < 11) { a11 = getLunarMonth11(lunarYear-1, timeZone); b11 = getLunarMonth11(lunarYear, timeZone); } else { a11 = getLunarMonth11(lunarYear, timeZone); b11 = getLunarMonth11(lunarYear+1, timeZone); } off = lunarMonth - 11; if (off < 0) { off += 12; } if (b11 - a11 > 365) { leapOff = getLeapMonthOffset(a11, timeZone); leapMonth = leapOff - 2; if (leapMonth < 0) { leapMonth += 12; } if (lunarLeap != 0 && lunarMonth != leapMonth) { return new Array(0, 0, 0); } else if (lunarLeap != 0 || off >= leapOff) { off += 1; } } k = INT(0.5 + (a11 - 2415021.076998695) / 29.530588853); monthStart = getNewMoonDay(k+off, timeZone); return jdToDate(monthStart+lunarDay-1);
Tính ngày
thứ và Can-Chi cho ngày và tháng âm
lịch
Ngày thứ lặp lại theo chu kỳ 7 ngày, như thế để biết một
ngày d/m/y bất kỳ là thứ mấy ta chỉ việc tìm số dư
của số ngày Julius của ngày này cho 7.
Để tính Can của năm Y, tìm số dư của Y+6 chia
cho 10. Số dư 0 là Giáp, 1 là Ất v.v. Để
tính Chi của năm, chia Y+8 cho 12. Số dư 0 là Tý,
1 là Sửu, 2 là Dần v.v.
Hiệu Can-Chi của ngày lặp lại theo chu kỳ 60
ngày, như thế nó cũng có thể tính được một
cách đơn giản. Cho N là số ngày Julius của
ngày dd/mm/yyyy. Ta chia N+9 cho 10. Số dư 0 là
Giáp, 1 là Ất v.v. Để tìm Chi, chia N+1 cho 12; số
dư 0 là Tý, 1 là Sửu v.v.
Trong một năm âm lịch, tháng 11 là
tháng Tý, tháng 12 là Sửu, tháng
Giêng là tháng Dần v.v. Can của tháng M năm
Y âm lịch được tính theo công thức sau: chia
Y*12+M+3 cho 10. Số dư 0 là Giáp, 1 là Ất v.v.
Ví dụ, Can-Chi của tháng 3 âm lịch năm
Giáp Thân 2004 là Mậu Thìn: tháng 3
âm lịch là tháng Thìn, và
(2004*12+3+3) % 10 = 24054 % 10 = 4, như vậy Can của tháng
là Mậu.
Một tháng nhuận không có tên
riêng mà lấy tên của tháng trước đó
kèm thêm chữ "Nhuận", VD: tháng 2 nhuận năm
Giáp Thân 2004 là tháng Đinh Mão
nhuận.
Tài liệu tham khảo
Sửa đổi lần cuối: 18/08/2008
Nguồn:
http://www.informatik.uni-leipzig.de/~duc/amlich/
Cách
xác
định
24
tiết
khí
Tiết khí là các thời điểm mà kinh độ mặt
trời (KĐMT) có các giá trị 0°, 15°,
30°, 45°, 60°, ..., 345°. (0° là Xuân
Phân, 15° là Thanh Minh v.v.). Như vậy để xác
định tiết khí ta cần tìm xem vào khoảng thời gian
nào thì kinh độ mặt trời có các giá
trị này.
Tìm
ngày chứa tiết khí
Thường thì ta chỉ quan tâm tới tiết khí rơi
vào ngày nào chứ không cần chính
xác tới giờ/phút. Ngày chứa một tiết khí
nhất định có thể được xác định như sau:
- Chọn một ngày có khả năng chứa tiết
khí cần xác định. Ngày có tiết khí
chỉ xê dịch trong khoảng 1-2 ngày nên ta có
thể chọn khá sát.
- Tính kinh độ mặt trời lúc 0h sáng
ngày hôm đó và 0h sáng ngày
hôm sau
- Nếu kinh độ mặt trời tương ứng với tiết khí cần
xác định nằm giữa hai giá trị này thì
ngày đã chọn chính là ngày chứa tiết
khí, nếu không ta lặp lại việc tìm kiếm này
với ngày trước hoặc sau đó.
Tìm thời điểm
tiết khí
Để tìm thời điểm chính xác của một tiết
khí, sau khi xác định được ngày chứa tiết
khí đó ta có thể thực hiện một phép
tìm kiếm nhị phân đơn giản để tìm ra ngày
giờ của tiết khí này.
- Chọn mốc trên và dưới là 0h và
24h (tức 0h sáng ngày hôm sau). Tính điểm
giữa 2 mốc (12h trưa) và tính KĐMT tại điểm đó.
- Nếu KĐMT này nhỏ hơn KĐMT của tiết khí,
tìm tiếp trong khoảng từ 0h đến 12h, nếu không sẽ
tìm trong khoảng từ 12h đến 24h.
- Lặp lại việc tìm kiếm đến khi KĐMT của hai điểm mốc
cách nhau không quá 0.001 độ.
Bước tính toán quan trọng nhất trong việc xác định
tiết khí là tìm kinh độ mặt trời tại một thời điểm
bất kỳ. Việc tính toán này được thực hiện với 2
bước:
- Tính niên kỷ Julius của thời điểm đã
cho
- Tính kinh độ mặt trời cho thời điểm đó
Ngày và
niên kỷ Julius
Số ngày Julius (Julian Day Number) của một ngày trong
lịch Gregory có thể tính bởi các công thức
sau, sử dụng năm thiên văn (1 TCN là 0, 2 TCN là
−1, 4713 TCN là −4712):
a = [(14 - tháng)/ 12] y = năm + 4800 - a m= tháng + 12a - 3 JDN = ngày + [(153m + 2)/5] + 365y + [y/4] - [y/100] + [y/400] - 32045
Trong các công thức trên [x/y]
là phần nguyên của phép chia x/y .
Để tính niên kỷ Julius (Julian date), thêm
giờ, phút, giây theo UT (Universal Time):
JD = JDN + (giờ - 12)/24 + phút/1440 + giây/86400
Nếu giờ, phút, giây được tính theo giờ
Hà Nội (UTC+7:00) thì kết quả phải trừ đi 7/24
ngày.
Tính kinh độ mặt
trời tại một thời điểm
Để tính kinh độ mặt trời tại thời điểm, trước hết tìm
niên kỷ Julius JD của thời điểm đó theo phương pháp
trên. Sau đó thực hiện các bước sau:
T = (JD - 2451545.0) / 36525 L0 = 280°.46645 + 36000°.76983*T + 0°.0003032*T2 M = 357°.52910 + 35999°.05030*T - 0°.0001559*T2 - 0°.00000048*T3 C = (1°.914600 - 0°.004817*T - 0°.000014*T2) * sin M + (0°.01993 - 0°.000101*T) * sin 2M + 0°.000290 * sin 3M theta = L0 + C lambda = theta - 0.00569 - 0.00478 * sin(125°.04 - 1934°.136*T) lambda = lambda - 360 * [lambda/360]
Kết quả lambda là kinh độ mặt trời cần tìm.
Đó là một góc (tính bằng độ) trong khoảng
(0,360).
Ví dụ
Chọn ngày giờ (giờ Hà Nội, UTC+7:00) và nhấn OK để
tính kinh độ mặt trời tại thời điểm đó:
Kết
quả:
Tìm ngày Đông Chí năm 2008. Kinh độ mặt trời
ứng với Đông Chí là 270°. Ngày
Đông Chí thường rơi vào khoảng 20/12-22/12
hàng năm. Như vậy trước hết ta thử ngày 20/12/2008. KĐMT
lúc 0h sáng ngày 20/12/2008 là
268°.17811 và lúc 0h sáng 21/12/2008 là
269°.19634. Góc 270° nằm sau cả hai giá trị
này, như vậy ta phải thử ngày hôm sau. KĐMT
lúc 0h sáng ngày 22/12/2008 là
270°.21471, như thế điểm Đông Chí nằm trong
ngày 21/12/2008.
Để xác định thời điểm Đông Chí, ta
tính KĐMT lúc 12h ngày 21/12/2008, được kết quả
269°.70551, nhỏ hơn 270°, như vậy điểm Đông Chí
nằm trong khoảng từ 12h đến 24h. Chọn 18h00 ngày 21/12/2008 sẽ
tìm thấy KĐMT 269°.96010, như vậy ta phải tìm tiếp
trong khoảng 18h đến 24h. Vào lúc 21h, KĐMT là
270°.08741, như thế khoảng tìm kiếm bây giờ là
18h đến 21h. Lặp lại việc tìm kiếm này thêm khoảng
7 bước nữa sẽ tìm được thời điểm Đông Chí là
18h56. (Kết quả 'chính xác' tính theo lý
thuyết VSOP87 là 19h04).
Nguồn:
http://www.informatik.uni-leipzig.de/~duc/amlich/
Ngày giờ Sóc
và Tiết khí
Các bảng dưới đây chứa dữ liệu ngày giờ Sóc
(New Moons), Trung khí (Major Solar Term) và Tiết
khí (Minor Solar Terms) cho các năm từ 1000 đến 2999.
Những số liệu này được tính sẵn bằng máy
tính điện tử sử dụng các lý thuyết thiên văn
hiện đại VSOP-87 và ELP-2000 và công bố trên
mạng để mọi người quan tâm có thể tra cứu dễ dàng.
1000-1799
(ZIP)
1800-1819 | 1820-1839 | 1840-1859 | 1860-1879 | 1880-1899
1900-1919 | 1920-1939 | 1940-1959 | 1960-1979 | 1980-1999
2000-2019 | 2020-2039 | 2040-2059 | 2060-2079 | 2080-2099
2100-2119 | 2120-2139 | 2140-2159 | 2160-2179 | 2180-2199
2200-2999
(ZIP)
Các trang liên quan
2010 |
Ngày giờ Sóc |
Ngày giờ các Tiết khí |
|
05/01 18:09 - Tiểu hàn |
15/01 14:11 |
20/01 11:28 - Đại hàn |
|
04/02 05:48 - Lập xuân |
14/02 09:51 |
19/02 01:36 - Vũ Thủy |
|
05/03 23:46 - Kinh trập |
16/03 04:01 |
21/03 00:32 - Xuân phân |
|
05/04 04:30 - Thanh minh |
14/04 19:29 |
20/04 11:30 - Cốc vũ |
|
05/05 21:44 - Lập hạ |
14/05 08:04 |
21/05 10:34 - Tiểu mãn |
|
06/06 01:49 - Mang chủng |
12/06 18:15 |
21/06 18:28 - Hạ chí |
|
07/07 12:02 - Tiểu thử |
12/07 02:40 |
23/07 05:21 - Đại thử |
|
07/08 21:49 - Lập thu |
10/08 10:08 |
23/08 12:27 - Xử thử |
|
08/09 00:45 - Bạch lộ |
08/09 17:30 |
23/09 10:09 - Thu phân |
|
08/10 16:26 - Hàn lộ |
08/10 01:44 |
23/10 19:35 - Sương giáng |
06/11 11:52 |
07/11 19:42 - Lập đông |
|
22/11 17:15 - Tiểu tuyết |
06/12 00:36 |
07/12 12:38 - Đại tuyết |
|
22/12 06:38 - Đông chí |
2011 |
Ngày giờ Sóc |
Ngày giờ các Tiết khí |
04/01 16:03 |
05/01 23:55 - Tiểu hàn |
|
20/01 17:19 - Đại hàn |
03/02 09:31 |
04/02 11:33 - Lập xuân |
|
19/02 07:25 - Vũ Thủy |
05/03 03:46 |
06/03 05:30 - Kinh trập |
|
21/03 06:21 - Xuân phân |
03/04 21:32 |
05/04 10:12 - Thanh minh |
|
20/04 17:17 - Cốc vũ |
03/05 13:51 |
06/05 03:23 - Lập hạ |
|
21/05 16:21 - Tiểu mãn |
02/06 04:03 |
06/06 07:27 - Mang chủng |
|
22/06 00:17 - Hạ chí |
01/07 15:54 |
07/07 17:42 - Tiểu thử |
|
23/07 11:12 - Đại thử |
31/07 01:40 |
08/08 03:33 - Lập thu |
|
23/08 18:21 - Xử thử |
29/08 10:04 |
08/09 06:34 - Bạch lộ |
|
23/09 16:05 - Thu phân |
27/09 18:09 |
08/10 22:19 - Hàn lộ |
|
24/10 01:30 - Sương giáng |
27/10 02:56 |
08/11 01:35 - Lập đông |
|
22/11 23:08 - Tiểu tuyết |
25/11 13:10 |
07/12 18:29 - Đại tuyết |
|
22/12 12:30 - Đông chí |
25/12 01:06 |
|
2012 |
Ngày giờ Sóc |
Ngày giờ các Tiết khí |
|
06/01 05:44 - Tiểu hàn |
|
20/01 23:10 - Đại hàn |
23/01 14:39 |
04/02 17:22 - Lập xuân |
|
19/02 13:18 - Vũ Thủy |
22/02 05:35 |
05/03 11:21 - Kinh trập |
|
20/03 12:14 - Xuân phân |
22/03 21:37 |
04/04 16:06 - Thanh minh |
|
19/04 23:12 - Cốc vũ |
21/04 14:18 |
05/05 09:20 - Lập hạ |
|
20/05 22:16 - Tiểu mãn |
21/05 06:47 |
05/06 13:26 - Mang chủng |
19/06 22:02 |
21/06 06:09 - Hạ chí |
|
06/07 23:41 - Tiểu thử |
19/07 11:24 |
22/07 17:01 - Đại thử |
|
07/08 09:31 - Lập thu |
17/08 22:54 |
23/08 00:07 - Xử thử |
|
07/09 12:29 - Bạch lộ |
16/09 09:11 |
22/09 21:49 - Thu phân |
|
08/10 04:12 - Hàn lộ |
15/10 19:03 |
23/10 07:14 - Sương giáng |
|
07/11 07:26 - Lập đông |
14/11 05:08 |
22/11 04:50 - Tiểu tuyết |
|
07/12 00:19 - Đại tuyết |
13/12 15:42 |
21/12 18:12 - Đông chí |
2013 |
Ngày giờ Sóc |
Ngày giờ các Tiết khí |
|
05/01 11:34 - Tiểu hàn |
12/01 02:44 |
20/01 04:52 - Đại hàn |
|
03/02 23:13 - Lập xuân |
10/02 14:20 |
18/02 19:02 - Vũ Thủy |
|
05/03 17:15 - Kinh trập |
12/03 02:51 |
20/03 18:02 - Xuân phân |
|
04/04 22:02 - Thanh minh |
10/04 16:35 |
20/04 05:03 - Cốc vũ |
|
05/05 15:18 - Lập hạ |
10/05 07:28 |
21/05 04:09 - Tiểu mãn |
|
05/06 19:23 - Mang chủng |
08/06 22:56 |
21/06 12:04 - Hạ chí |
|
07/07 05:35 - Tiểu thử |
08/07 14:14 |
22/07 22:56 - Đại thử |
|
07/08 15:20 - Lập thu |
07/08 04:51 |
23/08 06:02 - Xử thử |
05/09 18:36 |
07/09 18:16 - Bạch lộ |
|
23/09 03:44 - Thu phân |
05/10 07:34 |
08/10 09:58 - Hàn lộ |
|
23/10 13:10 - Sương giáng |
03/11 19:50 |
07/11 13:14 - Lập đông |
|
22/11 10:48 - Tiểu tuyết |
03/12 07:22 |
07/12 06:08 - Đại tuyết |
|
22/12 00:11 - Đông chí |
2014 |
Ngày giờ Sóc |
Ngày giờ các Tiết khí |
01/01 18:14 |
05/01 17:24 - Tiểu hàn |
|
20/01 10:51 - Đại hàn |
31/01 04:38 |
04/02 05:03 - Lập xuân |
|
19/02 00:59 - Vũ Thủy |
01/03 15:00 |
05/03 23:02 - Kinh trập |
|
20/03 23:57 - Xuân phân |
31/03 01:45 |
05/04 03:47 - Thanh minh |
|
20/04 10:55 - Cốc vũ |
29/04 13:14 |
05/05 20:59 - Lập hạ |
|
21/05 09:59 - Tiểu mãn |
29/05 01:40 |
06/06 01:03 - Mang chủng |
|
21/06 17:51 - Hạ chí |
27/06 15:08 |
07/07 11:15 - Tiểu thử |
|
23/07 04:41 - Đại thử |
27/07 05:42 |
07/08 21:02 - Lập thu |
|
23/08 11:46 - Xử thử |
25/08 21:13 |
08/09 00:01 - Bạch lộ |
|
23/09 09:29 - Thu phân |
24/09 13:14 |
08/10 15:47 - Hàn lộ |
|
23/10 18:57 - Sương giáng |
24/10 04:57 |
07/11 19:07 - Lập đông |
|
22/11 16:38 - Tiểu tuyết |
22/11 19:32 |
07/12 12:04 - Đại tuyết |
|
22/12 06:03 - Đông chí |
22/12 08:36 |
|
2015 |
Ngày giờ Sóc |
Ngày giờ các Tiết khí |
|
05/01 23:20 - Tiểu hàn |
|
20/01 16:43 - Đại hàn |
20/01 20:14 |
04/02 10:58 - Lập xuân |
|
19/02 06:50 - Vũ Thủy |
19/02 06:47 |
06/03 04:56 - Kinh trập |
20/03 16:36 |
21/03 05:45 - Xuân phân |
|
05/04 09:39 - Thanh minh |
19/04 01:57 |
20/04 16:42 - Cốc vũ |
|
06/05 02:52 - Lập hạ |
18/05 11:13 |
21/05 15:45 - Tiểu mãn |
|
06/06 06:58 - Mang chủng |
16/06 21:05 |
21/06 23:38 - Hạ chí |
|
07/07 17:12 - Tiểu thử |
16/07 08:24 |
23/07 10:30 - Đại thử |
|
08/08 03:01 - Lập thu |
14/08 21:53 |
23/08 17:37 - Xử thử |
|
08/09 05:59 - Bạch lộ |
13/09 13:41 |
23/09 15:20 - Thu phân |
|
08/10 21:43 - Hàn lộ |
13/10 07:06 |
24/10 00:47 - Sương giáng |
|
08/11 00:59 - Lập đông |
12/11 00:47 |
22/11 22:25 - Tiểu tuyết |
|
07/12 17:53 - Đại tuyết |
11/12 17:29 |
22/12 11:48 - Đông chí |
2016 |
Ngày giờ Sóc |
Ngày giờ các Tiết khí |
|
06/01 05:08 - Tiểu hàn |
10/01 08:30 |
20/01 22:27 - Đại hàn |
|
04/02 16:46 - Lập xuân |
08/02 21:39 |
19/02 12:34 - Vũ Thủy |
|
05/03 10:43 - Kinh trập |
09/03 08:54 |
20/03 11:30 - Xuân phân |
|
04/04 15:27 - Thanh minh |
07/04 18:24 |
19/04 22:29 - Cốc vũ |
|
05/05 08:42 - Lập hạ |
07/05 02:29 |
20/05 21:36 - Tiểu mãn |
|
05/06 12:48 - Mang chủng |
05/06 09:59 |
21/06 05:34 - Hạ chí |
04/07 18:01 |
06/07 23:03 - Tiểu thử |
|
22/07 16:30 - Đại thử |
03/08 03:44 |
07/08 08:53 - Lập thu |
|
22/08 23:38 - Xử thử |
01/09 16:03 |
07/09 11:51 - Bạch lộ |
|
22/09 21:21 - Thu phân |
01/10 07:11 |
08/10 03:33 - Hàn lộ |
|
23/10 06:45 - Sương giáng |
31/10 00:38 |
07/11 06:48 - Lập đông |
|
22/11 04:22 - Tiểu tuyết |
29/11 19:18 |
06/12 23:41 - Đại tuyết |
|
21/12 17:44 - Đông chí |
29/12 13:53 |
|
2017 |
Ngày giờ Sóc |
Ngày giờ các Tiết khí |
|
05/01 10:56 - Tiểu hàn |
|
20/01 04:23 - Đại hàn |
28/01 07:07 |
03/02 22:34 - Lập xuân |
|
18/02 18:31 - Vũ Thủy |
26/02 21:58 |
05/03 16:33 - Kinh trập |
|
20/03 17:28 - Xuân phân |
28/03 09:57 |
04/04 21:17 - Thanh minh |
|
20/04 04:27 - Cốc vũ |
26/04 19:16 |
05/05 14:31 - Lập hạ |
|
21/05 03:31 - Tiểu mãn |
26/05 02:44 |
05/06 18:36 - Mang chủng |
|
21/06 11:24 - Hạ chí |
24/06 09:31 |
07/07 04:51 - Tiểu thử |
|
22/07 22:15 - Đại thử |
23/07 16:45 |
07/08 14:40 - Lập thu |
22/08 01:30 |
23/08 05:20 - Xử thử |
|
07/09 17:38 - Bạch lộ |
20/09 12:30 |
23/09 03:02 - Thu phân |
|
08/10 09:22 - Hàn lộ |
20/10 02:12 |
23/10 12:27 - Sương giáng |
|
07/11 12:38 - Lập đông |
18/11 18:42 |
22/11 10:04 - Tiểu tuyết |
|
07/12 05:32 - Đại tuyết |
18/12 13:30 |
21/12 23:28 - Đông chí |
2018 |
Ngày giờ Sóc |
Ngày giờ các Tiết khí |
|
05/01 16:49 - Tiểu hàn |
17/01 09:17 |
20/01 10:09 - Đại hàn |
|
04/02 04:28 - Lập xuân |
16/02 04:05 |
19/02 00:18 - Vũ Thủy |
|
05/03 22:28 - Kinh trập |
17/03 20:11 |
20/03 23:15 - Xuân phân |
|
05/04 03:13 - Thanh minh |
16/04 08:57 |
20/04 10:12 - Cốc vũ |
|
05/05 20:25 - Lập hạ |
15/05 18:48 |
21/05 09:14 - Tiểu mãn |
|
06/06 00:29 - Mang chủng |
14/06 02:43 |
21/06 17:07 - Hạ chí |
|
07/07 10:42 - Tiểu thử |
13/07 09:48 |
23/07 04:00 - Đại thử |
|
07/08 20:30 - Lập thu |
11/08 16:58 |
23/08 11:08 - Xử thử |
|
07/09 23:29 - Bạch lộ |
10/09 01:01 |
23/09 08:54 - Thu phân |
|
08/10 15:15 - Hàn lộ |
09/10 10:47 |
23/10 18:22 - Sương giáng |
|
07/11 18:32 - Lập đông |
07/11 23:02 |
22/11 16:01 - Tiểu tuyết |
|
07/12 11:26 - Đại tuyết |
07/12 14:20 |
22/12 05:23 - Đông chí |
2019 |
Ngày giờ Sóc |
Ngày giờ các Tiết khí |
|
05/01 22:39 - Tiểu hàn |
06/01 08:28 |
20/01 15:59 - Đại hàn |
|
04/02 10:14 - Lập xuân |
05/02 04:03 |
19/02 06:04 - Vũ Thủy |
|
06/03 04:10 - Kinh trập |
06/03 23:04 |
21/03 04:58 - Xuân phân |
|
05/04 08:51 - Thanh minh |
05/04 15:50 |
20/04 15:55 - Cốc vũ |
05/05 05:45 |
06/05 02:03 - Lập hạ |
|
21/05 14:59 - Tiểu mãn |
03/06 17:02 |
06/06 06:06 - Mang chủng |
|
21/06 22:54 - Hạ chí |
03/07 02:16 |
07/07 16:20 - Tiểu thử |
|
23/07 09:50 - Đại thử |
01/08 10:12 |
08/08 02:13 - Lập thu |
|
23/08 17:02 - Xử thử |
30/08 17:37 |
08/09 05:17 - Bạch lộ |
|
23/09 14:50 - Thu phân |
29/09 01:26 |
08/10 21:05 - Hàn lộ |
|
24/10 00:20 - Sương giáng |
28/10 10:38 |
08/11 00:24 - Lập đông |
|
22/11 21:59 - Tiểu tuyết |
26/11 22:05 |
07/12 17:18 - Đại tuyết |
|
22/12 11:19 - Đông chí |
26/12 12:13 |
|
Nguồn:
http://www.informatik.uni-leipzig.de/~duc/amlich/
Trang mạng Việt Nam Văn Hiến
Trang Âm Lịch Việt Nam
www.vietnamvanhien.net
email: thuky@vietnamvanhien.net
Trang
mạng Việt Nam Văn Hiến là nơi lưu trữ và phổ biến di sản
văn hóa và phục hồi nến an lạc & tự chủ của Việt Tộc
|