(
)
-
-
640 C3 f2 (
)
-
+
530 777 C d 320 f3 (
)
-
+
+
-
+
3509 C3 1474 C2 97 C 135 1554 C4
R6
+
(
)
+
5376 C
3
f
4
(
)
-
+
146 165 C d 2688 f
5
C
(
)
-
+
- +
740 C
2
346 C 9 330 C
3
R
4
+
(
)
-
-
10752 C3 f6 (
)
-
+
139 118 C d 10752 f7 C (
)
-
+
-
118 C3 289 C2 142 C 2
R2
+
143360 C3 f8 (
)
- +
13 8 C d 35840 f9 C (
)
-
+ +
41 C 89 C2 2 32 C3
+
+
)
3
f4
(
(
)
-
+
-
+
+
320 R6 f2 75 R8 5376 R2 f6 17920 f8 1344 R4 f4 C )
f
-
For example, with a displacement of 10 microns, a primary focal length of 100 cm, and an
input beam radius of 10 cm, the angle that to first order corrects for coma is
>
epsilon := evalf( subs( Delta=10*10^(-4), R=10,
f=100, d=20, C=10, rhs(") )/(1*arcsec) );
:=
-2.062651014
That is, a bit over two arc seconds, or 10 microradians.
Analysis of the Wavefront Aberrations
>
read`d:/optics/AESOP/BeamCompExample.eqs`:
Read the plotting routines and tell them to not chatter:
>
read`c:/maple/plotting.p`;
plotting: [jpgplot( plotcommand, filename, [height,width] ),
curveplot2D( curve, t=t1..t2, plot_options ),
implicitplot2D( eqn, x=x1..x2, y=y1..y2, plot_options ),
scalarplot( curve, t=t1..t2, plot_options ),
curveplot3D( curve, t=t1..t2, plot3d_options ),
tubecurve( curve, t, radius, theta ),
tubecurveplot( curve, radius, t=t1..t2, theta=theta1..theta2, plot3d_options ),
implicitplot3D( eqn, x=x1..x2, y=y1..y2, z=z1..z2, plot3d_options )
PlotZernikeWavefront( opd, Zcoeffs, sublist, units, pert, f, R, verbose, plot3d_options )]
>
verbosity := 0:
Let's use a beam compression of 10 and a detector distance of 20 cm.
>
for k from 1 to nops([indices(c)]) do
c[k][A] := subs( d=20, C=10, c[k][A] );
c[k][B] := subs( d=20, C=10, c[k][B] );
od: