中华农历论坛知识讨论区历法知识 → [下载]天合历(V3.14版JS程序代码)——以新法农历为主的万年历


  共有51717人关注过本帖树形打印

主题:[下载]天合历(V3.14版JS程序代码)——以新法农历为主的万年历

帅哥哟,离线,有人找我吗?
hiteyun
  31楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:381 积分:2141 威望:0 精华:0 注册:2009/5/1 23:57:00
  发帖心情 Post By:2014/10/17 14:44:00

以下是引用txwdx在2014-10-16 18:56:00的发言:

若要含糊其辞来显示“简洁”,那就没意思了。


依次确定,你得指出“依次确定”的范围吧。


你应该这么说:

“以中气定月份,双中气时以第二个中气定月份,无中气时定为闰月;若有缺月,从前一个闰月开始依次递推填补缺月,以堪民用。”

不仅说出了规则,而且还说出了原因——“双中气”,变动理由“以堪民用”。

现行历法规则是:

“以冬至定岁首冬月;冬至月之间有十二个月的,第一个无中气的月份为闰月,余者依次确定月份;冬至月之间只有十一个月的,依次确定月份。”

只是说出了规则,字数就比你的多。还没说出原因和变动理由。


你的说明书如下:

   新法排月,将现行的“岁首起月法”改为“节气定月法”,以历月所含各节气分布情况确定月份。节气定月规则为“中气定月,无中置闰,双中气前依次确定”。 即以历月所包含的中气确定月份(如果不含中气则置闰),当无中气月后面有双中气月时,该无中气月至双中气月第一个中气期间的中气不作为定月中气,此无中气月至双中气月前的月份以其他月份为基准依次序确定。
    一、原则
    节气定月法的原则为“中气居中、节气在朔,最多允许偏移1个节气位置(当节气偏移超过1个节气位置时须以置闰来调整月份)”。十二节气必须位于当月朔日前后0.5个月范围内,即上月月中至本月月中期间;十二中气必须位于月中前后0.5个月范围内,即本月月首至次月月首期间。以此原则对所有节气与月份的相对位置进行限定,为使所限定的范围便于具体量化,故将月内所含各节气依次编上位置序号,规定任一节气都只能处于三种位置(基本位置及相邻的前后各1个位置)中的任一个位置上。24节气在历月内的位置分别为:
    立春  位于  正月①位  或  正月②位  或  正月前一个月的末位(即闰十二月或十二月的末位)
    雨水  位于  正月①位  或  正月②位  或  正月②位之后的第一位(即正月③位或二月①位)
    惊蛰  位于  二月①位  或  二月②位  或  二月前一个月的末位(即闰正月或正月的末位)
    春分  位于  二月①位  或  二月②位  或  二月②位之后的第一位(即二月③位或三月①位)
    清明  位于  三月①位  或  三月②位  或  三月前一个月的末位(即闰二月或二月的末位)
    谷雨  位于  三月①位  或  三月②位  或  三月②位之后的第一位(即三月③位或四月①位)
    立夏  位于  四月①位  或  四月②位  或  四月前一个月的末位(即闰三月或三月的末位)
    小满  位于  四月①位  或  四月②位  或  四月②位之后的第一位(即四月③位或五月①位)
    芒种  位于  五月①位  或  五月②位  或  五月前一个月的末位(即闰四月或四月的末位)
    夏至  位于  五月①位  或  五月②位  或  五月②位之后的第一位(即五月③位或六月①位)
    小暑  位于  六月①位  或  六月②位  或  六月前一个月的末位(即闰五月或五月的末位)
    大暑  位于  六月①位  或  六月②位  或  六月②位之后的第一位(即六月③位或七月①位)
    立秋  位于  七月①位  或  七月②位  或  七月前一个月的末位(即闰六月或六月的末位)
    处暑  位于  七月①位  或  七月②位  或  七月②位之后的第一位(即七月③位或八月①位)
    白露  位于  八月①位  或  八月②位  或  八月前一个月的末位(即闰七月或七月的末位)
    秋分  位于  八月①位  或  八月②位  或  八月②位之后的第一位(即八月③位或九月①位)
    寒露  位于  九月①位  或  九月②位  或  九月前一个月的末位(即闰八月或八月的末位)
    霜降  位于  九月①位  或  九月②位  或  九月②位之后的第一位(即九月③位或十月①位)
    立冬  位于  十月①位  或  十月②位  或  十月前一个月的末位(即闰九月或九月的末位)
    小雪  位于  十月①位  或  十月②位  或  十月②位之后的第一位(即十月③位或十一月①位)
    大雪  位于  十一月①位  或  十一月②位  或  十一月前一个月的末位(即闰十月或十月的末位)
    冬至  位于  十一月①位  或  十一月②位  或  十一月②位之后的第一位(即十一月③位或十二月①位)
    小寒  位于  十二月①位  或  十二月②位  或  十二月前一个月的末位(即闰十一月或十一月的末位)
    大寒  位于  十二月①位  或  十二月②位  或  十二月②位之后的第一位(即十二月③位或正月①位)
    如:某月包含三个节气:①立春、②雨水、③惊蛰,则只有当该月确定为正月时,所有节气才能符合以上原则。
    如:某月包含三个节气:①雨水、②惊蛰、③春分,如果定为正月,则虽然雨水和惊蛰符合以上原则,但春分不符合,只有当该月定为二月时,所有节气才同时符合以上原则。
    如:某月只包含一个节气:①谷雨,谷雨在第①位,此处应为三月①位,还是四月①位呢?如果定为四月,则下一个节气“立夏”会出现五月①位,与原则不符,所以只有当该月定为三月时,才符合以上原则。
    二、方法
    根据以上原则,可将所有月份分为基准月和非基准月两大类分别确定:
    (一)基准月
    1、独立基准月
    在一个历月内,如果一个中气前面有节气,或者中气前、后均没有节气,则该中气为定月中气,该月属独立基准月。独立基准月包含两种类型:
    (1)中气前面有节气的月份,以此中气确定月份,无论此月是否还含有其他节气。
    (2)中气前、后均没有节气的月份,以该中气确定月份。
    2、关联基准月
    不是独立基准月的月份,如果其后连续5个月以上,每月包含的中气数均为1个, 则该月为关联基准月,所包含的中气为定月中气。关联基准月以所包含的中气确定月份,如果该月不含中气,则为闰月。闰月必然位于一个独立基准月之后,此独立基准月为几月,则闰月为闰几月。
    (二)非基准月
    不符合基准月条件的月份为非基准月,依照前后的基准月按次序确定月份。一段连续非基准月由1—5个历月组成,其前、后相邻两月均为独立基准月。非基准月数量极少,在长达一万年的所有月份中,经统计仅占约0.3%。
    三、说明
    (一)“节气定月法”将没有包含中气的基准月置为闰月,而含有中气的基准月、含有中气的非基准月、没有中气的非基准月均为非闰月。
    (二)“节气定月法”使用定朔定气,并兼容使用平气法的定月规则及无中气月置闰法。因为在平气法中,每月仅包含一个中气,大致间隔30余月时有一个月无中气,中气在各月份中的分布情况是均匀的。即所有月份均属于新法的独立基准月与关联基准月,所有无中气的月份均为闰月,不存在定气法中的非基准月。所以在平气法中,新法即相当于“中气定月,无中置闰”,与平气法定月和置闰规则完全相同。
    (三)“节气定月法”将年首起月法的排月基准月份从年首月一个月(占月份数的8.1%)扩展到绝大多数月份(占月份数的99.7%),使月份与节气更加一致。从根本上解决了现行农历使用年首起月法造成的诸如1700年、1852年只含惊蛰春分的月份定为正月,1833年、1985年以及2053、2167、2205等年份只含立春雨水的月份定为十二月等此类月份与节气对应不直观的问题。


你这样说明,搞了一堆基准月、非基准月的新概念,就已经把人给绕晕了。到了第三段,别人根本不知道你在说什么。

--------------------------------------------

换个说法之后的说明书:

   新法排月,将现行的“岁首起月法”改为“以闰补缺法”,即 “以中气定月份,双中气时以第二个中气定月份,无中气时定为闰月;若有缺月,从前一个闰月开始依次递推填补缺月,以堪民用”。 比如:
· 白露(十四)                                 无中闰七月     民用历递推为八月
· 秋分(初一) 寒露(十六)                     秋分八月     民用历递推为九月
· 霜降(初一) 立冬(十六)                     霜降九月     民用历递推为十月
· 小雪(初一) 大雪(十六) 冬至(三十)      冬至冬月,缺十月,从前一个闰月开始依次递推一月,以闰补缺。
· 小寒(十五)                                 无中闰冬月     民用历递推为腊月
· 大寒(初一) 立春(十六) 雨水(三十)      雨水正月,缺腊月,从前一个闰月开始依次递推一月,以闰补缺。
· 惊蛰(十五)                                 无中闰正月

    “以闰不缺法”优先保证阴阳重合度较高的月份符合时令规则,而阴阳重合度只有15度左右的月份在“以中定月”上适当妥协。而阴阳重合度只有15度左右的月份本身就处于可上可下的状况,因此这种妥协对时令的影响最小。而“岁首起月法”,优先保证冬至处于冬月,而不论阴阳重合度,经常会导致部分月份错配,比如1700年、1852年只含惊蛰春分的月份与却被定为正月

    另一方面,一般235个月有7个闰月,也就是有7个阴阳重合周期,一个阴阳重合周期为33.5个月。无中气月阴阳重合度比15度略少,双中气月阴阳重合度比15度略多。从15度略少到15度略多,顶多只需要三四个月而已,因此“以闰补缺法”只需要关注闰月后数月。而“岁首起月法”则始终要关注十三个月或十四个月。因此“以闰补缺法”排历方法便捷得多。


这样说明,虽然很短,但是准确说出了原因、方法、优点、缺点,以及与别人的对比。

[此贴子已经被作者于2014-10-16 21:56:34编辑过]


唉,究竟识不识字呦?节气定月规则已经写得清清楚楚,不知道为什么还有不明白的地方。
     第一个句号后面,以“节气定月规则为......”几个字开头的一句的内容就是该规则的概括性定义。
     然后,接着以“”字开头的一句就是讲规则的具体涵义。
     包括你有疑问的——“依次确定”的范围,也是在这句话里说清楚了的:此无中气月至双中气月前的月份。
    
总之,该规则内容就是“中气定月+例外情况”:
“中气定月”不用说了,与12个中气及无中气相应的就是12个普通月份和闰月。
“例外情况”就是当无中气月后面有双中气月时,此无中气月至双中气月前的月份采用“依次序确定月份”而不使用“中气定月”,该无中气月至双中气月第一个中气期间的几个中气均不直接参与确定月份。

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
txwdx
  32楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:职业侠客 帖子:496 积分:2143 威望:0 精华:0 注册:2010/2/16 19:15:00
回复:(hiteyun) 以下是引用txwdx在2014-10-16 18:5...  发帖心情 Post By:2014/10/17 18:15:00

ok, 算我脑子有病,要帮你说话


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
hiteyun
  33楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:381 积分:2141 威望:0 精华:0 注册:2009/5/1 23:57:00
  发帖心情 Post By:2015/2/1 11:36:00

V3.12版:调整界面。

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:thl312.rar



支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
hiteyun
  34楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:381 积分:2141 威望:0 精华:0 注册:2009/5/1 23:57:00
  发帖心情 Post By:2015/5/7 21:21:00

V3.13版:调整界面。
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:thl313.rar



支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
hiteyun
  35楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:381 积分:2141 威望:0 精华:0 注册:2009/5/1 23:57:00
  发帖心情 Post By:2015/5/7 23:38:00

截图
图片点击可在新窗口打开查看此主题相关图片如下:313-1.jpg
图片点击可在新窗口打开查看

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
daiqs101
  36楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:新手上路 帖子:1 积分:211 威望:0 精华:0 注册:2015/5/9 20:19:00
  发帖心情 Post By:2015/5/9 20:30:00


请问各位神人:有没有苹果版?这个文件在苹果上打开是个文本文件,不能查询。

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
hiteyun
  37楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:381 积分:2141 威望:0 精华:0 注册:2009/5/1 23:57:00
  发帖心情 Post By:2015/5/21 13:08:00

很抱歉,没有苹果版。

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
hiteyun
  38楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:381 积分:2141 威望:0 精华:0 注册:2009/5/1 23:57:00
  发帖心情 Post By:2016/3/17 22:36:00

以下是引用daiqs101在2015-5-9 20:30:00的发言:

请问各位神人:有没有苹果版?这个文件在苹果上打开是个文本文件,不能查询。

经试用,天合历JS脚本程序可以在安卓系统手机的UC浏览器中运行使用。

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
春光
  39楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:版主 帖子:917 积分:7577 威望:10 精华:1 注册:2005/3/17 11:37:00
  发帖心情 Post By:2016/4/29 10:18:00

以下是引用chwc在2014-10-15 20:47:00的发言:

       你错了,古代用冬至点为回归年点是不争的事实。
       如果明朝没有灭亡,也会采用时宪历的(明朝并不是叫时宪历,叫崇祯历书)。时宪历就是明朝还没来得急实行政权就灭亡了。清朝只是把崇祯历书改个名字而于。
     那你用较简的方式来帮楼主表述一下吧。
     现行规则把冬至定为回归年点。前面说过农历是注重天象的阴阳合历,回归年点定在某日左右是任何阴阳合历规则都办不到,最小漂移量只有定在一个月里面。现行规则已经做到了回归年点最小漂移量(十一月初一到十一月三十或廿九)回归年点最大漂移天数是30天。楼主的规则呢?有没有定个回归年点?有没有做到回归年点最小漂移量?不管楼主把回归年点定在哪个节气,最大漂移天数都允许超过30天(超过一个月)。说楼主的规则更合理,很少人会认同的。当然人家编一个自已认为合理的历法规则那是人家的自由,但是是不是真的更合理,那倒是不一定正确。

支持chwc君的观点,冬至是历法中的岁实,早在先秦时期就有了,在西汉太初历时继承下来,由于当时用平气就没有完全明确出来,大部分农历版本的历元的起点也是冬至,但是不代表这一规则就没有,冬至月建子,子月不得与冬至发生偏移。测定冬至岁实长度。由于使用定气,明代崇祯历书已经把这一规则明确出来。另外,明末崇祯历书在明末官方大辩论中验天象时,已经得到崇祯皇帝的肯定了,要施行,名称还叫大统历,明朝的官历名字叫大统历,只是版本用崇祯历书的。 另外,在农历中冬至的地位明显比立春大得多,这是因为观测立春要比观测冬至麻烦得多。

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
帅哥哟,离线,有人找我吗?
hiteyun
  40楼 个性首页 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:业余侠客 帖子:381 积分:2141 威望:0 精华:0 注册:2009/5/1 23:57:00
回复:(春光) 在2016-4-29 10:18:00...  发帖心情 Post By:2016/12/10 10:41:00

人们知道,定气比平气更加准确符合天象。然而用定气注历代替平气注历时却遭到极大地反对,这里有个传统观念及思维方式的问题。因为平气注历时,每个中气都具有指示历月名称的作用,判断月份名称只需看该月包含哪个中气即可。而定气注历,除十一月外判断月份名称需要根据前后两个冬至月来确定。所以除了冬至,其余十一个中气均不能指示月名,中气与月份之间显得混乱了。但现在人们对此已习以为常了,传统观念和思维方式得以逐渐改变。

支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部
总数 57 上一页 1 2 3 4 5 6 下一页

返回版面帖子列表

[下载]天合历(V3.14版JS程序代码)——以新法农历为主的万年历








签名