||
禹乃遂与益、后稷奉帝命,命诸侯百姓兴人徒以傅土,行山表木,定高山大川。……左准绳,右规矩,载四时,以开九州,通九道,陂九泽,度九山。
中国历来重视农业生产、重视天文观测,帝尧时代就“乃命羲、和,钦若昊天,历象日月星辰,敬授人时。”距离测量,乃至各种可望而不可及的目标的高深广远,也早就做过尝试,并得到了一些非常不错的方法和结果:山高井深固然不在话下,天高地远也都试过。
我们这里并不探讨古人到底是怎么测量的,而是简单谈谈三角测距法(或者说视差法)。这种方法古人也能理解,比如说三国时代的刘徽就在《海岛算经》里解决过很多类似的问题,只是现在可以应用的范围更加广阔而已。
定义一个标准长度(比如说1米),用几何方法很容易把这个长度扩大或缩减10倍,而且只要看得见、摸得着,就可以继续进行下去。在光学显微镜的帮助下,这种方法很容易拓展到1微米的尺度,也即是缩减100万倍。利用电子显微镜等手段,还可以达到原子的尺度——这也就基本上到头了,不过一百亿倍而已。扩张的情况有些麻烦,因为扩大一百万倍才是1000公里,还没有出国,一百亿倍也才一千万公里,虽然比月球远得多,但是离太阳还远着呢。更重要的是,别说1000公里,就是10公里甚至1公里,都有些太远了——也许你出门两百米就会被一条高速公路截断你的去向。这时候,三角测量法就可以派上用场了。
每个人都有两个眼睛,间距$L$大约是5厘米。每个眼睛看到的图像其实略有不同,经过大脑处理以后就会得到立体的感觉。对于单个的物体(比如说,距离合适的一个点),我们也可以不用脑子,而是用笔和纸算出来。只用左眼看这个物体,和只用右眼看它,你会发现这个物体的位置动了,这个变化其实就是你的两个眼睛相对于整个物体的张角。从这个角度$\theta$,你就可以估计物体和你的距离$d\sim L/\theta$。一度的差别(大约0.02弧度)是很容易看出来的,稍微训练一下,看到0.1度也不是太大的问题,所以,我们可以很容易估计几米乃至几十米的距离。其实我们的大脑很善于做这件事,你都不用分别地闭眼睛,就可以做到。
立体电影就是这样来的。两台放映机用不同的偏振光给出略有不同的两个画面,立体眼镜的每个镜片只能让某一种偏振的光通过,所以每个眼睛看到的画面就略有不同,再经过大脑处理就得到立体效果了。以前还有过双色的立体电影,两个画面采用的是不同颜色的光(比如说红光和黄光),戴上镜片一红一黄的眼镜,也能给出立体效果,只是感觉有些怪怪的。还有其他很多种方法能实现立体效果,比如说同时利用人眼的视觉暂留和液晶型的高速光开关,就不一一介绍了。
最简单的三角测距法是,你在A点和B点分别测量远方C点与直线AB的夹角,在根据AB的距离,就可以得到C点的位置了。这是在一个平面上,如果跳出平面,你就需要知道ABC三点的相互距离,以及这三点与远方D点的连线和ABC平面的夹角。最终的结果依赖于三个长度和三个角度的测量精度。这种方法及其变形(例如《海岛算经》)很容易测量几百米乃至几公里远的目标。(全球定位系统如GPS、北斗、GLONASS、伽利略等都是采用的这种方法,只是精度高得多。)
再远些就会有麻烦(几十公里乃至上百公里),因为地球是圆的,必须考虑地面的弯曲。生活在海边的人,最早认识到地球是圆的:远航归来的船只,先是在海平面上露出桅杆的顶端,然后才逐渐现出整个身形。利用这一点,根据桅杆相对于水平面的高度$h$,船只刚露头时到观测点的距离$d$,就可以测量地球的半径$r$,因为$d^2=2rh$(利用勾股定理来近似)。汉代楼船就有十几丈高,就算30米吧,地球半径6400公里,由此可以得到$d$大约是14公里。十几公里的距离是能够用三角测距法比较准确地测量。
认识到地球是圆的、半径为几千公里,(这很难,尤其是在古代),再认识到太阳离我们很远(这也很难),就可以测量地面两个不同位置的距离,比如说几千公里(经度差由时间确定,纬度差由日影确定)。这两个位置与月亮又构成了一个三角形,就可以测量月地距离了。再根据月亮对我们的张角,就可以得到月亮的大小了。
有了月地距离,让太阳、月亮和地球构成一个新的三角形,就可以得到太阳的距离。所需要的角度可以根据月相和日月相对于地面的夹角得到。一个特殊的情况是,当月亮正好有一半被照亮的时候,日地月正好构成一个直角三角形,而月亮位于直角顶点上。
利用月全食,也可以得到日地距离。太阳比地球大得多,地球背向太阳的一侧有本影区(根本看不到太阳)和半影区(能看到一部分太阳),月亮进入本影区,就会发生月食(进入半影区,也可以说有月食,但是人眼对此不是很敏感)。根据月全食开始和结束的时间(月亮进出本影区的时刻),就可以得到月球轨道在本影区内的长度,再根据月地距离,就可以知道日地距离和太阳大小(因为太阳的张角是知道的)。
利用开普勒第三定律,观测行星的公转周期和它到地球的距离,也可以得到日地距离。可惜地球太小了,这些行星的距离也有些远,所以测不了很准确。哈雷提出在发生金星凌日的时候,在不同的地点观测,可以得到太阳的大小。当金星位于太阳和地球连线的时候,从地球上不同地点看去,金星在太阳表面的位置是不一样的,仍然是利用相似三角形。同样的方法也可以用于水星,但是水星离地球更远,效果也就差多了。
知道了日地距离,就可以把应用更大的三角形,把视线投向宇宙的更深处。地球公转轨道的直径就是两个日地距离,大约是1000光秒的样子,也就是3亿公里,这就是地球相隔半年后的距离。由此可以得到“秒差距”:如果远处天体的半年视差为2",它到地球(太阳)的距离就是1秒差距,也就是地球公转轨道半径对应视角为1"时的距离。秒差距是视角的倒数,1秒差距大约是3.26光年,或20万个天文单位。
对于宇宙学来说,秒差距这个单位还是有些小了,常用千秒差距(kpc)和百万秒差距为单位。我们以前说过,肉眼能够看到的最远恒星大约是50光年,也就是20个秒差距的样子。超过这个距离,三角测距法就不太好使了——但幸运的是,我们还有其他方法,适合于测量更远距离的方法,细节以后再说。
需要说明的是,本文提到的这些方法都有比较大的误差,而我们根本就没有讨论误差。这里只是给了一个起点,开始讨论的起点而已。数量级肯定是没有问题的,肯定不超过一个系数2,努努力甚至可以达到50%乃至10%以内。另外可以看到,这些测量都是一环套一环的,如果其中的某个数值能够用某种方式更精确地得到,其他数值的精度也同样可以提高。比如说,现在能够用雷达反射的方法更精确地测量金星的距离,也就可以更精确地得到日地距离。在比如说,利用美国登月时留在月球表面的角锥反射镜,再利用脉冲激光、天文望远镜以及现代化的电子信号处理系统,可以让月地距离的测量精度从千米提高到厘米。然而这绝不容易,1969年阿波罗11号登月后不久,美国就实现了这种测量,而我国只是这几年才有中科院云南天文台实现了类似的测量。因为世界就是这样:
大道至简,知易行难!
附录:古代的天文地理测量方法
《周髀算经》:
夏至南万六千里, 冬至南十三万五千里,日中立竿测影, 此一者, 天道之数。周髀长八尺, 夏至之日晷一尺六寸。髀者, 股也。正晷者, 句也。正南千里。句一尺五寸, 正北千里。句一尺七寸。
《淮南子天文训》
正朝夕,先树一表东方,操一表却去前表十步,以参望日始出北廉。日直入, 又树一表于东方,因西方之表以参望日,方入北廉则定东方。两表之中,与西方 之表,则东西之正也。日冬至,日出东南维,入西南维。至春、秋分,日出东中, 入西中。夏至,出东北维,入西北维,至则正南。
欲知东西、南北广袤之数者, 立四表以为方一里距,先春分若秋分十余日,从距北表参望日始出及旦, 以候相应,相应则此与日直也。辄以南表参望之,以入前表数为法,除举广,除 立表袤,以知从此东西之数也。假使视日出,入前表中一寸,是寸得一里也,一 里积八千寸,得从此东万八千里。视日方入,入前表半寸,则半寸得一里,半寸 而除一里积寸,得三万六千里,除则从此西里数也。并之东西里数也,则极径也。 未春分而直,已秋分而不直,此处南也。未秋分而直,已春分而不直,此处北也。 分、至而直,此处南北中也。从中处欲知中南也,未秋分而不直,此处南北中也。 从中处欲知南北极远近,从西南表参望日,日夏至始出与北表参,则是东与东北 表等也。正东万八千里,则从中北亦万八千里也。倍之,南北之里数也。其不从 中之数也,以出入前表之数益损之,表入一寸,寸减日近一里,表出一寸,寸益 远一里。
欲知天之高,树表高一丈,正南北相去千里,同日度其阴,北表一(二?)尺,南表尺九寸,是南千里阴短寸,南二万里则无景,是直日下也。 阴二尺而 得高一丈者,南一而高五也,则置从此南至日下里数,因而五之,为十万里,则天高也。若使景与表等,则高与远等也。
附录:刘徽《海岛算经》第一题及解答
今有望海岛,立两表,齐高三丈,前后相去千步,令后表与前表参相直。从前表却行一百二十三步,人目着地取望岛峰,与表末参合。从后表却行一百二十七步,人目着地取望岛峰,亦与表末参合。问岛高及去表各几何?答曰:岛高四里五十五步;去表一百二里一百五十步。
术曰:以表高乘表间为实;相多为法,除之。所得加表高,即得岛高。求前表去岛远近者:以前表却行乘表间为实;相多为法。除之,得岛去表数。
——刘徽(约225年—约295年)《海岛算经》第一题
用现代语言来描述,《海岛算经》的第一题是这样的:
位于O的海岛高度OA为$x$,到标尺BC的距离为$y$,BC和EF的高度$h$都是3丈,二者的间隔$d$为1000步。OBDEG是一条直线,ACD和EFG都是直线。BD长度$b$为123步,EG长度$e$为127步,求$x$和$y$。
这是个简单的几何问题,随便哪个中学生都应该会用相似三角形来求解。三角形BCD与OAD相似,三角形EFG与OAG相似,所以,
$\frac{b}{b+y}=\frac{3}{x}=\frac{e}{e+y+L}$
两个方程两个未知数,做一些简单的代数运算,就可以得到:
海岛的高度为$x=\frac{hL}{e-b}+h$,这就是解答里说的(“术曰”):以表高乘表间为实($hL$);相多为法($e-b$),除之($\frac{hL}{e-b}$)。所得加表高(再加上$h$),即得岛高。
海岛到第一个标尺的距离$y=\frac{bL}{e-b}$,这就是解答里说的(“求前表去岛远近者”):以前表却行乘表间为实($bL$);相多为法($e-b$)。除之($\frac{bL}{e-b}$),得岛去表数。
把数字带入,可以得到,$x=$30750步,$y=753$丈。与答案对照(答曰:岛高四里五十五步;去表一百二里一百五十步。),可以知道,1里=300步=180丈,也就是3丈等于5步。
非常了不起。可惜的是,中国的古书都写得太简略,而且只有答案,没有解答的过程。如果你没有相似形的概念,光看这个解答,恐怕很难猜出来为什么这样做。所以,中国古代的数学成就虽然很高,但是传着传着就丢失了。比如说,祖冲之写过《缀术》五卷,收录在《算经十书》中,但是,“学官莫能究其深奥,故废而不理”(《隋书》)。
百度百科:海岛算经
https://baike.baidu.com/item/%E6%B5%B7%E5%B2%9B%E7%AE%97%E7%BB%8F/7691173?fr=aladdin
《海岛算经》由刘徽于三国魏景元四年(公元263年)所撰,本为《九章算术注》之第十卷,题为《重差》。唐初开始单行,体例亦是以应用问题集的形式。研究的对象全是有关高与距离的测量,所使用的工具也都是利用垂直关系所连接起来的测竿与横棒。有人说是实用三角法的启蒙,不过其内容并未涉及三角学中的正余弦概念。所有问题都是利用两次或多次测望所得的数据,来推算可望而不可及的目标的高、深、广、远。此卷书被收集于明成祖时编修的永乐大典中,现保存在英国剑桥大学图书馆。刘徽也曾对九章算数重编并加以注释。全书共9题,全是利用测量来计算高深广远的问题,首题测算海岛的高、远,故得名。
刘徽(生于公元250年左右),是中国数学史上一个非常伟大的数学家,在世界数学史上,也占有杰出的地位.他的杰作《九章算术注》和《海岛算经》,是我国最宝贵的数学遗产。
Archiver|手机版|科学网 ( 京ICP备07017567号-12 )
GMT+8, 2024-11-8 11:28
Powered by ScienceNet.cn
Copyright © 2007- 中国科学报社