Changeset 19644
- Timestamp:
- 09/15/19 18:32:35 (5 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/Mars/msimreflector/MFresnelLens.cc
r19638 r19644 352 352 // on the curvature. See also PhD thesis, Tim Niggemann ch. 7.1.1. 353 353 // 354 // see also W.J.Smith, Modern Optical Engineering, 2.8 The "Thin Lens" 355 // 1/f = (n-1)/radius Eq. 2.36 with thickness t = 0 356 // bfl = f Eq. 2.37 and R2 = inf (c2 = 0) 357 // 354 358 // Parameters are: 355 359 // The distance from the center r … … 367 371 double MFresnelLens::SlopeAngleParabolic(double r, double F, double n0, double n1, double d) 368 372 { 369 // PhD, Tim Niggemann, ch 7.1.1 373 // In the datasheet, it looks as if F is calculated 374 // towards the center of the lens. It seems things are more 375 // consistent if the thickness correction in caluating the 376 // slope angle is omitted and the focal distance is measured 377 // from the entrance of the lens => FIXME: To be checked 370 378 const double rn = n1/n0; 371 const double c = (rn - 1) * (F + d/rn); 379 const double c = (rn - 1) * (F + d/rn); // FIXME 372 380 return -atan(r/c); 373 381 } … … 1431 1439 1432 1440 // In the datasheet, it looks as if F is calculated 1433 // towards the center of the lens 1434 // (Propagating to F means not propagating a distance of F-H/2) 1435 p.fVectorPart.SetZ(0); 1441 // towards the center of the lens. It seems things are more 1442 // consistent if the thickness correction in caluating the 1443 // slope angle is omitted and the focal distance is measured 1444 // from the entrance of the lens => FIXME: To be checked 1445 // (Propagating to F means not propagating a distance of F-H from the exit) 1446 p.fVectorPart.SetZ(fH/2); 1436 1447 1437 1448 return cnt>=fMinHits && (fMaxHits==0 || cnt<=fMaxHits) ? cnt : -1;;
Note:
See TracChangeset
for help on using the changeset viewer.