一个计算地平式日晷晷面图的flash程序

106 views
Skip to first unread message

Jian Li

unread,
Jan 6, 2012, 12:16:15 AM1/6/12
to univer...@googlegroups.com

日晷利用日影测定时间的一种仪器或器具,是人类为生存和发展最早创制的天文仪器,为几千年人类文明起了不可估量的作用。今天它的计时使命或许早已完成,但是日晷背后隐含的自然规律,仍然是我们探索宇宙的入门第一步。

日晷日”指太阳,“晷”表示影子。日晷主要由晷表和晷面两部分组成。天气晴朗时,阳光倾泻在表上,在其下方的面上拖曳出一条清晰的影子。随着时间流逝,太阳在苍穹上缓步轻移,晷表的影子亦步亦趋地在面上缓行。劳作的人们,看一下影子的位置,就能读出时间等信息。日晷按照晷面放置的方式,大致分为三类。一类为水平放置,称作地平式”日晷;一类为平行赤道面放置,称为赤道式”日晷

目前在很多旅游纪念品市场上都有小巧的日晷出售,我们买回来后一实验,却发现它往往并不能准确地指示时间。原因就是日晷的晷面图的形状与当地的地理经、纬度有关,一般的日晷上显示都是“地方时”,需要进行区时改正,才能得到与手表相同的时间。例如一个在北京适用的日晷,拿到经度相差20多度新疆去用,就肯定不准了。因为在新疆,手表显示12点钟时,太阳还远没有像北京那样走到正南方。同样,把这个日晷拿到纬度相差20多度的海南去,即时指示的时间相差不大,但日晷上指示的日期却大相径庭。因为在同一天的同一时刻,海南的太阳高度要比北京高很多,晷针影尖的指向当然也就不一样了。

另外,日晷指示的时间就是真太阳指示的时间,远没有人们精工细作的手表走时那么均匀、准确。真太阳指示的时间与手表时间的差别,就是天文学上所谓的“时差”,最大可以相差将近17分钟。读出日晷时间后,除进行区时改正外,还需要进行时差改正,才能得到和手表一致的时间。

为此,《天文爱好者》杂志社编写了一个flash程序,输入所在地方的经度和纬度(北半球),就可以画出地平式日晷的晷面图,大家只需把晷针剪切下来贴到图上的相应位置,就能制作出适合于自己地区的日晷了。注意这个晷面图上指示的是北京时间(也就是我们的手表时间),而不是地方时。如此一来,读出日晷时间后,不需要再做区时改正了,使得日晷的实用性更强,缺点是有的地方晷面图的形状变成了不对称的,不那么美观。

程序说明:

晷面图上蓝色的纵线是时刻线,即某一时刻晷针的影尖所指的位置。为了美观,最早、最晚时刻都从整点开始,蓝色之间的褐色短线,是间隔为15分钟的刻度线。晷面图上能显示的最早、最晚时刻,由“太阳高度最小值”决定,其单位为度,即晷面上指示的时间段前后一小时以内,太阳地平高度的最小数值。举个例子,假设我们限定太阳高度最小值为10度,而对某地的某一天(假设为88日)而言,太阳地平高度为10度时的北京时间为上午740分和下午1540分,那么晷面图上就画出了这一天从8点到15点的时刻线。如果想画出这天从7点到16点的时刻线,可以试着把太阳高度最小值设得更小。这个设定是为了日晷的实用性,使得它能指示的时间尽可能地长。

褐色曲线是日期线,即晷针的影尖在这天所划过的轨迹。图上从上至下给出了几个典型的日期线:夏至、56日或88日、春秋分、24日或117日、冬至,其他日子的日期线可从这些线内插估得。以北京为例,上文提到的时刻线绘制规则使得在夏至日,晷面图可以给出从6点到18点的时刻线,而在冬至日,则通常只能给出从9点到15点的时刻线(除非将太阳高度最小值设得极小,例如5度以内)。

“杆长”参数是一个比率,控制整个图形的缩放,以方便打印。杆长越小,图形越小。它与“太阳高度最小值”相结合,使得程序更加易用,调整这两个参数可以绘制出最符合使用者的审美和使用目的的晷面图。在有些特殊情况下,例如纬度为0、太阳高度最小值为14.5时,图形很不美观,这时只需对太阳高度最小值做微调,例如调整到15.5,就能解决这个问题。

蓝色的“8”字形阴影是“时差”曲线,为了美观,程序对全年都可以使用这个日晷的时间段(例如40度处,9~15点),晷面图上都加上了时差曲线。当然由于晷面图尺寸所限,这里标出的时差曲线未必很实用,但至少它可以提醒使用者不要忘了时差改正。以北京地区24日和117日为例,24日真太阳时比手表时间慢大约14分钟,因此这天的任意时刻,日晷指示的时间需要加上14分钟,才是手表时间,例如手表显示12点时,日晷指示的时间为“8”字形与日期线的右交点,约为1146分;117日的真太阳时比手表时间快大约16分钟,所以手表显示12点时,晷针影尖指向“8”字形与日期线的左交点。其余时刻与此类似。在实际应用时,只需读出任意时刻的“8”字线与日期线的交点和该时刻的时间差,然后再把日晷指示时间加或减去这个时间差,即可得到手表时间。如果当天“8”字线与日期线相交于左交点,则北京时间等于日晷指示时间减去这个时间差,如果交于右交点,则为加上这个时间差。

北京天文馆天文课件说明1-678.png
日晷晷面图-测试更新.swf
Reply all
Reply to author
Forward
0 new messages