中华农历论坛知识讨论区历法知识 → 寿星万年历5.08(测试版)


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

主题:寿星万年历5.08(测试版)

客人(116.3.*.*)
  881楼


  发帖心情 Post By:2010/1/7 20:08:00

相当慢,1分钟了还没有打开页面。

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


加好友 发短信
等级:蝙蝠侠 帖子:866 积分:3804 威望:3 精华:20 注册:2008/3/20 22:14:00
  发帖心情 Post By:2010/1/10 21:30:00

重新发布了V4.99版

1、改进了影子切入点的计算,用把地球看成椭球计算

2、改进了月亮视半径的计算,把本影用的月亮视半径与半影用的月亮视半径区分开来

3、增加了日食计算原理sm9.htm 

4、日出日没界线一并采用椭圆

5、日出日没食甚线的线头连线到南北界线上,这个问题难度较大,所以改写了一些界线的内核代码。

 

 

紫台数据

                  日食概况
                                    见食地点
             力学时            纬度       地理经度    食分   全食食延时间  全食带宽   太阳方位和高度
偏食始  7月21日23h59m21s   +19d 2.9am  + 84d43.1am
全食始  7月22日 0h53m57s   +20d21.5am  + 70d31.4am
食  甚          2h36m24s   +24d13.0am  +144d 7.1am   1.081    6m43.2s     261.3km    197.6d   85.9d
全食终          4h18m52s   -12d54.9am  -157d41.2am
偏食终          5h13m28s   -14d13.8am  -171d50.9am

 

寿星数据

偏食始: 2008-08-01 08:05:12 + 52°05',+ 50°12'
中心始: 2008-08-01 09:23:43 +102°58',+ 68°22'
视午食: 2008-08-01 09:48:27 - 34°44',+ 81°07'
中心终: 2008-08-01 11:21:03 -113°49',+ 33°31'
偏食终: 2008-08-01 12:39:31 - 85°35',+ 11°09'

 误差为几个角分。

[此贴子已经被作者于2010-1-12 22:38:25编辑过]

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


加好友 发短信
等级:蝙蝠侠 帖子:866 积分:3804 威望:3 精华:20 注册:2008/3/20 22:14:00
  发帖心情 Post By:2010/1/10 21:36:00

一直困扰的月亮半径取值问题基本明白了:

1、紫台使用值为IAU1982的推存值:

  地月半径比 k= 0.2725076

2、NASA则采用两个值

  计算半影:k1=0.2725076

  计算本影:k2=0.2722810

 

 

我在NASA的日食网站的这篇文章中找到的:

NASA/TP——2007-214149

Total Solar Eclipse of 2008 August 01

F. Espenak and J. Anderson

[此贴子已经被作者于2010-1-18 8:08:49编辑过]

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


加好友 发短信
等级:新手上路 帖子:14 积分:294 威望:0 精华:0 注册:2009/12/29 15:59:00
  发帖心情 Post By:2010/1/15 16:17:00

今天的日环食,寿星已经准确预测了,并且时间一致,真是太佩服了。

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


加好友 发短信
等级:蝙蝠侠 帖子:866 积分:3804 威望:3 精华:20 注册:2008/3/20 22:14:00
  发帖心情 Post By:2010/1/15 21:44:00

重新发布了V4.99版

1、修正上一版本改进日食边界的端线连接算法的错误

2、把日食搜索速度提高近10倍,原来的搜索速度太慢,不利于批统计计算

 

前两个星期,因512M内存运行FLASH CS4不太够用,所以就把电脑主板芯片内存换了,速度提高了两三倍,所以所后程序计算速度的描述将以新电脑作为参照。


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


加好友 发短信
等级:版主 帖子:2068 积分:4263 威望:5 精华:4 注册:2008/11/13 21:03:00
  发帖心情 Post By:2010/1/15 23:08:00

不错,新算法确实快多了.

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


加好友 发短信
等级:蝙蝠侠 帖子:866 积分:3804 威望:3 精华:20 注册:2008/3/20 22:14:00
  发帖心情 Post By:2010/1/16 20:02:00

已发布V5.00版
1、更改了界线图的配色方案
2、改进界线图中食甚线的算法。
3、因为加入了快速搜索器,所以把原来的日食根数初始化函数接口简化了,还可以简化很多,以后有空再说吧。

 

刚刚又改进了一些,应该是收敛了。

 

已发布V5.01版

1、重新整理日食计算代码,代码多了,写的有点乱,所以整理一下,改了很多代码,有可能产生新的bug

2、修改了一些日月食计算帮助

 

 

[此贴子已经被作者于2010-1-17 20:31:16编辑过]

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


加好友 发短信
等级:版主 帖子:2068 积分:4263 威望:5 精华:4 注册:2008/11/13 21:03:00
  发帖心情 Post By:2010/1/17 22:32:00

5.01版与5.00版相比,日食计算上没什么大的差别。

只发现在食分与时长的数据,尾数稍有不同。

 

比如5。00版,1月15日重庆日环食:

时长: 7分49.6秒
食分: 0.95410

5。01版,重庆日环食:

时长: 7分49.6秒
食分: 0.95409

*************

查了一下7月22日的全食,也有类似情况。

应当不算BUG。

 


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


加好友 发短信
等级:蝙蝠侠 帖子:866 积分:3804 威望:3 精华:20 注册:2008/3/20 22:14:00
  发帖心情 Post By:2010/1/18 12:47:00

是一个BUG,我把某次日食太阳视半径看为一个常数,与观测点无关,造成误差。

昨发布之前,我也发现这个问题,我已为只是因为我改了一些参数,偶然出现一两个差异,看了你的回复,我发现这不是偶然的。因为这5.01版的太阳单位距离视半径采用959.64,原来采用959.53,差异1/10万,而5.01与5.00的食分差异为1/1万,是1/10万的10倍。经查,是算法的问题。现已重发V5.01版


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


加好友 发短信
等级:蝙蝠侠 帖子:866 积分:3804 威望:3 精华:20 注册:2008/3/20 22:14:00
  发帖心情 Post By:2010/1/18 13:13:00

V5.01版的日月食算法所作的改革:

在一次日食过程中,有些参数几乎是不变的,或者说,在一次日食过程中,这些参数的变化几乎可以忽略不计,看作常数即可,我把这些参数首先全部算出。

public static var bba   = 1;      //贝圆极赤比
public static var tanf1 = 0.0046; //半影锥角
public static var tanf2 = 0.0045; //本影锥角
public static var srad  = 0.0046; //太阳平均半径
public static var bhc   = 0;      //黄交线与赤交线的夹角,简易作图用
public static var dyj   = 23500;  //地月距

每次日食,这些参数是要重新计算一次。

以前这些参数是大多在各个子程序中要用到的时候临时计算,虽然精确一些,但造成程序不好理解。

 

把一些参数固定为常数的好处:有利用笔算!!!通过这几个月的编程计算,日食计算“殊路同归”,天文学家早已研究了几百年,哪些可以简化的地方,前人早已研究得十分透彻。以至于,在《中国天文年历》或NASA等资料中,有一些必给的参数“根数”,如tanf1,tanf2等,以前我不太清楚给这些参数有多大的意义,只认为“地月坐标已知,影子的位置自然是确定的”,却没有意识到还有许多“常数”简化计算或使计算思路更清析。当然,在简化的过程中要作不少误差分析。

 

《日月食计算概要》一书,很想读懂他,但因扫描得太模糊,实在看不下去,所以一直看不清天文学家们的算法。通过近几个月的自己深入计算,基本猜出了他们在算什么,他们大约如何控制精度。

 

我的计算过程与天文大师们的计算过程不太一样。大师们主要把计算过程公式化,然后在计算过程中按照公式逐步进行计算,也就是将笔算转为电算。我的算法根本不适用于笔算,我在计算过程中不断的调用几个特殊函数,如空间直线与椭球交点求解函数、直线与椭圆位置关系的几个函数,我追求计算过程模块化(做成各个功能函数),因此,分析我的算法,无需过多关系中间数据的演算过程,只需分析模块功能及算法步骤。比如,求解影子的轮廓线,我的算法描述为:(1)描述出月边缘上一点的坐标和太阳边缘上一点的坐标,这两点的方位角相同。(2)调用空间直线与地球的交点函数,求经过这两点的直线与地球的交点。(3)把各个方位角的交点连接起来得到轮廓线。而在《日月食计算概要》中,则给出一组公式来计算。

 


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

返回版面帖子列表

寿星万年历5.08(测试版)








签名