Simulate Human Eye Changes with Age
R2026bThis example shows how to simulate the effects of aging on the human crystalline lens and its optical performance. You model two age-related phenomena: the lens paradox, in which steepening curvatures do not cause myopia, and presbyopia, the progressive loss of near-focus ability.
Model Lens Paradox
As the eye ages, crystalline lens surface curvatures steepen, which alone increases power. However, the equivalent refractive index drops, partially canceling the curvature effect [1]. The net result is a near-cancellation that produces a small increase in focal length with age. This near-compensation is known as the lens paradox.
Create a 25-year-old relaxed eye model by using the HybridSchematicEye helper object, attached to this example as a supporting file. Compute the paraxial focal length at each age from 20 to 70 years by using the paraxialInfo function.
eye = HybridSchematicEye(Age=25,PupilDiameter=3); ages = 20:5:70; flAge = zeros(size(ages)); eye.Accommodation = []; for k = 1:numel(ages) eye.Age = ages(k); flAge(k) = paraxialInfo(eye.OpticalSystem).FocalLength; end
Plot focal length against age to visualize the lens paradox.
plot(ages,flAge,"b-s",LineWidth=1.5) xlabel("Age (years)") ylabel("Focal Length (mm)") title("The Lens Paradox: Focal Length vs. Age") grid on

Model Presbyopia
The crystalline lens stiffens with age, reducing the maximum accommodation amplitude. The model caps accommodation at 6 D for a young eye at age 25. By age 65, the accommodation amplitude approaches zero in this model. This condition is presbyopia. The model clamps accommodation to the Hofstetter limit [2], in which the maximum amplitude is .
Even an emmetropic eye loses the ability to focus on near objects as accommodation declines. By age 65, the eye cannot accommodate at all. Objects closer than infinity blur on the retina, which can make reading difficult without corrective lenses.
Compute the root mean square (RMS) retinal spot size by using the retinalSpot function of the HybridSchematicEye helper object for eyes at ages 25, 45, and 50 across a range of object distances. Define each object position by using the fieldPoint function.
ages = [25 45 50]; objDists = [4000 2000 1000 500 333 250]; rmsByAge = zeros(numel(ages),numel(objDists)); for ageInd = 1:numel(ages) eyeK = HybridSchematicEye(Age=ages(ageInd),PupilDiameter=3); for j = 1:numel(objDists) eyeK.Accommodation = 1000/objDists(j); rmsK = HybridSchematicEye.retinalSpot(eyeK.OpticalSystem, ... FieldPoint=fieldPoint(Position=[0 0 -objDists(j)]), ... Wavelengths=555); rmsByAge(ageInd,j) = rmsK*1000; end end
Plot the RMS spot size against object distance to visualize age-related near-vision degradation.
plot(objDists/1000,rmsByAge,"-o",LineWidth=1.5) xlabel("Object Distance (m)") ylabel("RMS Retinal Spot (um)") title("Presbyopia: Near Vision Degrades with Age") legend(string(ages) + " yr",Location="best") grid on

The 50-year-old eye shows an elevated spot size even at 4 meters. This reflects the lens paradox effects: the focal length slightly increases with age, while the model maintains a fixed adult axial length. The eye also shows an increasing spot at near distances despite having sufficient accommodation amplitude. In a real eye, the near triad of accommodation, convergence, and pupil miosis constricts the pupil when focusing on close objects, which reduces spherical aberration and increases depth of field. The model holds the pupil diameter constant, so a smaller aperture does not mitigate residual aberrations from higher accommodation states.
References
[1] Dubbelman, Michiel, and G. L. Van der Heijde. "The Shape of the Aging Human Lens: Curvature, Equivalent Refractive Index and the Lens Paradox." Vision Research 41, no. 14 (2001): 1867–1877. https://doi.org/10.1016/S0042-6989(01)00057-8.
[2] Hofstetter, Henry W. "A Useful Age-Amplitude Formula." Optometric World 38 (1950): 42–45.