极客小将

您现在的位置是:首页 » scratch编程资讯

资讯内容

Scratch编程与物理-用Scratch学习“光的折射”

极客小将2020-11-16-
一、什么是光的折射? 光的折射是指,光从一种介质斜射入另一种介质时,传播方向发生改变,从而使光线在不同介质的交界处发生偏折。

一、什么是光的折射?

光的折射是指,光从一种介质斜射入另一种介质时,传播方向发生改变,从而使光线在不同介质的交界处发生偏折。

upload/article/images/2020-11-16/196f8405ff9c464feb938afcb47eb0e8.jpg

upload/article/images/2020-11-16/fbbfe9c573df95a233902f1ee602d246.jpg

在生活中,我们把筷子或者笔插入水中,看到笔在水面处发生了弯折,这就是由于光的折射引起的。

如下图所示,一束光从A点斜射入水中,在水面处发生偏折,垂直于水面画一条法线,入射光线与法线之前的夹角就是入射角,折射光线与法线之间的夹角就是折射角。

upload/article/images/2020-11-16/ae42f8e0de320fe63bba1aa1b658520a.jpg

光的折射有哪些特性呢?

1、当光线从空气斜射入其它介质时,角的性质:折射角(折射率大的一方)小于入射角(折射率小的一方)。

2、光的折射率为:光从介质1射入介质2发生折射时,入射角upload/article/images/2020-11-16/0b698b84d0e5a1b0ffe6f87590475134.jpg与折射角upload/article/images/2020-11-16/8f630a809d4fb72021d402715b5f85bb.jpg

的正弦之比upload/article/images/2020-11-16/2fafd547916fdb352282876245e32aa7.jpg叫做介质2相对介质1的折射率,即“相对折射率”,也就是说

upload/article/images/2020-11-16/0400dd6b2eed79a121f7c7537b25b1ce.jpg

水、空气、玻璃的折射率由小到大的排列顺序是:
空气的折射率<水的折射率<玻璃的折射率。

空气的折射率约是1。

水的折射率约是1.33。

透明玻璃的折射率约是1.5。

3、在光的折射现象中,光路是可逆的。

二、鱼在水中发生的折射现象

我们在陆地上看到水中的“鱼”,如果往“鱼”看到的地方刺去,可能会刺不中“鱼”。但是如果往“鱼”的更深处刺去,就可以刺到鱼,这就是光的折射引起的。

我们要看到鱼,就是鱼反射的光线进入我们的眼睛。当光从水中传入空气中,发生了折射,我们顺着折射光线看去,看到的鱼其实是“鱼”的像,比真实的鱼的位置要浅。

upload/article/images/2020-11-16/85476bfac531d5800d55d6bf1ee6eb1d.jpg

现在,我们人眼看到了鱼的“像”,已知人眼的位置和“鱼像”的位置,我们来求得鱼的真实位置,用Scratch来模拟这个过程吧。

https://cdn.china-scratch.com/timg/191130/115G12918-8.gif

三、程序的设计

1、计算入射角的大小

已知鱼像的位置和眼睛的位置,可以确定入射角,计算入射角的大小

upload/article/images/2020-11-16/633ad220358b8057a7e852c4eb6f10bb.jpg

根据直线方程y = ax + b,已知直线上的两点:眼睛和鱼像,

求得a和b的值,即可确定这条直线。

a = (y1-y0)/(x1-x0),求得直线的斜率。

upload/article/images/2020-11-16/b203a651714f391a64864171eed422c8.jpg

这条直线与水面的交点,就是光线发生偏折的位置,也就可以确定法线。

上面求得的直线的斜率 a = tan(90+入射角),即可求得入射角

upload/article/images/2020-11-16/914b23d99d2a276b439a30f35b460bec.jpg

2、计算折射角。

根据上面介绍的相对折射率的公式,

upload/article/images/2020-11-16/0400dd6b2eed79a121f7c7537b25b1ce.jpg

已知n1为空气中的折射率(n1=1),n2为水中的折射率(n2 = 1.33)

upload/article/images/2020-11-16/5a0190b9e72ce260eaa89d7eb34dba60.jpg为入射角,求得折射角upload/article/images/2020-11-16/e33183473a3a8f12227cf6f4042426d3.jpg

upload/article/images/2020-11-16/ba45106e7e47772d57627f48105fc126.jpg

3、求鱼的真实位置

根据折射角,法线的位置,即可求得折线光线的路径。

已经鱼的x值 = 鱼像的x值,带入直线方程,即可求得鱼的y值。

upload/article/images/2020-11-16/8e4f3a13b3d94d593bb69c4c1a0fc4d0.jpg

upload/article/images/2020-11-16/ee34e592edad4b25dadb66144e519159.jpg

四、程序的实现

程序的主要逻辑代码如下:

upload/article/images/2020-11-16/1457ee14c0e36f13dc1aea27ae3a0405.jpg

upload/article/images/2020-11-16/99fb1dff697066c5feb0c654d86cdbc7.jpg

用Scratch模拟光的折射原理,是不是很有趣啊,赶快动手试试吧

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除

预约试听课

已有385人预约都是免费的,你也试试吧...