ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: zopey

[分享] 农历计算程序

[复制链接]

TA的精华主题

TA的得分主题

发表于 2019-2-23 11:49 | 显示全部楼层
本帖最后由 cyfx2288 于 2019-2-23 11:51 编辑
zopey 发表于 2019-2-22 20:30
儒略历是足够精确的 计日方法,没有你说的误差。
古代日历的生成 原理同现代天文定义,偏差是因为定气定塑 ...

      格历里从本质上说,是儒略历的修正版。如果儒略历足够精确,还需要1582年对儒略历规则进行修订吗?
       也可以反过来说,1582年对儒略历规则的修正,事实上就是在说,儒略历每400年会有3天误差。
       中国古代历史从夏商开始算起,至儒略历启用的公元前45年,大约2000年,这么长的时间中,儒略历导致累积误差大会有15-16天,已经与真实天象差异非常大了。
       天体物理中地月日相互绕转的虽然也受一些其他因素影响,但在几千年中的误差应该不可能有这么大。
       如果,我们假定格里历至少在5000年中是正确的,那么我个人认为,在倒推古代历法的过程中,为了使历法与真实天象一致,公元前45年之前历法,应使用格里历更妥当。


TA的精华主题

TA的得分主题

发表于 2019-2-23 12:17 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
cyfx2288 发表于 2019-2-23 11:49
格历里从本质上说,是儒略历的修正版。如果儒略历足够精确,还需要1582年对儒略历规则进行修订吗? ...

不明觉厉,历法专家都来搞编程了

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-2-23 12:23 | 显示全部楼层
事实上就是在说,儒略历每400年会有3天误差??
大约2000年,这么长的时间中,儒略历导致累积误差大会有15-16天??

真不知道  你在说什么,可以的话 请举例、

TA的精华主题

TA的得分主题

发表于 2019-2-23 20:02 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
zopey 发表于 2019-2-23 12:23
事实上就是在说,儒略历每400年会有3天误差??
大约2000年,这么长的时间中,儒略历导致累积误差大会有15- ...

1582年10月缺少5-14日,为什么?这不是现成的例子?
教皇不是傻子,若不是公元纪年执行一五百余年,导致了累计误差太大,为什么要用人为的命令去减少10天?

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-2-23 23:30 | 显示全部楼层
cyfx2288 发表于 2019-2-23 20:02
1582年10月缺少5-14日,为什么?这不是现成的例子?
教皇不是傻子,若不是公元纪年执行一五百余年,导 ...

1、你提到的儒略历是 罗马统治者 Julius Caesar 在 公元前45年 发明的,做为历法 它当然 会有误差。
   农历计算中 也完全不涉及儒略历的 知识。


2、天文计算的 “儒略日” 与”儒略历”不同,儒略日是由法国学者 Joseph Justus Scaliger (1540-1609)发明的,    名称可能是取自 他的父亲。 同名只是巧合 。

TA的精华主题

TA的得分主题

发表于 2019-2-24 21:22 | 显示全部楼层
zopey 发表于 2019-2-23 23:30
1、你提到的儒略历是 罗马统治者 Julius Caesar 在 公元前45年 发明的,做为历法 它当然 会有误差。
    ...

农历中,太阴历(即以月亮确定的阴历月)与儒略历当然无关。但是农历中的的24节气,则是典型的“阳历”。
如果说西方人使用的公历,是对1年365.24天以数字编号,那么我们可以认为中国农历中的24节气,只是以地球绕日公转周期为基础,只对这365.24天中比较重要的24天用一组专用名词进行了命名。因此,农历中的24节气是实实在在的“阳历”。
虽然儒略历与中国农历起源不同,但其依据的基础百分之一百相同:都是地球绕日是公转。正因如此,所以24节气对应于公历,的具体日期基本上前后相差二三天,不会太多。
公元300年2月28日-1582年10月4日之间,由于儒略历的误差,这些年月中越是靠近1582年,农历节气与公历的日期偏差越大。
相应公元300年2月28日以前,时间越久24节气与公历日期的偏差越大。
我实际测算过,从公元前4100年至公元3000年,在这7000余年中若假设都使用现代格里历,则24节气与公历日期的偏差基本在3-4天内。
公元前45-1582年10月4日,已经是历史中的既成事实,不可更改。
而公元前45年之前,儒略历并不存在,若仍然以儒略历来转换中国古代农历,则立春或能发生在1月-2月的任何一天,问题就出在儒略历每400年存在3天的误差。

TA的精华主题

TA的得分主题

发表于 2019-2-25 00:50 | 显示全部楼层
cyfx2288 发表于 2019-2-24 21:22
农历中,太阴历(即以月亮确定的阴历月)与儒略历当然无关。但是农历中的的24节气,则是典型的“阳历”。 ...

儒略历和儒略日是两个概念。
儒略日没有年月只有按日计算!

TA的精华主题

TA的得分主题

发表于 2019-2-25 15:47 | 显示全部楼层
YZC51 发表于 2019-2-25 00:50
儒略历和儒略日是两个概念。
儒略日没有年月只有按日计算!

我自始至终都在说得是“儒略历”,不是在说“儒略日”。“历”是年度、月份的制定规则,而日,不管叫什么日都只是一天。
而我所指的误差,就是指儒略历的累积误差。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-2-25 16:14 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
儒略日是计算结果,最后换算为平常用的公历(格里历)年月日,规则是:4年一闰,百年不闰,400年再闰 。
日期换算只是数学问题,不存在累计误差。
至于你认为 立春节气 没有固定在每年的2月4日、5日,是有可能的。
节气时间 来源于天文观测,要看天定。

TA的精华主题

TA的得分主题

 楼主| 发表于 2019-3-15 16:17 | 显示全部楼层
本帖最后由 zopey 于 2019-3-15 19:46 编辑
cyfx2288 发表于 2019-2-22 17:23
关于公元前45年以前的公历农历对应,我有个想法,请楼主参详:
寿星历中,只要是1582年以前的,都使用儒略 ...

我最近下载了 “寿星天文历”学习,在帮助里看到作者 已有给出古代实历 关于平气、平塑的 线性分段拟合参数,
故拿过来 完善了古代农历模块。


//“朔”直线拟合参数1457698.231017,29.53067166, // -721-12-17 h=0.00032 古历·春秋1546082.512234,29.53085106, // -479-12-11 h=0.00053 古历·战国1640640.735300,29.53060000, // -221-10-31 h=0.01010 古历·秦汉1642472.151543,29.53085439, // -216-11-04 h=0.00040 古历·秦汉1683430.509300,29.53086148, // -104-12-25 h=0.00313 汉书·律历志(太初历)平气平朔1752148.041079,29.53085097, //   85-02-13 h=0.00049 后汉书·律历志(四分历)1807665.420323,29.53059851, //  237-02-12 h=0.00033 晋书·律历志(景初历)1883618.114100,29.53060000, //  445-01-24 h=0.00030 宋书·律历志(何承天元嘉历)1907360.704700,29.53060000, //  510-01-26 h=0.00030 宋书·律历志(祖冲之大明历)1936596.224900,29.53060000, //  590-02-10 h=0.01010 随书·律历志(开皇历)1939135.675300,29.53060000, //  597-01-24 h=0.00890 随书·律历志(大业历)1947168.00//  619-01-21//“气”直线拟合参数1640650.479938,15.21842500, // -221-11-09 h=0.01709 古历·秦汉1642476.703182,15.21874996, // -216-11-09 h=0.01557 古历·秦汉1683430.515601,15.218750011,// -104-12-25 h=0.01560 汉书·律历志(太初历) 回归年y=365.250001752157.640664,15.218749978,//   85-02-23 h=0.01559 后汉书·律历志(四分历)     y=365.250001807675.003759,15.218620279,//  237-02-22 h=0.00010 晋书·律历志(景初历)       y=365.246891883627.765182,15.218612292,//  445-02-03 h=0.00026 宋书·律历志(何承天元嘉历) y=365.246701907369.128100,15.218449176,//  510-02-03 h=0.00027 宋书·律历志(祖冲之大明历) y=365.242781936603.140413,15.218425000,//  590-02-17 h=0.00149 随书·律历志(开皇历)       y=365.242201939145.524180,15.218466998,//  597-02-03 h=0.00121 随书·律历志(大业历)       y=365.243211947180.798300,15.218524844,//  619-02-03 h=0.00052 新唐书·历志(戊寅元历)     y=365.244601964362.041824,15.218533526,//  666-02-17 h=0.00059 新唐书·历志(麟德历)       y=365.244801987372.340971,15.218513908,//  729-02-16 h=0.00096 新唐书·历志(大衍历,至德历)y=365.244331999653.819126,15.218530782,//  762-10-03 h=0.00093 新唐书·历志(五纪历)       y=365.244742007445.469786,15.218535181,//  784-02-01 h=0.00059 新唐书·历志(正元历,观象历)y=365.244842021324.917146,15.218526248,//  822-02-01 h=0.00022 新唐书·历志(宣明历) y=365.244632047257.232342,15.218519654,//  893-01-31 h=0.00015 新唐书·历志(崇玄历) y=365.244472070282.898213,15.218425000,//  956-02-16 h=0.00149 旧五代·历志(钦天历) y=365.242202073204.872850,15.218515221,//  964-02-16 h=0.00166 宋史·律历志(应天历) y=365.244372080144.500926,15.218530782,//  983-02-16 h=0.00093 宋史·律历志(乾元历) y=365.244742086703.688963,15.218523776,// 1001-01-31 h=0.00067 宋史·律历志(仪天历,崇天历) y=365.244572110033.182763,15.218425000,// 1064-12-15 h=0.00669 宋史·律历志(明天历) y=365.242202111190.300888,15.218425000,// 1068-02-15 h=0.00149 宋史·律历志(崇天历) y=365.242202113731.271005,15.218515671,// 1075-01-30 h=0.00038 李锐补修(奉元历)     y=365.244382120670.840263,15.218425000,// 1094-01-30 h=0.00149 宋史·律历志         y=365.242202123973.309063,15.218425000,// 1103-02-14 h=0.00669 李锐补修(占天历)     y=365.242202125068.997336,15.218477932,// 1106-02-14 h=0.00056 宋史·律历志(纪元历) y=365.243472136026.312633,15.218472436,// 1136-02-14 h=0.00088 宋史·律历志(统元历,乾道历,淳熙历)365.243342156099.495538,15.218425000,// 1191-01-29 h=0.00149 宋史·律历志(会元历) y=365.242202159021.324663,15.218425000,// 1199-01-29 h=0.00149 宋史·律历志(统天历) y=365.242202162308.575254,15.218461742,// 1208-01-30 h=0.00146 宋史·律历志(开禧历) y=365.243082178485.706538,15.218425000,// 1252-05-15 h=0.04606 淳祐历               y=365.242202178759.662849,15.218445786,// 1253-02-13 h=0.00231 会天历               y=365.242702185334.020800,15.218425000,// 1271-02-13 h=0.00520 宋史·律历志(成天历) y=365.242202187525.481425,15.218425000,// 1277-02-12 h=0.00520 本天历               y=365.242202188621.191481,15.218437484,// 1280-02-13 h=0.00013 元史·历志(郭守敬授时历) y=365.242502321919.49// 1645-02-04

仍以公元4年为例 ,
1、平气平塑 成功拟合了 文献记载干支。
89.JPG


2、文献记载
104150q8d7jj2gbtjtj02z.png
20095281438614267.jpg

3、定气 定塑 计算所得,与文献 不一致
112521vnsxi8iznsti08rx.jpg


您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-4-27 17:48 , Processed in 0.038172 second(s), 8 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表