在刘焯之前历法给出的岁差值都是属于赤道岁差,是冬至点或夏至点及赤道宿度的变化求得的。刘焯为了求得精确的岁差值,测定了28宿的黄道度,并与东汉时代测定的数值进行比较,发觉其中有11个宿的黄道度有了变化。因此他指出“岁久差多,随术而变”[7]。就是说,要精确推算当时日、月、五星离冬至点的黄道积度,不能根据过去的而必须根据当时的28宿黄道来推算。如果要推算过去和将来的行度,则必须先按岁差求得那时候的二十八宿黄道度。刘焯曾测得75年差一度的新岁差值,这与实际数值非常接近,而当时西方仍沿用100年相差一度的数值。
刘焯还在推算交食时第一次考虑视差对交食的影响,也就是在地球表面观察天体和在地心观察天体所产生的天体位置差,这在当时也是十分可贵的创见。刘焯的《皇极历》和其他一些科学建议因受到太史令张胄玄和张宾等人的排斥,未能施行,但他对天文历法学的贡献是不可泯灭的。
到唐代历法变更了8次,但确有价值的历法是戊寅、麟德、大衍3部。
《戊寅历》由初唐傅仁均制定,并于武德二年(619年)颁行。贞观十九年(645年)以后,因采用《戊寅历》连续出现4个大月,至麟德二年(665年),李淳风以刘焯的《皇极历》为基础加以改进,制成并颁行了《麟德历》。《麟德历》对连续出现的几个大月或几个小月的情况,采取了临时变通调整的方法,并在无中气的月份置闰月。开元九年(721年),因《麟德历》所推算日食不准,唐玄宗命僧一行重新制定历法。
一行受命重造新历后,认真研究了我国历代的历法,又参考了当时天竺国(印度)的历法,在此基础上大胆创新,于开元十五年(727年),编制了当时比较先进的《大衍历》。《大衍历》最突出的成就是比较正确地掌握了太阳在黄道上运行的速度变化的规律(实际是地球绕太阳运行时速度的变化规律)。刘焯在制定《皇极历》时,吸收了张子信的研究成果,提出在历法中改用24等分周天来定节气,得知每气15度多,以前刘焯也采用张子信的研究成果,但刘焯所定太阳运行的快慢数值,是与实际不符的。僧一行制定的《大衍历》认为冬至前后日行最快,所以二气之间时间最短;夏至前后日行最慢,所以二气之间时间最长。《大衍历》较刘焯的《皇极历》更符合实际情况。《大衍历》又测知从冬至到春分6个定气间共88、89日,日行一象限。春分到夏至6个定气间共91、73日,也行一象限。秋分前后和春分前后情况相同。僧一行所测量的数据已非常精确。
编成后的《大衍历》共分7篇:“一、步中朔,即计算平逆望、平气;二、步发敛术,计算72候;三、步日躔术,计算每天太阳的位置和运动;四、步月离术,计算月亮的位置和运动;五、步轨漏,计算每天见到天空的星象和昼夜时刻;六、步交会术,计算日月食;七、步五星术,计算五大行星的位置和运动。”[8]一行创制的历法编订格式,一直为以后所遵循,直到明末西方历书传入才有所改变。唐时,日本留学生吉备真备把《大衍历》带到日本,在日本广泛流传使用,影响甚大。
由于天文学的发展,天文知识也得到了普及。唐初王希明所作的《步天歌》,介绍了陈卓星图中283个星官、1464个星辰的知识。它把全天分为31个天区,即后世流传的所谓“三垣二十八宿”的分区法。这种对星空的区分方法,一直沿用到近代。《步天歌》对古代普及天文学知识起了很大的作用。
在敦煌还发现了标有1350颗星的唐代星图,这是当今世界上留存星数最多而又最古老的星图。敦煌星图1907年被英国人斯坦因带走,现存英国伦敦博物馆。
当时在日食、彗星等天象记录方面,也十分细致和准确。
四、数学的进步
