Aberration-based SCP Optimization

In the preceding sections, you worked with a singlet lens and a focusing lens that combined a doublet and a singlet, both of which used catalog lens elements, which meant that only the lens spacings could be varied. This example shows how to optimize both curvatures and spacings of an air-spaced doublet lens. The starting design is the one used for illustration of basic lens entry. The previous example showed that a doublet-meniscus combination could fully meet the design requirements. The task here is to see whether a simple doublet might also work.

The approach will use methods that are available in all versions of OSLO. Although OSLO PRO and OSLO SIX have faster and more extensive optimization capability than OSLO Light, their power is not needed for a simple design such as the one considered here.

Optimization in OSLO Light is based on SCP operands, computed by an auxiliary routine written in SCP. The error function can contain up to 200 terms, named OCM1, OCM2,...,OCM200. Since SCP has access to all OSLO results, through the Spreadsheet buffer, OSLO Light can optimize anything that can be computed! Two sets of default routines, named *opsetabr and *opsetray, are included with all versions of OSLO to simplify the construction of error functions based on common aberrations and ray-trace data. OCM is mnemonic for "operand component". Each operand in OSLO can have two components connected by a math operator (+, -, etc.).

The next task is to set up an error function to optimize the system. The first error function that we will try is based on aberrations. The star command *opsetabr sets up the actual SCP function that computes the aberrations (*opabrs), and prints a listing of the current aberrations in the text window. From these, you select the ones that are applicable to your system and enter them as operands. As a first step, you should only attempt to control third-order spherical aberration.

  1. Close the Surface data spreadsheet if it is open. Click File >> Open, and open the lasrdblt.len file that you entered before (see p).
  2. Click Optimize >> SCP Operands Setup >> Aberrations. The text window will contain the following listing.

*opsetabr (operand numbers in parentheses)
Paraxial data
     PY(1)       PU(2)      PYC(3)      PUC(4)
-1.7764e-15   -0.250000  6.0000e-05  1.0142e-06

First-order chromatic
    PAC(6)      PLC(7)      SAC(8)      SLC(9)
     --          --          --          --    

Third-order Seidel
    SA3(11)    CMA3(12)    AST3(13)    PTZ3(14)    DIS3(15)
  -0.092138  7.5620e-07 -7.5914e-12 -3.5251e-12 -1.0671e-18

Fifth-order Seidel
    SA5(21)    CMA5(22)    AST5(23)    PTZ5(24)    DIS5(25)
  -0.004948  4.3541e-08   -0.004948  5.1571e-24  1.0904e-30

Other data
  60.000000 EFL(0)     -0.000230 SA7(31)   -0.097317 TotalSA(41)

The listing shows the various aberrations that are computed by the *opabrs command, and gives the component numbers to be used in operand definitions. For example, the third-order Seidel aberration can be obtained as operand component OCM11.

  1. The Operands spreadsheet will also be open. In the spreadsheet, enter OCM11 for the definition, and SA3 for the name. This is all that is required to set up the error function. Close the spreadsheet.

  1. Click the Save toolbar icon to save the lens before carrying out any optimization. Then re-open the spreadsheet so it is open during optimization. The reason for doing this is to set up a recovery system for returning to a previous design. Now, the base design is saved in the file lasrdblt.len on the disc, and a copy of the design is saved in a temporary file that is created when the spreadsheet is opened. As optimization progresses, you can update the temporary file by closing and reopening the spreadsheet. After each iteration cycle(s), if you want to accept the result, close the spreadsheet by clicking on OK. If you want to reject the result, close it by clicking on Cancel. The base system will always be in the lasrdblt.len file, should you wish to return to it. Be careful not to write over that file; use Save As with a new name when you want to have a permanent copy.

    5. Click on the SHIFT+F10 toolbar icon to display the current error function in the text window, then click on the SHIFT+F9 toolbar icon to carry out 10 iterations. Repeat the iteration sequence a second time. After the optimization is completed, the text window will contain the following:

*OPERANDS
 OP    DEFINITION                  MODE     WGT     NAME          VALUE   %CNTRB
O 1    "OCM11"                       M    1.000000 SA3          -0.092138 100.00
MIN ERROR:     0.092138

*ITERATE FULL  10
NBR     DAMPING   MIN ERROR   CON ERROR  PERCENT CHG.
  0    0.001000    0.092138      --    
 10  5.4530e+03    0.045461      --        0.000546

*ITERATE FULL  10
NBR     DAMPING   MIN ERROR   CON ERROR  PERCENT CHG.
  0  5.4530e+03    0.045461      --    
  2  1.0000e-08    0.045461      --          --

  1. Inspection shows that the optimization makes rapid progress to an error function value of 0.045461, but cannot proceed farther. To see the reason for the lack of progress, look at the Seidel surface contributions. Click Calculate >> Aberrations, and select Seidel image in the dialog box that appears. The following shows the surface contributions to the third-order spherical aberration. In the current system, only surface 3 contributes a positive surface contribution, and its magnitude is nowhere near great enough to balance the negative aberrations of the other surfaces. It is clear that the combination of a positive element and a meniscus lens will not work for a doublet, and you will need a more conventional doublet form.

*SEIDEL ABERRATIONS
 SRF      SA3         CMA3        AST3        PTZ3        DIS3
  1    -0.015647 -1.2245e-07 -9.5831e-13 -1.9309e-12 -2.2611e-17
  2    -0.035089  3.0584e-07 -2.6657e-12  1.1245e-13  2.2254e-17

  3     0.009571  4.7324e-08  2.3400e-13 -5.3148e-12 -2.5123e-17
  4    -0.004295  1.3750e-07 -4.4020e-12  3.6469e-12  2.4174e-17

 SUM   -0.045461  3.6821e-07 -7.7920e-12 -3.4864e-12 -1.3062e-18

  1. The new starting point can be obtained from the old by changing the first three radii of curvature to 50, 0, and -50, respectively. Make these changes and re-save the lens in the lasrdblt.len file. The Autodraw window and the spreadsheet should appear as follows.

  1. As before, click on the SHIFT+F10 toolbar icon to display the current error function in the text window, then click on the SHIFT+F9 toolbar icon to carry out 10 iterations. Now the text window will contain the following.

*OPERANDS
 OP    DEFINITION                  MODE     WGT     NAME          VALUE   %CNTRB
O 1    "OCM11"                       M    1.000000 SA3           0.495023 100.00
MIN ERROR:     0.495023

*ITERATE FULL  10
NBR     DAMPING   MIN ERROR   CON ERROR  PERCENT CHG.
  0  1.0000e-08    0.495023      --    
 10    0.004276  1.1102e-16      --          -- 

  1. Clearly the system converges much more easily than before. Click Calculate >> Aberrations, and select Seidel image to see the surface by surface contributions.

*SEIDEL ABERRATIONS
 SRF      SA3         CMA3        AST3        PTZ3        DIS3
  1    -0.192014 -6.5148e-07 -2.2104e-12 -4.4538e-12 -2.2611e-17
  2    -0.500720  1.7681e-06 -6.2436e-12  1.1989e-13  2.1624e-17

  3     1.561207 -3.2426e-06  6.7349e-12  2.7621e-12 -1.9725e-17
  4    -0.868473  2.1262e-06 -5.2052e-12 -2.1440e-12  1.7992e-17

 SUM  1.1102e-16  1.9106e-10 -6.9243e-12 -3.7158e-12 -2.7201e-18

The above shows a third-order solution, but the surface contributions are very large, which will lead to large higher-order aberrations. The next step is to add higher-order terms to the error function. Click Optimize >> SCP Operands Setup >> Aberrations. Add 3 rows to the spreadsheet by clicking SHIFT+SPACE 3 times, and add the terms shown below. Close the spreadsheet. Be sure to set the weight of OCM41 to 3.0. Continuing the optimization, using the new operands, yields the following output.

*ITERATE FULL  10
NBR     DAMPING   MIN ERROR   CON ERROR  PERCENT CHG.
  0    0.004276    0.070461      --    
 10    0.000127    0.027503      --        0.137193

*OPERANDS
 OP    DEFINITION                  MODE     WGT     NAME          VALUE   %CNTRB
O 1    "OCM11"                       M    1.000000 SA3          -0.047727  50.19
O 2    "OCM21"                       M    1.000000 sa5           0.043953  42.57
O 3    "OCM31"                       M    1.000000 sa7           0.011747   3.04
O 4    "OCM41"                       M    3.000000 TotalSA       0.007973   4.20
MIN ERROR:     0.027503

 

Next Page | Previous Page | Chapter Summary | Table of Contents


Copyright © 1997 Sinclair Optics Inc. All rights reserved.
Page last updated 19970601