vignetting diagram
Contents
load lens
triplet129
efl 99.9744
bfd 84.1487
fno 6.3
height of entering axial ray 7.93448
k -0.856214
system specification
n rd th index sa
0 0.0000 0.0000 1.0000 0.00
1 24.1100 3.7000 1.6130 11.40
2 215.0900 4.6600 1.0000 11.40
3 -94.8100 1.6000 1.5960 7.00
4 23.7600 2.3700 1.0000 7.00
5 0.0000 6.7600 1.0000 6.60
6 104.5000 3.5000 1.6130 10.70
7 -63.8900 84.1487 1.0000 10.70
paraxial raytrace
n pya pua pyc puc
0 7.9345 0.0000 -6.7936 0.5095
1 7.9345 -0.1251 -6.7936 0.4230
2 7.4717 -0.1804 -5.2286 0.6674
3 6.6309 -0.0869 -2.1188 0.4098
4 6.4918 0.0241 -1.4631 0.6173
5 6.5488 0.0241 0.0000 0.6173
6 6.7116 -0.0095 4.1732 0.3675
7 6.6785 -0.0794 5.4596 0.5405
8 0.0000 -0.0794 50.9395 0.5405
gaussian image height (GIH) 50.9395
Lagrange invariant 4.04282
graphical display
close all
z = [0 5 5+cumsum(th)]';
ya = [pya(1,1); pya(:,1)];
yc = [pyc(1,1)-5*pyc(1,2); pyc(:,1)];
yu = yc+ya;
yl = yc-ya;
plot(z,yc,'b','LineWidth',2);
hold on
plot(z,yu,'k','LineWidth',2);
plot(z,yl,'k','LineWidth',2);
axis equal
axis([0 40 -20 20]);
hold on
plot([0 120],[0 0],'g');
for k=1:n
zt = z(k+1);
plot([zt zt],[-sa(k) sa(k)],'k--');
end
hold off
full-field vignetting diagram
ap = sa(2:n)';
[percent, rgb] = vignette(sa(2:n)',pya(2:n,1),pyc(2:n,1));
imshow(rgb);
fprintf('full-field vignetting %g percent\n',percent)
full-field vignetting 30.064 percent
half-field vignetting
frac = 0.5;
[percent, rgb] = vignette(ap,pya(2:n,1),frac*pyc(2:n,1));
imshow(rgb);
fprintf('%g-field vignetting %g percent\n',frac,percent)
0.5-field vignetting 5.3672 percent