Index: trunk/Mars/msimreflector/MFresnelLens.cc
===================================================================
--- trunk/Mars/msimreflector/MFresnelLens.cc	(revision 19606)
+++ trunk/Mars/msimreflector/MFresnelLens.cc	(revision 19607)
@@ -189,5 +189,5 @@
 
     // u: incoming direction (normalized!)
-    // n: normal vector of surface (pointing into direction of change of refractive index)
+    // n: normal vector of surface (pointing back into the old medium?)
     // n1: refractive index of old medium
     // n2: refractive index of new medium
@@ -264,8 +264,8 @@
 
     const double so    = rc / sqrt(rc*rc + F*F);
-    const double theta = -atan(so / (1-sqrt(n0*n0 - so*so)));
-
-    //             theta                peak_z
-    const Groove g(TMath::Pi()/2 - theta, r0*tan(theta));
+    const double theta = atan(so / (1-sqrt(n0*n0 - so*so)));
+
+    //             theta                   peak_z (defined positive)
+    const Groove g(TMath::Pi()/2 + theta, -r0*tan(theta));
 
     // Calculate the insersection between the ray and the cone
@@ -289,5 +289,5 @@
     // FIXME: Surface roughness?
     TVector3 norm;;
-    norm.SetMagThetaPhi(1, g.fTheta-TMath::Pi()/2, p.XYvector().Phi());
+    norm.SetMagThetaPhi(1, theta, p.XYvector().Phi());
 
     // Apply refraction at lens entrance (change directional vector)
