← Back to project catalogue
GP-PH-15XE4K0PhysicsReady

Achromatic Doublet Ray-Tracing Optimisation

A completed optical-engineering study that optimises and tolerance-tests a cemented N-BK7 and N-F2 achromatic doublet using exact sequential geometrical ray tracing.

Achromatic Doublet Ray-Tracing Optimisation project visual
GP-PH-15XE4K0 · Physics
  • Optiland 0.6.2
  • Python 3.12
  • NumPy
  • SciPy
  • Pandas
  • Matplotlib

Software compatibility

Optiland 0.6.2 only

The released source, numerical results, tests, and documents use Python 3.12 and Optiland 0.6.2 in the pinned Docker environment. Zemax, CODE V, OSLO, MATLAB, and other proprietary project files are not included.

Project definition

Problem statement

An achromatic doublet must control longitudinal colour while maintaining useful focal length, aperture, field response, and geometry.

The engineering problem is to improve several competing ray-based measures without presenting one numerical optimum as proof of diffraction quality or fabrication readiness.

Project objectives

  • Build a cemented N-BK7 and N-F2 doublet in exact sequential geometrical optics.
  • Trace three visible wavelengths at zero, three, and six degrees field angle.
  • Optimise three surface radii and two element thicknesses within declared bounds.
  • Compare RMS spot radius, chromatic focus, effective focal length, and distortion.
  • Measure aperture tradeoffs and response to seeded prescription tolerances.
  • Retain all numerical evidence needed to reproduce the conclusions.

Project structure

Project components

01

Lens prescription

Defines the cemented crown and flint elements, spherical surfaces, entrance pupil, wavelengths, fields, and bounded variables.

02

Ray analysis

Calculates exact sequential ray intercepts, best focus, RMS spot radius, chromatic focus, effective focal length, and distortion.

03

Optimisation

Uses a deterministic differential-evolution search across three radii and two thicknesses.

04

Tolerance study

Runs four hundred seeded perturbation cases with both ideal refocus and a fixed detector.

05

Evidence

Retains complete CSV tables, JSON summaries, fifteen result figures, tests, references, and editable documentation.

Methodology

Project workflow

  1. 01
    Trace the baseline

    The original doublet is evaluated across every retained wavelength and field condition.

  2. 02
    Optimise the prescription

    The bounded search changes the three radii and two thicknesses while controlling focal length and invalid geometry.

  3. 03
    Compare performance

    The baseline and retained design are compared through spots, colour, distortion, focal length, and prescription changes.

  4. 04
    Change the aperture

    Five entrance-pupil diameters expose the image-quality and speed tradeoff.

  5. 05
    Test tolerances

    Four hundred deterministic manufacturing perturbations compare refocused and fixed-detector response.

  6. 06
    Verify the release

    Tests, coverage, dependency audit, document checks, and repository validation confirm the retained delivery.

Demonstration scenario

The original doublet is traced across three wavelengths and three field angles. The retained prescription reduces mean RMS spot radius by 61.02 percent and chromatic focus range by 68.99 percent while holding effective focal length at 93.001 mm. The student then uses aperture and tolerance evidence to explain why the numerical optimum is not automatically a fabrication-ready lens.

Engineering

Tools and method

Tools
The project uses Optiland 0.6.2, Python 3.12, NumPy, SciPy, Pandas, Matplotlib for subject analysis, simulation, and results.
Optical solver
Optiland 0.6.2 performs the exact sequential geometrical ray tracing and first-order optical calculations.
Numerical search
SciPy differential evolution evaluates 1,113 candidate prescriptions using a recorded seed.
Analysis
NumPy and Pandas retain and compare field, wavelength, aperture, ray-intercept, and tolerance evidence.
Figures
Matplotlib builds fifteen labelled figures in raster and vector formats from the retained tables.
Reproducibility
A digest-pinned Python container, exact package versions, automated tests, and a repository validator protect the release.

Testing

Evaluation

Evaluation measures

  • Mean RMS spot radius reduced from 143.503 to 55.931 micrometres
  • Maximum sampled RMS spot radius reduced from 252.574 to 114.336 micrometres
  • Chromatic focus range reduced from 533.251 to 165.339 micrometres
  • Full-field distortion reduced from 0.2505 to 0.0622 percent
  • Effective focal length retained at 93.001 mm with a 25 mm entrance pupil
  • Refocused and fixed-detector distributions across four hundred tolerance samples

Project boundaries

  • The study uses rotationally symmetric spherical surfaces and geometrical optics.
  • RMS spot radius is a ray-based measure and does not establish diffraction-limited image quality.
  • The tolerance distributions use declared independent teaching assumptions, not supplier process data.
  • Coatings, polarisation, scattering, stray light, ghosts, thermal behaviour, glass availability, cost, and mechanical mounting are outside the completed model.
  • The result is not a manufacturing drawing, production-yield estimate, laser-safety assessment, or substitute for laboratory validation.

Included

  1. 01Complete Python and Optiland source code
  2. 02Baseline and optimised cemented achromatic-doublet prescriptions
  3. 03Three wavelengths and three field angles
  4. 04Four hundred seeded tolerance samples
  5. 05One thousand six hundred and thirty-eight retained ray intercepts
  6. 06Fifteen generated result figures in PNG and SVG formats
  7. 07Fifty-two automated tests with 94.86 percent branch-aware package coverage
  8. 08Complete project files, calculations, results, and analysis material in a private GitHub repository
  9. 0978-page project documentation in PDF and editable Word formats
  10. 104-page setup and usage guide in PDF and editable Word formats
  11. 11Forty-nine annotated references and three sourced literature images

Project record

No information is collected on this page.

Permanent project ID
GP-PH-15XE4K0
Catalogued
21 Aug 2026
Completed
27 Aug 2026
Verified
27 Aug 2026
Demonstration
Included in repository

Handover

After purchase

  1. 01
    Payment is confirmed

    The project is marked unavailable and cannot be purchased again.

  2. 02
    Repository access is granted

    The buyer's submitted GitHub account receives access to the private repository.

  3. 03
    The purchase record is delivered

    The certification sheet is prepared from the reviewed buyer details and sent privately by email.