Принцип Ферма

Граница между средами с различными показателями преломления 

Линия нормали к поверхности

Показатель преломления первой среды

Показатель преломления второй среды

B = (-3.7858918898553804, -11.691247115888968)
P = Point(xAxis)
O = Intersect(xAxis, yAxis)
a = Line(O, P)
c = OrthogonalLine(B, a)
G = Intersect(c, a)
n_1 = 2.8920000000000003 (slider from 1 to 5, step 0.0010)
v_1: 300.0 / n_1
n_2 = 2.217 (slider from 1 to 5, step 0.0010)
v_2: 300.0 / n_2
A = (-19.340649576569497, 13.209716906189856)
b = OrthogonalLine(A, a)
C_1 = Intersect(b, a)
d = Segment(C_1, G)
C = Point(d)
i = Segment(C, B)
g = Segment(C, B)
j = Segment(C, A)
f = Segment(A, C)
e = OrthogonalLine(C, a)
J = Point(e)
K = Point(e)
α = Angle(J, C, A)
β = Angle(K, C, B)
t_1 = If(y(A) > 0.0, f / v_1, j / v_2)
t_2 = If(y(B) < 0.0, g / v_2, i / v_1)
t: t_1 + t_2
D = Point(e)
h = Circle(D, 1.0)
E = Point(h)
text6: "Скорсоть \,\, света   \,\,  во   \,\,  второй  \,\,  среде  \,\,  v_2  =  \," + v_2 + " \frac{ Мм }{ с }"
α_1 = Angle(B, C, D)
β_1 = Angle(A, C, K)
F = Point(a)
H = Point(a)
I = (218.74182378282146, -99.73651865073174)
L = (-181.25817621717854, -99.73651865073174)
poly1, i_1, l, f_1, h_1 = Polygon(I, L, F, H)
M = (10, 12)
N = (10, -4)
Q = (10, -10)
R = (10, 8)
text7: "t_1 \, =" + t_1 + "\,мкс"
text8: "t_2 \, =" + t_2 + "\,мкс"
S = Point(f)
k = Circle(S, 1.0)
T = Point(k)
U = Point(g)
p = Circle(U, 1.0)
V = Point(p)
w: (x(C) - x(A)) / (x(B) - x(A))
text9: "Относительное \, положение\, точки\, С:\, w =" + w
text5: "Скорость \,\, света   \,\,  в   \,\,  первой  \,\,  среде  \,\,  v_1  =  \," + v_1 + " \frac{ Мм }{ с }"