《宣明历》,由唐代徐昂制订,颁发实行于唐穆宗长庆二年(公元822年),是继《大衍历》之后,唐代的又一部优良历法,
它给出的近点月以及交点月日数分别为27.55455日(今测值27.5545503日)和27.2122日(今测值27.2122206日);它尤以提出日食三差,即时差、气差、刻差而著称,这就提高了推算日食的准确度。
《宣明历》是中国古代历法,属于阴阳历。唐穆宗长庆二年(822年)施行,景福元年(892年),被《崇玄历》取代。在日本贞观四年正月初一日(862年2月3日)取代《大衍历》、《五纪历》,到贞享元年十二月三十日(1685年2月3日),使用了823年。是使用最长的历法。 贞享二年正月初一日(1685年2月4日),改为《贞享历》。
徐昂 唐代人。籍贯、生卒年不详,史籍关于徐昂生平的记述极其简略,我们仅仅知道在唐宪宗即位时(公元806年),他任司天之官,这时他曾献上一部名叫观象历的新历法,次年,该历法即被正式颁行全国。这部历法的内容没有流传下来,我们只知道史家对它的评价并不高。到公元820年,唐宪宗驾崩,兼之经由测验发现观象历与天象多不合,新继位的唐穆宗于公元821年诏令徐昂重新改定历法,其时,徐昂正任日官之职。历法明细公元822年,徐昂制成新历法上呈,被命名为宣明历,即被正式颁用。虽然宣明历有不少地方系继承一行大衍历的数据和方法,但史家对它的评价颇高,以为它具有法制简易、朔望密近的特点,是大衍历以后出现的一部好历法。这是因为徐昂确实在历法的诸多方面进行了革新。在宣明历中,他定黄赤交角为23°34’55″,这仅比理论值小37″,是历代最佳值之一;他所取用的近点月长度、恒星年长度、交食周期值等均优于大衍历;对于木星和土星运动不均匀性的描述,宣明历较大衍历有相当大的进步,由对木星运动不均匀改正数值表的分析可知,木星实际行度与平均行度之差的误差,大衍历为70′,而宣明历则较之缩小了约一半,为38′。日食三差术的发明是徐昂的最重要贡献。日食三差是指时差、气差和刻差,徐昂给出了这三差的具体算式,它们均虑及了定朔所值的节气早晚和定朔时太阳、月亮所处的不同方位,这两个因素都与月亮天顶距的大小有关,也就是与月亮视差的大小相关。所以,日食三差是月亮视差对日食食时早晚或食分大小影响的三项改正值,其中,时差是由定朔时刻到食甚时刻的改正值,气差和刻差则是与食分大小有关的改正值。徐昂第一次对月亮视差对日食的影响给出了分门别类的明晰算法,为日食推算精度的提高做出了重大贡献,这一算法为后世历家所继承与发展,影响十分深远。宣明历行用到公元891年才为崇玄历所替代,它不但是在唐代行用时间最长的一部历法,而且日本在公元862年也开始正式颁用宣明历,前后施行达823年之久;在古代朝鲜,宣明历也被长期颁行,可见它是一部受到中外广泛重视的历法。