夜空中星星闪动html,夜空中的星星为什么会一直闪烁?

这是一个很棒的问题,事实上,这个问题的答案就在我们身边。

84f3276543307c3b9645cf9c8763cffc.png

你曾在极其炎热的一天外出的经历吗?在热到冰淇凌都会融化在手里那种天气,你也许会注意到一个奇怪的事情,地平线附近的树木有点摇晃或者有点模糊,当我们看到夜空中的星星闪烁时,其原理和树木摇晃很相似。

b47e2987bc7670e8a12012e6e6f755f0.png

图解:来自夕阳的光线在大气层中弯曲,形成海市蜃楼。这种海市蜃楼的现象与星星的闪烁光原理一样。-- Brocken Inaglory

当我们抬头时,我们不是单纯地望向太空,我们的目光会穿过大气层。

地球的大气层是一层空气,大概距地面120公里或者更高。在不同高度的大气在我们上空旋转和移动的速度是不一样的。

大气的运动速度取决于它的温度,温度越高,速度越快。

温度较高的空气也相对较轻,因此它会穿越并与周围的冷空气混合,在大气中产生称为“湍流”的漩涡。

f30bf0ab833fb2f45c7145606a3d455e.png

图解:梵高的画作“星夜之夜”以艺术的方式展示了星星在我们的大气层中被湍流所扭曲的现象。Vincent van Gogh, Wikimedia

当空气在地球表面上下山峦和山脉上下穿过时,空气也会被碰撞,产生进入高层大气的热浪。这些热浪扰乱了上面的空气,便引起了湍流。

9b6f3f5cf13db33b6549104dda5ed6ab.png

图解:当空气经过山脉和山丘时,空气可以向上推,在大气层中产生波浪。这些波浪可以在阿尔及利亚东南部的Moul n'ga Cirque附近创建非常酷的云模式。Pir6mon/WJ百科

当一颗恒星的光线穿过我们的大气层时,在你看到它的光线之前它会在大气中产生折射。由于冷热层的空气不断移动,折射角度也会发生变化,导致恒星的看起来像是在摆动或闪烁。

几千年来,土著澳大利亚人和托雷斯海峡岛民一直在观察着闪烁的星星。因为星星闪烁显示风是如何移动的,这在预测天气时非常有用。

643f60874ba4f777715ee94787aa48d7.png

图解:在夏威夷莫纳凯亚山天文台的顶上,从这个可爱的地方接收到的星星并不稀缺。MICHELE FALZONE / PHOTODISC / GETTY IMAGES

光路还原

虽然闪烁看起来很漂亮,但天文学家发现它非常烦人。这是因为它模糊了我们想要看到的东西,比如遥远的星系。

我们能做些什么呢?

太空是看到一颗没有闪烁的星星的最佳地方。然而,将大望远镜送入太空非常困难。

62aca940f6d6179a0b66c1e56a5674bc.png

由于其红外摄影设备,美国宇航局的斯皮策太空望远镜拍摄了潜伏在银河系中的数十万颗恒星的照片。 NASA / JPL-加州理工,CC BY

我们可以在地面上建造大型望远镜,使用激光和可弯曲镜面 – 可弯曲镜面能还原闪烁的星光的原貌。这写些技术向我们展示最真实的宇宙,仿佛大气层消失在我们头上一般!

24808731134144d285775e1d48172d94.png

天文学家使用激光来计算大气的运动方式,这样他们就可以消除他们观察到的恒星的闪烁。整个过程称为“自适应光学”。 G.Hüdepohl/ ESO

行星光线也会被大气层虚化吗?

这就是为什么恒星在天空中闪烁的。如果你仔细观察,你会注意到行星,如金星和木星,似乎并没有像周围的星星一样闪烁。

这是为什么呢?

即使你通过最大的望远镜观察一颗恒星,你仍然只能看到一个微小的光点。这种光线通过一个微小的光束穿过大气层 – 很容易被折射。

如果你通过望远镜观察行星,你会看到它们的环 - 它们离我们足够近,我们可以“放大”,看到一个行星,而不是一个光点。这意味着来自这些行星的光线穿过大气层的光束比来自恒星的光束更强 - 而且更密集的光束更难被扭曲。

b1b462400c701571498a592fadf0e212.png

只有星星在夜空中闪烁。太阳系中的行星太近了,太大了,不能闪烁。金星是距离中心最近的最明亮的光线。木星就在金星的西北方。Brocken Inaglory/WJ百科

所以,行星几乎没有闪烁的时候,而恒星则像疯了一样“眨着眼睛”。

参考资料

1.WJ百科全书

2.天文学名词

3. curious

如有相关内容侵权,请于三十日以内联系作者删除

转载还请取得授权,并注意保持完整性和注明出处

举报/反馈

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
下面是一个简单的使用Arduino编写的蜂鸣器演奏“夜空最亮的星”的代码: ``` int speakerPin = 8; // 蜂鸣器引脚 int melody[] = { // 演奏的音符 262, 262, 392, 392, 440, 440, 392, 349, 349, 330, 330, 294, 294, 262, 392, 392, 349, 349, 330, 330, 294, 392, 392, 349, 349, 330, 330, 294, 262, 262, 392, 392, 440, 440, 392, 349, 349, 330, 330, 294, 294, 262 }; int noteDurations[] = { // 音符持续时间 4, 4, 4, 4, 4, 4, 2, 4, 4, 4, 4, 4, 4, 2, 4, 4, 4, 4, 4, 4, 2, 4, 4, 4, 4, 4, 4, 2, 4, 4, 4, 4, 4, 4, 2, 4, 4, 4, 4, 4, 4, 2 }; void setup() { pinMode(speakerPin, OUTPUT); // 将蜂鸣器引脚设置为输出 } void loop() { for (int i = 0; i < sizeof(melody) / sizeof(melody[0]); i++) { int duration = 1000 / noteDurations[i]; // 计算音符持续时间 tone(speakerPin, melody[i], duration); // 播放音符 delay(duration * 1.3); // 等待一段时间后停止播放 noTone(speakerPin); // 停止播放 } } ``` 在这个代码,我们定义了一个蜂鸣器引脚和一个包含所有演奏音符的数组和一个包含每个音符持续时间的数组。在`setup()`函数,我们将蜂鸣器引脚设置为输出。在`loop()`函数,我们使用`for`循环逐个演奏音符。我们使用`tone()`函数播放每个音符,并使用`delay()`函数等待一段时间后停止播放。最后,我们使用`noTone()`函数停止播放。 请注意,这只是一个简单的示例代码,您可以根据自己的需要进行修改和扩展。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值