日柱公式

历法公式

由于公历与干支纪法的体系和周期完全不同,因此它们之间的换算问题比较复杂。尤其是求解公历任一日的日干支是十分困难的,主要依靠查询万年历解决。作者经过潜心研究,探究推导出──计算公历任一日干支的历法公式,简称《高氏日柱公式》。此公式采用插入世纪常数和月基数的方法,简捷准确而又科学实用,彻底解决了由来已久的历法换算难题。在“不查万年历,日柱早知道”的具体问题上具有极大的实践意义。

相关基础知识
现行的公历即格里历,是一种太阳历。干支纪日法自古已有,它使用天干地支记录日序,日干支即是日柱。而求解公历任一日的日柱是由来已久的难题。为了解决这一难题,作者总结出《高氏日柱公式》。由于上述问题涉及周易术学,因此历来的易学者们都使用万年历,来查询某日的日柱。虽然有许多研究者,提出了许多解决方法,比较出名的就是张氏日柱公式,但都由于方法繁琐、难以实用,并不能从根本上解决日柱求解问题。而《高氏日柱公式》根据公历和干支纪年法的具体特点,首次采用插入世纪常数和月基数的数学方法,使得日柱的求解在较小的数量级内进行,极大地简化了求解日柱的过程,实现了编写计算代码的可行性,并且能够运用于心算。真正实现了“不查万年历,日柱早知道”的梦想,彻底解决了日柱求解问题。
(一)公历的内容与沿革
标准的公历即1582年颁布的格里历。它继承了儒略历设置大、小月的方法,全年分为12个月。其中,1月、3月、5月、7月、8月、10月、12月是大月,长31日,4月、6月、9月、11月是小月,长为30日,只有2月平年是28日,闰年29日;并且在儒略历的基础上改进了闰年的方法,规定凡公元年数被4整除的年份是闰年,但当公元年数是整百整千的“世纪年”时,必须能被400整除的年份才是闰年。平年设365日,闰年为366日。
(二)干支纪日法的内容和由来
干支纪日法是汉民族使用天干地支记录日序的方法,是农历的一部份,也是历代历书的重要组成。干支是天干、地支的合称,天干有十:甲、乙、丙、丁、戊、己、庚、辛、壬、癸;地支有十二:子、丑、寅、卯、辰、巳、午、未、申、酉、戌、亥。干支纪日法使用干支依次组合的六十甲子来记录日序,从甲子开始到癸亥结束,六十天为一周,循环记录。日干支即是日柱。
干支纪日法商朝开始使用,甲骨文字中已有干支象形。现已考证:春秋以来的干支纪日从未错乱过。干支纪日法是商朝历法的最大成就,是现今已知世界上最长的纪日法,也是中国一份珍贵的科学文化遗产。
(三)干支表
把干支依次组合正好六十为一周,周而复始,循环记录,这就是俗称的“干支表”。干支表的最大作用就是直观地列出六十甲子及其对应序列数,这在实际运用中十分重要。使用干支纪法来表示四柱,即年柱、月柱、日柱、时柱。四柱就是俗语所说的生辰八字。例如:1949年10月1日14时,即可用干支纪法表示为:己丑年 癸酉月 甲子日 辛未时。则当时出生的婴儿的生辰八字就是己丑 癸酉 甲子 辛未。
现列十天干、十二地支和干支表如下:
高氏日柱公式
(一)公式
(二)符号意义
r:日柱的母数,r 除以60的余数即是日柱的干支序列数;
s:公元年数后两位数, 取整数部分;
u:s 除以4的余数;
m:月数,“[ ]”内取整数部分;
d:日期数;
x:世纪常数
(三)世纪常数
世纪常数x是高氏日柱公式中重要的数值。高氏日柱公式以世纪为运算区间,仅取公元年数后两位代入运算,极大地简化了日柱求解过程。以世纪为区间进行运算时,每个世纪的日柱初始值必然不同,设日柱初始值为世纪常数x。
关于世纪常数的性质和意义,作出以下两点说明:(1)每世纪的第一年是从“0”开始的,故整百整千的“世纪年”即为每世纪的第一年。即例如:1900年应视为20世纪的第1年,其公元年份后两位为零,即s=0。
(2)世纪常数x即为每世纪第一年3月1日的的日柱序列数减1(由于月数改良后,将每年3月视为本年的起始月),即例如:21世纪的世纪常数即为2000年的3月1日的日柱序列数减1,而2000年3月1日是戊午日,“戊午”的序列数是55,故x=55-1=54(由于干支计数的60循环,而54-60=-6,从计算角度来看54与-6是等价的)。
现将17世纪至26世纪一千年间的世纪常数x,对应列表如下:
表2-1.1
表2-1.2
(四)月数
月数m,即为一年中各月的月份数。
需要申明的是——公式中的符号“m”不再表示月基数,而表示月份数。直接输入月数m,通过函数运算输出“月基数”。将月基数巧妙地包含在运算之中,代替了对月基数表的识记。即:(“[ ]”内取整数部分)[4]
改良公式
1月和2月可以通过下列公式转换,〈〉 取余, 这样就不用考虑是否是1月或者2个月份了.
新公式
u和x 做同样的修正
粘贴一个exce公式, AB3为年,AC3为月,AD3为日. 结果 mod 60 即为r.
=INT(MOD(AB3-INT((MOD(9-*11,12)+3)/13),100)/4)*6+5*(INT(MOD(AB3-INT((MOD(9-*11,12)+3)/13),100)/4)*3+MOD(MOD(AB3-INT((MOD(9-*11,12)+3)/13),100),4))+30*(MOD(AC3,2)+1)+INT(((MOD(9-AC3*11,12)+3)*3-7)/5)+AD3+44*(INT((AB3-INT((MOD(9-*11,12)+3)/13))/100))+INT(INT((AB3-INT((MOD(9-*11,12)+3)/13))/100)/4)+9
公式应用举例
例1:计算2008年的2月29日的当日日柱,在计算中应将这天视为2007年的14月29日。则有s=7;u=3;m=14;d=29;x=54,将各项数据代入高氏日柱公式可得:
r=1×6+5×(1×3+3)+30×1+7+29+54=156
故156除以60余数为36,即当日日柱为己亥。
例2:计算1949年10月1日即建国当日的日柱,则有s=49;u=1;m=10;d=1;x=9,将各项数据代入高氏日柱公式可得:
r=12×6+5×(12×3+1)+30×1+4+1+9=301
故301除以60的余数为1,即当日的日柱为甲子。
例3:计算2008年5月12日即汶川地震当日的日柱,则有s=8;u=0;m=5;d=12;x=54,将各项数据代入高氏日柱公式可得:
r=2×6+5×(2×3)+30×0+1+12+54=109
故109除以60的余数为49,即当日的日柱为壬子。
例4:计算1895年4月17日即马关条约签订当日的日柱,则有s=95;u=3;m=4;d=17;x=25,将各项数据代入高氏日柱公式可得:
r=23×6+5×(23×3+3)+30×1+1+17+25=571
故571除以60的余数为31,即当日的日柱为甲午。
例5:计算2015年的1月10日的当日日柱,在计算中应将这天视为2014年的13月10日。则有s=14;u=2;m=13;d=10;x=54,将各项数据代入高氏日柱公式可得:
r=3×6+5×(3×3+2)+30×0+6+10+54=143
故143除以60余数为23,即当日日柱为丙戌。
结论与扩展
《高氏日柱公式》的成功之处在于:以世纪为运算区间,并引入了世纪常数这一重要的概念。使得日柱的求解在三位数以内进行,极大地简化了求解日柱的过程,实现了编写计算代码的可行性,且能够运用于心算。是日柱求解方法的一大创举和进步。月基数的设置也在很大程度上简化了求解日柱的过程。经过进一步研究,作者发现世纪常数和世纪数之间也存在着对应关系,其关系公式(辅助公式)如下:
说明:N为该年所属世纪数,X为世纪常数的母数。X 除以60的余数即为世纪常数 。当求出的世纪常数数值较大时,为了简化计算,可以利用干支计数的循环特性进行等价替换。
事实上,高氏日柱公式的效力(即适用时间范围)是与格里历相同的。而标准的格里历颁布时间为1582年,并对此前的儒略历进行了日期删减,导致了阶段日期的不连续。也就是说,格里历的在1582年是没有效力的。简言之,即使从文献上查得,例如:1492年10月12日哥伦布发现新大陆的日期,也无法用公式准确计算出当日的日柱。当然不是说无法得知,而是需要对方程参数进行适应性修改(重复的11天),蔡勒公式也受此影响。
参考文献
[1]格里历.百度百科_全球最大中文百科全书[引用日期2015-11-5]
[2]戴兴华、杨敏.天干地支的源流与应用.气象出版社,2006年
[3]雅瑟.中华万年历全书.新世界出版社,2011年
[4]蔡勒.蔡勒公式.百度百科[引用日期2015-11-5]
全国各地天气预报查询

上海市

  • 市辖区
  • 云南省

  • 临沧市
  • 云南省

  • 丽江市
  • 云南省

  • 保山市
  • 云南省

  • 大理白族自治州
  • 云南省

  • 德宏傣族景颇族自治州
  • 云南省

  • 怒江傈僳族自治州
  • 云南省

  • 文山壮族苗族自治州
  • 云南省

  • 昆明市
  • 云南省

  • 昭通市
  • 云南省

  • 普洱市
  • 云南省

  • 曲靖市
  • 云南省

  • 楚雄彝族自治州
  • 云南省

  • 玉溪市
  • 云南省

  • 红河哈尼族彝族自治州
  • 云南省

  • 西双版纳傣族自治州
  • 云南省

  • 迪庆藏族自治州
  • 内蒙古自治区

  • 乌兰察布市
  • 内蒙古自治区

  • 乌海市
  • 内蒙古自治区

  • 兴安盟
  • 内蒙古自治区

  • 包头市
  • 内蒙古自治区

  • 呼伦贝尔市
  • 内蒙古自治区

  • 呼和浩特市
  • 内蒙古自治区

  • 巴彦淖尔市
  • 内蒙古自治区

  • 赤峰市
  • 内蒙古自治区

  • 通辽市
  • 内蒙古自治区

  • 鄂尔多斯市
  • 内蒙古自治区

  • 锡林郭勒盟
  • 内蒙古自治区

  • 阿拉善盟
  • 北京市

  • 市辖区
  • 吉林省

  • 吉林市
  • 吉林省

  • 四平市
  • 吉林省

  • 延边朝鲜族自治州
  • 吉林省

  • 松原市
  • 吉林省

  • 白城市
  • 吉林省

  • 白山市
  • 吉林省

  • 辽源市
  • 吉林省

  • 通化市
  • 吉林省

  • 长春市
  • 四川省

  • 乐山市
  • 四川省

  • 内江市
  • 四川省

  • 凉山彝族自治州
  • 四川省

  • 南充市
  • 四川省

  • 宜宾市
  • 四川省

  • 巴中市
  • 四川省

  • 广元市
  • 四川省

  • 广安市
  • 四川省

  • 德阳市
  • 四川省

  • 成都市
  • 四川省

  • 攀枝花市
  • 四川省

  • 泸州市
  • 四川省

  • 甘孜藏族自治州
  • 四川省

  • 眉山市
  • 四川省

  • 绵阳市
  • 四川省

  • 自贡市
  • 四川省

  • 资阳市
  • 四川省

  • 达州市
  • 四川省

  • 遂宁市
  • 四川省

  • 阿坝藏族羌族自治州
  • 四川省

  • 雅安市
  • 天津市

  • 市辖区
  • 宁夏回族自治区

  • 中卫市
  • 宁夏回族自治区

  • 吴忠市
  • 宁夏回族自治区

  • 固原市
  • 宁夏回族自治区

  • 石嘴山市
  • 宁夏回族自治区

  • 银川市
  • 安徽省

  • 亳州市
  • 安徽省

  • 六安市
  • 安徽省

  • 合肥市
  • 安徽省

  • 安庆市
  • 安徽省

  • 宣城市
  • 安徽省

  • 宿州市
  • 安徽省

  • 池州市
  • 安徽省

  • 淮北市
  • 安徽省

  • 淮南市
  • 安徽省

  • 滁州市
  • 安徽省

  • 芜湖市
  • 安徽省

  • 蚌埠市
  • 安徽省

  • 铜陵市
  • 安徽省

  • 阜阳市
  • 安徽省

  • 马鞍山市
  • 安徽省

  • 黄山市
  • 山东省

  • 东营市
  • 山东省

  • 临沂市
  • 山东省

  • 威海市
  • 山东省

  • 德州市
  • 山东省

  • 日照市
  • 山东省

  • 枣庄市
  • 山东省

  • 泰安市
  • 山东省

  • 济南市
  • 山东省

  • 济宁市
  • 山东省

  • 淄博市
  • 山东省

  • 滨州市
  • 山东省

  • 潍坊市
  • 山东省

  • 烟台市
  • 山东省

  • 聊城市
  • 山东省

  • 菏泽市
  • 山东省

  • 青岛市
  • 山西省

  • 临汾市
  • 山西省

  • 吕梁市
  • 山西省

  • 大同市
  • 山西省

  • 太原市
  • 山西省

  • 忻州市
  • 山西省

  • 晋中市
  • 山西省

  • 晋城市
  • 山西省

  • 朔州市
  • 山西省

  • 运城市
  • 山西省

  • 长治市
  • 山西省

  • 阳泉市
  • 广东省

  • 东莞市
  • 广东省

  • 中山市
  • 广东省

  • 云浮市
  • 广东省

  • 佛山市
  • 广东省

  • 广州市
  • 广东省

  • 惠州市
  • 广东省

  • 揭阳市
  • 广东省

  • 梅州市
  • 广东省

  • 汕头市
  • 广东省

  • 汕尾市
  • 广东省

  • 江门市
  • 广东省

  • 河源市
  • 广东省

  • 深圳市
  • 广东省

  • 清远市
  • 广东省

  • 湛江市
  • 广东省

  • 潮州市
  • 广东省

  • 珠海市
  • 广东省

  • 肇庆市
  • 广东省

  • 茂名市
  • 广东省

  • 阳江市
  • 广东省

  • 韶关市
  • 广西壮族自治区

  • 北海市
  • 广西壮族自治区

  • 南宁市
  • 广西壮族自治区

  • 崇左市
  • 广西壮族自治区

  • 来宾市
  • 广西壮族自治区

  • 柳州市
  • 广西壮族自治区

  • 桂林市
  • 广西壮族自治区

  • 梧州市
  • 广西壮族自治区

  • 河池市
  • 广西壮族自治区

  • 玉林市
  • 广西壮族自治区

  • 百色市
  • 广西壮族自治区

  • 贵港市
  • 广西壮族自治区

  • 贺州市
  • 广西壮族自治区

  • 钦州市
  • 广西壮族自治区

  • 防城港市
  • 新疆维吾尔自治区

  • 乌鲁木齐市
  • 新疆维吾尔自治区

  • 伊犁哈萨克自治州
  • 新疆维吾尔自治区

  • 克孜勒苏柯尔克孜自治州
  • 新疆维吾尔自治区

  • 克拉玛依市
  • 新疆维吾尔自治区

  • 博尔塔拉蒙古自治州
  • 新疆维吾尔自治区

  • 吐鲁番市
  • 新疆维吾尔自治区

  • 和田地区
  • 新疆维吾尔自治区

  • 哈密市
  • 新疆维吾尔自治区

  • 喀什地区
  • 新疆维吾尔自治区

  • 塔城地区
  • 新疆维吾尔自治区

  • 巴音郭楞蒙古自治州
  • 新疆维吾尔自治区

  • 昌吉回族自治州
  • 新疆维吾尔自治区

  • 自治区直辖县级行政区划
  • 新疆维吾尔自治区

  • 阿克苏地区
  • 新疆维吾尔自治区

  • 阿勒泰地区
  • 江苏省

  • 南京市
  • 江苏省

  • 南通市
  • 江苏省

  • 宿迁市
  • 江苏省

  • 常州市
  • 江苏省

  • 徐州市
  • 江苏省

  • 扬州市
  • 江苏省

  • 无锡市
  • 江苏省

  • 泰州市
  • 江苏省

  • 淮安市
  • 江苏省

  • 盐城市
  • 江苏省

  • 苏州市
  • 江苏省

  • 连云港市
  • 江苏省

  • 镇江市
  • 江西省

  • 上饶市
  • 江西省

  • 九江市
  • 江西省

  • 南昌市
  • 江西省

  • 吉安市
  • 江西省

  • 宜春市
  • 江西省

  • 抚州市
  • 江西省

  • 新余市
  • 江西省

  • 景德镇市
  • 江西省

  • 萍乡市
  • 江西省

  • 赣州市
  • 江西省

  • 鹰潭市
  • 河北省

  • 保定市
  • 河北省

  • 唐山市
  • 河北省

  • 廊坊市
  • 河北省

  • 张家口市
  • 河北省

  • 承德市
  • 河北省

  • 沧州市
  • 河北省

  • 石家庄市
  • 河北省

  • 秦皇岛市
  • 河北省

  • 衡水市
  • 河北省

  • 邢台市
  • 河北省

  • 邯郸市
  • 河南省

  • 三门峡市
  • 河南省

  • 信阳市
  • 河南省

  • 南阳市
  • 河南省

  • 周口市
  • 河南省

  • 商丘市
  • 河南省

  • 安阳市
  • 河南省

  • 平顶山市
  • 河南省

  • 开封市
  • 河南省

  • 新乡市
  • 河南省

  • 洛阳市
  • 河南省

  • 漯河市
  • 河南省

  • 濮阳市
  • 河南省

  • 焦作市
  • 河南省

  • 省直辖县级行政区划
  • 河南省

  • 许昌市
  • 河南省

  • 郑州市
  • 河南省

  • 驻马店市
  • 河南省

  • 鹤壁市
  • 浙江省

  • 丽水市
  • 浙江省

  • 台州市
  • 浙江省

  • 嘉兴市
  • 浙江省

  • 宁波市
  • 浙江省

  • 杭州市
  • 浙江省

  • 温州市
  • 浙江省

  • 湖州市
  • 浙江省

  • 绍兴市
  • 浙江省

  • 舟山市
  • 浙江省

  • 衢州市
  • 浙江省

  • 金华市
  • 海南省

  • 三亚市
  • 海南省

  • 三沙市
  • 海南省

  • 儋州市
  • 海南省

  • 海口市
  • 海南省

  • 省直辖县级行政区划
  • 湖北省

  • 十堰市
  • 湖北省

  • 咸宁市
  • 湖北省

  • 孝感市
  • 湖北省

  • 宜昌市
  • 湖北省

  • 恩施土家族苗族自治州
  • 湖北省

  • 武汉市
  • 湖北省

  • 省直辖县级行政区划
  • 湖北省

  • 荆州市
  • 湖北省

  • 荆门市
  • 湖北省

  • 襄阳市
  • 湖北省

  • 鄂州市
  • 湖北省

  • 随州市
  • 湖北省

  • 黄冈市
  • 湖北省

  • 黄石市
  • 湖南省

  • 娄底市
  • 湖南省

  • 岳阳市
  • 湖南省

  • 常德市
  • 湖南省

  • 张家界市
  • 湖南省

  • 怀化市
  • 湖南省

  • 株洲市
  • 湖南省

  • 永州市
  • 湖南省

  • 湘潭市
  • 湖南省

  • 湘西土家族苗族自治州
  • 湖南省

  • 益阳市
  • 湖南省

  • 衡阳市
  • 湖南省

  • 邵阳市
  • 湖南省

  • 郴州市
  • 湖南省

  • 长沙市
  • 甘肃省

  • 临夏回族自治州
  • 甘肃省

  • 兰州市
  • 甘肃省

  • 嘉峪关市
  • 甘肃省

  • 天水市
  • 甘肃省

  • 定西市
  • 甘肃省

  • 平凉市
  • 甘肃省

  • 庆阳市
  • 甘肃省

  • 张掖市
  • 甘肃省

  • 武威市
  • 甘肃省

  • 甘南藏族自治州
  • 甘肃省

  • 白银市
  • 甘肃省

  • 酒泉市
  • 甘肃省

  • 金昌市
  • 甘肃省

  • 陇南市
  • 福建省

  • 三明市
  • 福建省

  • 南平市
  • 福建省

  • 厦门市
  • 福建省

  • 宁德市
  • 福建省

  • 泉州市
  • 福建省

  • 漳州市
  • 福建省

  • 福州市
  • 福建省

  • 莆田市
  • 福建省

  • 龙岩市
  • 西藏自治区

  • 山南市
  • 西藏自治区

  • 拉萨市
  • 西藏自治区

  • 日喀则市
  • 西藏自治区

  • 昌都市
  • 西藏自治区

  • 林芝市
  • 西藏自治区

  • 那曲市
  • 西藏自治区

  • 阿里地区
  • 贵州省

  • 六盘水市
  • 贵州省

  • 安顺市
  • 贵州省

  • 毕节市
  • 贵州省

  • 贵阳市
  • 贵州省

  • 遵义市
  • 贵州省

  • 铜仁市
  • 贵州省

  • 黔东南苗族侗族自治州
  • 贵州省

  • 黔南布依族苗族自治州
  • 贵州省

  • 黔西南布依族苗族自治州
  • 辽宁省

  • 丹东市
  • 辽宁省

  • 大连市
  • 辽宁省

  • 抚顺市
  • 辽宁省

  • 朝阳市
  • 辽宁省

  • 本溪市
  • 辽宁省

  • 沈阳市
  • 辽宁省

  • 盘锦市
  • 辽宁省

  • 营口市
  • 辽宁省

  • 葫芦岛市
  • 辽宁省

  • 辽阳市
  • 辽宁省

  • 铁岭市
  • 辽宁省

  • 锦州市
  • 辽宁省

  • 阜新市
  • 辽宁省

  • 鞍山市
  • 重庆市

  • 重庆市

  • 市辖区
  • 陕西省

  • 咸阳市
  • 陕西省

  • 商洛市
  • 陕西省

  • 安康市
  • 陕西省

  • 宝鸡市
  • 陕西省

  • 延安市
  • 陕西省

  • 榆林市
  • 陕西省

  • 汉中市
  • 陕西省

  • 渭南市
  • 陕西省

  • 西安市
  • 陕西省

  • 铜川市
  • 青海省

  • 果洛藏族自治州
  • 青海省

  • 海东市
  • 青海省

  • 海北藏族自治州
  • 青海省

  • 海南藏族自治州
  • 青海省

  • 海西蒙古族藏族自治州
  • 青海省

  • 玉树藏族自治州
  • 青海省

  • 西宁市
  • 青海省

  • 黄南藏族自治州
  • 黑龙江省

  • 七台河市
  • 黑龙江省

  • 伊春市
  • 黑龙江省

  • 佳木斯市
  • 黑龙江省

  • 双鸭山市
  • 黑龙江省

  • 哈尔滨市
  • 黑龙江省

  • 大兴安岭地区
  • 黑龙江省

  • 大庆市
  • 黑龙江省

  • 牡丹江市
  • 黑龙江省

  • 绥化市
  • 黑龙江省

  • 鸡西市
  • 黑龙江省

  • 鹤岗市
  • 黑龙江省

  • 黑河市
  • 黑龙江省

  • 齐齐哈尔市