《历术甲子篇》冬至合朔表
《历术甲子篇》所用为四分历,岁实365又1/4,朔策29又499/940。
殷历创制于公元前427年(周考王十四年),沿用至公元前105年(汉武帝元封六年,次年改历),即本表可以用于参照史料的适用范围。
公元前427年,是年实际天象日月合朔与冬至同日同时,在子时正,是制历的理想起点。历元干支为己酉。由此用四分术,反推以蔀首为甲子的时日作为历元,即需要反推15蔀共1140年(BC1567年作为历元)。
《历术甲子篇》以十一月(冬至所在月)为岁首,而建寅为正。程序中使用的为年中置闰法。
tiangan = ["甲","乙","丙","丁","戊","己","庚","辛","壬","癸"]
dizhi = ["子","丑","寅","卯","辰","巳","午","未","申","酉","戌","亥"]
yuefen =["正月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"]
direction = ['正东','正南','正西','正北']
suiyang = ["焉逢","端蒙","游兆","彊梧","徒維","祝犁","商橫","昭陽","橫艾","尚章"]
suiyin = ["困敦","赤奮若","攝提格","單閼","執徐","大荒落","敦牂","協洽","涒灘","作鄂","淹茂","大淵獻"]
lsjzp = open("历术甲子篇.csv",'w')
ganzhi =['']*60
for i in range(60):ganzhi[i] = tiangan[i%10]+dizhi[(i)%12]
bsgz=[0]*20 #蔀首干支
for i in range(20):bsgz[i] = (i*39)%60
#基本常数
yue = 29+499/940 #朔策
zai = 12 * yue #太阴年
sui = 365+1/4 #岁实
sdrf = 940 #朔旦日法
dzrf = 32 #冬至日法
epoch = -1567 #太初元年为《历术甲子篇》历元,非汉武帝太初元年(-104)
sddy = int(zai) % 60 #朔旦大余54
sddy_0 = 0 - sddy #朔旦大余前值
sdxy= (499 * 12 ) % 940 #朔旦小余348
sdxy_0 = 0 - sdxy #朔旦小余前值
dzdy = int(sui) % 60 #冬至大余
dzdy_0 = 0 - dzdy
dzxy = 8 #冬至小余
dzxy_0 = 0 - dzxy
ry = 0header = ["公元纪年","干支纪年","年序","年名","纪数","蔀数","蔀首","入蔀年","章数","章首","年前十一月朔旦大余","年前十一月朔旦小余","年前十一月朔日干支","年前十一月合朔时刻","年前十一月冬至大余","年前十一月冬至小余","年前十一月冬至干支","年前十一月冬至时刻",'月',"方向"]
lsjzp.write(','.join(header)+'\n')
print("干支纪年","年序","\t 年名","\t 入蔀数","入蔀年","蔀首","章数","章首","前大余","\t前小余","\t前朔日","\t合朔时刻","\t后大余","\t后小余","\t冬至干支"," 冬至时刻",'\t月',"\t\t 方向")def qy(dy_0,xy_0,rf,dy,xy): #求大小余分(余分前值,日法,余分)xy_0 += xyif xy_0 >= rf:dy_0 += 1xy_0 -= rfdy_0 = (dy_0 + dy) % 60return dy_0,xy_0def heshuo(yf,rf): #求合朔时间(余分,日法)chen = yf / rf * 24 # 合朔时间chen_h = int(chen)chen_m = int((chen - chen_h) * 60)hssj = str(chen_h)+'时'+str(chen_m)+'分'return hssj#i+1为是年,i为是年前一年
for i in range(4561): #一元=3*一纪=3*20=一蔀=3*20*4*一掌=3*20*4*19if ry >= 19: #置闰方法:闰余法sddy_0,sdxy_0 = qy(sddy_0,sdxy_0,sdrf,sddy+int(yue),sdxy+499) #加一个闰月,大余为29,小余为499ry -= 19else:sddy_0,sdxy_0 = qy(sddy_0,sdxy_0,sdrf,sddy,sdxy)ry += 7 #每年闰余为7/19月month = ''if ry >= 19:yry = (ry-7)*12for j in range(12):yry += 7if yry >= 228:month= '闰' + yuefen[(j - 2) % 12]breakdzdy_0, dzxy_0 = qy(dzdy_0,dzxy_0, dzrf, dzdy, dzxy)dz = int((dzxy_0/32)*12)ce = epoch + iif sdxy_0 == 0: #朔旦无小余时,为一蔀蔀首bu = ganzhi[sddy_0] #输出蔀首名(是年前十一月朔旦冬至干支)if sddy_0 == dzdy_0: #朔旦大余=冬至大余时,为一章章首zhang = ganzhi[sddy_0] #输出章首名rbs = (ce - epoch ) // 76if ce >= 0: ce += 1 #无公元0年if ce < 0: ce = 'BC'+str(ce)[1:]+'年'else: ce = "公元"+str(ce)+'年'ls = [ce,tiangan[i%10]+dizhi[(i+2)%12],i+1,suiyang[i%10]+suiyin[(i+2)%12],(i//1520)%3+1,(i//76)%20+1,bu,i%76+1,i//19+1,zhang,(sddy_0-bsgz[rbs%20])%60,sdxy_0,ganzhi[sddy_0], heshuo(sdxy_0, 940),(dzdy_0-bsgz[rbs%20])%60,dzxy_0,ganzhi[dzdy_0],str(dz*2)+' '+dizhi[dz]+'时',month,direction[(dz//3-1)%4]]lsjzp.write(','.join('%s' %id for id in ls)+'\n')if i < 77: #输出甲子蔀以供参考print(tiangan[i%10]+dizhi[(i+2)%12],'\t',i+1,'\t',suiyang[i%10]+suiyin[(i+2)%12],'\t',(i//76+1)%20, '',i%76+1,'\t',bu,' ',i//19+1,'',zhang,' ',sddy_0, '\t',sdxy_0,'\t',ganzhi[sddy_0],' ',heshuo(sdxy_0, 940),'\t',dzdy_0,'\t',dzxy_0,' \t',ganzhi[dzdy_0],'\t '+str(dz*2)+' '+dizhi[dz]+'时','\t',month,'\t',direction[dz//3-1])lsjzp.close()
程序运行生成一元三纪4560年的每年年前十一月朔旦冬至的朔闰表(csv格式文件)
甲子蔀 输出参考(源程序在Python脚本下输出对齐):
甲寅 1 焉逢攝提格 1 1 甲子 1 甲子 0 0 甲子 0时0分 0 0 甲子 0 子时 正北
乙卯 2 端蒙單閼 1 2 甲子 1 甲子 54 348 戊午 8时53分 5 8 己巳 6 卯时 正东
丙辰 3 游兆執徐 1 3 甲子 1 甲子 48 696 壬子 17时46分 10 16 甲戌 12 午时 闰七月 正南
丁巳 4 彊梧大荒落 1 4 甲子 1 甲子 12 603 丙子 15时23分 15 24 己卯 18 酉时 正西
戊午 5 徒維敦牂 1 5 甲子 1 甲子 7 11 辛未 0时16分 21 0 乙酉 0 子时 正北
己未 6 祝犁協洽 1 6 甲子 1 甲子 1 359 乙丑 9时9分 26 8 庚寅 6 卯时 闰四月 正东
庚申 7 商橫涒灘 1 7 甲子 1 甲子 25 266 己丑 6时47分 31 16 乙未 12 午时 正南
辛酉 8 昭陽作鄂 1 8 甲子 1 甲子 19 614 癸未 15时40分 36 24 庚子 18 酉时 正西
壬戌 9 橫艾淹茂 1 9 甲子 1 甲子 14 22 戊寅 0时33分 42 0 丙午 0 子时 闰十二月 正北
癸亥 10 尚章大淵獻 1 10 甲子 1 甲子 37 869 辛丑 22时11分 47 8 辛亥 6 卯时 正东
甲子 11 焉逢困敦 1 11 甲子 1 甲子 32 277 丙申 7时4分 52 16 丙辰 12 午时 闰九月 正南
乙丑 12 端蒙赤奮若 1 12 甲子 1 甲子 56 184 庚申 4时41分 57 24 辛酉 18 酉时 正西
丙寅 13 游兆攝提格 1 13 甲子 1 甲子 50 532 甲寅 13时34分 3 0 丁卯 0 子时 正北
丁卯 14 彊梧單閼 1 14 甲子 1 甲子 44 880 戊申 22时28分 8 8 壬申 6 卯时 闰五月 正东
戊辰 15 徒維執徐 1 15 甲子 1 甲子 8 787 壬申 20时5分 13 16 丁丑 12 午时 正南
己巳 16 祝犁大荒落 1 16 甲子 1 甲子 3 195 丁卯 4时58分 18 24 壬午 18 酉时 正西
庚午 17 商橫敦牂 1 17 甲子 1 甲子 57 543 辛酉 13时51分 24 0 戊子 0 子时 闰二月 正北
辛未 18 昭陽協洽 1 18 甲子 1 甲子 21 450 乙酉 11时29分 29 8 癸巳 6 卯时 正东
壬申 19 橫艾涒灘 1 19 甲子 1 甲子 15 798 己卯 20时22分 34 16 戊戌 12 午时 闰十月 正南
癸酉 20 尚章作鄂 1 20 甲子 2 癸卯 39 705 癸卯 18时0分 39 24 癸卯 18 酉时 正西
甲戌 21 焉逢淹茂 1 21 甲子 2 癸卯 34 113 戊戌 2时53分 45 0 己酉 0 子时 正北
乙亥 22 端蒙大淵獻 1 22 甲子 2 癸卯 28 461 壬辰 11时46分 50 8 甲寅 6 卯时 闰七月 正东
丙子 23 游兆困敦 1 23 甲子 2 癸卯 52 368 丙辰 9时23分 55 16 己未 12 午时 正南
丁丑 24 彊梧赤奮若 1 24 甲子 2 癸卯 46 716 庚戌 18时16分 0 24 甲子 18 酉时 正西
戊寅 25 徒維攝提格 1 25 甲子 2 癸卯 41 124 乙巳 3时9分 6 0 庚午 0 子时 闰四月 正北
己卯 26 祝犁單閼 1 26 甲子 2 癸卯 5 31 己巳 0时47分 11 8 乙亥 6 卯时 正东
庚辰 27 商橫執徐 1 27 甲子 2 癸卯 59 379 癸亥 9时40分 16 16 庚辰 12 午时 正南
辛巳 28 昭陽大荒落 1 28 甲子 2 癸卯 53 727 丁巳 18时33分 21 24 乙酉 18 酉时 闰十二月 正西
壬午 29 橫艾敦牂 1 29 甲子 2 癸卯 17 634 辛巳 16时11分 27 0 辛卯 0 子时 正北
癸未 30 尚章協洽 1 30 甲子 2 癸卯 12 42 丙子 1时4分 32 8 丙申 6 卯时 闰九月 正东
甲申 31 焉逢涒灘 1 31 甲子 2 癸卯 35 889 己亥 22时41分 37 16 辛丑 12 午时 正南
乙酉 32 端蒙作鄂 1 32 甲子 2 癸卯 30 297 甲午 7时34分 42 24 丙午 18 酉时 正西
丙戌 33 游兆淹茂 1 33 甲子 2 癸卯 24 645 戊子 16时28分 48 0 壬子 0 子时 闰五月 正北
丁亥 34 彊梧大淵獻 1 34 甲子 2 癸卯 48 552 壬子 14时5分 53 8 丁巳 6 卯时 正东
戊子 35 徒維困敦 1 35 甲子 2 癸卯 42 900 丙午 22时58分 58 16 壬戌 12 午时 正南
己丑 36 祝犁赤奮若 1 36 甲子 2 癸卯 37 308 辛丑 7时51分 3 24 丁卯 18 酉时 闰二月 正西
庚寅 37 商橫攝提格 1 37 甲子 2 癸卯 1 215 乙丑 5时29分 9 0 癸酉 0 子时 正北
辛卯 38 昭陽單閼 1 38 甲子 2 癸卯 55 563 己未 14时22分 14 8 戊寅 6 卯时 闰十月 正东
壬辰 39 橫艾執徐 1 39 甲子 3 癸未 19 470 癸未 12时0分 19 16 癸未 12 午时 正南
癸巳 40 尚章大荒落 1 40 甲子 3 癸未 13 818 丁丑 20时53分 24 24 戊子 18 酉时 正西
甲午 41 焉逢敦牂 1 41 甲子 3 癸未 8 226 壬申 5时46分 30 0 甲午 0 子时 闰七月 正北
乙未 42 端蒙協洽 1 42 甲子 3 癸未 32 133 丙申 3时23分 35 8 己亥 6 卯时 正东
丙申 43 游兆涒灘 1 43 甲子 3 癸未 26 481 庚寅 12时16分 40 16 甲辰 12 午时 正南
丁酉 44 彊梧作鄂 1 44 甲子 3 癸未 20 829 甲申 21时9分 45 24 己酉 18 酉时 闰四月 正西
戊戌 45 徒維淹茂 1 45 甲子 3 癸未 44 736 戊申 18时47分 51 0 乙卯 0 子时 正北
己亥 46 祝犁大淵獻 1 46 甲子 3 癸未 39 144 癸卯 3时40分 56 8 庚申 6 卯时 正东
庚子 47 商橫困敦 1 47 甲子 3 癸未 33 492 丁酉 12时33分 1 16 乙丑 12 午时 闰十二月 正南
辛丑 48 昭陽赤奮若 1 48 甲子 3 癸未 57 399 辛酉 10时11分 6 24 庚午 18 酉时 正西
壬寅 49 橫艾攝提格 1 49 甲子 3 癸未 51 747 乙卯 19时4分 12 0 丙子 0 子时 闰九月 正北
癸卯 50 尚章單閼 1 50 甲子 3 癸未 15 654 己卯 16时41分 17 8 辛巳 6 卯时 正东
甲辰 51 焉逢執徐 1 51 甲子 3 癸未 10 62 甲戌 1时34分 22 16 丙戌 12 午时 正南
乙巳 52 端蒙大荒落 1 52 甲子 3 癸未 4 410 戊辰 10时28分 27 24 辛卯 18 酉时 闰五月 正西
丙午 53 游兆敦牂 1 53 甲子 3 癸未 28 317 壬辰 8时5分 33 0 丁酉 0 子时 正北
丁未 54 彊梧協洽 1 54 甲子 3 癸未 22 665 丙戌 16时58分 38 8 壬寅 6 卯时 正东
戊申 55 徒維涒灘 1 55 甲子 3 癸未 17 73 辛巳 1时51分 43 16 丁未 12 午时 闰二月 正南
己酉 56 祝犁作鄂 1 56 甲子 3 癸未 40 920 甲辰 23时29分 48 24 壬子 18 酉时 正西
庚戌 57 商橫淹茂 1 57 甲子 3 癸未 35 328 己亥 8时22分 54 0 戊午 0 子时 闰十月 正北
辛亥 58 昭陽大淵獻 1 58 甲子 4 癸亥 59 235 癸亥 6时0分 59 8 癸亥 6 卯时 正东
壬子 59 橫艾困敦 1 59 甲子 4 癸亥 53 583 丁巳 14时53分 4 16 戊辰 12 午时 正南
癸丑 60 尚章赤奮若 1 60 甲子 4 癸亥 47 931 辛亥 23时46分 9 24 癸酉 18 酉时 闰七月 正西
甲寅 61 焉逢攝提格 1 61 甲子 4 癸亥 11 838 乙亥 21时23分 15 0 己卯 0 子时 正北
乙卯 62 端蒙單閼 1 62 甲子 4 癸亥 6 246 庚午 6时16分 20 8 甲申 6 卯时 正东
丙辰 63 游兆執徐 1 63 甲子 4 癸亥 0 594 甲子 15时9分 25 16 己丑 12 午时 闰四月 正南
丁巳 64 彊梧大荒落 1 64 甲子 4 癸亥 24 501 戊子 12时47分 30 24 甲午 18 酉时 正西
戊午 65 徒維敦牂 1 65 甲子 4 癸亥 18 849 壬午 21时40分 36 0 庚子 0 子时 正北
己未 66 祝犁協洽 1 66 甲子 4 癸亥 13 257 丁丑 6时33分 41 8 乙巳 6 卯时 闰十二月 正东
庚申 67 商橫涒灘 1 67 甲子 4 癸亥 37 164 辛丑 4时11分 46 16 庚戌 12 午时 正南
辛酉 68 昭陽作鄂 1 68 甲子 4 癸亥 31 512 乙未 13时4分 51 24 乙卯 18 酉时 闰九月 正西
壬戌 69 橫艾淹茂 1 69 甲子 4 癸亥 55 419 己未 10时41分 57 0 辛酉 0 子时 正北
癸亥 70 尚章大淵獻 1 70 甲子 4 癸亥 49 767 癸丑 19时34分 2 8 丙寅 6 卯时 正东
甲子 71 焉逢困敦 1 71 甲子 4 癸亥 44 175 戊申 4时28分 7 16 辛未 12 午时 闰五月 正南
乙丑 72 端蒙赤奮若 1 72 甲子 4 癸亥 8 82 壬申 2时5分 12 24 丙子 18 酉时 正西
丙寅 73 游兆攝提格 1 73 甲子 4 癸亥 2 430 丙寅 10时58分 18 0 壬午 0 子时 正北
丁卯 74 彊梧單閼 1 74 甲子 4 癸亥 56 778 庚申 19时51分 23 8 丁亥 6 卯时 闰二月 正东
戊辰 75 徒維執徐 1 75 甲子 4 癸亥 20 685 甲申 17时29分 28 16 壬辰 12 午时 正南
己巳 76 祝犁大荒落 1 76 甲子 4 癸亥 15 93 己卯 2时22分 33 24 丁酉 18 酉时 闰十月 正西
庚午 77 商橫敦牂 2 1 癸卯 5 癸卯 39 0 癸卯 0时0分 39 0 癸卯 0 子时 正北
《历术甲子篇》冬至合朔表相关推荐
- 本工作簿不能再使用其他新字体_1.2.16 EXCEL篇之关于工作表的操作合集
本篇的开始,还要从复制一个表格说起... 相信不少童鞋复制一个表格到其他工作表,都是以下的操作:框选表格→复制粘贴到目标工作表→调整行高列宽,如下图所示 可以看到这样简单粗暴地直接复制粘贴过去,新表的 ...
- 算法系列之十九:用天文方法计算日月合朔(新月)
中国农历的朔望月是农历历法的基础,而朔望月又是严格以日月合朔发生的那一天作为月首,因此日月合朔时间的计算是制定农历历法的关键.本文将介绍ELP-2000/82月球运行理论,以及如何用ELP-2000/ ...
- [转]用天文方法计算日月合朔(新月)
转自 吹泡泡的小猫 原文地址:http://blog.csdn.net/orbit/article/details/8223751 中国农历的朔望月是农历历法的基础,而朔望月又是严格以日月合朔发生的那 ...
- Vue2基础篇教程合集
Vue2基础篇教程合集 点击跳转具体教程,该教程基于HTML书写,深度理解Vue如何运行. 一.Vue2基础篇-初识Vue 二.Vue2基础篇-模板语法 三.Vue2基础篇-理解MVVM模型 三.Vu ...
- 数据库篇之[bsp_advertpositions]数据表-BrnShop1.9升级至2.1升级说明(非官方版本)...
数据库篇之[bsp_advertpositions]数据表 主要描述在数据库方面进行升级(使用前请参照网上商城BrnShop1.9升级至2.1升级说明(非官方版本仅提供技术交流)的使用协议) 主要看下 ...
- 【OpenCV 例程300篇】202. 查表快速替换(cv.LUT)
OpenCV 例程200篇 总目录 201. 图像的颜色空间转换 202. 查表快速替换(cv.LUT) 203. 伪彩色图像处理 204. 图像的色彩风格滤镜 205. 调节色彩平衡/饱和度/明度 ...
- 张一鸣的“成事哲学”:取势、明道、优术、践行、合众
点击"技术领导力"关注∆ 每天早上8:30推送 作者| Mr.K 整理| Emma 来源| 技术领导力(ID:jishulingdaoli) 张一鸣,2005年毕业于南开大学 ...
- 视频教程-直通企业的数据仓库处理术—启动篇-大数据
直通企业的数据仓库处理术-启动篇 数据架构与处理方向咨询师. 某高等教育职业技术学院特约讲师. 12年银行金融和保险业项目经验. 熟悉项目管理,数据建模,ETL数据处理和报表展现.在数据建模,数据仓库 ...
- 《光剑拾字编》甲子篇: 天干地支
天干地支最早在公元前二千六百九十七(BC-2697)年,於中华始祖黄帝建国时,命大挠氏探察天地之气机,探究五行(金木水火土),始作甲.乙.丙.丁.戊.己.庚.辛.壬.癸等十天干,及子.丑.寅.卯.辰. ...
最新文章
- 做可交互的统计图表,这套图形语法不容错过
- html二叉树遍历,二叉树的遍历(前序、中序、后序、层次)
- java读取word文档内容_合并多个Word文档内容,还在复制粘贴就out了,同事五秒轻松搞定...
- 问题:anaconda 中 tensorflow 与tensorflow-gpu 在tf.image.resize_images()上的区别
- python典型例题_经典动态规划例题整理(Python版)
- 键盘拆开重新安装步骤_机械键盘小白入门工具
- [POI2013]MOR-Tales of seafaring
- 网易新闻 鸿蒙,网易新闻鸿蒙版下载-网易新闻 鸿蒙版v78.5-PC6鸿蒙网
- win7默认网关不可用_win7 默认网关不可用
- 科兴新冠疫苗获准紧急用于巴西3至5岁儿童
- 实现小程序与SSM后台数据交互
- 二十几岁的女孩应该知道(值得一看)
- 证书文件编码格式介绍
- R数据分析:生存分析的列线图的理解与绘制详细教程
- 土壤、病虫害探测等智能识别系统解析
- 人鱼线和马甲线的区别你知道吗
- 安卓城市列表选择-CityPicker-无法编译-support
- 日本软银孙正义表示从未命令ARM断供华为
- 平面设计素材PSD模板|国潮流行,精品素材轻松搞定中国风设计!
- PTA L1-059 敲笨钟 c++