Rifrazione della luce

Dopo aver studiato la rifrazione si può proporre agli studenti di scrivere un programma in Delphi Pascal per: Il secondo punto può essere all'inizio provato inserendo sia l'angolo di incidenza che quello di rifrazione inserito dalla tastiera durante l'esecuzione.

Volendo invece far calcolare alla macchina l'angolo di rifrazione si deve inserire una funzione per calcolare l'arcoseno a partire dall'arcotangente:

function arcsin(x: real):real;
begin
     if x = 1 then arcsin:=Pi/2;
     if x = -1 then arcsin:=-Pi/2;
     if (x<>1) and (x<>-1) then arcsin:=arctan(x/sqrt(1-x*x))
 end;

Una volta studiata la trigonometria, sarà facile comprendere questa funzione.

Ovviamente la funzione restituisce un arco in radianti da convertire in gradi utilizzando la costante predefinita Pi cioè P greca.

Risulta molto istruttivo per gli studenti individuare le variabili di cui si ha bisogno e dichiararle distinguendo i casi in cui il raggio incidente si trovi nel mezzo meno o più rifrangente, calcolare l'angolo limite, controllare se l'angolo di incidenza è superiore all'angolo limite (solo riflessione) o se è inferiore (riflessione e rifrazione).

Ecco come è stato risolto il problema da un gruppo di studenti rifrazione

E questo è il relativo listato

Altri studenti hanno inserito una finestra per scrivere l'indice di rifrazione.

In effetti è possibile fare a meno della funzione arcoseno e della trigonometria enunciando la legge di Snell in questo modo: se si prendono raggio incidente e raggio rifratto di uguale lunghezza, le loro proiezioni parallele alla linea di separazione dei due mezzi stanno in un rapporto costante che è l'indice di rifrazione.

A partire da questo enunciato senza quindi far uso della trigonometria è possibilerappresentare graficamente la rifrazione. Ecco un esempio che utilizza il mouse per variare l'angolo di incidenza (listato).