Interface Examples


The following examples are excellent step-by-step instructions to introduce you to OSLO’s interface and walk you through the steps necessary to learn how to use OSLO.

  • First OSLO Session Example
  • Schmidt Camera Example
  • Anamorph shows the use of cylindrical lenses, special apertures, and the pickup-length-minus (pkp lnm) command that holds the image in a fixed location, despite the motion of intermediate lenses. This type of system is often used as a telextender to change the focal length of an existing lens.


    This example shows a simple Bravais system, which is a system where the object coincides with the image. The system goes on the back end of an ordinary lens to create a sharp image with different magnification in the x and y directions. This is accomplished using cylindrical lenses with power in the yz meridian. The Bravais condition is imposed using a pk lnm command on surface 4. Actually, the condition cannot be precisely satisfied
    using cylindrical lenses because the thickness of the lenses displaces the image in the xz meridian. Therefore, the lens powers were chosen to make the image in the yz meridian lie on the same surface as thexz image.
    Note the use of special apertures on surfaces 3 and 4 to model the rectangular lens.



    Effective focal length: -4.160855 Lateral magnification: 2.019103
    Numerical aperture: 0.049281 Gaussian image height: -1.009551
    Working F-number: 10.145865 Petzval radius: 4.269440
    Lagrange invariant: 0.050000


    Effective focal length: 5.0000e+39 Lateral magnification: 1.000000
    Numerical aperture: 0.099504 Gaussian image height: -0.500000
    Working F-number: 5.024938 Petzval radius: 1.0000e+40
    Lagrange invariant: 0.050000

    *LENS DATA Anamorphic Bravais objective 2x

    0 -10.000000 0.500000 AIR
    1 8.462000 0.150000 1.100000 A SK16 C *
    2 4.100000 1.100000 AIR
    3 -1.370000 0.100000 0.943398 X SK16 C *
    4 5.650000 P 0.943398 PX AIR
    5 1.050000


    1 CVX
    3 CVX


    4 LNM 1 4 10.000000
    4 AP 3
    4 SAP A 3 A


    0 SPC 0.500000
    1 SPC 1.100000
    2 SPC 1.100000
    3 SPC 0.943398
    Special Aperture Group 0:
    A ATP Rectangle  AAC Transmit AAN
    AX1 -0.800000  AX2 0.800000 AY1 -0.500000 AY2 0.500000
    4 PKP 0.943398
    Special Aperture Group 0:
    A ATP Rectangle  AAC Transmit AAN
    AX1 -0.800000  AX2 0.800000 AY1 -0.500000 AY2 0.500000
    5 SPC 1.050000

    Read more…

  • Anaprism shows the use of tilted and decentered surfaces, prisms, and the 3-dimensional drawing routines that allow OSLO to draw a pictures of any solid objects that can be specified as a series of vertices and faces. The optical system itself is sometimes used to convert an elliptical diode laser beam to a circular shape.


    Most diode lasers emit asymmetric beams. The numerical aperture is different in the yz and xz planes, and often the beam has astigmatism, which is a separate issue. One way to make the beam circular is to use a pair of anamorphic
    prisms, as shown in this example. The prisms used here are available as Melles Griot part number 06GPU001. They work in collimated light (otherwise they would add astigmatism), so in an actual application the prisms must be used in combination
    with a collimator. Such a system is included as the file diodassy.len, described below. The prisms have a vertex angle of 29.43333 degrees, a width of 12mm, and a maximum thickness perpendicular to the back face of 8.5mm. For a given entry
    angle to the first prism, the angle of the second prism is fixed by the requirement that the beam emerge parallel to itself. The displacement of the beam depends on the prism separation. The listing below shows how the system should be set
    up in OSLO. Surfaces 4 and 6 are expressed in the coordinate system of surface 1 using a return_coordinates (rco) command. Therco command goes on the preceding surface and indicates that the coordinates of
    the next surface are to be taken according to the dcx, dcy, dcz, tla, tlb, and tlc relative to a base surface (here, surface 1). In order to prevent a confusing drawing caused by the tilted surfaces, the surfaces themselves are marked not
    drawable (in the Surface Control spreadsheet). A plan view of the system shows just the ray trajectories. Note that although the drawing makes it look like there are only two surfaces, there are actually 4. The rays are close enough to normal
    incidence on the other two that the drawing doesn’t show them.


    To substitute for the missing prism surfaces, the entire assembly has been placed in a box, using bdi (boundary information) data. OSLO graphics routines can be instructed to put 3D objects on a drawing that are totally unrelated
    to the optical function of the depicted system. These objects are specified by a list of vertices (vx) and polygon faces (pf), as shown in the listing below. To enter such data yourself, open the lens file
    in the text editor and use the same scheme. The vertex and face information must be preceded by abdi command, which gives the number of data items. The final solid-model drawing of the system is as follows:


    *LENS DATA Anamorphic prism assembly

    0 1.0000e+20 1.0000e+18 AIR *
    1 6.000000 4.000000 AS AIR *
    2 5.872557 1.0000e-06 SF11 C *
    3 1.0000e-06 AIR *
    4 5.872557 1.0000e-06 SF11 C *
    5 1.0000e-06 AIR *
    6 4.000000 AIR * Prism assy
    7 -0.003198 4.179133 S


    2 DT 1 DCX DCY DCZ
    TLA -59.800000 TLB TLC
    3 RCO 1
    TLA 29.433333 TLB TLC
    4 DT 1 DCX DCY -6.400000 DCZ 16.866459
    TLA 29.292833 TLB TLC
    5 RCO 1
    TLA -29.433333 TLB TLC
    6 DT 1 DCX DCY -6.400000 DCZ 23.000000


    1 LMO EGR (6 surfaces)
    1 DRW AP
    6 DRW AP


    1 7.000000 7.000000 1
    2 -7.000000 7.000000 1
    3 -7.000000 -14.000000 1
    4 7.000000 -14.000000 1
    5 7.000000 7.000000 23.000000 1
    6 -7.000000 7.000000 23.000000 1
    7 -7.000000 -14.000000 23.000000 1
    8 7.000000 -14.000000 23.000000 1
    PF NBR VX1 VX2 VX3 VX4
    1 1 2 3 4
    2 1 5 6 2
    3 5 8 7 6
    4 8 7 3 4
    5 1 4 8 5
    6 2 3 7 6

    Read more…

  • Cherry contains a beam splitter, catadioptric mirror, and pickup constraints needed to specify a double-pass optical system where a beam passes through the same element in both directions. The system is a high-resolution design that has been adapted for microlithographic applications.


    This lens is named after the 1985 International Lens Design Conference in Cherry Hill, NJ, where it had the best performance of all designs submitted to the reversible lens design contest. The rules of that contest specified that the design
    had to meet certain paraxial specifications, and had to have the best performance under the condition that it be completely reversible, in the sense that it had to have identical performance whether it was used forwards or backwards. Most
    of the submitted solutions were conventional lens forms, but this lens and a few others like it were catadioptric designs that achieved very high performance by using a mirror to accomplish most of the focusing power.



    The design is included in the demo examples because it shows the use of pickups to impose constraints required for designing catadioptric systems, particularly ones like this one that have additional reversibility conditions. Please open the file to see
    the detailed data; there is not enough room for a listing here. The design is also a good one to study to learn the sign conventions used in reflecting systems. Finally, note that an elliptical aperture is required on the beam-splitter surface
    to accommodate the tilted surface in a cylindrical geometry.

    Read more…

  • Dblgauss is a starting design for a conventional photographic objective of the type often used for 35mm single-lens reflex cameras.


    The double-Gauss design form has dominated the class of photographic lenses for many years. There are literally thousands of adaptations of this form, which has an apt combination of aperture, field, and design complexity. The design shown
    here is just an ordinary double gauss, using conservative specifications, that you can use as an indicator of typical performance as well as a starting system for a new design. It is set up to work at 50mm efl, f/2, with a field of about ±20
    degrees. You can compare this to the Cooke triplet (demotrip.len) and Petzval lens (petzval.len) to see the relative performance One possibly interesting aspect of the current design is that it has no vignetting. In photographic applications,
    vignetting is usually used to improve performance by truncating the oblique spherical aberration that limits the field coverage of the double Gauss lens.

    DBLGAUSS 600

    Tutorial example – Optimizing a double-Gauss objective The double-Gauss objective can serve as a starting system to illustrate the techniques for lens optimization with the GENII error function, specifically using the OSLO
    LT program (although the same system can be optimized similarly using any of the OSLO programs). It is assumed that the lens is to be optimized for f/2, 50mm focal length, ±20 degrees field coverage, i.e. the same as the example system. The
    results will be different because the example system was created using a different optimization procedure. The example is presented as a series of explicit steps that you should duplicate on your computer. The OSLO user interface has been
    especially constructed to provide an easy-to-use interaction during optimization, if you follow the recommended procedure. As you progress through the design, you should save your lens so that you can recover to a given point rather than start
    over, if you make a mistake. The tutorial directory in public/len/demo contains lens files showing the design at various stages. You should expect your lens data to be similar, but not necessarily identical, to that in the tutorial files.
    Starting Design (dblgauss0.len)

    • Click File >> Open and open the lens public/len/demo/usrguide/dblgauss.len.
    • Click File >> Save As and save the lens as private/len/dblgauss0.len. This will make a backup copy in your private directory that you can reopen if necessary.


    Curvature Solution (dblgauss1.len)

    • Click the F5 tool bar icon to open the surface data spreadsheet. Make sure that Autodraw is set to On, that the entrance beam radius is 12.5mm, the field angle 20 degrees, and the focal length 50.000041.
    • Click on the aperture buttons for surfaces 1 and 11 and set the aperture specification to Not Checked.
    • Click Optimize >> Variables and click on the Vary All Curvatures button. Click the OK button (or the check button in the spreadsheet) to close the Variables spreadsheet.
    • Click Optimize >> GENII Error Function to enter the error function with default values (Note: If you enter the command geniierf_lt ?, OSLO will allow you to enter custom values for the default ray data). Note that the Target icon
      (Shift+F10) is enabled after you give the command, signifying that the lens has operands.
    • Click the Target icon (Shift+F10) and observe the initial error function is 2.35.
    • Close (i.e. OK) the lens (surface data) spreadsheet and immediately reopen it. This has the effect of saving the current lens to a temporary file, which you can recall using the Revert capability of OSLO (If you click Cancel in a spreadsheet,
      the program will prompt “Undo all changes ?”). You should always optimize a system with the lens spreadsheet open so that you can back up if something goes awry during the optimization process. Also, if the spreadsheet is open and
      Autodraw is on, the program will update the spreadsheet and draw a picture of the lens after each series of iterations.
    • Click the Shift+F9 (Bow & Arrow) icon to iterate the design by 10 steps. Repeat this five or six times until the merit function goes down to about 1.44.
    • Change the lens identification to “CV Solution”.
    • Click the Ray Analysis report graphics toolbar icon (Shift+F3) to display a ray trace analysis in the graphics window. Note that the lens still looks similar to the starting system, and that the ray curves, although different, are still
    • Click File >> Save As and save the lens as dblgauss1.len. If you want, you can compare your system with the lens of the same name in the public/len/demo/tutorial directory.

    At this stage, we have only used curvatures as variables. This has the advantage that the system is still in the same general solution region as the starting system, and the disadvantage that the performance is not improved very much. The next
    stage of the design is to add the thicknesses as variables. When you add thicknesses, you must take extra care to provide boundary conditions to prevent the system from “blowing up”, i.e. wandering off to a solution that is either non-physical
    or in a totally different solution region from the starting system.

    Thickness Solution (dblgauss2.len)

    • Click Optimize >> Variables. At the top of the spreadsheet, change the data fields so the air-space thickness bounds run between 0.5 and 25mm, and the glass thickness bounds run between 1 and 15mm.
    • Click the Vary All Thicknesses button, then close (accept) the Variables spreadsheet.
    • Close (accept) the lens spreadsheet, then immediately reopen, to provide a revert file.
    • Click the Bow & Arrow (Shift+F9) icon once (only). Look at the lens picture made by Autodraw. Note that the first element is much too thin, resulting in a “feathered” edge, even though the axial thickness is within
      its bounds. Now look at the spreadsheet data and notice that the thickness of surface 2 is less than its minimum boundary (0.5mm). The feathered edge problem requires us to put a boundary condition on edge thicknesses, which we will
      do using “Edge Contact” solves. The minimum axial thickness violation requires us to put increased weight on boundary conditions.
    • Click the Cancel button in the lens spreadsheet. When the program pops up the “Undo all Changes?” box, click OK in the box. The lens will be restored to its state when the spreadsheet was opened (i.e. right before the iteration). Reopen
      the lens spreadsheet, and note that this is so.

    We are going to put edge contact solves on all the positive elements (1,3,8,10). By choosing the aperture height at which we specify edge contact, we can start off with roughly the same axial thicknesses as the original system. Note that this is
    only one of the ways to control edge thickness, but it is quick and easy. Later in the design, you can free up the thicknesses and see if they will move to physically reasonable values.

      1. Click the Thickness button for surface 1, then click Solves, and then Edge Contact. In the box that asks for the edge contact radius, enter 23.0.
      2. Click the Thickness button for surface 3, then click Solves, and then Edge Contact. In the box that asks for the edge contact radius, enter 16.0.
      3. Click the Thickness button for surface 8, then click Solves, and then Edge Contact. In the box that asks for the edge contact radius, enter 16.0.
      4. Click the Thickness button for surface 10, then click Solves, and then Edge Contact. In the box that asks for the edge contact radius, enter 22.0.
      5. Click Optimize >> Operating Conditions. Find the “Weight of boundary condition violations” field, and enter 1.0e4. This will force any boundary violations to have much more importance than other operands, and hence to be well
      6. Click OK to close the Operating conditions spreadsheet.
      7. Click OK to close the lens spreadsheet, then immediately reopen it.
      8. Click the Bow & Arrow icon about ten times, which should lower the error function to about 1.05.
      9. Change the lens identification to “CV/TH Solution”.
      10. Click File >> Save As and save the lens as dblgauss2.len.
      11. Click the Ray Analysis Report Graphics (Shift + F3) icon. Note that although the error function is better than before, that the various ray curves are still not very good. In order to make the design better, it will be necessary to
        use different glasses.

    For the design exercise in this tutorial, we will just vary the glasses in the inner doublets. After trying this, you can proceed on your own to make a final design by varying all the glasses. To vary glasses, it is necessary to first replace the catalog
    glasses with model glasses.

    Variable Glass Solution (dblgauss3.len)

      1. In the lens spreadsheet, click on the glass button for surface 3, then click on Model. In the dialog boxes that appear, click OK three times to accept the Glass name, base index, and V-number for the model glass. After you have finished,
        note that the letter M appears on the glass button. Click the glass button for surface 3, and select Variable from the pop-up menu of actions.
      2. Repeat the above step for surfaces 4, 7, and 8.

    OSLO normally treats glasses as one-dimensional variables. When you vary a glass, its index and dispersion are simultaneously varied so that the glass stays on the “glass line”. For many types of lenses, this is an adequate scheme for finding an optimum
    glass quickly. For a lens like the double Gauss, however, the glasses in the interior doublets need to have both the refractive index and dispersion varied independently. To do this, you enter additional variables “dn” on each of the surfaces.

      1. Click Optimize >> Variables. Select Row 21, then click the “Insert After” toolbar icon in the Variables spreadsheet. Then select Row 22, and hold down the Shift key while clicking on the row button three more times. This will
        create 4 new rows at the bottom of the variables spreadsheet.
      2. In the Surf column of the new rows, insert surfaces 3, 4, 7 and 8 respectively.
      3. In the Type column, insert DN for all 4 rows.

    For both refractive index and dispersion, it is necessary to enter explicit boundary conditions. Otherwise, the program may try to create glasses with infinite index and zero dispersion. The refractive index should be set between 1.5 and 2, and the dispersion
    should be allowed to range from 0 to 1.0. The dispersion factor DN is normalized so that 0 corresponds to the left-hand edge of the glass chart, and 1.0 corresponds to the right hand edge of the glass chart.

      1. Enter the above boundary conditions in the appropriate cells in the eight rows that specify the glass variables.
      2. Close the Variables spreadsheet, then close the lens spreadsheet and immediately reopen it.
      3. Click the Bow & Arrow toolbar icon several times until the error function decreases to about 0.47.

    There is a substantial reduction in the error function from varying the glasses, but the glasses are now fictitious. You can update the graphics window to check the current Ray Analysis.

      1. Click Show >> Surface Data, then select Refractive indices and close (accept) the dialog box. The current refractive index data will appear in the Text output window. Note that the glass on surface 8 has a refractive index of
        2.00 and a V-number of 50. This will be a difficult glass to match.
      2. Change the lens ID to “CV/TH/RN Solution”, then click File >> Save As to save the current lens as dblgauss3.len. Close the lens spreadsheet and reopen it immediately.

    The next task is to find real glasses to replace the model glasses. OSLO has a special command, accessible from the lens spreadsheet, that substitutes the nearest real glass for a model glass.

    Real Glass Solution (dblgauss4.len)

    • Click the glass button on surface 8, and select Fix >> Schott from the list of options. The program should offer to substitute LASFN31. Accept this suggestion. Close and reopen the lens spreadsheet. Click the Bow & Arrow icon
      many (~40?) times until the error function decreases to about 0.49.
    • Click the glass button on surface 7, and select Fix >> Schott from the list of options. The program should offer to substitute SF9. Accept this suggestion. Close and reopen the lens spreadsheet. Click the Bow & Arrow icon until
      the error function decreases to about 0.50.
    • Click the glass button on surface 4, and select Fix >> Schott from the list of options. The program should offer to substitute SF59. Accept this suggestion. Close and reopen the lens spreadsheet. Click the Bow & Arrow icon until
      the error function decreases to about 0.50.
    • Click the glass button on surface 3, and select Fix >> Schott from the list of options. The program should offer to substitute LASF18A. Accept this suggestion. Close and reopen the lens spreadsheet. Click the Bow & Arrow icon
      until the error function decreases to about 0.70.

    Note that it is not possible to get a good match with LASF18A glass. Possibly this indicates that additional optimization should be carried out with the other glasses as variables.

      1. Click File >> Save As to save the current lens as dblgauss4.len. Close the lens spreadsheet and reopen it immediately.
      2. Double-click the report graphics window to bring the ray analysis up to date. The curves should be similar to the following. Note that the sagittal ray-intercept curve at full field is not well controlled. Note also that the astigmatism
        curves at the edge of the field do not come together.


    1. Open a second graphics window using Window >> Graphics >> New. Click the report graphics Through-focus MTF (Shift F6) icon. The curves should be similar to the following. Note that despite the fact that the ray analysis astigmatism
      curves do not come together at the edge of the field, the actual MTF curves are reasonably coincident, at least at 25 cycles/mm.


    At this point, the optimization has proceeded to the point of a default solution. Now, various trials can be conducted to improve the design, such as trying additional glasses. Other possibilities for additional optimization are to remove the edge contact
    solves to see whether the positive elements still want to get too thin, to change the weights on selected terms in the error function, or to re-enter the error function with different rays. The general approach to optimization using OSLO is
    illustrated by the steps of this example: you should approach the optimization cautiously and change only a few things at a time, working interactively, until you are confident that the combination of variables and operands can be trusted
    to produce a system of high quality. You should always maintain a way to restore your system to an earlier state, such as using the revert capability of OSLO spreadsheets.

    Final Solution (dblgauss5.len) The lens shown below (public/len/demo/tutorial/dblgauss5.len) is the result of about an hour’s investigation of various options for improving the design using the GENII error function (with different
    weights on selected operands). It is not feasible to trace the course of this optimization explicitly. You should try to see if you can match, or improve on, the final design shown below. Note that checked apertures have been inserted to provide
    vignetting at the edge of the field.



    The data for the final system are shown below. Note that the “outer” glasses have been changed. Note also that the radii and thicknesses have been rounded to meaningful values. This should be the final step in an optimization run. Each variable in turn
    is set to a rounded off value and removed from the variable list. The lens is then re-optimized using the remaining variables. A similar procedure is used to fit radii of curvature to test glass values.


    Read more…

  • Demotrip is a Cooke triplet used throughout OSLO as a demonstration lens. It is good for this purpose because it contains the degrees of freedom needed to illustrated several optical principles, uses vignetting as a design variable, and is relatively straightforward to understand. The Cooke triplet is probably the most common extended field lens ever designed.


    This lens has been used for many years to demonstrate OSLO. It is discussed throughout the manual in a wide variety of contexts. As a historical note, this lens was not designed using OSLO, but is rather an adaptation of a design done by
    R. Kingslake and included in his book “Lens Design Fundamentals”, pp 286-295, (Academic Press 1978, ISBN 0-12-408650-1). As another historical note, this design form was actually invented by H. Dennis Taylor, who worked for Cooke. According
    to Kingslake, the lens was not manufactured by Cooke, but rather by Taylor-Hobson, another optical firm whose principals were not related to Taylor, despite the name. In any case, this form has been used in millions of low cost cameras, projectors,
    and various other instruments. The design here is typical and can be used as a starting system for adaptation. You can compare its performance to the dblgauss.len and petzval.len designs included in the OSLO demo library.


    Read more…

  • Diodassy is an example of combining two other systems (diodcoll) to collimate the beam from an astigmatic diode laser. OSLO can accommodate astigmatic sources directly, without the need for an ancillary system that provides an approximate model. The example shows the use of spot diagrams and point-spread-function calculations.


    This file combines a diode-laser collimator (diodcoll.len), a cylindrical lens, and an anamorphic prism assembly (anaprism.len) to create an overall system that converts the light from a hypothetical diode laser having a beam divergence ratio
    of 3:1 and 10 microns of astigmatism into a collimated circular Gaussian beam having a wavefront quality of better than 0.25l. The diode is assumed to be single mode, and to have a numerical aperture in the xz plane of 0.3, and a
    numerical aperture in the yz plane of 0.1. The general layout of the system is as shown below. See diodcoll.len for additional information on the collimator and anaprism.len for additional
    information on the prism assembly.


    *LENS DATA Astigmatic diode/prism assembly

    0 1.578414 1.0000e-06 AIR
    1 ELEMENT GRP 10.200000 2.500000 A SF11 C *
    6 Collimator 3.000000 4.500000 AIR Collimator
    7 ELEMENT 1.000000 4.000000 BK7 C *
    8 Astig corr 4.000000 AIR * Astig corr
    9 ELEMENT GRP 17.745114 4.000000 AIR *
    14 Prism assy 4.000000 AIR * Prism assy
    15 ELEMENT 1.000000 4.000000 BK7 C *
    16 Out window 4.000000 AIR Out window
    17 2.515146 S

    The astigmatism of the source is listed as the general operating condition sasd on the general operating conditions, as shown below. The value is the distance between the apparent source locations in the yz and xz meridians, 0.01 millimeters in the present example. *OPERATING CONDITIONS: GENERAL

    Source astigmatic dist: 0.010000 Ray aiming mode: Aplanatic
    Temperature: 20.000000 Pressure: 1.000000

    The numerical aperture of the system is listed as 0.3 on the surface data spreadsheet. This tacitly assumes that the beam is circular. The ellipticity of the beam is indicated in the spot diagram operating conditions, since that is the place where
    it is important. The spot size in the y-direction is called ssy, and the spot size in the xdirection is called ssx. Since the diode aperture is specified in NA, the spot size
    must be given as ss = th[0]*tan(asin(NA)). Which yields ssy = .159, ssx = .496. The data below show the results of a spot diagram. Note that since the system is afocal, the spot data appears in angular measure (radians). Note also that the
    spot is much larger in the x direction than the y direction, as confirmed by the plot. *SPOT DIAGRAM: MONOCHROMATIC APODIZED APDIV    11.050000 WAVELENGTH 1 WAV WEIGHTS: WW1 1.000000 GAU   SSY         SSX 0.100000    0.300000

    1.3927e-06 9.4077e-06 9.5102e-06 6.8377e-05


    0.031658 0.007022 0.998711 1.1417e-10



    Spot diagrams only show the intersection points of rays with the image surface, not the ray weights. In the present case, the different ssx and ssy values put different weights on the rays (you can confirm this using the Calculate >> Display spot
    diagram command and selecting ray weights). The weights affect calculations such as energy distributions, and more particularly Fourier transforms, which are used to compute the intensity distribution in the emergent beam. The plot below shows
    the point spread function (i.e. the far-field intensity distribution) for the present system. The abscissa is in radians, since the evaluation is in afocal mode.


    Read more…

  • Diodcoll shows a practical lens in which the difference between aplanatic and paraxial ray aiming is clearly visible. Paraxial ray aiming is used in many optical design programs, but it does not provide a good model for systems that have a large numerical aperture on the object side. Aplanatic ray aiming is based on the canonical coordinates introduced by H.H. Hopkins, and is generally more accurate for these systems. The optical system itself is a commercial design available from Melles Griot, used to collimate diode laser beams.


    This lens is designed to take light from a laser diode and produce a collimated beam. It is a commercially available design available from Melles Griot as their part number 06GLC002. It is designed for a numerical aperture of 0.5 on the short
    conjugate side, and has a focal length of about 8mm.


    In traditional optical design, lenses are designed with the long conjugate side on the left. There are two reasons for this convention. First, there is a maximum distance that rays can be traced without loss of numerical accuracy using ordinary ray trace
    equations (in OSLO, this distance is 108 units). Many programs are set up to take object distances greater than this as being at infinity, for which special equations are used. When the long distance is on the image
    side, the system must be evaluated in afocal mode. This is not a problem for OSLO, which has built-in afocal mode support. The second reason has to do with the way that rays are aimed at the lens from object space. In traditional programs,
    rays are aimed at a flat entrance pupil. This means that fractional coordinates of rays are proportional to their direction tangents in object space. When the object is at a great distance, this is ok, but actually fractional coordinates should
    be proportional to the direction cosines of rays in object space. We call this aplanatic ray aiming, as opposed to paraxial ray aiming. Aplanatic ray aiming was used in GENII for many years, and has been introduced into OSLO since the programs
    were merged in 1994. It has the advantage that OSLO can now be used to evaluate systems from short to long conjugate, which is not possible with a program that uses paraxial ray aiming. The laser diode collimator is a fast enough system for
    the differences between paraxial and aplanatic ray aiming to be readily observable. The figures below shows the two cases (the system was changed to focal mode to produce these plots).

    Aplanatic ray aiming:


    Paraxial ray aiming:


    Read more…

  • Ebert is a simple grating monochromator that uses a plane grating. It should be studied to understand telecentric systems, rectangular special apertures, off-axis field points as base operating conditions, and the use of diffraction gratings.


    The Ebert monochromator, also known as the Fastie-Ebert monochromator, since it was developed for practical use by Fastie, is a very simple design that uses a plane grating at or near the focal point of a spherical mirror. The design included
    in OSLO puts the grating exactly at the focal point, which makes the system telecentric on both object and image sides. The focal points of the overall system are also at infinity, so the system is afocal. Notwithstanding this, the object
    and image are both at finite distance, and the system is set up as a focal system.


    The grating is the aperture stop. This means that the chief ray enters the system parallel to the axis. To accommodate this, thetele general operating condition in OSLO must be turned on. An additional concern caused by the
    grating being the stop comes from the fact that it is square (the grating used is 25mm square with 600 grooves/mm). This means that the input numerical aperture must be large enough so that the grating is filled, which means that the reported
    paraxial data does not report the actual performance (see the discussion of apertures). *LENS DATA Ebert Grating Monochromator

    0 125.000000 1.0000e-06 AIR *
    1 -250.000000 -125.000000 50.000000 REFL_HATCH
    2 125.000000 P 12.500000 AX REFL_HATCH *
    3 -250.000000 P -125.000000 50.000000 P REFLECT
    4 25.000000

    The system setup is somewhat unorthodox. The field of view is very narrow, and the object surface is decentered to move the entrance slit off the axis of the spherical mirror. The mirror is tilted using a return_coordinates (rco) command in which
    the coordinates are returned to the current surface. This has the effect of providing a local coordinate system in which the tilt of the current surface is removed prior to moving to the next surface (cf. the rco commands used in anaprism.len). *TILT/DECENTER DATA

    0 DT 1 DCX DCY -25.000000 DCZ
    2 RCO 2
    TLA 10.000000 TLB TLC


    2 GOR -1 GSP 0.001667


    0 SPC 1.0000e-06
    1 SPC 50.000000
    2 SPC 12.500000

    Special Aperture Group 0:

    A ATP Rectangle AAC Transmit AAN
    AX1 -12.500000 AX2 12.500000 AY1 -12.500000 AY2 12.500000
    3 PKP 50.000000
    4 SPC 25.000000

    Another interesting aspect of the Ebert monochromator setup is the default drawing rays, which must be set to fractional coordinates that account for the oversized pupil, and to wavelengths that show the grating dispersion. *OPERATING CONDITIONS: LENS DRAWING

    Initial distance: 125.000000 Final distance: 125.000000
    Horizontal view angle: 240 Vertical view angle: 30
    First surface to draw: 0 Last surface to draw: 0
    X shift of drawing: Y shift of drawing:
    Drawn apertures (solid): Quadrant Image space rays: Final dist
    Rings in aperture (solid): 3 Spokes in aperture (solid): 4
    Number of field points (rays): 3 DXF/IGES file view: Unconverted
    Draw aperture stop location:

    Off    Hatch back side of reflectors:   On

    Fpt Frac Y Obj Frac Y Obj Rays Min Pupil Max Pupil Offset Fan Wvn
    1 3  -0.650000 0.650000 Y 1
    2 3  -0.650000 0.650000 Y 2
    3 3  -0.650000 0.650000 Y 3

    Read more…

  • Germdiff illustrates the use of a diffractive surface to correct the chromatic aberration of an infrared system, as well as an aspheric to correct spherical aberration.


    One of the first practical applications of diamond-turned computer-generated holograms was a single element achromat for the infrared. This lens, designed by Reidl and McCann, is discussed in detail in the Optics Reference manual. It combines
    a conventional aspheric on the front surface with a diffractive surface on the back of a Germanium singlet to achieve good performance at f/1. Note that the system, while achromatic, has secondary spectrum that cannot be corrected using this


    Read more…

  • Grinlens shows the use of gradient-index materals to make a focusing element for a CD player. In this design, the gradient coefficients are used as variables. In an alternate approach, the gradient is predetermined and the curvatures are varied.


    Gradient-index technology has been applied to several diverse application areas. One of the common ones is in consumer optics, where small gradient lenses or arrays of gradient lenses are used in CD-ROMS and copiers. The lens shown here was
    designed by Nishi and Tayuma at Nippon Sheet Glass (NSG), manufacturer of gradient lenses known by the trademark Selfoc. In connection with Selfoc lenses, it is worth noting that although NSG makes the paraxial data for their lenses available
    to the public, the actual data describing the real index distributions has not been published. The data for the index distributions used in this lens do not necessarily coincide with that for commercial Selfoc lenses. The lens is included
    here to show an example of how it can be entered into OSLO, as well as to assess the general performance level that might be expected from a GRIN lens of this type. In the drawing shown below, the block on the right is an optical disc. In
    analyzing this system, please recall that since the standard paraxial trace does not handle gradient index materials, you must use the *pxc and *pxt commands to obtain paraxial data.


    Read more…

  • Grinrod is an example system designed using a hypothetical gradient material. It shows the way in which rays would propagate through a gradient-index light pipe. You should note that this example is carried out using strictly geometrical optics, and can only be applied to propagation through fibers when the fiber diameter is much larger than the single-mode spot size.


    As noted before, gradient index technology is used in many diverse applications. The system in this example is a gradient index rod that is more like a fiber than a lens. It is, however, an imaginary system, designed using OSLO without regard
    for actual refractive indices that can be manufactured.


    The drawing above shows both on-axis and off axis beams. Note that the off-axis beam for both the upper and lower rim rays is truncated by the edge of the rod. In order for this to happen, you must turn on the Aperture check all GRIN segs general operating
    condition. If you don’t, the rays will be free to propagate outside the boundary defined by the aperture on the surface for with the GRIN material is defined. *OPERATING CONDITIONS: GENERAL

    Image surface: 3 Aperture stop: 1
    Evaluation mode: Afocal Reference surface: 1
    Aper check all GRIN ray segs: On Extended-aper ray aiming mode: Off
    Plot ray-intercepts as H-tan U: Off XARM beam angle: 90.000000
    Source astigmatic dist: Ray aiming mode: Aplanatic
    Temperature: 20.000000 Pressure: 1.000000

    Read more…

  • Hologram illustrates diffractive surfaces, as well as the difference in image quality that comes from making the second principal surface of an optical system curved instead of flat.


    This is a hologram made from two point sources. One source is located at infinity, and the other is located at an on-axis point 30mm to the right of the hologram. After the hologram is exposed and developed, the construction sources are removed,
    and the hologram is used to form an image of objects located at infinite distance on the left on a surface 30mm to the right. The hologram used for this example is curved, with the substrate radius being 30mm, so the construction source lies
    at the center of the principal surface. Then rays coming from infinity through various parts of the hologram obey the sine condition, and the hologram is free from coma. If you make the hologram flat, you will have a huge amount of coma, as
    shown below.



    Read more…

  • Hubble is the design formula used for the original Hubble Space Telescope. Note that the original telescope was not manufactured to this design, which caused the problem.


    The Hubble telescope has become famous for many reasons, not the least of which is the well-known fabrication error that has now been compensated. The version included here is the original Ritchey-Chrétien design including two hyperbolic
    mirrors. The design itself is ideal, but it was fabricated in a way that produced about 6 waves of spherical aberration due to an improper conic constant on the primary mirror. You may wish to experiment to find the deviation in the conic
    constant that would cause such aberration, as well as ways to compensate for it. In setting up the system, a wavelength of 0.6328 was used, because that is the wavelength of the light used to test it. Note that surface 1 is needed to serve
    as a central obstruction.

    Hubble space telescope

    0 1.0000e+20 1.9199e+17 AIR
    1 4.9061e+03 1.2094e+03 SX AIR *
    2 -1.1040e+04 -4.9061e+03 P 1.2000e+03 AX REFL_HATCH *
    3 -1.3580e+03 6.4059e+03 S 150.000000 REFL_HATCH *
    4 110.578590 S


    2 -1.002299
    3 -1.496000


    Read more…

  • Lasrcomm is the final design of the laser communication system described elsewhere. It is combined with a tiny single-mode fiber to show the fiber efficiency calculations that are built into OSLO.


    This system designed elsewhere using Melles Griot catalog lenses. Here, a medium “light pipe” has been added in the image plane to simulate a fiber. The light pipe has a diameter of 0.005mm, and a length of 0.05mm,
    so it is similar in geometrical size to the one postulated for the example. To see the fiber, you must make a special drawing in which you limit the surfaces drawn to 6 and 7, then zoom in as much as possible. The result is the second drawing


    LaserComm2 You can readily see that the extreme rays miss the edge of the fiber. Of course no particular quantitative information can be obtained
    from this, since the system is close to the diffraction limit. If you want to obtain detailed information on the coupling into the fiber, you should use the Options >> Fiber coupling command. If you want to use this command, you should
    first remove the light pipe (surfaces 6 and 7) from the system, since the command assumes that the fiber is located in the image plane. The Source >> Fiber coupling command produces the following dialog box:

    FIBERCUP According to the original problem, the diameter of the fiber core is 5 microns. If we assume a refractive index of 1.5, and a cladding
    index difference of 1%, the actual coupling efficiency is about -12 dB, as shown by the output below. Evidently the mode coupling into the fiber is not so well optimized as it should be. *FIBER COUPLING EFFICIENCY – WAVELENGTH 1 FUNDAMENTAL MODE OF STEP-INDEX FIBER

    CORE INDEX = 1.500000 CLADDING INDEX = 1.485000 CORE RADIUS = 0.002500
    POWER COUPLING = 0.0569 (-12.45dB)

    The fiber coupling command also gives you the capability to experiment with alignment tolerances. Note however, that reflection losses are not accounted for.

  • Lasrdblt is the final design of the air-spaced doublet described elsewhere. The example here uses this design to illustrate the thermal analysis capabilities of OSLO.


    The lasrdblt.len file is the finished design from the air-spaced doublet study presented elsewhere. You can see from the ray analysis below that the lens far outperforms the Cooke triplet, double Gauss, and Petzval
    lenses shown in these examples. On the other hand, it has essentially no field of view, and works only in monochromatic light. These limitations distinguish the present design from normal doublets, which are usually designed to cover an extended
    spectral range. In the present lens, the degrees of freedom normally used to extend the spectral range were instead used to balance high-order aberrations.


    The air-spaced doublet provides a good system to illustrate the thermal or environmental analysis features in OSLO. When the temperature of the lens and its environment is changed, OSLO changes the lens data according to the thermal expansion of the materials
    (glass and spacers) used to construct it. In addition, refractive indices are recalculated to account for the thermal variation of refractive index. The temperature of the lens and its surroundings can be set by changing the Temperature value
    in the General Operating Conditions spreadsheet. To see the effect of temperature changes on the laser doublet, open the lasrdblt.len file and execute the Calculate >> Paraxial command to print the paraxial constants *PARAXIAL CONSTANTS

    Effective focal length: 60.000049 Lateral magnification: -6.0000e-19
    Numerical aperture: 0.250000 Gaussian image height: 6.0000e-05
    Working F-number: 2.000002 Petzval radius: -205.107372
    Lagrange invariant: -1.5000e-05


    Now open the general operating conditions spreadsheet and change the temperature of the system to 100 degrees. Repeat the above command: *PARAXIAL CONSTANTS

    Effective focal length: 59.975811 Lateral magnification: -5.9976e-19
    Numerical aperture: 0.250101 Gaussian image height: 5.9976e-05
    Working F-number: 1.999194 Petzval radius: -205.187615
    Lagrange invariant: -1.5000e-05


    If the focal length of the original system is in spreadsheet cell, enter the following prt;prt “Focal length change =” a5-a1 which produces Focal length change =    -0.024238 Now click on the SHIFT+F12 icon to autofocus
    the system: *AUTOFOCUS Optimal focus shift =    -0.130511 Note that although the focal length only changes by 24 micrometers, it takes a focal shift of 130 micrometers to refocus the system. Evidently the aberration balance has been changed,
    as you can verify using the Report Graphics command. Now change the temperature back to 20 degrees. You will see that the lens data do not return exactly to their previous values. This is caused by round-off effects in the expansion calculations.
    You should always save the original system in a file before changing the temperature, or leave the operating conditions spreadsheet open during your analysis and cancel out of it at the end. If you plan extensive thermal analysis, you should
    consult the tem command in the help system or see the Program Reference manual for additional options.

    Read more…

  • Magnifyr is a plano-convex singlet set up as a visual magnifier. It shows how to set up the pupils for such a system, and serves as a base system used to compare the performance of a Fresnel magnifier.


    This lens is an ordinary 50mm focal length singlet, 31mm diameter, set up as it would be for use as a visual magnifier. The eye relief has been assumed to be 250mm, and the pupil diameter has been taken as 10mm to provide freedom of eye movement.
    This lens has been included in the demo library mainly for comparison to the Fresnel diffractive magnifier (magfrenl.len). A great deal of caution needs to be exercised in interpreting the ray analysis for a visual instrument such as a magnifier,
    because the eye is neither in a fixed position, nor at a fixed focus. The eye (particularly a single eye) can tolerate rather poor imagery, but tends to be intolerant of imagery that changes rapidly with eye position.


    Read more…

  • Magfrenl uses a Fresnel surface to correct the geometrical aberration and a diffractive surface to correct the chromatic aberration of a simple magnifier. This example can be used to see how to enter data for these systems, or more importantly to understand the difference between a Fresnel and a diffractive surface.


    The Fresnel diffractive magnifier is a plastic element with an aspheric Fresnel surface on the front and a diffractive surface on the back. It is an interesting system for both its tutorial value and its optical performance. The optical performance
    is much better than that of a simple lens, as shown by the ray analysis below.

    MAGFRENL A Fresnel surface in OSLO is one that has the power of a curved surface, but is actually placed on a substrate having a different curvature
    (usually flat). This is accomplished by dividing the surface into prismatic zones, so that the surface normal approximates that of the curved refracting surface at any point. As the number of zones increases, the approximation becomes better.
    Fresnel surfaces were originally used in searchlights, where a substantial reduction in weight was accomplished. More recently, Fresnel surfaces have been used in a variety of consumer optics products made from embossed plastic. A diffractive
    surface is outwardly similar to a Fresnel surface, but there is an important difference between the two: With a Fresnel surface, light from different zones combines incoherently, while with a diffractive surface, light from different zones
    combines coherently. The former follows the laws of refraction, while the latter follows the laws of diffraction. Curiously, the chromatic aberration of the two has opposite sign, which is used in the magfrenl.len magnifier. The lens data
    is shown below. *LENS DATA Fresnel diffractive magnifier 5X

    0 1.0000e+20 4.3661e+18 AIR
    1 250.000000 5.000000 A AIR
    2 32.626000 2.000000 20.000000 CARBO C *
    3 48.700000 20.000000 AIR   *
    4 5.000000


    2 -0.969340 -1.5465e-07


    DF0 —     DF1     -0.001041


    2 FRN 1 FCV FCC

    Note that surface 2, the Fresnel surface, is made aspheric to correct higher order aberrations. Surface 3, the diffractive surface, contains only a quadratic phase term to add some focusing power and correct the chromatic aberration. The ray analysis
    on the previous page shows that the system is well-corrected for primary but not secondary color.

    Read more…

  • Mquartet is the best solution found to the design problem posed at the 1994 International Lens Design Conference. It is often used as a reference point for global optimization.


    The monochromatic quartet is the name given by organizer D.C. O’Shea, to a lens that was designed according to the rules of the 1990 International Lens Design Conference contest. The lens was specified according to the requirement that it
    be the best design having a focal length of 100mm, a speed of f/3, and a field of 15 degrees, using four elements of BK7 glass. Of the 44 designs submitted, the top five were essentially the same (three were designed using OSLO), and it is
    speculated that this design is the global solution to the problem as stated. Since then, global optimization algorithms have often been tested to ensure that they find this solution.


    Read more…

  • Nikofish is a wide-angle system with a field of view greater than 90 degrees. It shows the use of wide-angle ray-aiming mode to automatically locate the position and extent of the pupil in such systems.


    Lenses that have fields of view of greater than 90 degrees (half-angle) require special attention in setup, since the conventional methods for specifying field of view are awkward to handle for this case. In addition, special care must be
    taken within the ray trace routines to ensure stability. Finally, care must be taken in evaluating such lenses, since many of the built-in evaluation procedures (e.g. report graphics) implicitly assume a field of view of less than 90 degrees.
    The nikofish.len file is an example of such a lens. It is based on a Nikon patent, and is implemented here as a 10mm efl lens that covers a field of view of 108 degrees with an aperture of f/4.

    NIKFISH1 As you can see from the drawing, the aperture stop of the lens is well back in the lens, on surface 14. Obviously the pupil position
    is a function of the field angle, moving almost to the first surface at the edge of the field. In order to accommodate this type of system and ensure that the rays pass through the desired positions on the aperture stop, OSLO uses the  warm  (wide-angle ray-aiming mode) general operating condition.. When

    warm is on, fractional object coordinates (for infinite conjugate systems) represent angles in degrees, relative to the nominal field angle of the system. For the present system, the field angle is specified as 45 degrees.
    This means that a fractional object height of 1.0 refers to a point 45 degrees off axis. The edge of the field of view of this system occurs at a fractional object height of 2.4. In addition, when warm is on, fractional pupil
    coordinates refer to positions in the reference surface, normalized to the reference surface radius (not the entrance beam radius). For the nikofish lens, the reference surface (aperture stop) radius is 5.2 mm, so a fractional aperture coordinate
    FY = 0.5 refers to a point in the aperture stop 2.6 mm from the optical axis. The figure below shows a zoomed drawing of the lens near the stop surface. You can see that the rays always go through their prescribed points in the aperture stop.
    In this connection, it should be mentioned that it is not necessary to have warm on to have the chief ray go through the center of the stop: this always happens (unless the ray trace fails for some reason). The warm condition
    only affects ordinary rays.

    NIKFISH2 To evaluate fisheye systems, you can use all the routines that use the current field point, which can be set to a value greater than
    1.0 using the sop command. For example, a ray intercept curve at the edge of the field of view can be obtained as follows:


    18.702850 0.219863 0.062672 182.326549 Infinite


    NIKFISH3 There is some problem in obtaining a graphical field analysis, because all the internal routines extend only to FBY
    = 1.0. However, the star command *field accommodates two arguments that give the number of field points and the maximum fby, respectively. The command *field 12 2.4 produces the following output.


    0.042414 0.042414
    0.200000 1.606980 0.040257 0.041150 -0.858303 -0.001824
    0.400000 3.210651 0.034107 0.037644 -3.444843 -0.003608
    0.600000 4.807926 0.024917 0.032730 -7.795877 -0.005325
    0.800000 6.396158 0.014212 0.027698 -13.976597 -0.006981
    1.000000 7.973349 0.004033 0.024151 -22.088918 -0.008626
    1.200000 9.538334 -0.003140 0.023787 -32.283884 -0.010379
    1.400000 11.090926 -0.004421 0.028098 -44.780543 -0.012438
    1.600000 12.631948 0.003501 0.037920 -59.894417 -0.015109
    1.800000 14.163058 0.024490 0.052703 -78.080634 -0.018818
    2.000000 15.686059 -0.177583 0.069185 -100.000000 -0.024115
    2.200000 17.201146 0.125809 0.078828 -126.621245 -0.031608
    2.400000 18.702850 0.219863 0.062672 -159.380288 -0.041751

    Read more…

  • Pentprsm shows the use of special aperture data, as well as 3d boundary (bdi) data, used to enter data for a pentaprism.


    A pentaprism changes the direction of a beam by 90 degrees. It is straightforward to enter such a system using the bend command in OSLO. However, to draw a picture of the system requires special work because of the nature of the prism. The
    system shown here uses OSLO’s boundary information (bdi) to draw the prism, as shown in the figure below.

    PENTPRSM The pentaprism system included here is intended as a base system into which you can insert your own optics as required. Blank pieces
    of glass are placed in front and behind the prism for demonstration. The data are shown in the following list. *LENS DATA Penta prism example SRF      RADIUS      THICKNESS   APERTURE RADIUS       GLASS SPE   NOTE 0        —        1.0000e+20    1.0000e+14             AIR
    1        —          1.000000      1.414214 A           BK7 C * 2        —          1.000000      1.414214             AIR     Your lens 3        —          2.414214      1.000000 X          BAK1 C * 4        —         -2.000000      1.082400 X       REFLECT   *
    5        —          2.414214      1.082400 X       REFLECT   * 6        —          1.000000      1.000000 X           AIR   * Penta prism 7        —          1.000000      1.414214             BK7 C * 8        —            —          1.414214             AIR     Your lens
    9        —            —          1.414214

                     From an optical standpoint, the interesting surfaces are 3-6. The orientation of the surfaces is straightforward and easily handled by the ben command. The sides of the prism are rectangular,
    so each surface must have a rectangular special aperture, calculated according to the standard pentaprism geometry. Since the actual prism surfaces are to be represented by bdi information (in contrast to being enclosed in
    a bounding box, cf.  anaprism.len ), it is important that the drawing information accurately represent the true situation. *TILT/DECENTER DATA 4     DT    1         DCX       —       DCY       —       DCZ       —
    BEN             TLA    22.500000   TLB       —       TLC       — 5     DT    1         DCX       —       DCY       —       DCZ       — BEN             TLA    22.500000   TLB       —       TLC       — *APERTURES SRF   TYPE APERTURE RADIUS
    0     SPC   1.0000e+14 1     SPC     1.414214 2     SPC     1.414214 3     SPC     1.000000 Special Aperture Group 0: A  ATP    Rectangle  AAC     Transmit  AAN       — AX1    -1.000000  AX2     1.000000  AY1    -1.000000  AY2     1.000000
    4     SPC     1.082400 Special Aperture Group 0: A  ATP    Rectangle  AAC     Transmit  AAN       — AX1    -1.082400  AX2     1.082400  AY1    -1.082400  AY2     1.082400 5     SPC     1.082400 Special Aperture Group 0: A  ATP    Rectangle  AAC     Transmit  AAN       —
    AX1    -1.082400  AX2     1.082400  AY1    -1.082400  AY2     1.082400 6     SPC     1.000000 Special Aperture Group 0: A  ATP    Rectangle  AAC     Transmit  AAN       — AX1    -1.000000  AX2     1.000000  AY1    -1.000000  AY2     1.000000
    7     SPC     1.414214 8     SPC     1.414214 9     SPC     1.414214 For the drawing, surfaces 3-6 are marked “not drawn” in the special data surface control spreadsheet: *SURFACE TAG DATA 1     LMO ELE  (2 surfaces) 3     LMO ELE  (4 surfaces)
    3     DRW OFF 4     DRW OFF 5     DRW OFF 6     DRW OFF 7     LMO ELE  (2 surfaces) There is no spreadsheet for entering boundary data. You can use the normal lens editor in command mode, giving the commands len upd gto 3 bdi 16 9 vx 1 -1 -1 0 0
    vx 2 -2 2 0 0 . pf 1 1 2 3 4 pf 2  5 6 7 8 . etc. according to the list below: end In connection with the input of bdi data, please note

    • The data must be preceded by a bdi command that states how many vertices and how many polygon faces are to be used.
    • The last number in each vertex record is the surface number relative to the current surface. In the output listing, this is converted into an absolute surface number reference.

    *BOUNDARY DRAWING DATA SRF 3: VX NBR         X            Y            Z        COORD SURF 1       -1.000000    -1.000000       —             3 2       -1.000000     1.000000       —             3 3        1.000000     1.000000       —             3
    4        1.000000    -1.000000       —             3 5       -1.000000    -1.080000       —             4 6       -1.000000     1.080000       —             4 7        1.000000     1.080000       —             4 8        1.000000    -1.080000       —             4
    9       -1.000000    -1.080000       —             5 10       -1.000000     1.080000       —             5 11        1.000000     1.080000       —             5 12        1.000000    -1.080000       —             5 13       -1.000000    -1.000000       —             6
    14       -1.000000     1.000000       —             6 15        1.000000     1.000000       —             6 16        1.000000    -1.000000       —             6 PF NBR        VX1          VX2          VX3          VX4 1            1            2            3            4
    2            5            6            7            8 3            9           10           11           12 4           13           14           15           16 5            5            8           12            9 6           -5           -6          -10           -9
    7           -2          -10           -6           -2 8           -7           -8          -12          -11 9           -3           -4           -7           -3

    Read more…

  • Perfmag2 is an example of a perfect lens. It should be studied to understand the difference between a perfect lens and a paraxial lens, as well as the definitions of aperture-based operating conditions used in OSLO.


    A perfect lens is one that forms a sharp undistorted image of an extended object on a plane surface. If the aperture of the lens is infinitesimal, the rays passing from the object to the image will follow the laws of paraxial optics. If the
    aperture of the lens is finite, however, this will not be the case. Abbe’s sine law states that for finite rays, the ratio of the sines of the object and image axial ray angles must be constant. This conflicts with the laws of paraxial optics,
    which state that the ratio of the tangents of the angles must be constant. OSLO uses true perfect lenses, i.e. ones that obey the laws of optics, to model idealized systems. As a result, OSLO results will be different from programs that use
    paraxial lenses to model idealized systems. The perfmag2.len file is included in the demo directory to illustrate some properties of perfect lenses that may seem curious to those who are not familiar with them. The lens is purposely chosen
    to be very fast (N.A. 0.8 on the short conjugate side), and to work at a magnification of -2x, so that the differences between a perfect lens and a paraxial lens are obvious. The drawing below shows a basic ray analysis of the lens at its
    nominal magnification.

    PERFMAG1 All the ray aberrations are essentially zero, according to the definition of a perfect lens (the residual wiggles are due to round-off
    errors). The drawing of the lens is unusual. In OSLO, a perfect lens is modeled as a single surface. If the lens is to obey the sine law, however, this means that the rays must emerge from the surface at a different height than they enter,
    which accounts for the strange drawing. The paraxial data for the perfect lens are shown below. *PARAXIAL SETUP OF LENS APERTURE Entrance beam radius:    200.000000    Image axial ray slope:    -0.666667 Object num. aperture:      0.800000    F-number:                  0.250000
    Image num. aperture:       0.400000    Working F-number:          1.250000 FIELD Field angle:               4.763642    Object height:           -12.500000 Gaussian image height:    25.000000    Chief ray ims height:     25.000000 CONJUGATES
    Object distance:         150.000000    Srf 1 to prin. pt. 1:        — Gaussian image dist.:    300.000000    Srf 2 to prin. pt. 2:        — Overall lens length:         —        Total track length:      450.000000 Paraxial magnification:   -2.000000    Srf 2 to image srf:      300.000000
    OTHER DATA Entrance pupil radius:   200.000000    Srf 1 to entrance pup.:      — Exit pupil radius:       200.000000    Srf 2 to exit pupil:         — Lagrange invariant:      -16.666667    Petzval radius:          1.0000e+40 Effective focal length:  100.000000
    It is worth spending a little time to see how the values are calculated. First, the focal length of the lens is specified to be 100mm, the magnification is specified to be -2, the numerical aperture is specified as .8, and the object height
    is specified as -12.5mm; these are all given data. The focal length and magnification specifications imply that the object distance must be 150mm, and the image distance must be 300mm. The magnification and numerical aperture specifications
    imply that the numerical aperture on the image side must be .4. If the numerical aperture is .8, the axial (marginal) ray in object space must make an angle arcsin(.8) = 53.130102 degrees with the optical axis, and must strike the lens at
    a height of 150*tan(53.130102) = 200mm, which is the entrance beam radius. The f-number, defined as the focal ratio f/D, must then be 100/400 = .25. The working f-number, defined as 1/(2*NA), is then 1/(2*0.4) = 1.25. The
    image axial ray slope (a paraxial quantity) is -200/300 = -.666667. Since the numerical aperture in image space is 0.4, the angle of a real ray emerging from the lens must be -arcsin(.4) = -23.578178 degrees. If this ray is to pass through
    the paraxial image point, it must emerge from the lens at a height 300*tan(23.578178) = 130.930734mm. This is easily confirmed by tracing a real ray from an on-axis object point, as shown below. The difference in ray height between the input
    and output rays is thus caused by the fact that we are dealing with a real perfect lens, not a paraxial approximation. Since an actual ray could obviously not follow the displayed trajectory, the implication is that a real perfect lens cannot
    be infinitely thin. *SET OBJECT POINT FBY         FBX         FBZ —          —          — FYRF        FXRF         FY          FX —          —          —          — YC          XC          YFS         XFS         OPL    REF SPH RAD
    —          —          —          —      300.000000  299.999993 *TRACE RAY – LOCAL COORDINATES SRF        Y           X           Z           YANG        XANG        D 1     200.000000      —          —       53.130102      —          —
    2     130.930734      —          —      -23.578178      —     -127.326835 3     5.6843e-14      —          —      -23.578178      —      327.326835 PUPIL      FY          FX                                              OPD 1.000000      —                                              —
    A perfect lens cannot be characterized solely by a focal length. It is necessary also to specify a magnification at which it is to be used. This is because a lens cannot form a perfect image at two magnifications (Herschel’s rule). The perfect
    lens used here can be used to demonstrate this by changing the magnification by 5% to -2.1. Then the object distance becomes 147.619048mm, and the image distance 310mm. The ray analysis shows that even with this small change in operating condition,
    there is a substantial overcorrected spherical aberration.

    PERFMAG2 The effects of using the perfect lens at the wrong magnification are sufficiently dramatic that they can easily be seen in the image
    of a rectangular grid (obtained using the *xsource command).



    Read more…

  • Petzval is a starting design for a large aperture narrow-field photographic lens. The Petzval design has been around for more than one hundred years, and is still widely used.


    The Petzval lens is a very old design form ( > 150 years!) that is still a mainstay in lens libraries. The original Petzval Portrait lens used a cemented doublet and air-spaced doublet, but the term Petzval lens is now generally applied
    to lenses containing two separate groups (usually doublets) in which both groups contribute positive power. The Petzval lens is a good design form for high-aperture narrow field applications. Curiously, although invented by Petzval to improve
    the field coverage of high-aperture systems, it makes no attempt to correct the Petzval curvature. In modern designs, the Petzval lens often incorporates a negative element near the image plane to flatten the field. The lens included here
    is a typical design that can be used as a starting design for specific modification. It is scaled to 50mm focal length, so you can compare its performance to demotrip.len and dblgauss.len.


    Read more…

  • Prismirr is the final system from the prism data-entry example. It can be used to check your results.


    This system is the final result of the  right-angle prism example . It shows the use of total internal reflection surfaces, the ben command, and hatched reflectors. For the solid-model drawing below,
    the lens drawing operating conditions were changed from their default values. In particular, the vertical view angle was changed to 10 degrees, the Apertures were changed to Meridional, and the spokes were changed to 6. Note that mirror hatching
    is not applied in solid-model views.


    Read more…

  • Riflscop shows the use of the pickup-length-minus (pkp lnm) command to hold a constant image location. Because this is commonly required in zoom systems, this command is often called a zoom solve.


    A rifle scope is an inverting telescope designed to be mounted on a rifle and used as a telescopic sight. The scope consists of four parts: an objective, an erecting system, a reticle, and an eyepiece. In use, the objective and erecting system
    for an image of an object at or near infinity on the reticle (or vice versa). The erector system in a real system contains tilt and decentering adjustments that provide alignment capability as well as compensation for windage and bullet drop,
    but the design included here does not include such adjustments. The overall system is afocal, and must be designed with generous eye relief to prevent injury when the rifle is fired. In fact, this system is one position of a zoom system. Surface
    11, the last surface of the second erector doublet, is specified by a the command pk lnm 4 11 90.7025 command, sometimes called a zoom pickup, because it holds the total distance between surface 4 and 12 at 90.7025mm,
    no matter what value is given to any intervening thicknesses. The system is zoomed by changing thicknesses 5 and 8. To design the system, you can choose some value of th[8], then optimize the image quality by varying th[5]. This will produce
    the proper location (or locations – there may be two) of components and the magnification. By repeating this procedure for several values of th[8], you can construct a cam curvethat shows how the elements must track to change the
    magnification. The lenses themselves can be designed with the system set at some particular magnification, or possibly at two different magnifications, to see how the optimum changes vs. magnification. Finally, you select one or the other
    (or some compromise) and make a final cam curve to complete the design. It is not necessary to use actual zoom optimization for a simple system such as this. The ray analyses shown on the next page show the performance of the scope at its
    normal magnification (3.75X), and also at a higher power (9.5X), which is achieved by changing th[5] to 15.208348, th[8] to 1.596579, the entrance beam radius to 18, and the field angle to .9 degrees. Note that the system has the afocal general
    operating condition set, so the ray displacements automatically are shown in radians. Ray displacements in afocal mode are actually direction tangents, not angles in radians, but are ordinarily so small that there is negligible difference.



    Read more…

  • Schmidt shows the application of an aspheric surface as well as an obstruction in the setup of a wide-field telescope.


    A Schmidt camera consists of a spherical mirror with an aspheric corrector plate at or near the center of curvature of the mirror. The purpose of the aspheric plate is to correct the spherical aberration of the mirror. In the design included
    here, an additional lens is placed near the image plane to correct field aberrations on a flat image plane (a normal Schmidt camera has a curved image surface). The system data is shown below. *LENS DATA Schmidt System 100mm f/1.25 3deg SRF      RADIUS      THICKNESS   APERTURE RADIUS       GLASS SPE   NOTE
    0        —        1.0000e+20    5.2408e+18             AIR 1    2.6134e+03      6.500000     42.000000         FSILICA   * 2        —         88.660000     42.000000 AP          AIR 3        —         98.860000     42.000000 X           AIR   *
    4   -201.029000    -96.860000 P   55.000000      REFL_HATCH 5    -40.500000     -2.000000      7.000000         FSILICA P 6    234.033000     -0.416671      7.000000 P           AIR P 7        —            —          5.300000 *CONIC AND POLYNOMIAL ASPHERIC DATA
    SRF        CC          AD          AE          AF          AG 1      -1.000000 -5.8678e-08 -4.2209e-12  1.2779e-15 -3.0697e-19 *PICKUPS 2     AP     1 4     THM    3        2.000000 5     GLA    1 6     GLA    3      AP     5 *APERTURES SRF   TYPE APERTURE RADIUS
    0     SPC   5.2408e+18 1     SPC    42.000000 2     PKP    42.000000 3     SPC    42.000000 Special Aperture Group 0: A  ATP      Ellipse  AAC     Obstruct  AAN       — AX1    -7.000000  AX2     7.000000  AY1    -7.000000  AY2     7.000000
    4     SPC    55.000000 5     SPC     7.000000 6     PKP     7.000000 7     SPC     5.300000 Note that an obstruction must be placed on surface 3 to block the rays that hit the image surface before hitting the primary mirror. The obstruction
    is specified as a special aperture as shown, and is marked not drawable, so that it does not appear in the lens drawing. The performance of the system is indicated in the ray analysis below. Note that the ray-intercept curves are not smooth.
    This is characteristic of designs that use high-order aspherics, as this one does. It is likely that the curves could be smoothed out by careful weighting of the variables during optimization.


    Read more…

  • Schwarz is a catoptric (i.e. containing only mirrors) system often used as a microscope objective. The system shows the use of reflective imaging surfaces, as well as the use of a star command to enter data for a common system.


    The Schwarzschild objective is a convex-concave mirror system in which the mirrors are approximately concentric, with the long conjugate on the convex mirror side. Originally intended as a microscope objective, the design is widely used in
    a variety of two-mirror relay systems. The archetype Schwarzschild system can be designed analytically (there is a star command *schwarz that does this), but for practical use, variations are usually required. The design included here is a
    basic system designed using the *schwarz star command. The ray analysis below shows that the third-order spherical and coma aberrations are corrected, but there is high-order over-corrected spherical. This can be corrected by perturbing the
    design. Also, the obscuration can be decreased, usually at the expense of increased coma.


    Read more…

  • Xarmdemo is a system that captures light over more than a hemisphere. It shows the use of extended-aperture ray-aiming mode to model a point light source for this application. It is instructive to use OSLO’s interactive design windows to study the effects of moving the source.


    An increasing number of optical systems require ray tracing beyond 90 degrees. The nikofish.len example shows how OSLO accommodates optical systems that have a field of view greater than 90 degrees. This example shows how OSLO accommodates
    optical systems that have an aperture greater than 90 degrees. Often, such systems are found in illumination applications where high-quality image formation is not required, such as the design of luminaires or light collectors. The general
    operating condition xarm (extended aperture ray aiming mode) sets up a system of fractional aperture coordinates based on a maximum beam angle (xaba), measured relative to the positive z-axis at the
    object surface. When xarm is on, fractional coordinates are measured similarly to the tilt angles tla and tlb. A fractional coordinate of +1.0 corresponds to a ray angle equal to xaba above the z-axis, and a fractional
    coordinate of -1.0 corresponds to a ray angle equal to xaba below the z-axis. Extended aperture ray aiming is limited to tracing single rays and computing spot diagrams. There is no reference ray, so analyses such as ray fans have
    no meaning. The figure below shows a parabolic mirror used in conjunction with extended aperture ray tracing. Since the mirror is to the left of the object, it must be an alternate intersection surface. Note that the mirror has a central obstruction
    to block rays. *LENS DATA Extended aperture ray aiming SRF      RADIUS      THICKNESS   APERTURE RADIUS       GLASS SPE   NOTE 0        —        -50.000000    1.0000e-06             AIR 1    100.000000    2.0000e+03    380.000000 AKX  REFL_HATCH   *
    2        —            —        380.000000 *CONIC AND POLYNOMIAL ASPHERIC DATA SRF        CC          AD          AE          AF          AG 1      -1.000000      —          —          —          — *SURFACE TAG DATA 1     ASI   1 *APERTURES
    SRF   TYPE APERTURE RADIUS 0     SPC   1.0000e-06 1     SPC   380.000000  CHK Special Aperture Group 0: A  ATP      Ellipse  AAC     Obstruct  AAN       — AX1   -24.000000  AX2    24.000000  AY1   -24.000000  AY2    24.000000 2     SPC   380.000000
    *OPERATING CONDITIONS: GENERAL Image surface:                    2    Aperture stop:                    1 . Telecentric entrance pupil:     Off    Wide-angle ray aiming mode:     Off Aper check all GRIN ray segs:   Off    Extended-aper ray aiming mode:   On
    Plot ray-intercepts as H-tan U: Off    XARM beam angle:         150.000000 Source astigmatic dist:      —        Ray aiming mode:          Aplanatic Temperature:              20.000000    Pressure:                  1.000000



    Read more…

  • Yagcavty shows the final design of the YAG laser cavity described elsewhere, and can be used to check your results.


    This is the final design of the  YAG laser cavity . The design shown here was actually produced using an optimization procedure, in which an SCP error function was used to compute Gaussian beam operands using the tgb (trace_gaussian_beam)
    command, and the conic constant of the object surface was used to create a temporary spot-size variable. The procedure is described in detail in the Optics Reference manual. Since the beam waist size is not part of the lens data, its value
    (0.015956) is saved as a note on surface 1. With this spot size, the beam data in the cavity is as follows.

    YAGCAVTY *GAUSSIAN BEAM – YZ PLANE WAVELENGTH =   1.064000      M-SQUARED =   1.000000

    0 0.015956 0.021223 0.015956
    1 0.108798  0.011662  0.015956  -9.227868  -5.181708  -9.430708
    2 0.166700 0.021223 0.015956 -7.817510 -14.359425  -7.889794
    3 0.177267  0.014641  0.015956  -12.057320  -8.385449  -12.155806
    4  0.216670  0.001563  0.216668  0.500074  -14.837787  3.8421e+04
    5  0.216668  0.001563  0.216668  7.4375e-05  2.5833e+08  2.5833e+08

    Read more…

  • Singelem illustrates the use of the ISO 10110 drawing routines in OSLO to make element drawings suitable for fabrication.


    ISO 10110 is an international standard titled “Preparation of drawings for optical elements and systems”. It prescribes not only how optical drawings should appear, but also how constructional data and tolerances should be specified. OSLO
    uses ISO 10110 recommendations for aspheric surface forms, default tolerances, and element drawings. Currently, the element drawing routines are limited to rotationally symmetric lenses with spherical surfaces, specified according to Part
    10 of the standard, “Table representing data of a lens element”. Element drawings are prepared using the Show >> Element Drawing command. This command will bring up a dialog box as shown below.

    SINGELM1 This dialog box contains the items that need to be specified for the lens as a whole. Most of the fields are set to default values obtained
    from the lens data, ISO 10110, or the tolerance data spreadsheet. In addition to these sources of data, the address preferences (ad1-3) are used to fill in the title block on element drawings. Each
    field contains an English description of the data to be provided, and where appropriate, a numerical code (e.g. 1/ ) according to the standard. Some fields have lists that include values recommended in the standard, and these are indicated
    by buttons. At the bottom of the dialog box are three buttons. The first deletes all element data from a surface (such data is normally stored with the lens). The second and third buttons bring up a dialog box for editing the left and right
    surfaces of the lens, as shown below.

    SINGELM2 This dialog box is similar to the first, in that default values are obtained from the lens data where possible (if these data are to
    be changed, they must be changed in the appropriate source, e.g. tolerance data must be changed in the tolerance spreadsheet). The table on the following page gives a brief summary of the data meanings. For additional information, please consult
    the standard or the OSA ISO 10110 User’s Guide.

    • In the U.S., copies of standards are available fromAmerican National Standards Institute 11 West 42nd Street New York, NY 10036 tel (212) 642-4900 fax (212) 302-1286Copies of the ISO 10110 draft standard can be obtained fromNational
      Association of Photographic Manufacturers 550 Mamaroneck Avenue Harrison, NY 10528 tel (914) 698-7603 fax (914) 698-7609The “OSA User’s Guide for ISO 10110” is available fromOptical Society of America 2010 Massachusetts Avenue, NW
      Washington, DC 20036 tel (202) 223-8130 fax (202) 223-1096



    Summary of ISO 10110 drawing codes
    Property and code form Data
    Stress birefringence 0/A A = Maximum optical path difference (nm/cm)
    Bubbles & inclusions 1/NxA N = Number of bubbles A = Bubble grade number
    Inhomogeneity and striae
    A = Homogeneity class B = Striae class
    Surface form tolerance
    3/A(B/C) or 3/A(B/C) RMSx < D or 3/- RMSx < D x is either t, i, or a
    A = Maximum sagitta error B = Peak-to-valley irregularity C = Non-spherical, rotationally symmetric error D = Maximum rms tolerance t = total rms deviation from nominal surface i = rms irregularity a = rms asymmetry after removal
    of spherical and rotationally symmetric irregularityA,B,C,D in fringes (default l = 0.5461m m)
    Centering tolerance 4/s s = Surface tilt angle (minutes or seconds)
    Surface imperfection tolerance
    5/N x A; CN¢ x A¢ ; LN¢¢ x A¢¢ ; EA¢¢¢
    N = Number of allowed scratches A = Defect grade number (mm) N¢ = Number of coating blemishes A¢ = Coating blemish grade number (mm) N¢¢ = Number of long scratches (> 2mm) A¢¢ = Maximum width of scratch A¢¢¢ = Maximum extent
    of edge chips (mm)
    Laser damage threshold
    6/Hth; l ; pdg; fp; nts x np(pulsed)
    or 6/E
    th; l; nts(cw)
    Hth = Energy density threshold (J/cm2) E
    th = Power density threshold (W/cm2) l = Laser wavelength pdg = Pulse duration group f
    p = Pulse repetition frequency n
    ts = Number of test sites n
    p = Number of pulses per site


    The following is a drawing of the single element used for this example.


    Read more…

  • Movie shows the propagation of a Gaussian beam through a simple lens, and shows the use of OSLO to make animated sequences of drawings, as well as the interesting optical effects encountered when focusing low-aperture Gaussian beams.


    OSLO contains commands for making and viewing movies. Movies are sequences of graphics displays (“frames”) that are saved in a single file that can be “played back” using the Show_movie command, which is executed when you select a movie from
    the User >> Movies submenu. As an example, the file is shipped with all versions of OSLO. It illustrates Gaussian beam propagation through a system where there are two lenses within the Rayleigh range of the beam. In the
    movie, a laser emitting a collimated beam having a spot size that ranges between .02 and .5 mm is placed at the focal point of a singlet lens that is separated from another identical singlet by its focal length. To run the movie, select the
    Gaussian Beam entry on the Movies submenu, or try the command

    show_movie gbmovie fab 0 10 A typical output screen is shown below.

    GBMOVIE You can make movies yourself. There are two ways to make a movie. One, available in all versions of OSLO, is to open a movie file and save
    frames in it one by one. You can use SCP to automate the process. The commands required for this are as follows:

    Open_movie(char Filename[]) 

    Save_frame(void)  /* repeat as needed */

    Close_movie(void) For more information on movies, see the Program Reference manual.

    Read more…

  • Walker provides references for the 11 designs contained in the public\len\demo\walker. You need the book “Optical Engineering Fundamentals” by Bruce Walker to pursue these references.


    The Walker Lenses The Walker lenses are 11 designs that are described in the book “Optical Engineering Fundamentals, Second Edition”, by Bruce H. Walker, McGraw-Hill 2009. They are included to simplify data entry for users
    who wish to experiment with the designs beyond the description given in the book. Some of the sign conventions, etc. differ from those used in OSLO. Nevertheless, the book is a good introduction to Optical Engineering, and is recommended particularly
    for new users. The lenses were all evaluated or designed using OSLO Light. There have been some changes in OSLO since these lenses were evaluated, principally concerning aplanatic ray aiming, default values for aperture divisions, and improved
    accuracy in a few algorithms. Consequently, you should expect to obtain slightly different results for some of the systems when you evaluate them on an OSLO Version 6 program. The lens are to be found in the directory public\len\lib\walker\opticaleng.
    The lens file names and page references in the book are as follows:







    Simulated Petzval lens


    10X complete microscope


    1000mm efl apochromatic doublet


    Complete apochromatic telescope


    Achromatic doublet


    A model of the human eye


    Prism telescope


    Near IR apochromatic doublet


    Final design of a Petzval lens


    Hindle sphere


    Null lens


    Read more…

  • Aperatures 


    During the optimization phase of optical design, the apertures of lens elements are usually irrelevant. The curvatures and thicknesses determine the ray trajectories, while the apertures only determine whether or not rays can pass through
    the system. Accordingly, OSLO is arranged so that the beams passing through the system are specified in terms of the entrance beam diameter and field angle, or object height and numerical aperture, independently of the apertures. It is assumed
    that apertures can be assigned to the various surfaces to coincide with the actual beams transmitted by the system (this is not always true). On the other hand, during the part of optical design that involves image analysis, the role of apertures
    is different. In particular, it is important that the beams that are analyzed are physically realizable. For this to happen, the apertures of surfaces must be correctly specified, fully illuminated, and checked during ray tracing. Each ordinary
    aperture in a system can be specified as checked or unchecked. Special apertures, if specified, are always checked during evaluation routines (but not during optimization). It is usually not necessary to specify that all apertures are checked.
    Only certain controlling apertures need to be checked during ray tracing to ensure that beams are properly limited. For example, in the demotrip lens shown below, the apertures of the first and last surface control off-axis beams, and the
    aperture stop surface (surface 4) controls the on-axis beam.


    For this lens, checked apertures are only placed on surface 1 and 6. The on-axis beam diameter is determined by the entrance beam diameter, not the aperture stop. In such a case, the numerical aperture of the system is determined by the numerical aperture
    of the illuminating beam, and the paraxial constants correctly describe the system. Suppose, however, that the negative element is square instead of circular. Then there is a problem, because the illuminating beam does not fill the corners
    of the square aperture, which means that evaluation routines such as spot diagrams will produce incorrect results.


    In such a case, it is necessary to increase the size of the illuminating beam and put a checked square aperture on the stop surface, as shown below. The system is then said to have on-axis vignetting.


    Now, the aperture is fully illuminated, so the spot diagram evaluation will be correct. However, the extent of the meridional section of the on-axis beam is no longer determined by the entrance beam radius, which means that the numerical aperture as reported
    by the paraxial constants command will not be correct (actually, it is not well-established what is meant by the numerical aperture under these circumstances). The spot diagram routine itself can be very useful in setting up systems that have
    unusual apertures. The general technique is to compute a spot diagram with a fine grid size, and observe the spot diagram not on the image plane, but on a pupil plane. This can be done by either applying a large focus shift to a normal spot
    diagram, or alternately by resetting the image surface number using the ims command. For example, consider the demotrip lens with a square aperture stop, as shown above:

    • 1. Open the demotrip.len file. Open the surface data spreadsheet, then delete the third element by selecting rows 5 and 6 and using the cut (scissors) tool on the spreadsheet toolbar. Insert a new surface in front of the image surface,
      make it the aperture stop, and change the thickness of surface 4 to 1.0. Now put a square checked aperture on the new surface: Select Special Aperture Data from the pop-up list that appears when you press the Aperture options button,
      enter 1 Special Aperture, and fill in the spreadsheet as shown below.


      2. Change the Entrance beam radius to 9.0 and the Aperture radius of the new surface to 7.5. Remove the Aperture check from surface 1. The surface data spreadsheet should look like the following.


      3. Click on the F6 toolbar icon and set the Wavefront Ref Sph position to infinity. 4. Next, open the Update >> Operating Conditions >> Lens Drawings spreadsheet, change the Draw aperture stop option to On, set the number of field points to
      1, and the number of rays from that field point to 21. Then close the spreadsheet. The Autodraw window should appear as follows. 4. Now, compute a spot diagram, setting the aperture divisions to 41.05. Then use Calculate >> Display
      Spot Diagram to plot the spot diagram with a scale of 5.5, as follows.


    The spot diagram shows that the aperture is correctly filled, so that a square grid of rays is transmitted through the system. (If you change the entrance beam radius back to 6.25, its original value, you will see that the beam becomes circular, indicating
    that the aperture is not filled.) There is a small residual problem in the distribution of rays, in that the ray spacing is not uniform across the pupil. The reason for this is the pupil aberration introduced between the entrance pupil and
    the aperture stop. OSLO has a special operating condition calledwarm, which causes rays to be aimed at the aperture stop rather than the entrance pupil.

    1. 5. Open the general operating conditions spreadsheet (toolbar icon F6) and set Wide angle ray aiming mode (warm) to On. Then double click on the spot diagram window to update the display with the current lens data. The result is shown


    Now the ray pattern is square, as it should be, when pupil aberrations are eliminated. The warm operating condition was originally introduced in OSLO to solve some problems connected with tracing rays through wide angle systems, as its name suggests.
    However, it has a broader application, as shown above. The behavior of real ray tracing routines is changed when warm is on, in two ways. First, as shown above, rays are aimed at points in the reference surface rather than the entrance pupil.
    The fractional aperture coordinates used to describe a ray are normalized to the reference surface radius rather than the entrance beam radius. Second, for systems where the object is at infinity (defined as a distance equal or greater than
    1.0e8), the fractional object coordinate is an angle, relative to the object field angle given in the surface data spreadsheet. Thus, for example, if the field angle is set to 45 degrees, then a fractional object coordinate of 1.0 equals 45
    degrees, a fractional object coordinate of 2.0 equals 90 degrees, and a fractional object coordinate of 3.0 equals 135 degrees. This convention allows OSLO to handle systems covering semi-fields of greater than 90 degrees.

    Read more…

  • Doublet/Meniscus solution


    The Melles Griot optics catalog contains several combinations of doublets and meniscus singlets for high-speed (i.e., large N.A.) focusing systems. One of these, the combination of 01LAO126 followed by a meniscus singlet 01LAM126, has approximately
    the correct paraxial properties and warrants evaluation.

    1. Click on File >> New. Enter the file name lasrcom2, and select catalog lens.
    2. Since the exact part number is known, click on the part name cell and type 01LAO126, then press ENTER. This part appears in the window as shown. Click OK to close the database and go to the surface data spreadsheet.


    1. Insert the meniscus singlet 01LAM126 behind the doublet. To do this, first set the thickness of surface 3, which was entered with an axial ray height solve automatically by the program, to 1.0 by typing the number into the thickness field.
      Then click on the row button for surface 4 to select the row, and execute Edit >> Insert Catalog Lens. When the catalog database window appears, enter the part number 01LAM126 and close the spreadsheet.
    2. Delete the extra wavelengths as in the previous example and set the primary wavelength to 0.6328 micrometers. Set the entrance beam radius to 15, and turn on the Autodraw window. Add a solve to surface 5 by clicking on the thickness options
      button and selecting solves, axial ray height (value = 0). This time, use the Autofocus command to find the best focus by clicking on the SHIFT+F12  toolbar icon. The surface data spreadsheet should now appear as follows:

    LASCOM09 The Autodraw window appears as shown:


    1. To analyze this new lens system, double-click on the graphics window. The geometric spot size is 0.001790, good enough to meet the specification! Note also the diffraction limit of 0.001527 mm. Whenever the geometric spot size approaches
      or falls below the diffraction limit, diffraction effects are important. In that case, the geometrical spot diagram becomes a poor model for the physical lens performance.LASCOM11
    2. To check the actual diffraction image, click Calculate >> Point Spread function. In the dialog box, click Plot x and y scans, then dismiss the box by clicking OK . The result is shown in the following figure. The first zero of the
      pattern appears at about 0.0013, in reasonable agreement with the geometrical analysis.

    LASCOM12 Before concluding the design task, it is worthwhile to investigate the spacing between the lenses. The lens is being used at a different
    wavelength than it was designed for (in the Melles Griot optics catalog), so a better spacing solution may exist.

    1. To study the spacing, set up an interactive design window to look at the final solution. The task is to set up the window to show the on-axis ray-intercept curves as surface 3 thickness varies over a range from 0 to 40 mm and as surface
      6 thickness (the focus shift from the paraxial image plane) varies from -0.1 to 0 mm. First, set surface 3 thickness to 20 mm (direct), and set th 6 to 0.0, as shown in the following spreadsheet


    1. Click OK  to close the spreadsheet and execute Optimize >> Interactive Design. Set the values in the spreadsheet to be the same as those shown. If you have a 486/33 or faster computer with a graphics accelerator, use drag processing.
      For slower computers, drag processing can be distracting.


    1. Once the data is set up in the interactive design spreadsheet, click on OK  to close it. You see two graphic windows, plus a slider window, as follows.


    The ray-intercept curves show the displacement of rays from the reference point (here, the optical axis) as a function of the fractional aperture coordinate (FY 1 corresponds to the edge of the exit pupil). Horizontal lines along the axis correspond to a perfect optical system. Tilting corresponds to a focus shift, and curvature to aberrations. Ray intercept curves are widely used in optical design because they provide a great deal of information with minimum computational effort. 4. By dragging the sliders back and forth, you are able to confirm the existence of two solutions, one with a spacing of about 5 mm, and the other with a spacing of about 25 mm. To check the spot diagram corresponding to any lens configuration,
    double-click on the graphics window containing the spot diagram.

    Read more…

  • Ray-based SCP optimization 


    At this point, the higher-order aberrations have been significantly reduced, and the geometrical spot size, while not good enough to meet the design requirement, is much better. There is a problem in that the fifth and seventh-order aberrations
    are both overcorrected (positive). However, to finish the design from this point, it is better to use exact rays, which provide more flexibility in balancing all orders of aberration. The *opsetray command can be used to set up a simple ray-based
    error function suitable for this problem. You can change the balance between the fifth and seventh-order aberrations by changing the axial ray height between surfaces 2 and 3. Surface 2 introduces undercorrected aberration, and surface 3 introduces
    overcorrected aberration. The relative amount of aberration is proportional to the fifth power of the ray height for fifth-order aberration, and seventh power of the ray height for seventh-order aberration. If you increase the space between
    the lenses, so that the ray height drops on the overcorrecting surface, there will be less overcorrected seventh order than fifth, which is what is needed. For a starting system, choose radii of 50, 0, and -50, and add thickness 2 as a variable,
    so now you have a total of 4 variables.

    1. Modify lasrdblt.len according to the above paragraph, and execute the *opsetray command by clicking Optimize >> SCP Operands Setup >> Rays. The output should be as follows.

    *opsetray (operand numbers in parentheses) Paraxial data

    — (1) -0.250000 (2) 6.0000e-05 (3) 9.6967e-07 (4)

    On-axis      —     YFS(10)

    0.700000 0.225818 (11) -14.364553 (12) — (13)
    1.000000 0.898561 (14) -75.601888 (15) — (16)


    Edge of field 6.0000e-05 YC(20) -9.5362e-11 YFS(21) -4.1666e-11 XFS(22)
    -0.700000 0.225817 (24) -14.364484 (25) — (26)
    0.700000 -0.225819 (27) -14.364621 (28) — (29)
    FX DY DX
    1.000000 -8.3439e-07 (30) 0.898561 (31)

    Other data 60.000000 EFL(0) -9.6934e-07 COMA(5) -3.6592e-18 DIST(6)

    1. To form the error function, delete the aberration operands, then use the OPD of the on-axis rays through the 0.7 and 1.0 aperture zones (OCM12 and OCM15). The OPD is proportional to the area under the ray-intercept curves, so minimizing
      these quantities should maximize the on-axis performance. Add a row to the spreadsheet using SHIFT+SPACE , as before, and enter the operands as shown in the following spreadsheet. Close the spreadsheet.


    1. After you have entered the data, save the lens under a new name (e.g. lasrdb2.len), then use the iterate toolbar icon (SHIFT+F9 ) to optimize the lens. After two cycles (20 iterations), the optimization error function should be
      essentially zero.


    0 0.004276 54.415006
    10 5.4530e-08 0.237275 5.871821


    0 5.4530e-08 0.237275
    10 2.3317e-12 1.5880e-11 99.819983
    1. To see the present state of correction of the system, enter the command *opsetabr in the command line. The output should be as follows.

    *opsetabr (operand numbers in parentheses) Paraxial data

    PY(1) PU(2) PYC(3) PUC(4)
    -0.250000 6.0000e-05 1.2608e-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.007374 9.1427e-07 -1.3687e-11 -2.0379e-12 1.4358e-17

    Fifth-order Seidel

    SA5(21) CMA5(22) AST5(23) PTZ5(24) DIS5(25)
    0.028142 4.5968e-07 0.028142 8.7698e-24 1.1985e-29

    Other data 60.000000 EFL(0)     -0.010215 SA7(31)    0.010553 TotalSA(41) Note that the third, fifth, and seventh-order aberrations have alternating signs, as desired. This is what a lens designer would call a solution to the design,
    because it works according to known principles. The spreadsheet and Autodraw window should appear as follows:


    AIRDB08 It is perhaps worth pointing out that although the above is a solution to the design task, it is not the best that could be obtained. In
    particular, the error function, which contains only two terms, could be expanded by adding another ray, and the image could be allowed to shift from the paraxial focus to obtain slightly better performance. For the present exercise, however,
    the present solution is quite adequate.

    1. To compare the design with the catalog lens solution obtained from in the previous section, use the on-axis spot diagram (Calculate >> Display Spot Diagram). The plot indicates that the geometrical spot size is now 0.002, a significant
      improvement over the previous design, and approximately equal to the diffraction limit.


    1. Click Calculate >> Ray Analysis, and select Plot ray intercepts in the dialog box. The resulting ray intercept curves show that the image is at the paraxial focus, with undercorrected third-order aberration becoming important in
      the .2-.5 zone, overcorrected fifth-order coming in the .6-.8 zone, and undercorrected seventh-order taking over in the .9-1.0 zone.


    1. Click Calculate >> Point Spread function, and select Plot x and y scans and Monochromatic from the dialog box. Close the box by clicking OK . The graphics window should be similar to the following.

    AIRDB11 The above indicates that the design is now very good, with a Strehl definition of about 94%. In comparing it to the result from the preceding
    section, however, it should be remembered that this is a “paper” design using very expensive glass that would be hard to manufacture. The earlier one can simply be ordered from a catalog. The figure below shows an interferogram of the above
    design, made by computing a spot diagram with an aperture division factor of 200, and using the *interf star command in OSLO. The sensitivity of the interferometer was set to 0.05 waves, as indicated.


    Read more…

  • Lens entry – right-angle prism 


    Many optical systems contain reflecting prisms and mirrors for redirecting beams or changing the orientation of images. Plane mirrors generally have no effect on image quality, and reflecting prisms are usually equivalent to blocks of glass.
    Nevertheless, for mechanical and tolerancing reasons it is often necessary to include the effects of tilted and decentered surfaces in the design data. This section gives an example of how to add a right-angle prism and turning mirror to the
    doublet starting design set up in the preceding section. The example is primarily tutorial, not optical. The prism will have an aperture of 15 (note that apertures in OSLO are specified by their radii, not diameters), and will be located 5
    mm to the right of the last lens surface.

    1. Start from the doublet that you just entered. Change the lens identifier to “Right-angle prism/mirror example”, then save the lens with the name prismirr.len. You will want to open the lasrdblt.len file later for optimization, so saving
      the current system with a different name will preserve the earlier system.
    2. Before entering any surface data, click Update >> Operating conditions >> Lens drawings, and modify the spreadsheet so that it looks like the following. The items to be changed are Image space rays and Number of field points
      for ray fans. These changes will make the Autodraw window more useful.


    1. Close the Lens drawing operating conditions spreadsheet and return to the surface data spreadsheet. Drag the bottom of the window frame down until there is room for four more rows, then move the cursor to the row button for surface 5.
      Now press SHIFT+SPACE  four times to insert the additional rows (this is a shortcut to using the mouse), or click row button 5 and click the Insert Before toolbar icon 4 times. Remove the axial ray solve on surface 4 by typing 5 into
      the thickness SmartCell.
    2. Next you will insert the prism. Enter SF15 for the glass on surface 5. Click on the Special button for surface 6, select Surface Control >> General, and turn on TIR only. This means that rays will be reflected if they undergo total
      internal reflection and will fail otherwise. Note that for a TIR surface, the refractive index of the surface is the one for the medium into which the ray goes if it fails the TIR condition. The program knows that if the ray
      is totally internally reflected, the refractive index is the same as that in the incident medium.
    3. Set the apertures of surfaces 5 – 7 to 15. Set the thickness of surface 5 to 15. The Autodraw window should now look as follows:


    1. Surface 6 will be the reflecting face of the prism, tilted at 45 degrees. Click the Special button and select the Coordinates item on the pop-up list. In the spreadsheet, enter 45 for TLA, and change the Tilt and bend button to Yes.
    2. Enter -15 for the thickness of surface 6. Thicknesses are negative after an odd number of reflections, as discussed previously. Enter 15*sqrt(2) for the aperture. (Note that It is possible to use standard math functions such as sqrt(2)
      in numeric input fields.)
    3. The center of the turning mirror is to be 10mm below the prism. Set th 7 to -10. At this point, the Autodraw window and spreadsheet should appear as follows.



    1. Click Show >> Surface Data, then select All special data from the options list. The following should appear in the Text window.

    *TILT/DECENTER DATA 6     DT    1         DCX       —       DCY       —       DCZ       — BEN             TLA    45.000000   TLB       —       TLC       — *SURFACE TAG DATA 6     TIR   1 The next step will be to add a turning mirror that reflects
    the beam so that it continues from left to right.

    1. Enter data for the turning mirror as shown below. Use an axial ray height solve to locate the final image surface, in the same manner as the laser doublet example. The mirror is entered using the Reflect (Hatch) item on the Glass Options
      list. This has no optical significance, but causes the back side of the mirror to be hatched on the drawing, as shown. Set the aperture to 12mm. Select Special, Coordinates to set the tilt to -45 degrees, and set the bend flag. After
      you have entered all the data, click the Toolbar Save icon (F3) to save the lens.


    PRISMIR5 *TILT/DECENTER DATA 6     DT    1         DCX       —       DCY       —       DCZ       — BEN             TLA    45.000000   TLB       —       TLC       —
    8     DT    1         DCX       —       DCY       —       DCZ       — BEN             TLA   -45.000000   TLB       —       TLC       — *SURFACE TAG DATA 6     TIR   1 Note that an axial ray height solve is used on surface 8, even though
    the system has tilted elements. In the case where only tilts of plane surfaces are used, and the bend flag is used to propagate the optical axis, paraxial optics remains valid. It is interesting to investigate the TIR condition vs. the refractive
    index of the prism. For this purpose, use Update >> Operating Conditions >> Lens Drawings to set the number of default rays traced to 11. Then change the glass used for the prism to one with a lower index, say BK7. Note that several
    rays in the lower aperture now fail because they are not totally internally reflected.


    Read more…

  • Laser cavity design 


    The Gaussian beam spreadsheet provides an easy way to interactively design systems that work with Gaussian beams. We will consider the design of a cavity for a hypothetical Nd:YAG laser. The task is to design a cavity to support single transverse
    mode oscillation in a YAG rod. The YAG rod is 0.5mm diameter and 5mm long. The cavity consists of two plane mirrors, and a focusing lens, Melles Griot part number 01LQF005. The cavity is to work in a near hemispherical geometry, as shown in
    the figure below. The exact length of the cavity is to be adjusted so that the spot size of the TEM00 mode is 1/3 the diameter of the laser rod.


    1. To enter the system, use File >> New. Assign the file name yagcav1.len, and select catalog lens. Click 4  to dismiss the dialog box. When the Catalog database window appears, using the MG_POS catalog, enter the part number 01LQF005,
      then click 4  to go to the lens spreadsheet.
    1. The lens will originally be entered in the system backwards. To reverse it, click Row button 1 to select the element, then use the Reverse icon on the spreadsheet toolbar.
    2. After you have entered the lens, enter the YAG rod by inserting two surfaces in front of the lens (a quick way to do this is to click on the surface 1 row button and then press SHIFT+SPACEBAR twice). Then enter the rod data (Thickness
      5.0, aperture 0.25). Set Thickness 2 to .5 and the entrance beam radius to .1. To enter the glass, first make sure that the wavelength is set to 1.064 micrometers, then click on the options button in the glass field, choose Direct
      from the pop-up menu, enter the name Nd-YAG, then enter the index 1.82.
    3. Set the object distance to 5mm, and the image distance TH[4] to 0.5mm. The object surface and image surface are to be mirrors, but it is not necessary to enter them as reflecting surfaces since they are just points in space where we want
      the Gaussian beam wavefront to have a certain radius of curvature. Similarly, the object numerical aperture, or equivalently the entrance beam radius, need not be set at this time, since the value will be determined using the Gaussian
      beam spreadsheet. When all the data has been entered, the Surface data spreadsheet should appear as follows:

    YAGCAV3 The next task is to determine the TEM00  mode of the cavity. To do this, use Calculate >> Gaussian Beam >> Interactive
    ABCD Analysis. The method is to set the radius of curvature of the wavefront on the object surface to the radius of curvature of the mirror, then adjust the spot size on the object surface (the variable cell) until the radius of curvature
    of the wavefront on the image surface (the watch cell) is equal to the radius of curvature of the other mirror. In any stable curved mirror cavity, any wavefront can be replaced by a mirror of the same radius of curvature without
    changing the transverse mode structure, since the wavefronts of a Gaussian beam are always spherical. If you are used to the conventions used in the laser literature, you should be especially careful about the sign conventions used in OSLO.
    Particularly note that OSLO takes the radius of curvature of a spherical wavefront to be positive when the center of curvature is to the right.

    1. After the spreadsheet is open, enter 0.0 for the radius of curvature of the wavefront on the object surface, since the mirror is plane. Enter a trial value for the spot size, 0.1. Then observe the value of the final radius of curvature
      in the watch cell while changing the value in the variable cell.

    YAGCAV4 The following table shows a succession of values entered.


    Variable Cell Watch Cell
    .1 11.012173
    .01 -902.043228
    .02 1.2916e04
    .015 -1.2744e03
    .0175 -2.2587e03
    .019 -6.4480e03
    .0195 -2.3166e04
    .0197 2.4960e05


    At this point, the value is close enough to state that we have found the TEM00 mode. Next, click the Print beam data in text window button. Instead of varying the spot size, you could vary the lens data. For example, try varying
    the object thickness by typing th 0 5.1 in the command line. You will see that the Gaussian beam spreadsheet is updated automatically to use the new data.

    YAGCAV5 The spot size on the end of the rod is 0.1346mm, whereas the design target is 0.5/3 = 0.16667mm. The way to increase it is to move the
    mirrors a little farther apart (i.e. move towards the edge of the stable region). Changing the object distance to 5.1mm changes the spot size on the rod to about .205, and the spot size on the object surface to .013mm. If we set the object
    distance to 5.07 we find the spot size on the object surface to be .016, and the spot size on the end of the rod to be .1662, close enough for now. The final touch up could be to move the image surface mirror by the waist distance. Having
    determined the correct cavity spacing, we can plot the beam profile using the Plot beam spot size button in the spreadsheet. This produces an anamorphic picture of the beam, in which the z scale is the overall length of the system,
    and the y scale is the maximum spot size. In effect, it is a plot of true paraxial rays. On this scale, the surfaces all appear to be straight lines.

    YAGCAV2 Printing the beam data to the text window produces the following data for the final system: *GAUSSIAN BEAM – YZ PLANE WAVELENGTH =   1.064000      M-SQUARED =   1.000000
    SRF   SPOT SIZE  DIVERGENCE  WAIST SIZE  WAIST DIST  INC RADIUS  RFR RADIUS 0     0.016000    0.021164    0.016000  1.0000e-06  5.7134e+05  5.7134e+05 1     0.016000    0.021164    0.016000      —          —          — 2     0.108506    0.011630    0.016000   -9.227400   -5.182691   -9.432497
    3     0.166244    0.021164    0.016000   -7.817253  -14.360419   -7.890340 4     0.176782    0.014601    0.016000  -12.056947   -8.385946  -12.156528 5     0.216075    0.001567    0.216073    0.559750  -14.838308  3.3950e+04

    Read more…

  • Tolerancing 


    The air space in the previous design can be expected to be critical, since it controls the ray height on the overcorrecting surface. To get an idea of the tolerance on thickness 2, you can use the User-defined tolerance routine in OSLO. User-defined
    tolerancing uses whatever current error function is defined. In OSLO PRO and OSLO SIX, you can also set up the error function using the normal internally defined operands.OSLO PRO and OSLO SIX have additional routines for Change-table tolerancing
    and MTF/Wavefront tolerancing. The lens being toleranced here is the lasrdb2 solution, not the lasrdb3 solution (although the two are similar).

    1. To run a tolerance analysis on the lens, use a copy of the lens, not the original file. Change all the variables back to direct specification except the thickness of the image surface, which will be used as a compensator during tolerancing.
    2. Click Options >> Update Tolerance Data to open the tolerance data spreadsheet. The only tolerance of present interest is the second thickness. The ISO 10110 default value for this thickness is 0.2 mm, which is much too loose for
      the present system. Change the tolerance to 0.05 mm, and close the spreadsheet.


    1. Click Options >> User-Defined Tolerancing >> Setup operands. The *opsettol star command will be executed, and the operands spreadsheet will open. For the tolerance operand, enter ocm2, and enter the name pkval opd,
      as shown.


    1. To compute the effect of a .05 mm tolerance on the peak-to-valley opd, click Options >> User-Defined Tolerancing >> Sensitivity. An options list will pop up, as shown below. Select Air space, and click OK. After a short time,
      the text window should contain an analysis similar to the following.


    STATISTICAL SUMMARY UNCOMPENSATED    COMPENSATED WORST CASE CHANGE        1.292483        0.308596 STANDARD DEVIATION RSS                  1.292483        0.308596 UNIFORM              0.746216        0.178168 GAUSSIAN             0.568451        0.135724
    COMPENSATOR STATISTICS COMP           MEAN        STD DEV        MAX TH     5     0.000183     0.029274     0.029457

    1. The analysis shows the effects of a .05 tolerance on the merit function, which represents the peak-to-valley opd. You may be interested in the tolerance that can be allowed to produce a given change, say .15, which would bring the system
      to (approximately) the diffraction limit. Click Options >> User-Defined Tolerancing >> Inverse Sensitivity. Select Air Space, then enter .15 in response to the prompt for allowed change. The text window will then show that
      the allowed tolerance is about 16 microns if the focus is not adjusted, or 34 microns if the focus is used to compensate for a spacing error.


    Read more…

Related Articles