HP Forums
Optics: Transmitted Angle, Critical Angle - Printable Version

+- HP Forums (https://www.hpmuseum.org/forum)
+-- Forum: HP Calculators (and very old HP Computers) (/forum-3.html)
+--- Forum: HP Prime (/forum-5.html)
+--- Thread: Optics: Transmitted Angle, Critical Angle (/thread-9760.html)



Optics: Transmitted Angle, Critical Angle - Eddie W. Shore - 12-23-2017 12:42 AM

Original Post (for a table of indices of reflection: http://edspi31415.blogspot.com/2017/12/optics-transmitted-angle-critical-angle.html)

Formulas Used

Reflected Angle: θr = θ

Transmitted Angel: θt = asin((n1 * sin θ)/n2)

Critical Angle: θc = asin(n1/n2), n2 > n1

Perpendicular Frensel Parameters (t, r):

t = (2 * n1 * cos θ) / (n1 * cos θ + n2 * cos θt)

r = (n1 * cos θ – n2 * cos θt) / (n1 * cos θ + n2 * cos θt)

Parallel Fresnel Parameters (t, r):

t = (2 * n1 * cos θ) / (n1 * cos θt + n2 * cos θ)

r = (n1 * cos θt – n2 * cos θ) / (n1 * cos θt + n2 * cos θ)

HP Prime Program FLATOPTIC
Code:

EXPORT FLATOPTIC()
BEGIN
// 2017-12-17 EWS
// Solar Energy

// Change to degree
HAngle:=1;

// index of refraction

LOCAL L0:={1,1.0045,2.15,2.42,
1.52,1.31,2.65,1.47,
1.54,1.76,3.45,1.33};

LOCAL L1:={"Air","CO2",
"Cubic Zirconia","Diamond",
"Glass","Ice",
"Moissanite (SiC)","Pyrex",
"Salt (NaCl)","Sapphire",
"Silicon","Water"};

LOCAL L2:={"Perpendicular",
"Parallel",
"None"};

LOCAL n1,n2,k1,k2,θ,t,r;
LOCAL θc,θt,θr,x;

INPUT({{k1,L1},{k2,L1},θ,{x,L2}},
"Optic - Flat Interface",
{"Medium 1: ","Medium 2: ",
"Angle (°): ","Polarized?"}
);

// Calculation
PRINT();

θr:=θ;
PRINT("Reflect Angle: "+θr+"°");

n1:=L0(k1); n2:=L0(k2);
IF n2>n1 THEN
θc:=ASIN(n1/n2);
PRINT("Critical Angle: "+θc+"°");
END;

θt:=ASIN(n1*SIN(θ)/n2);
PRINT("Transmitted Angle: "+
θt+"°");

IF x==1 THEN
t:=(2*n1*COS(θ))/
(n1*COS(θ)+n2*COS(θt));
r:=(n1*COS(θ)-n2*COS(θt))/
(n1*COS(θ)+n2*COS(θt));
PRINT("t: "+t);
PRINT("r: "+r);
END;

IF x==2 THEN
t:=(2*n1*COS(θ))/
(n1*COS(θt)+n2*COS(θ));
r:=(n1*COS(θt)-n2*COS(θ))/
(n1*COS(θt)+n2*COS(θ));
PRINT("t: "+t);
PRINT("r: "+r);
END;

END;