Matrix.backFocalLength

raytracing.Matrix.backFocalLength(self)

The focal lengths measured from the back vertex. This is the distance between the surface and the focal point. When the principal plane is not at the surface (which is usually the case in anything except a thin lens), the back and front focal lengths will be different from effective focal lengths. The effective focal lengths is always measured from the principal planes, but the BFL and FFL are measured from the vertex.

Returns:

backFocalLength – Returns the BFL

Return type:

float

Examples

Since this function returns the BFL, if the focal distance of an object is 5 and the back vertex is 2, we expect to have back focal length of 3, as the following example:

>>> from raytracing import *
>>> # M1 is an ABCD matrix of a lens (f=5)
>>> M1= Matrix(A=1,B=0,C=-1/5,D=1,physicalLength=0,backVertex=2,label='Lens')
>>> BFL=M1.backFocalLength()
>>> print('the back focal distance:' , BFL)
the back focal distance: 3.0

Notes

If the matrix is the result of the product of several matrices, we may not know where the front and back vertices are. In that case, we return None (or undefined).

The front and back focal lengths will be different if the index of refraction is different on both sides.