OSLO is a comprehensive optical design program with the depth and features needed to develop state-of-the-art optical products. OSLO achieves great flexibility through the combination of extensive optical design capability and a powerful language that allows you to merge new commands with the main program.
OSLO SIX is the flagship version of OSLO. Even complicated systems, such as those containing arrays of lenses or surfaces that have no symmetry, can be accommodated. Sophisticated evaluation routines are included for analyzing the effects of partial coherence in microlithography or vector diffraction effects in microscopy. Non-sequential ray tracing enables the design of systems containing complex prisms and non-imaging elements. OSLO SIX contains ASA, an advanced global optimization method, and the ability to design systems using eikonal functions.
OSLO PRO contains an especially strong optimization capability, with an internal error function generator that allows optimization to be carried out with the highest efficiency. OSLO PRO contains more than 4000 catalog and patent lenses, including the Optics Toolbox, Cox, and Warren Smith starting design libraries. You can import files from GENII PLUS and other design programs, as well as export drawing data to CAD software.
OSLO Light was developed for engineers in optics, lasers, and electro-optics who need to design optical systems or carry out optical evaluation on an occasional basis. OSLO Light is the lowest-cost full-featured program on the market today. It includes not only optimization and tolerancing, but also advanced Gaussian beam propagation, fiber-coupling calculations, and random ray tracing routines that can be used to analyze illumination systems.
The following table shows the principal features of each level of OSLO. Because of the large number of commands and the unique operation of OSLO, it is not possible to completely describe the program in tabular form. If you have questions about a specific capability, please contact Sinclair Optics.
3D tilts/decenters on all surfaces y y y Tilt and bend surfaces y y y Return coordinates to previous surface y y y Global coordinate surface specification y Refracting, reflecting, TIR only y y y Perfect lens y y y Alternate surface intersection y y y Test plate libraries y y y Test plate analysis and ranking y y
Conic (parabolic, elliptical, hyperbolic) y y y Cylindrical Surfaces y y y Toroidal y y y Polynomial asphere even orders y y y Symmetric polynomial asphere all orders y y y Asymmetric polynomial asphere all orders y Toroidal asphere y y y Rotational spline, unlimited points y y y Fresnel (plane, spherical, conic) y y y Axicon y y y ISO 10110 asphere y y y ISO 10110 cone y y y ISO 10110 toroidal asphere y ISO 10110 biconic y ISO 10110 asymmetric cone y Rotational Zernike asphere y y y General XY Zernike asphere y General XY asphere y
Linear grating (any substrate) y y y Two-point hologram y y y Rotational power-series diffractive/binary y y y General XY power-series diffractive/binary y Rotational Zernike diffractive y y y General XY Zernike diffractive y Diffractive axicon (rotational symmetry) y y y Diffractive axicon (asymmetric) y
Perfect lens y y y Eikonal (point, angle, pt-angle, angle-pt) y
User Defined gradient surface y User Defined sag surface y User Defined diffractive surface y User Defined eikonal surface (CCL or DLL) y Arbitrary User Defined Ray Trace Surface y
Lens array (uniformly spaced elements) y Lens array (arbitrarily spaced elements) y
Axial gradient y y y Radial gradient y y y Paraxial ray trace (axial and radial gradients) y y y Tilt and decenter of the gradient coordinate system y Wood lens y y y SELFOC lens y y y Gradium lens y y y Axial & elliptical gradient y Axial & sinusoidal gradient y Axial & tapered gradient y Spherical gradient y Maxwells fisheye y Luneburg lens y User-defined gradient (CCL or DLL) y
Multi-layer dielectric and metallic coatings y Evaluate transmittance, reflectance, phase, and polarization at any coated surface y Variable layer thickness coatings (3 models) y Transmittance and reflectance vs. angle or wavelength y Evaluate overall system transmittance y Quarter-wave plates y Half-wave plates y Linear Polarizers y Circular Polarizers y Arbitrary ideal polarizing elements y
Arbitrary non-sequential groups y Multiple non-sequential groups within a system y Arrays of non-sequential groups y Independently specify reference and ordinary ray action y Specify ray action based on direction y Ray action based on number of times a ray strikes a surface y
Environmental temperature, pressure y y y Optional aperture checking y y y English or metric units y y y Surface or element view of data y y y Reference ray defined on any surface y y y Transverse or angular aberrations y y y Optional Autodraw lens input y y y Zoom data on lens spreadsheet y y Full-precision Spreadsheet buffer y y y
Direct curvature or radius of curvature y y y Nearest test glass y y y Axial or chief ray angle solve y y y Axial or chief ray angle of incidence solve y y y Axial or chief ray aplanatic solve y y y Wassermann-Wolf Solve y Positive or negative pickup y y y
Direct thickness entry y y y Axial or chief ray height solve y y y Positive or negative thickness pickup y y y Positive or negative length (zoom) pickup y y y Edge thickness solve y y y
Checked or unchecked in ray trace y y y
Paraxial solve y y y
Pickup from previous surface y y y
Elliptical, triangular, quadrangular y y y
Transmit, obstruct, or hole y y y
Light pipe y y y
Set aperture radii to provide defined vignetting
at full field y y
Arbitrary position and angle on surface y y y
Number of apertures per surface 2 2 no
limit
Direct index specification y y y Sellmeier, Laurent, Conrady index models y y y Catalog (Schott, Ohara, Corning, Hoya) y y y Glass properties (dn/dT, density, TCE, etc.) y y y Internal transmittance data for Schott, Ohara, and Corning glasses y y y Access to superceded catalog glasses y y y Miscellaneous IR & UV materials y y y Private & shared catalogs y y y Reflector (mirror or TIR) y y y Model (variable) glass y y y Nearest catalog glass y y y Add/delete glass to/from catalog y y y
Zoom Lens system design y y Athermal design y y Systems containing beamsplitters and multiple beam paths y y Calculation of zoom lens optical properties for each configuration y y Comparative plots of zoom lens in each configuration y y
Curvatures y y Thicknesses y y Refractive indices y y Aspheric and special data coefficients (tilts, decenters, GRINS, diffractive surfaces, etc.) y y Apertures y y Wavelengths y y Ray aiming mode y y Reference surfaces (stop, image, etc.) y y Aperture and field of view y y Skip surfaces in different configurations y y
Entrance beam radius y y y Object numerical aperture y y y Image numerical aperture y y y Working f-number y y y Axial ray slope y y y Gaussian apodization (circular or elliptical) y y y Vignetting y y y
Field angle y y y Object height y y y Image height y y y
Object distance y y y Image distance y y y Object to principal plane y y y Principal plane to image y y y Magnification y y y
Direct wavelength/weight specification y y y Table of common wavelengths y y y User-selected current wavelength y y y Automatic wavelength/weight generation y y
Reference Ray Aiming y y y Wide Angle Ray Aiming y y y Entrance Pupil Ray Aiming y y y Rim Ray Aiming y y y Extended Aperture Ray Aiming y y y
Aplanatic y y y Paraxial y y y
Astigmatic source y y y Telecentric source y y y Extended source y y y Polarized source y ProMetric data files y y y Independent X and Y Gaussian distributions y y y
Paraxial constants and ray trace (YZ and XZ) y y y First-order chromatic aberrations y y y Seidel 3rd-order image & pupil aberrations y y y 5th-order aberrations (Seidel & Buchdahl) y y y 7th-order spherical aberration y y y Aberrations computed in any color y y y Surface contributions or aberration sums y y y Transverse, angular, or unconverted output y y y Fifth order intrinsic and induced aberrations y y y OSC calculation y y y Exact ray NAs and F-Numbers y y y Enhanced Seidel Wavefront Aberrations y y y
User-defined current object point y y y Current object point from field point table y y Single ray trace, local or global coordinates y y y Print X and Y ray-intercept and OPD fans y y y H-tan U or fractional coord ray intercepts y y y Plot ray-intercepts, OPD fans, field sags, distortion, lateral color, longitudinal fans y y y Wide angle ray trace mode y y y Extended aperture ray trace mode y y y Polarization ray trace y DOE efficiency (scalar model) y
Focal system analysis y y y Afocal system analysis y y y
Save spot diagram conditions with lens y y y User-selected grid size (unlimited) y y y Recipolar Spot Diagram y y y Independent YZ, XZ Gaussian apodization y y y Monochromatic or polychromatic y y y Sine condition used for finite conjugates y y y Print, plot spot diagram and data y y y Image centroid or chief ray reference point y y y Find best focus for spot size or wavefront y y y Equal image space ray increments y
Wavefront statistics (peak-valley, rms) y y y Exact Strehl ratio including apodization y y y Zernike analysis of wavefront (36 terms) y y y Pupil map or perspective plot of wavefront y y y
Single point calculation of PSF y y y Meridional or sagittal scan of PSF/LSF y y y Perspective plot of PSF y y y Amplitude, phase, intensity output y y y FFT or direct integration y y y Choice of Kirchhoff or Rayleigh-Sommerfeld integral y Vector diffraction calculation y DOE efficiency used in calculations y Contour plot of PSF in XY, YZ, or XZ plane y
Geometrical encircled/ensquared energy y y y Diffraction encircled/ensquared energy y y y 1/e2 values for X and Y directions y y y FWHM values for X and Y directions y y y Geometrical knife-edge scan y y y Diffraction knife-edge scan y y y
Through-frequency or through-focus y y y DOE efficiency used in calculations y Choice of FFT or convolution calculation y y MTF for square wave input y y MTF vs. object height y y
Spreadsheet input with recalculation of spot size, waist size & distance, wavefront radius, far-field divergence, Rayleigh range y y y Times diffraction limit (M2) output y y y Output for all surfaces y y y Independent YZ and XZ analysis y y y Astigmatic (diode) sources y y y Plot beam spot size y y y Forward and backward beam calculation (ABCD law) y y y Astigmatic trace (general astigmatism) y y y
Autofocus for minimum spot size y y y Damped least squares with CCL operands y y y Damped least squares with DLL operands y Damped least squares with internally compiled operands y y Powell's method y Simplex method y Global explorer y Adaptive simulated annealing y
Surface number y y y Configuration y y Radii, thicknesses, apertures, glasses, tilts, decenters, special data coefficients y y y
Object coordinates (y, x, z) y y Reference surface coordinates (y, x) y y Fractional vignetting (min and max in y, x) y y Field point weight y y
Type (ordinary or reference) y y Pupil or reference surface coordinates y y Weight y y
Number of components in definition 2 2 2 Mode (minimize or constraint) y y Weight y y y Name y y y
Aberration coefficients y y y Exact ray data y y y Tolerances y y y User-defined y y y
Field points by quadrature or user defined y y Rays by quadrature or square grid pattern y y Quadrature for both symmetric and asymmetric systems y y Edge thickness y y Exact-ray distortion y y Chromatic operands by ray trace or D-d y y Append to existing error function y y GENII error function y y y
Lens data (radii, thicknesses, etc.) y y Paraxial ray data y y Aberrations (chromatic, third, fifth order) y y Exact ray coordinates, angles, path length y y Reference ray derivatives, field sags y y Ray displacements, OPD, D-d y y Previous operand in list y y Average or rms value of component group y y Spot size y y Wavefront y y Zernike Wavefront Coefficients y MTF y Polarization Operands y Multi-layer thickness, refractive index, and extinction coefficients y
SCP Macro language operands y y y CCL compiled macro language operands y y y External dynamic link library operands y
Min and max boundary values on variables y y y Adaptive or user defined damping y y y Derivative increment y y y Upper, lower limit and scaling of damping y y Solution and constraint tolerance y y y Field, aperture, and chromatic weight functions y
Adaptive Simulated Annealing y Auto save the current best ASA solution y Evaluate the progress of ASA optimization while ASA performs background search (NT and Unix) y ASA cooling rate and termination level y
Tolerance grades (A, B, C, D) y y y Tolerance grade table y y y Tolerance display thresholds y
Radius of curvature y y y Conic Constant y y y Surface form error y y y Irregularity surface form y y y Thickness y y y Axial Surface Shift y y y Refractive index y y y X and Y surface tilt y y y X and Y surface decenter y y y Default tolerances according to ISO 10110 y y y
X and Y decentration y y y X and Y tilt about free aperture y y y X and Y tilt about center of curvature y y y
User defined groups y y y Group axial shift y y y Group decenter y y y Group tilt (x and y) about arbitrary point y y y
User-defined tolerancing error function y y y Direct or inverse sensitivity y y y RSS, Uniform, or Gaussian statistics y y y
Transverse spherical y y Axial and field D-d y y Meridional and central coma y y Axial and field sags y y Axial and field RMS OPD y y Best focus, back focus, focal length y y Distortion, transverse distortion, shear y y Magnification y y Direct or equal RSS contribution y y
Hopkins-Tiziani method y Direct or inverse sensitivity y Perturbation coefficients or direct output y Tolerancing over all field points y Tolerancing over all configurations y Conpensators over all configurations y Simultaneouse T&S tolerancing y Statistical performance estimate y
User defined error function y Statistics available for individual operands y Specify number of systems to evaluate y Select default, end-point, RSS, or Gaussian distributions y
Combined database (> 3000 lenses) y y y Edmund Scientific y y y JML Optics y y y Melles Griot y y y Newport/Klinger y y y OptoSigma y y y Spindler & Hoyer y y y U.S. Precision Lens y y y Autodraw to scale y y y Sort by EFL, diameter, part number y y y Sort as singlets, doublets, others y y y Merge as elements or surface sequences y y y
OSLO demos & examples (40 lenses) y y y Vendor lenses (192 lenses) y y y Optics Toolbox (101 lenses) y y Arthur Cox library (330 lenses) y y Warren Smith library (339 lenses) y y Non-sequential, special examples (37 lenses) y
Plan view (x, y, or z direction) y y y Wire frame 3D y y y Solid model 3D y y y ISO 10110 element drawings y y y Drawing data saved with lens y y y Default or user-defined ray trajectories y y y Overlay of layout drawings y y y Vignetting of ray trajectories y y y 3D DXF output to CAD programs y y y IGES output to CAD programs y y y HP-GL/2 color or black & white output y y y Clipboard, Windows metafile output y y y Suppress selected surfaces y y y Draw object surface y y y User-defined lens drawing elements y y y
Ray analysis y y y Spot diagram analysis y y y Wavefront analysis y y y Point spread function y y y Through-frequency transfer function y y y Through-focus transfer function y y y
Circular, annular Gaussian, apodized source y 1-dimensional object, adjustable duty ratio y Amplitude, phase of object adjustable y Monochromatic or polychromatic y
Single-mode or multi-mode fibers y y y Overlap integral method y y y Efficiency vs. tilt or displacement y y y User-defined fiber mode y
Random ray tracing y y y Elliptical pupil model y y Exact pupil model y Support for Radiant Imaging source files y y y
Adjustable degree of polarization y Set polarization ellipse, angle, handedness y Uniform or dipole models for initial ray intensity y Thin Film Coatings y
Edge thickness and surface sag y y y Element weight including bevels and special shapes y y y View global coordinate matrix y DOE surface phase and grating spacing y y y DOE zone radii y y GRIN index value at any point y y y Axial GRIN profile plot y y y
First-order chromatic shift y y y Parabasal first-order constants y y y Parabasal ray trace y y y Print field analysis y y y Spot size and RMS OPD vs field y y y Y-Ybar analysis y y y Vignetting analysis y y y Set vignetting factors y y y Plot ray set y y y Image plot (random rays, extended source) y y y Interferogram of current spot diagram y y y Ghost analysis y y y Aldis theorem y y y 2D distortion plot y y y Beam footprint y y y Narcissus analysis y y
Rotate lens y y y Lens with rays y y y Spot diagram & MTF vs. focus y y y Doublet bending y y y Triplet ray trajectories y y y Fit glass coefficients to experimental data y y y Seidel aberrations/Ray-intercepts/Spot diagrams y y y
Cut, copy, paste lens surfaces or ranges y y y Reverse, scale lens surface or range y y y Insert, delete lens surfaces y y y Merge one lens into another y y y Group surfaces into elements y y y Create non-sequential group y
Pause on error y y y Periods or commas in element drawings y y y Output precision, format (limited) y y y Log text output to file (full precision) y y y Default wavelengths and weights y y y Graphics black and white or color y y y Graphics labels, axes on or off y y y Graphics background black or white y y y Graphics scale y y y Open previous lens on startup y y y Show radii or curvatures in spreadsheet y y y User-defined default values for operating conditions y y y
Precompile code, merge with program y y y Local, static, global user-defined variables y y y Integer, real, character variable types y y y 1 or 2 dimensional arrays y y y C-compatible syntax, control statements y y y Preprocessor supports #define & #include y y y
Extended argument definitions y y y Global argument names y y y Optional parentheses in function calls y y y Exponentiation operator y y y Pass by reference operator y y y Forced prompt operator y y y Integer division returns real value y y y Array dimensions sent to procedures y y y Real array indices permitted y y y
Open, reset, and close text, graphics, help, edit windows y y y Print text, graphics, help windows y y y Set graphics window position when opened y y y Open, set up for callbacks, close graphics slider windows. y y y
fopen, fclose, fread, fwrite, fseek, ftell, fgetline y y y fprintf, fscanf, sprintf y y y hpgl_write (HPGL or HPGL/2 files) y y y print, message, printf y y y
acos, asin, atan2, cos, sin, tan y y y sqrt, pow, exp, log, log10 y y y ceil, floor, rint, round y y y j0, j1 (Bessel functions) y y y rand, grand, lrand (uniform, Gaussian, or lambertian random numbers y y y coldim, rowdim (return array dimensions) y y y fft, fftinv (fast Fourier transform) y y y mvprod, mtvprod, mtmprod, mmtprod, mmprod (array processing functions) y y y polint (polynomial interpolation) y y y slveqs (solve sets of equations) y y y sort (numeric or string array) y y y
atof, atol y y y strcat, strcmp, strcpy, strlen y y y strindex, strtoken, y y y str2upper, str2lower, sry2strcpy, str2arycpy y y y timestr (builds current date/time) y y y
moveto, moverel y y y lineto, linerel y y y gclear, eperase,epset, gshow, viewport, window (window scaling and control) y y y line_style, pen y y y label, langle, lorigin, lsize, lspacing y y y hpgl (put hp-gl string in the graphics store) y y y frame, symbol y y y polylineto, polylinerel, polypoint, polysymbol () y y y spline_plot (1 dimensional array) y y y contour (2 dimensional array) y y y
abort, halt, pause, exit, quit y y y escape (check if escape has been pressed) y y y compile (invoke CCL compiler) y y y time, time_reset (manage internal timer) y y y open_movie, save_frame, close_movie y y y make_movie, show_movie y y y error_handler y y y Create DLLs from CCL code y execute, execute_scpfile y y y
2D Waveguide Design y
Compile code as executed y y y Predefined numeric and string variables y y y 1-dimensional arrays y y y C-compatible syntax, control statements y y y Read and write files, spreadsheet buffer y y y Access to lens data by name y y y Execute selection in text editor y y y Use standard math functions in expressions y y y Access to CCL support library y y y
Import lens data from other programs y y y User-definable menus and toolbars y y y Choice of element or surface view of data y y y Click/Command menu/command interface y y y Spreadsheet Buffer contains full-precision values of all real data output y y y SmartCells accept data and commands y y y Automatic command argument prompting y y y
32KB text editor y y y 1999-line spreadsheets y y y 2 text output windows (1999 lines) y y y 6 simultaneously open graphics windows y y y 1 interactive design window y y y Unlimited surfaces y y y Unlimited variables y y y Unlimited pupil sampling y y y Unlimited wavelengths y y y Unlimited optimization rays & field points y y Unlimited optimization operands y y Unlimited zoom positions y y
Microsoft Windows 95/98 y y y Microsoft Windows NT 4.0 y y y HP-UX 10.x y y Solaris 2.5 or above y y
CD-ROM (for program installation) Pentium CPU (Intel) 20 Mbytes disk storage VGA display (SVGA 1024x768 recommended) ID module (hardware key supplied with PRO and SIX, not required for OSLO Light)
HP-UX 10.x HP9000 700 series workstation CD-ROM (for program installation)
Solaris 2.5 or above Sun SPARC workstation CD-ROM (for program installation)