斯涅尔定律计算器

用入射角以及两种介质的折射率,计算光线在介质交界面处会如何折射。它还能判断是否达到临界角,并给出是否发生全反射。

当前公式
°
示例

当 θ1 = 30°、n1 = 1.00、n2 = 1.50 时,折射角约为 19.47°,因此光线会向法线方向偏折。

折射角
19.4712 °
Ray behavior
Bends toward the normal

这个方向下不适用临界角,因为光并不是从高折射率介质射向低折射率介质。

结果基于你输入的无量纲折射率。实际折射率会随波长、温度和材料状态变化。

有帮助吗?

示例

计算方式

公式

n1sin(θ1)=n2sin(θ2)n_1 \sin(\theta_1) = n_2 \sin(\theta_2)

θc=arcsin(n2n1)\theta_c = \arcsin\left(\frac{n_2}{n_1}\right)

变量

n1n_1

物质的量(dimensionless)

n2n_2

物质的量(dimensionless)

θ1\theta_1

角度(°)

θ2\theta_2

角度(°)

θc\theta_c

角度(°)

先输入相对法线的入射角(单位为度),再输入两种介质各自的无量纲折射率 n1 和 n2。这个计算器只针对单个交界面进行计算:如果存在真实的折射光线,就给出透射角;如果不存在,就直接显示全反射结果。

计算器使用斯涅尔定律 n1sin(θ1)=n2sin(θ2)n_1 \sin(\theta_1) = n_2 \sin(\theta_2)。所有角度都以法线为基准测量。当 n1>n2n_1 > n_2 时,还会计算临界角 θc=arcsin(n2/n1)\theta_c = \arcsin(n_2 / n_1)。如果 θ1>θc\theta_1 > \theta_c,就不存在真实的透射光线,因此结果会显示为全反射,而不是给出一个并不成立的角度。这里的折射率是你手动输入的无量纲数值,并非内置材料参数;实际数值会随波长、温度和材料状态而变化。

常见问题

01“相对法线的角度”是什么意思?
法线是与介质交界面垂直的一条假想直线。θ1 和 θ2 都要从这条线开始测量,而不是沿着界面表面来量。
02什么时候会发生全反射?
只有当光从较高折射率介质进入较低折射率介质,并且入射角大于临界角时,才会发生全反射。这时斯涅尔定律没有真实的透射角解。
03为什么有时不会显示临界角?
临界角只在 n1 大于 n2 时才有意义。如果光是射向折射率相同或更高的介质,这个传播方向下就不存在全反射阈值。
04为什么没有材料预设或折射率表?
这个计算器刻意不做成材料数据库。它只使用你输入的折射率,因此不会默认玻璃、亚克力、水等材料一定对应某个未经说明的精确数值。
05如果折射率会变化,结果还准吗?
对你输入的数值来说,计算本身是精确的;但真实折射率会随波长、温度和材料状态变化。所以结果的可靠性取决于你提供的折射率是否贴近实际。

所有计算器