資訊內(nèi)容
Scratch編程與物理-用Scratch學(xué)習(xí)“光的折射”
一、什么是光的折射?
光的折射是指,光從一種介質(zhì)斜射入另一種介質(zhì)時,傳播方向發(fā)生改變,從而使光線在不同介質(zhì)的交界處發(fā)生偏折。


在生活中,我們把筷子或者筆插入水中,看到筆在水面處發(fā)生了彎折,這就是由于光的折射引起的。
如下圖所示,一束光從A點(diǎn)斜射入水中,在水面處發(fā)生偏折,垂直于水面畫一條法線,入射光線與法線之前的夾角就是入射角,折射光線與法線之間的夾角就是折射角。

光的折射有哪些特性呢?
1、當(dāng)光線從空氣斜射入其它介質(zhì)時,角的性質(zhì):折射角(折射率大的一方)小于入射角(折射率小的一方)。
2、光的折射率為:光從介質(zhì)1射入介質(zhì)2發(fā)生折射時,入射角
與折射角![]()
的正弦之比
叫做介質(zhì)2相對介質(zhì)1的折射率,即“相對折射率”,也就是說

水、空氣、玻璃的折射率由小到大的排列順序是:
空氣的折射率<水的折射率<玻璃的折射率。
空氣的折射率約是1。
水的折射率約是1.33。
透明玻璃的折射率約是1.5。
3、在光的折射現(xiàn)象中,光路是可逆的。
二、魚在水中發(fā)生的折射現(xiàn)象
我們在陸地上看到水中的“魚”,如果往“魚”看到的地方刺去,可能會刺不中“魚”。但是如果往“魚”的更深處刺去,就可以刺到魚,這就是光的折射引起的。
我們要看到魚,就是魚反射的光線進(jìn)入我們的眼睛。當(dāng)光從水中傳入空氣中,發(fā)生了折射,我們順著折射光線看去,看到的魚其實(shí)是“魚”的像,比真實(shí)的魚的位置要淺。

現(xiàn)在,我們?nèi)搜劭吹搅唆~的“像”,已知人眼的位置和“魚像”的位置,我們來求得魚的真實(shí)位置,用Scratch來模擬這個過程吧。

三、程序的設(shè)計(jì)
1、計(jì)算入射角的大小
已知魚像的位置和眼睛的位置,可以確定入射角,計(jì)算入射角的大小

根據(jù)直線方程y = ax + b,已知直線上的兩點(diǎn):眼睛和魚像,
求得a和b的值,即可確定這條直線。
a =?(y1-y0)/(x1-x0),求得直線的斜率。

這條直線與水面的交點(diǎn),就是光線發(fā)生偏折的位置,也就可以確定法線。
上面求得的直線的斜率 a = tan(90+入射角),即可求得入射角

2、計(jì)算折射角。
根據(jù)上面介紹的相對折射率的公式,

已知n1為空氣中的折射率(n1=1),n2為水中的折射率(n2 = 1.33)
為入射角,求得折射角
。

3、求魚的真實(shí)位置
根據(jù)折射角,法線的位置,即可求得折線光線的路徑。
已經(jīng)魚的x值 =?魚像的x值,帶入直線方程,即可求得魚的y值。


四、程序的實(shí)現(xiàn)
程序的主要邏輯代碼如下:


用Scratch模擬光的折射原理,是不是很有趣啊,趕快動手試試吧
聲明:本文章由網(wǎng)友投稿作為教育分享用途,如有侵權(quán)原作者可通過郵件及時和我們聯(lián)系刪除
