中华农历论坛知识讨论区历法知识 → 天文算法讨论


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

主题:天文算法讨论

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


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2011/4/4 1:00:00

低、高精度定朔计算词:基本上调试准确

 

装载 D:\汉编\万年历设计\中\夏历核心模块.CHP ★
编 低精度定朔计算       ( W --- )
  \ 低精度定朔计算,在2000年至600,误差在2小时以内(仍比古代日历精准很多)  so_low
  7771.37714500204                   \ v
  ↑↓  1.08472  +   ∽  /            \ t
  -0.0000331  ∽  ♂  *  *
  ∽  8328.6914  *  0.785  +  cos  0.10976  *  +
  ∽  7214.0629  *  0.187  +  cos  0.02224  *  +
  ∽  628.3076   *  4.669  +  cos  0.03342  *  -
  ∴  /
  ∽  1.8  +  ♂  *  32.0  *  20.0  -
  86400.0  /  36525.0  /  +  -
  36525.0  *  8.0  24.0  /  +
  。 ★
编 高精度定朔计算       ( W --- )
  \ 较高精度朔 so_high
  ♂  月日视黄经时差2  36525.0  *
  ♂  dt_T  -  8.0 24.0  /  +
  ♂  0.5  +  1.0  求浮点余数  86400.0  *             \  v
  ♂  1800.0  <
  ↑↓   86400.0  1800.0  -  >  或
  就   ↑↓   月日视黄经时差  36525.0  *
       ↑↓   dt_T  -  8.0  24.0  /  +
  否则  ↑↓♀
  然后
  。 ★
73.8274273594   低精度定朔计算  显 351.86520375 ★
73.8274273594   高精度定朔计算  显 351.86259178 ★
351.86259178 351.86520375  -    显 -0.00261197 ★

 

低高精度结果相差  -0.00261197    正常吗?



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


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2011/4/4 1:10:00

低、高精度定气计算词,就有点麻烦,找不出高精度计算到底是哪里出问题了,测试茂如下结果:

 

 

编 低精度定气计算       ( W --- )
  \ 最大误差小于30分钟,平均5分  qi_low
  628.3319653318                            \ v
  ∽  4.895062166  -   ∽  /                 \ t  第一次估算,误差2天以内
  53.0  ∽  ♂  *   *
  ∽  628.307585  *  4.67   +  cos  334116.0  *  +
  ∽  628.3076    *  2.678  +  cos  2061.0    *  2 §  *  +
  ∴  /  10000000.0  /  -                                         \ 第二次估算,误差2小时以内

  48950621.66  ∽  6283319653.318  *  +   ∽  ♂  *  53.0  *  +    \ 平黄经
  ∽  628.307585  *  4.669257  +  cos  334166.0  *  +             \ 地球椭圆轨道级数展开
  ∽  1256.61517  *  4.6261    +  cos  3489.0    *  +             \ 地球椭圆轨道级数展开
  ∽  628.307585  *  2.67823   +  cos  2060.6    *  2 §  *  +     \ 一次泊松项
  994.0  -
  ∽  -33.75705   *  2.1824    +  sin  -834.0    *  +              \ 光行差与章动修正

  10000000.0  /  ∴  -  628.332  /
  ∽  1.8  +   ♂  *  32.0  *  20.0  -
  86400.0  /  36525.0  /  +  -
  36525.0  *  8.0  24.0  /  +
  。 ★
 ★
 ★
编 高精度定气计算       ( W --- )
  \ 较高精度气 qi_high
  ♂  太阳视黄经时2  36525.0  *                        \  t
  ♂  dt_T  -  8.0 24.0  /  +
  ♂  0.5  +  1.0  求浮点余数  86400.0  *             \  v
  ♂  1200.0  <
  ↑↓   86400.0  1200.0  -  >  或
  就   ↑↓   太阳视黄经时  36525.0  *
       ↑↓   dt_T  -  8.0  24.0  /  +
  否则  ↑↓♀
  然后
  。 ★
 ★
73.8274273594    低精度定气计算  显 4007.81381162 ★
73.8274273594    高精度定气计算  显 129747.59546391 ★
129747.59546391 4007.81381162  - 显 125739.78165229 ★

 

 

不知是不是地球星历表中的  17534704567  对高精度计算产生了影响

 

在我将这个数字弄错时,将其当作  354835383  时  高低精度结果只相差一倍,将这个数改正后,反而相差N倍了,呵呵


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


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2011/4/4 1:19:00

于是我继续检查查    太阳视黄经反求时间,高速低精度 词: 

 太阳视黄经时    对应寿星历中  S_aLon_t        

太阳视黄经时1   对应寿星历中  S_aLon_t1

太阳视黄经时2    对应寿星历中  S_aLon_t2      

 

 

 

73.8274273594  太阳视黄经时 显 3.55228645 ★
73.8274273594 太阳视黄经时1 显 3.34061559 ★
73.8274273594 太阳视黄经时2 显 -0.57560179 ★
3.55228645 3.34061559  -    显 0.21167086 ★

 

这样的结果,估计是有问题,很需要  正确的测试  参数和结果对照 ,麻烦了,呵呵


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


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2011/4/4 17:21:00

 

装载 D:\汉编\万年历设计\中\夏历核心模块.CHP ★
编 低精度定朔计算       ( W --- )
  \ 低精度定朔计算,在2000年至600,误差在2小时以内(仍比古代日历精准很多)  so_low
  7771.37714500204                   \ v
  ↑↓  1.08472  +   ∽  /            \ t
  -0.0000331  ∽  ♂  *  *
  ∽  8328.6914  *  0.785  +  cos  0.10976  *  +
  ∽  7214.0629  *  0.187  +  cos  0.02224  *  +
  ∽  628.3076   *  4.669  +  cos  0.03342  *  -
  ∴  /
  ∽  1.8  +  ♂  *  32.0  *  20.0  -
  86400.0  /  36525.0  /  +  -
  36525.0  *  8.0  24.0  /  +
  。 ★
 ★
编 低精度定气计算       ( W --- )
  \ 最大误差小于30分钟,平均5分  qi_low
  628.3319653318                            \ v
  ∽  4.895062166  -   ∽  /                 \ t  第一次估算,误差2天以内
  53.0  ∽  ♂  *   *
  ∽  628.307585  *  4.67   +  cos  334116.0  *  +
  ∽  628.3076    *  2.678  +  cos  2061.0    *  2 §  *  +
  ∴  /  10000000.0  /  -                                         \ 第二次估算,误差2小时以内

  48950621.66  ∽  6283319653.318  *  +   ∽  ♂  *  53.0  *  +    \ 平黄经
  ∽  628.307585  *  4.669257  +  cos  334166.0  *  +             \ 地球椭圆轨道级数展开
  ∽  1256.61517  *  4.6261    +  cos  3489.0    *  +             \ 地球椭圆轨道级数展开
  ∽  628.307585  *  2.67823   +  cos  2060.6    *  2 §  *  +     \ 一次泊松项
  994.0  -
  ∽  -33.75705   *  2.1824    +  sin  -834.0    *  +              \ 光行差与章动修正

  10000000.0  /  ∴  -  628.332  /
  ∽  1.8  +   ♂  *  32.0  *  20.0  -
  86400.0  /  36525.0  /  +  -
  36525.0  *  8.0  24.0  /  +
  。 ★
 ★
 ★
编 高精度定气计算       ( W --- )
  \ 较高精度气 qi_high
  ♂  太阳视黄经时2  36525.0  *                        \  t
  ♂  dt_T  -  8.0 24.0  /  +
  ♂  0.5  +  1.0  求浮点余数  86400.0  *             \  v
  ♂  1200.0  <
  ↑↓   86400.0  1200.0  -  >  或
  就   ↑↓   太阳视黄经时  36525.0  *
       ↑↓   dt_T  -  8.0  24.0  /  +
  否则  ↑↓♀
  然后
  。 ★
 ★
 ★
编 高精度定朔计算       ( W --- )
  \ 较高精度朔 so_high
  ♂  月日视黄经时差2  36525.0  *
  ♂  dt_T  -  8.0 24.0  /  +
  ♂  0.5  +  1.0  求浮点余数  86400.0  *             \  v
  ♂  1800.0  <
  ↑↓   86400.0  1800.0  -  >  或
  就   ↑↓   月日视黄经时差  36525.0  *
       ↑↓   dt_T  -  8.0  24.0  /  +
  否则  ↑↓♀
  然后
  。 ★
 ★
73.8274273594     高精度定气计算  显 4007.8191 ★
73.8274273594     低精度定气计算  显 4007.8138 ★
73.8274273594 高精度定朔计算 显 351.8626 ★
73.8274273594 低精度定朔计算 显 351.8652 ★


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


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2011/4/4 17:22:00

呵呵,基本测试完成,能正常排历了

有待进步部测试,并与寿星历计算结果核对。


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


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2011/4/4 23:04:00

 

汉编运行结果:

 

·冬月小 12-06(06 01:35:41) 大雪12-07(07 13:38:22) 冬至12-22(22 07:38:26)
·腊月大 01-04(04 17:02:35) 小寒01-06(06 00:54:36) 大寒01-20(20 18:18:31)
·正月大 02-03(03 10:30:38) 立春02-04(04 12:32:55) 雨水02-19(19 08:25:19)
·二月小 03-05(05 04:45:51) 惊蛰03-06(06 06:29:58) 春分03-21(21 07:20:43)
·三月大 04-03(03 22:32:18) 清明04-05(05 11:11:58) 谷雨04-20(20 18:17:25)
·四月大 05-03(03 14:50:40) 立夏05-06(06 04:23:12) 小满05-21(21 17:21:09)
·五月小 06-02(02 05:02:35) 芒种06-06(06 08:27:19) 夏至06-22(22 01:16:29)
·六月大 07-01(01 16:53:54) 小暑07-07(07 18:41:59) 大暑07-23(23 12:11:48)
·七月小 07-31(31 02:39:46) 立秋08-08(08 04:33:25) 处暑08-23(23 19:20:37)
·八月小 08-29(29 11:04:04) 白露09-08(08 07:34:12) 秋分09-23(23 17:04:37)
·九月大 09-27(27 19:08:39) 寒露10-08(08 23:19:05) 霜降10-24(24 02:30:18)
·十月小 10-27(27 03:55:46) 立冬11-08(08 02:34:55) 小雪11-23(23 00:07:48)

 

寿星历结果对照:

 

·十一小 12-06(06 01:35:41) 大雪12-07(07 13:38:22) 冬至12-22(22 07:38:27)
·十二大 01-04(04 17:02:35) 小寒01-06(06 00:54:37) 大寒01-20(20 18:18:32)
·正月大 02-03(03 10:30:38) 立春02-04(04 12:32:56) 雨水02-19(19 08:25:19)
·二月小 03-05(05 04:45:51) 惊蛰03-06(06 06:29:58) 春分03-21(21 07:20:44)
·三月大 04-03(03 22:32:18) 清明04-05(05 11:11:58) 谷雨04-20(20 18:17:26)
·四月大 05-03(03 14:50:41) 立夏05-06(06 04:23:12) 小满05-21(21 17:21:10)
·五月小 06-02(02 05:02:36) 芒种06-06(06 08:27:20) 夏至06-22(22 01:16:29)
·六月大 07-01(01 16:53:54) 小暑07-07(07 18:42:00) 大暑07-23(23 12:11:48)
·七月小 07-31(31 02:39:47) 立秋08-08(08 04:33:26) 处暑08-23(23 19:20:38)
·八月小 08-29(29 11:04:04) 白露09-08(08 07:34:13) 秋分09-23(23 17:04:37)
·九月大 09-27(27 19:08:39) 寒露10-08(08 23:19:05) 霜降10-24(24 02:30:18)
·十月小 10-27(27 03:55:46) 立冬11-08(08 02:34:55) 小雪11-23(23 00:07:48)


[此贴子已经被作者于2011-4-5 12:30:59编辑过]

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


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2011/4/4 23:54:00

·冬月小 庚寅 12-06 初二辛卯大雪12-07 十七丙午冬至12-22
·腊月大 己未 01-04 初三辛酉小寒01-06 十七乙亥大寒01-20
·正月大 己丑 02-03 初二庚寅立春02-04 十七乙巳雨水02-19
·二月小 己未 03-05 初二庚申惊蛰03-06 十七乙亥春分03-21
·三月大 戊子 04-03 初三庚寅清明04-05 十八乙巳谷雨04-20
·四月大 戊午 05-03 初四辛酉立夏05-06 十九丙子小满05-21
·五月小 戊子 06-02 初五壬辰芒种06-06 廿一戊申夏至06-22
·六月大 丁巳 07-01 初七癸亥小暑07-07 廿三己卯大暑07-23
·七月小 丁亥 07-31 初九乙未立秋08-08 廿四庚戌处暑08-23
·八月小 丙辰 08-29 十一丙寅白露09-08 廿六辛巳秋分09-23
·九月大 乙酉 09-27 十二丙申寒露10-08 廿八壬子霜降10-24
·十月小 乙卯 10-27 十三丁卯立冬11-08 廿八壬午小雪11-23

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


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2011/4/6 2:28:00


 3日 夏历4709年 三月大  
 3日22:32:18朔月  18日10:43:58望月  
11日20:05:22上弦  25日10:46:52下弦  
 5日11:11:58清明  20日18:17:26谷雨

[此贴子已经被作者于2011-4-6 11:41:22编辑过]

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


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2011/4/11 13:27:00

汉语编程 之 华夏万年历(寿星万年历之二次开发),部分截图:

 


图片点击可在新窗口打开查看此主题相关图片如下:汉历.jpg
图片点击可在新窗口打开查看



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


加好友 发短信
等级:业余侠客 帖子:372 积分:1447 威望:0 精华:0 注册:2008/12/20 18:10:00
  发帖心情 Post By:2011/5/18 17:58:00

许老师,我发现,您的寿星代码中的日期物件中有一个方法有点小问题:

 

nnweek:function(y,m,n,w){ //求y年m月的第n个星期w的儒略日数
   var jd = JD.JD(y,m,1.5); //月首儒略日
   var w0 = (jd+1)%7;       //月首的星期
   var r  = jd-w0+7*n+w;    //jd-w0+7*n是和n个星期0,起算下本月第一行的星期日(可能落在上一月)。加w后为第n个星期w
   if(w>=w0) r-=7; //第1个星期w可能落在上个月,造成多算1周,所以考虑减1周

//  根据测试,红字条件成立的前提为: 月首星期不为0的情况;

//  所以,红字部分代码应为:  if((w>=w0)&&(w0!=0)) r-=7;
   if(n==5){
    m++; if(m>12) m=1, y++;   //下个月
    if(r>=JD.JD(y,m,1.5)) r-=7; //r跑到下个月则减1周
   }
   return r;
  }


支持(0中立(0反对(0单帖管理 | 引用 | 回复 回到顶部

返回版面帖子列表

天文算法讨论








签名