通过分析阴历阳历, 来学习农历历法的组成

名词解释

二十四节气:

节气: 春惊清 夏芒小 秋露寒 冬雪小
中气: 雨春谷 满夏大 处秋霜 雪冬大

公转自转:

由于地球是围绕着太阳公转的, 而且地球本身也在自转(以北半球视角看, 是逆时针, 以南半球视角看是顺时针), 且地球自转轴是倾斜的(不知道是不是共工撞的, 哈哈), 根据惯性引力原因, 出现了西北高, 东南低的常规地域走势

image

(题外话, 这也就是为什么说山南水北为阳, 因为我国山脉大多为东西分部, 南方为正午时太阳所处位置, 而因为东南地势低, 水流大多为自北向南流淌, 故而北方干燥, 南方潮湿, 所以水北为阳)

通过自转轴和公转轴来看, 两个轴之间有 23.5 度的夹角, 因为以太阳为参照物, 阳光照射地面的角度永恒不变, 如果自转轴与公转轴重合, 那么会导致 赤道附近永远是夏天, 南北两极永远是冬天, 因为赤道离太阳最近, 南北两极离太阳最远, 且受光差, 四季将会以地理分布变化, 而不会受公转时间变化

正是由于倾斜角(自转轴为倾斜)的原因, 才使地球上出现了地域因公转时间变化而产生四季(四季温度也会因为靠近或远离赤道而产生不一样的温差)

image

赤道 本初子午线

赤道为地球自转时, 与自转轴垂直的地球最大面积横切面的圆线

百科:

赤道,地理学术语,是地球表面的点随地球自转产生的轨迹中周长最长的圆周线

本初子午线是人类定义, 连接南北两极的经线

百科:

因为当时不像纬度起点(即赤道)可以由地球自转轴决定,理论上任何一条经线都可以被定为本初子午线,故此在历史上曾对此线有不同定位。1851年御用天文学家艾里 (Sir George Airy)在格林威治天文台设置中星仪,并以此确定格林威治子午线。因为当时超过三分之二的船只已使用该线为参考子午线,在1884年于美国华盛顿特区举行的国际本初子午线大会上正式定之为经度的起点。来自25个国家共41位代表参与了会议,法国代表在投票时弃权,在1911年之前法国仍以巴黎子午线作为经度起点。

南北回归线

太阳光直射地球南北半球最远点组成的线称为回归线, 因为地球倾斜自转, 这两条线为太阳在南北半球能照耀到的最远的点组成的线

image

节气与太阳历

太阳在照射地球时, 会直射到南回归线, 在某一时刻 , 北半球太阳高度角最低, 出现了昼短夜长的现象, 古人把这天称为冬至

反之, 在太阳直射北回归线时, 北半球太阳角度最高, 出现了昼长夜短的现象, 古人把这天称为夏至

当太阳光直射赤道时, 这时昼夜平分, 古人把这两天称为春分和秋分

image

为了更加准确的指导农业生产, 古人在两分两至之间插入了另外 20 个节气, 也就是 24 节气, 因为 24 节气是已太阳为参考, 根据太阳照射地球的不同角度命名, 所以农历包含太阳历

在清朝以前, 为平节气制, 以冬至为准, 间隔 15 天左右进入下一个节气, 通过观察计算两个冬至之间的天数, 确定一年有多少天, 最早进行此项研究工作的是祖冲之, 算出一年大概有 365.2428 天, 与现在我们算的 365.2422 天相差无几

清朝 1645 年时, 改节气为定节气, 按春分开始, 地球每绕太阳公转 15 度角为一个节气, 但因为地球公转为椭圆型运动, 所以每个节气时长不同

阴历

地球有月球围绕公转, 当某一时刻月球夹在太阳地球之间, 此时月球的背地面被照亮, 地球上观察不到月球, 这种现象称为朔月, 反之称为望月

古人把农历里 朔月的日子称为初一, 望月的日子为 15, 因为月球围绕地球公转时间为 29.53 天, 所以古人把阴历分为大小月: 29 天与 30 天

调和后的农历

按阳历计算每年的天数为: 365.2422 天

按阴历纪年为 29.53 * 12 = 354.36 天

有些国家完全按阴历纪年, 如伊斯兰国家, 所以有时过年在春天, 有时过年在夏天, 秋天, 冬天

弥合

为了调和阴阳历, 中国人发明了闰月: 19 年 7 闰

也就是
365.2422 * 19 = 6939.6
354.36 * 19 = 6732.8 相差 206.8 天

大约等于 29.53 天(阴历月) * 7 , 这样可以在 19 年中插入 7 个闰月的话(闰月不算月), 就可以弥合阴阳历(19 年天数相同, 具体差额损失不讲, 也不会, 哈哈)

又规定了每月一中气(12个月分别必须存在中气), 因为中气的时间间隔大概是 30.5 天, 阴历月为 29.53 天, 所以如此下来, 有时某个月两个中气, 某个月没中气, 这般就把没有中气的月称为闰月

通过中国人的智慧与勤劳, 最终把阴阳历弥合在一起, 阳历指导生产, 阴历来过初一十五


相关文章:
⤧  上一篇 Nginx 自定义全局错误页面 ⤧  下一篇 JAVA 泛型通配符&边界