Shack–Hartmann wavefront sensor
A Shack–Hartmann (or Hartmann–Shack) wavefront sensor (SHWFS) is an optical instrument used for characterizing an imaging system. It is a wavefront sensor commonly used in adaptive optics systems. It consists of an array of lenses (called lenslets) of the same focal length. Each is focused onto a photon sensor (typically a CCD array or CMOS array or quad-cell). If the sensor is placed at the geometric focal plane of the lenslet, and is uniformly illuminated, then, the integrated gradient of the wavefront across the lenslet is proportional to the displacement of the centroid . Consequently, any phase aberration can be approximated by a set of discrete tilts. By sampling the wavefront with an array of lenslets, all of these local tilts can be measured and the whole wavefront reconstructed. Since only tilts are measured the Shack–Hartmann cannot detect discontinuous steps in the wavefront. The design of this sensor improves upon an array of holes in a mask that had been developed in 1904 by Johannes Franz Hartmann as a means of tracing individual rays of light through the optical system of a large telescope, thereby testing the quality of the image. In  the late 1960s, Roland Shack and Ben Platt modified the Hartmann screen by replacing the apertures in an opaque screen by an array of lenslets. The terminology as proposed by Shack and Platt was "Hartmann screen". The fundamental principle seems to be documented even before Huygens by the Jesuit philosopher, Christopher Scheiner, in Austria. Shack–Hartmann sensors are used in astronomy to measure telescopes and in medicine to characterize eyes for corneal treatment of complex refractive errors. Recently, Pamplona et al. developed and patented an inverse of the Shack–Hartmann system to measure one's eye lens aberrations. While Shack –Hartmann sensors measure the localized slope of the wavefront error using spot displacement in the sensor plane, Pamplona et al. replace the sensor plane with a high resolution visual display (e.g. a mobile phone screen) that displays spots that the user views through a lenslet array. The user then manually shifts the displayed spots (i.e. the generated wavefront) until the spots align. The magnitude of this shift provides data to estimate the first-order parameters such as radius of curvature and hence error due to defocus and spherical aberration.