1require_relative "../physics"23question :relative_refractive_index do4 describes "Light meets a medium of index %{index} at %{angle}, and the two media's relative index is " \5 "%{relative_index}. Do both numbers matter, or only %{refracted}?"6 given :relative_index7 given :index8 given angle: "30 deg"9 asks refracted: "what they come to"10end
1require_relative "../questions/relative_refractive_index"2require_relative "../science/ray_optics_and_optical_instruments/reflection"3require_relative "../science/ray_optics_and_optical_instruments/relative_index"45solve :relative_refractive_index, using: [ Reflection, RelativeIndex ] do6 take relative_index: :mu_21, index: :mu_2, angle: :i7 assume mu_1: 1.08 find_value :c9 take refracted: :r_r10 find_value :refracted11 find_whether :no_refracted_ray?1213 conclusion "Only what they come to. One file says so — mu_21 is mu_2 over mu_1 — and here the first medium is called 1, which leaves the second one standing for the pair."14end
1require_relative "../solutions/relative_refractive_index"2require_relative "../pictures/light"34RATIO = 0.25..4.056play_with :relative_refractive_index do7 title "Relative Refractive Index"89 input :mu_21, RATIO, default: 0.75, marks: { "critical" => 0.5, "alike" => 1.0 }1011 input(:mu_2) { mu_21 }1213 output :c14 output :r_r15 output :no_refracted_ray?, alarm: true1617 draw Light::Picture do18 surface across: :mu_2119 ray "incident", arriving_at: :i, angle: true20 ray "reflected", leaving_at: :r_l21 ray "refracted", crossing_at: :r_r, angle: true, unless: :no_refracted_ray?22 mark "critical", arriving_at: :c23 note "all of it turns back", when: :no_refracted_ray?24 end25end