非法献身百度云:农历的算法是什么样子的

来源:百度文库 编辑:高考问答 时间:2024/04/30 19:59:43

农历按照全年的自然日划分为四季、二十四节气和年节。农历的二十四节气包括:春季的立春、雨水、惊蛮、春分、清明、谷雨;夏季的立夏、小满、芒种、夏至、小暑、大暑;秋季的立秋、处暑、白露、秋分、寒露、霜降;冬季的立冬、小雪、大雪、冬至、小寒、大寒。此外,全年中的月份按照月相变化周期而设置。即大月30天,小月29天。农历每月的初一称为“朔”,每月的十五称为“望”。在“朔”日,月球运行到太阳与地球之间,暗影对着地球,而与太阳同时出没,于是人们看不到月亮。在“望”日,地球运行到了太阳与月球中间,太阳从西方落下,月亮从东方升起,因而能看到满月。由于农历一年约为355日,与地球年相差约11日左右,所以每3年要置一闰月,每19年要置7个闰月。有闰月的年份也叫闰年,具体闰哪个月,则要视节气情况灵活而定。

  农历既依据地球回归年所用时间,又依据月相变化而指定,而且以身边的气象与物候条件、农事活动为参照,实用性强,因而成为四季分明,便于记忆的历法。在我国,农历历法尤其适用于中原的广大地区。
  ================================
  农历为何要设置闰月?
  目前我们所用的阳历,是以地球围绕太阳公转一圈为一回归年而制定的,回归年长度是365.2422天。阴历是以月亮的圆缺变化而制定的,一个朔望月的长度是29.53天。农历是以阴历为基础,它的日期既能显示月亮的盈亏变化,又能与公历的四季保持同步。

  农历一年按12个朔望月计算,只有354.4天,比阳历回归年少10.9天。如果去年不安插闰二月,那么,去年春节就会出现在2005年1月10日。再过几年,农历就会出现“六月飞雪”的现象。为了协调阴历与阳历的季节关系,我国在春秋时代就采用“十九年七闰月”,即在19个回归年(6939.6天)中,农历要安插七个闰月。19个农历年有228个朔望月,再加上七个闰月,就有235个朔望月(6939.7天)。因此,农历19年安插七个闰月,就能使农历的寒暑变化与公历基本一致。

  农历规则

  在天文观测的基础上,找出了“闰月”的办法,保证农历年的正月到三月为春季,四月到六月为夏季,七月到九月为秋季,十月到十二月为冬季,也同时保证了农历岁首在冬末春初。

  农历基本法则:

  * 月朔日即是初一(大月30天,小月29天。需要通过严格的观测和计算来确定,需要通过严格的观测和计算来确定)
  * 月以中气得名
  * 以包含雨水中气月为正月,即是「寅」月
  * 月无中气者为闰月,以前月同名

  ? * 在含两个中气的月之后的第一个闰月(假闰月)需删除(历理历法)

  备注:

  1.一天始自夜里零时。尽管旧时的子时相当于现今的23时至1时,但是子时的上四刻属于前一天,下四刻才属于新的一天,所以和现今一天始自零时的定义是一致的。

  2.每年的冬至总是出现在这年的阴历十一月中。

  3.从一年的冬至后一天起到下一年冬至这一天止的这段时间中,下称其间,如有十三个新月出现,则其间要加入一个闰月。需要加入闰月时,其间第一个没有中气的月为闰月。因为其间只有十二个中气,所以其间至少有一个月没有中气,也存在有两个月没有中气的可能性。但这种情况下只有第一个没有中气的月为闰月。闰月的前一个月为几月则该闰月称为闰几月。

  多长时间加一个闰月呢?(“十九年七闰法”)

  我们希望m个回归年的天数与n个朔望月的天数相等,也即m×365.2422=n×29.5306

  m??? 29.5306????? 19

  -- = ------------- ? -------,表示:19个回归年中必须加7个闰月(235-12*19)

  n??? 365.2422???? 235

  此时,误差为:19*365.2422-235*29.5306=0.0892天

  置闰方法:

  民用历法:24个时区的置闰结果不同(清朝顺治年间,即公元1645年,开始采用的。)

  1.所有新月和节气出现时刻的计算以北京时间为准。现北京时间为东经120度即东八区标准时。但计算1929年以前的阴历时应以北京即东经116度25分的当地时为准。此条规则用以区分中国阴历和其他类似阴历如日本阴历。

  在不同时区、不同经度为子午线,计算的阴阳历的闰月顺序模式是会不相同的

  2.如某个节气的出现时刻也在这一天,则不论该节气的出现时刻是否比新月晚,一律算落入新的一个月中。

  在民用置闰,如果月朔日和中气同一天,则该阴历月包含那个中气。

  在不同时区、不同经度为子午线,计算的阴阳历的闰月顺序模式是会不相同的

  历理历法:24个时区的置闰结果相同

  所有不同时区的闰月都落在相同月。

  在历理置闰,如果月朔日和中气同一天,月朔日时间必须在中气时间之前,则该阴历月才包含那个中气。

  民用置闰比较月朔和中气日期;历理置闰比较月朔和中气日期、时、分、秒。

  没有精确的太阳和月亮的时间数字,阴历的闰月可能会排错。

  例如,

  从西元1600年到2246年,民用历法双中气的阴历月有22个,历理历法只有5个。民用历法甚至在2033、2128和2242年中,三个月之间居然跑出两个双中气;换言之,三个月中多出两个「假」闰月。前后12个阴历月中有三个闰月,闰月的去留造成许多学者的讨论和困恼。

  历理历法在此三年中,却没有发现到双中气阴历月。闰月的去留只要把双中气月后的「假」闰月取消,则历理历法近乎於完美。

  由此可知,民用历法问题很大,应该废除。上次阴阳历重大改历在1645年,已经超过350年。随着天文科学的进步,中国阴阳历应该使用较精确的历理历法。免得后代子孙再浪费时间讨论置闰去留的问题。