
Vignetting factors
Vignetting factors describe how to distort the the pupil to mimic the effects of vignetting by apertures in the system, without having to introduce any apertures into the model. The way this works by distorting the momentum distribution of the ray set for a given point source from a circle to a displaced ellipse, as shown below. Each defined point source (field point) has its own set of vignetting factors that specify how to distort the ray set.
To set vignetting factors:
- Select from the menu System > Source > Vignetting factors
- Enter vignetting factors in the table
- Closing the vignetting factors window (if desired)

The vignetting factors in LensForge specify directly the extents of the vignetted pupil in terms of the original pupil coordinates. This is specified by four quantities: PXA, PXB, PYA, and PYB. The vignetted pupil extends from PXA to PXB in the x-direction and from PYA to PYB in the y-direction. The unvignetted pupil has PXA=-1, PXB=+1, PYA=-1, PYB=+1. The transformation of the pupil coordinates of a circular ray set (PX,PY) to the elliptical ray set (PX',PY') is according to the following formula:
PX' = (PXB - PXA)*PX/2 + (PXB + PXA)/2 PY' = (PYB - PYA)*PY/2 + (PYB + PYA)/2

Definition of vignetting factors in LensForge
The vignetting factors in other programs
CODE V vignetting factors
The vignetting factors are VUX and VLX for the x-direction and VUY and VLY for the y-direction. The factors are positive to compress the pupil. The compression of the pupil coordinates is the linear transformation given by
PX' = PX - PX*(VUX + VLX)/2 + (VLX - VUX)/2; PY' = PY - PY*(VUY + VLY)/2 + (VLY - VUY)/2;
The CODE V vignetting factors are positive if the edge of the ray set is moved inwards.
OSLO vignetting factors
The vignetting factors in OSLO are the extents of the vignetted pupil in terms of the original pupil coordinates. This seems the most natural convention. The vignetted pupil extends from F1X to F2X in the x-direction, and the unvignetted pupil has F1X=-1 and F2X=+1. In general the transformation is:
PX' = (F2X - F1X)*PX/2 + (F2X + F1X)/2 PY' = (F2Y - F1Y)*PY/2 + (F2Y + F1Y)/2
ZEMAX vignetting factors
The vignetting in ZEMAX is implemented as a squeezing and a shift of the pupil:
PX' = VDX + PX*(1 - VCX) PY' = VDY + PY*(1 - VCY)