太阳光是平行光吗_“彩虹的形成是因为光的色散和光沿直线传播是一回事吗?”...

ce80d2e62dfc448c86365acd8847479c.png

-1

感谢某不愿透露姓名的高中同学提供支持。

0

请先解释一下你的这个问题提法可能的歧义:究竟是“是因为”后面的词语组成一个整体,还是“和”前面的词语组成一个整体呢?不讲清楚的话,答案会有一些差距。

1

“彩虹的形成是因为光的色散”和“光沿直线传播”,是一回事吗?答案是“否”。其实如果是另一种断句的话答案也是“否”,大差不差。

你刚才只问了“是不是”,没问“为什么”啊!所以我当然没有义务回答多余的部分了。

——开玩笑的。从高中时代开始我就是个“小题大做”的人了,这种我刚好有所了解的话题,怎么可能不展开讲讲呢?

请随我来。

2

嘛……其实如果你对高中物理课本还有印象的话,应该自己也能推断出来这两个东西原理不一样。让你回想起来的话,我就摘抄一段内容好了。

彩虹是因为阳光射到空中接近球形的小水滴,造成色散及反射而成。阳光射入水滴时,因为水对光有色散的作用,不同波长的光的折射率有所不同,红光的折射率比蓝光小,而蓝光的偏向角度比红光大。所以观察者看见的光谱是倒过来的,红光在最上方,蓝光在下。

8c46a05fba13833ab8067849de491037.png

光的直线传播么,这是大家都接受的现象。显然在折射发生的点之外都是由直线传播规律决定的,但只有这个是不可能解释色散现象的存在的,所以有本质的区别。

3

色散当然是彩虹的成因,但如果想得太深,就会产生这样的疑问:无数个小水滴所折射的七色光不会互相干扰吗,为什么能形成彩虹?彩虹为什么是拱形的,并且与太阳分立在天空的两侧?

让我们再深入一点。

先来回答比较简单的,即彩虹的形状和所处位置。上面的解说中只画出了单独的一个水滴,但实际上,天空中所有的水滴因为接收的入射光是平行光,其出射红光(以及蓝光等等)也是平行光,它们并不互相干扰,而是彼此促进的。(见下图,虽然画的是霓的形成原理,但和虹本身没有实质差别。)

5551685ea09bd1de75157e7ec8be4740.png

于是,在一个任意的观察者看来,红光总是处于与太阳光和他的连线相差某个角度的方向上,蓝光则在另外一个角度上,诸如此类。与这条连线相差固定角度的视线,在天空中画出一条轨迹(下图)——

5ec40433ab46b609a5bb879e7daa32f6.png

一个锥形。或者,因为地平线的遮挡,是一个拱形。

5b5862fea824dfa2e7aba88973484c17.png

上面这张图解释了为什么通常只有在傍晚才会看见彩虹:如果是中午,观测者将太阳放在脑后就只能看到地面,而看不到天空中水汽的反射光线。反其道而行之,如果在中午搭乘飞机,使自己处于太阳和水汽层之间,就能在地面方向看见完整的环形(或者说圆锥形?)彩虹,如下图所示。

ff2fe2ecb99fab58dd6989311ffbe17b.png

4

其实还有一件事没有被解释,不过如果不指出的话恐怕没什么人会察觉:随着光线与水珠的“瞄准距离”(指直线传播时球心到该直线的距离,只有这一距离为0才是直接穿过球心)发生改变,射出红光的角度也在改变!

e477243b593222772553e723d8f05f1e.png

图片展示了一束平行光按照不同的瞄准距离入射水滴时出射光线的情况。(上色只是为了区分不同阶段的光线,本身是单色光。)可以看到,不同的瞄准距离下出射光线与入射光线的夹角在改变,并不都是通常书上绘制的42度的偏转角。这样一来,大部分入射的红光能量应该会被其他方向的折射带走才是。问题出在哪里呢?

a0299223a788d4735eb23f11ad8ee66b.gif

把上面的内容做成动图,会观察到一个有趣的现象:在入射光线处于某一区域的时候,出射光线的角度几乎不随入射光线的变化而变化。

e53833fa2e7810cab36feabc2c2bf49a.png

b82b6df3031ec5db795d09fbd6abd496.png

虽然没有像凸透镜那样完美的形状,但通过这种方式,水滴在这一点上聚集了来自多个不同瞄准距离的入射光,实现了在这一个角度上的光强放大。具体的数学计算,感觉不是很让人感兴趣,就不放上来了。

总之,以上才是各种科普插图中总是把红光放在42度偏转角而不是随便其他的偏转角度的原因。然后,从这个最上游的“固定偏转角度”的结果,一路推下去,才有了非常简单的“光的色散”的解释。

???

但是,即使这个问题远没有“光的色散”一笔带过的那样简单,也不代表为了学习四则运算,要让小学生们从群论学起。

对吧?

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/420266.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣刷题【20,21,26,27,35】

-20 有效的括号21 合并两个有序链表26 删除数组中的重复项27. 移除元素35. 搜索插入位置20 有效的括号 使用replace一直替换 package top.lel.lc.easy.valid_parentheses;import java.util.Deque; import java.util.HashMap; import java.util.LinkedList; import java.util.…

前端学习(1346):用户的增删改查操作3增加

//创建http连接 const http require(http); //创建服务器 const app http.createServer(); //第三方模块导入 const mongoose require(mongoose); //获取连接 const url require(url); // const querystring require(querystring); //数据库连接地址 mongoose.connect(mon…

【leetcode】Intersection of Two Linked Lists

Intersection of Two Linked Lists Write a program to find the node at which the intersection of two singly linked lists begins. For example, the following two linked lists: A: a1 → a2↘c1 → c2 → c3↗ B: b1 → b2 → b3begin to int…

闪电shader_【Shader案例】怎样做出自然的闪电

(本次案例的效果)最近下载了一套特效,其中一个关于闪电制作的shader想法特别聪明,这里特地附上原代码,并教你怎么把源代码转换成连连看,下面开始正文。这是原本shader定义的属性:_TintColor(闪电的颜色)_MainTex(一张R…

MySQL8数据恢复

binlog数据恢复恢复流程恢复流程 先登录MySQL flush log flush log这样会在MySQL binglog日志目录重新生成二进制文件 查看日志文件名 binlog.000033是我刚生成的日志,现在操作的是binlog.000032这个文件。相当于备份了下。 基于位置恢复(先查看位置…

前端学习(1347):用户的增删改查操作4修改

//创建http连接 const http require(http); //创建服务器 const app http.createServer(); //第三方模块导入 const mongoose require(mongoose); //获取连接 const url require(url); // const querystring require(querystring); //数据库连接地址 mongoose.connect(mon…

前端学习(1348):用户的增删改查操作5修改

//创建http连接 const http require(http); //创建服务器 const app http.createServer(); //第三方模块导入 const mongoose require(mongoose); //获取连接 const url require(url); // const querystring require(querystring); //数据库连接地址 mongoose.connect(mon…

ogg oracle 测试kafka_基于OGG的Oracle与Hadoop集群/kafka准实时同步

Oracle里存储的结构化数据导出到Hadoop体系做离线计算是一种常见数据处置手段。近期有场景需要做Oracle到Hadoop体系的实时导入,这里以此案例做以介绍。Oracle作为商业化的数据库解决方案,自发性的获取数据库事务日志等比较困难,故选择官方提…

50个jQuery代码段帮你成为更出色的JS开发者

http://www.jqdemo.com/525.html转载于:https://www.cnblogs.com/iqiao/p/4255515.html

parallelStream与stream

并行流🍭 多线程并发🍭 多线程并发 🍕stream与parallelStream 下面的代码分别用了parallelStream与stream进行迭代。获取对应的每一项值,和对应的线程名称。 package top.lel.jvm.sdk.stream;import java.util.List; import jav…

前端学习(1349):用户的增删改查操作6删除

//创建http连接 const http require(http); //创建服务器 const app http.createServer(); //第三方模块导入 const mongoose require(mongoose); //获取连接 const url require(url); // const querystring require(querystring); //数据库连接地址 mongoose.connect(mon…

力扣刷题【94,100,101,104】

binary tree🎄树的数据结构 // Definition for a binary tree node. public static class TreeNode {int val;TreeNode left;TreeNode right;TreeNode() {}TreeNode(int val) {this.val val;}TreeNode(int val, TreeNode left, TreeNode right) {this.val val;th…

Java, C#, Swift语法对比速查表

Java 8C# 6Swift变量类型 变量名;类型 变量名;var 变量名 : 类型;变量(类型推断)N/Avar 变量名初值;var 变量名初值;常量final 类型 常量名初值;readonly 类型 常量名初值;let 常量名 : 类型初值;基本类型 int short long byte double float boolean cha…

0网卡开启_中标麒麟Linux v7系统下设置双网卡bond或team绑定详细过程

中标麒麟Linux v7系统下设置双网卡bond或team绑定详细过程。所谓bond,就是把多个物理网卡绑定成一个逻辑网卡,使用同一个IP工作,在增加带宽的同时也可以提高冗余性,一般使用较多的就是来提高冗余,分别和不同交换机相连…

前端学习(1350):用户的增删改查操作7增删改查

demo25.js //创建http连接 const http require(http); //创建服务器 const app http.createServer(); //第三方模块导入 /* const mongoose require(mongoose); */ //获取连接 const url require(url); // const querystring require(querystring);require(./demo26.js);…

基于aop的日志记录

aop实现日志记录记录工具切面logback配置测试记录工具 目标: 统计rest接口请求参数,请求地址,请求IP,响应数据,响应时间。方便后续问题排查,以及性能的总体分析。 基于springboot会使用面向切面编程基于l…

xss防御补丁_Discuz论坛最新dom xss漏洞的解决方法

无忧主机小编在日常处理客户网站问题时,经常遇到网站因为程序漏洞出现的问题。网站安全的发展,才能使得管理者放心营运。但是比较无奈的是,漏洞问题貌似屡见不鲜,就算再强大、再常用的程序,都会有诸如漏洞的问题&#…

前端学习(1351)模板引擎

const template require(art-template); //绝对路径 模板中显示的数据 const path require(path); const views path.join(__dirname, index.art); const html template(views, {name: 张三,age: 20 }); console.log(html); index.art <!DOCTYPE html> <html la…

内存数据库和关系数据库之间的数据同步原理

关系数据库到内存数据库同步这部分数据同步采用增量表的方式&#xff0c;系统新增或更新的数据将生成到关系数据库的增量表中&#xff0c;程序先到这些增量表中查询数据。如果能在这些增量表中查到数据就把这些数据更新到内存数据库对应表中&#xff0c;如果查不到&#xff0c;…

java 图片压缩100k_java实现图片压缩

简介我们在项目中经常会遇到图片上传的需求&#xff0c;如商品图片&#xff0c;但图片太大的话&#xff0c;在客户端加载太慢影响用户体验&#xff0c;所有一般会将图片进行压缩。实现原图添加依赖net.coobirdthumbnailator0.4.8按质量压缩import java.io.File;import java.io.…