现所使用的农历不是纯“阴历”,而是阴阳合历。农历,取月相的变化周期即朔望月为月的长度,加入干支历“二十四节气”成分,参考太阳回归年为年的长度,通过设置闰月以使平均历年与回归年相适应。农历是以夏历(阴历)为基础,融合阳历成分而成的一种历法。农历是太阴历与太阳历的阴阳合历,农历的一个月要符合朔望月(月相圆缺一次),平均历年也要符合回归年。所以农历使用朔望月定历月,平年十二个月,为了让历月吻合月相。这是农历中的朔望月成分。另外,农历二十四节气和七十二候,表示四季寒暑,是农历的太阳历成分。这两者是有机统一的一个整体。
农历是兼顾太阳、月亮与地球关系的一种历法。由于阴历不考虑地球绕太阳的运行,因而使得四季的变化在阴历上就没有固定的时间,不能反映季节。与阳历年固定在365天或366天不同的是,阴历年相比阳历年在天数上有时会相差一个月;为了协调阴历年与阳历年之间的天数,于是便通过“置闰法”进行调整使两者年总天数相适应。
太阳历是用来标度太阳视运动的,就是一个回归年。农历中称作:岁实。立春总在公历2月4号左右。因为公历属于阳历之一,但是因为公历是平均太阳历,所以只能是基本上和节气日对应,前后有时会波动一两日的。
农历使用必要时设置闰月的方式来协调这两者之间的关系,来使农历的日期也可以和四季挂钩,有闰月的年份是农历的闰年。农历平年有三百五十四天左右,农历闰年有三百八十四天左右。但是一个岁实是365.24219日。 那么一个农历平年勉强能容下二十四个节气,有时一个平年只有二十三个节气。农历闰年三百八十多天的时间,比一个岁实多了大约二十天,能容下的节气数量肯定大于二十四个。按照农历计算的法则冬至日必须在十一月,从甲年冬至所在月(含)到乙年冬至所在月(不含)看有多少个农历月,如果有十二个农历月则是平年不置闰,如果有十三个农历月则是闰年,需要设置闰月,安排在没有中气之月。
因为农历闰年有二十五个节气,所以次年就有可能只有二十三个节气了,不过也有次年是二十四个节气的情况。这些都是非常正常的现象,绝对和凶吉无关。因为节气是阳历成分,农历是阴阳合历需要协调朔望月和回归年,所以才会产生这种现象了。
农历是阴阳合历,以天文算法计算回归年。计算朔望月是用的从一个日月合朔之日到另外一个日月合朔之日,朔日是日月黄经差为0度的日子。这是一个准确的天文计算的朔望月。农历闰月就是用来协调这两者关系的,农历以二十四节气和七十二候,用来表示一年四季,指示寒暑,标度太阳视运动。
公历是一种平均太阳历,只有回归年,不管朔望月。
阴历只管朔望月,不管回归年。所以和一年四季完全无关。
朔望月和回归年在农历中是一个整体。农历同时符合朔望月和回归年,是一部科学的阴阳合历。