Fresnel equations

Use Snell's Law to calculate transmitted angle: this is imaginary for incident angle greater than the critical angle for TIR

thT[thI_, nI_, nT_] := ArcSin[nI Sin[thI]/nT];

define Fresnel equations for transmission

tParall[nIncid_, nTransm_, thIncid_, 
          thTransm_] := ((2 nIncid Cos[thIncid])/(nTransm Cos[thIncid] + nIncid Cos[thTransm]));
tPerp[nIncid_, nTransm_, thIncid_, 
          thTransm_] := ((2 nIncid Cos[thIncid])/(nIncid Cos[thIncid] + nTransm Cos[thTransm]));

define Fresnel equations for reflection

rParall[nIncid_, nTransm_, thIncid_, 
          thTransm_] := ((nTransm Cos[thIncid] - nIncid Cos[thTransm])/(nTransm Cos[thIncid] + nIncid Cos[thTransm]));
rPerp[nIncid_, nTransm_, thIncid_, 
          thTransm_] := ((nIncid Cos[thIncid] - nTransm Cos[thTransm])/(nIncid Cos[thIncid] + nTransm Cos[thTransm]));

as θI goes to zero, these should be the same. But the sign convention we used for the directions of the fields was not consistent in this limit. 
note that the sign change corresponds to a phase change of 180degrees

n1Tst = 1.5;
n2Tst = 1. ;
Print["-rParallel (blue), rPerp (red) "];
Plot[{
-rParall[n1Tst, n2Tst, thItst Degree, 
              thT[thItst Degree, n1Tst, n2Tst]] , 
          rPerp[n1Tst, n2Tst, thItst Degree, 
            thT[thItst Degree, n1Tst, n2Tst]]}, 
{thItst, 
          0, 90}, PlotRange -> {-1, 1}, 
        PlotStyle -> {Blue, Red}];
Print["-Re[rParallel] (blue), Re[rPerp] (red) "];
Plot[{
-Re[
              rParall[n1Tst, n2Tst, thItst Degree, 
                thT[thItst Degree, n1Tst, n2Tst]] ], 
          Re[rPerp[n1Tst, n2Tst, thItst Degree, 
              thT[thItst Degree, n1Tst, 
                n2Tst]] ]}, 
{thItst, 0, 90}, 
        PlotRange -> {-1, 1}, 
        PlotStyle -> {Blue, Red}];
Print["-Im[rParallel] (blue), Im[rPerp] (red) "];
Plot[{
-Im[
              rParall[n1Tst, n2Tst, thItst Degree, 
                thT[thItst Degree, n1Tst, n2Tst]] ], 
          Im[rPerp[n1Tst, n2Tst, thItst Degree, 
              thT[thItst Degree, n1Tst, 
                n2Tst]] ]}, 
{thItst, 0, 90}, 
        PlotRange -> {-1, 1}, 
        PlotStyle -> {Blue, Red}];
Print["Phases: Arg[rParallel] (blue), Arg[rPerp] (red) "];
Plot[{
Arg[
              rParall[n1Tst, n2Tst, thItst Degree, thT[thItst Degree, n1Tst, n2Tst]]^2/
                rPerp[n1Tst, n2Tst, thItst Degree, thT[thItst Degree, n1Tst, n2Tst]]^2 ]/Degree}, 
{thItst, 40, 90}, 
        PlotRange -> All, PlotStyle -> {Blue, Red}];

power reflection coeff

RParall[nIncid_, nTransm_, thIncid_, thTransm_] = 
        Abs[rParall[nIncid, nTransm, thIncid, thTransm]]^2;
RPerp[nIncid_, nTransm_, thIncid_, thTransm_] = 
        Abs[rPerp[nIncid, nTransm, thIncid, thTransm]]^2;

power transmission coeff

TParall[nIncid_, nTransm_, thIncid_, 
          thTransm_] = Abs[
                tParall[nIncid, nTransm, thIncid, thTransm]]^2 
          Re[((nTransm Cos[thTransm])/(nIncid Cos[thIncid]))];
TPerp[nIncid_, nTransm_, thIncid_, 
          thTransm_] = Abs[tPerp[nIncid, nTransm, thIncid, thTransm]]^2 
          Re[((nTransm Cos[thTransm])/(nIncid Cos[thIncid]))];

n1Tst = 1.5;
n2Tst = 1. ;
Plot[{RParall[n1Tst, n2Tst, thItst Degree, 
            thT[thItst Degree, n1Tst, n2Tst]], 
          RPerp[n1Tst, n2Tst, thItst Degree, 
            thT[thItst Degree, n1Tst, n2Tst]]}, {thItst, 0, 90}, 
        PlotRange -> {0, 1}, 
        PlotStyle -> {Blue, Red}];

n1Tst = 1.5;
n2Tst = 1. ;
Plot[{TParall[n1Tst, n2Tst, thItst Degree, 
            thT[thItst Degree, n1Tst, n2Tst]], 
          TPerp[n1Tst, n2Tst, thItst Degree, 
            thT[thItst Degree, n1Tst, n2Tst]]}, {thItst, 0, 90}, 
        PlotRange -> {0, 1}, 
        PlotStyle -> {Blue, Red}];

Verify that R+T = 1

Plot[
        TParall[n1Tst, n2Tst, thItst Degree, 
            thT[thItst Degree, n1Tst, n2Tst]] + 
          RParall[n1Tst, n2Tst, thItst Degree, 
            thT[thItst Degree, n1Tst, n2Tst]], {thItst, 0, 90}, 
        PlotRange -> {0, 1}, 
        PlotStyle -> {Blue, Red}];