The real ray tracing has been trouble to implement because of the conversion of what a "real ray" is to the paraxial convention with ABCD matrices. Since the beamlet code runs on ABCD matrices we can compute the matrix to determine the beamlet propagation.
A real ray is specified by 6 dimensions: Their positions in three orthogonal directions and the associated direction cosines. However, ray transfer matrices don't operate on the z-axis, so we need to convert the direction cosines into slopes in the xz and yz plane.
The method I had derived for this conversion is shown below
The real ray tracing has been trouble to implement because of the conversion of what a "real ray" is to the paraxial convention with ABCD matrices. Since the beamlet code runs on ABCD matrices we can compute the matrix to determine the beamlet propagation.
A real ray is specified by 6 dimensions: Their positions in three orthogonal directions and the associated direction cosines. However, ray transfer matrices don't operate on the z-axis, so we need to convert the direction cosines into slopes in the xz and yz plane.
The method I had derived for this conversion is shown below