LensHH family — LT edition
Ray tracing, optimization, and aberration analysis with an open MCP server so AI agents can drive a real optical-design tool.
Everything a sequential design job needs, from the first paraxial layout through to the MTF you hand to manufacturing.
Real and paraxial ray tracing with full aberration analysis. Supports reflective and refractive systems.
Four optimizers — damped least-squares, multistart, global search, and basin hopping — plus split element, asphere search, and synthesis by saddle-point construction. All variables support min/max constraints.
FFT MTF, spot diagrams, ray fans, OPD fans, Seidel coefficients, distortion, field curvature, and more.
1,515 glasses across ten catalogs — SCHOTT, OHARA, CDGM, HOYA, SUMITA, Corning, LightPath — with per-surface glass substitution, plus 7,623 stock lenses from Edmund Optics, Thorlabs and Ross Optical.
Import and export Zemax, CODE V, OSLO, OpTaliX and Optiland lens files, with glass names resolved against your catalogs in both directions.
Full programmatic API, interactive CLI, and MCP server tested with Claude Code and Claude Desktop. Automate design workflows with AI agents.
Built-in rendering app for real-time system drawings and performance plots — see results instantly when working with an AI agent.
GUI, CLI, and MCP server source code are open source under the MIT license. Inspect, extend, and integrate with confidence.
Full-featured trial with no limitations — just provide your email. A license is $385 once, not a subscription, and runs offline after a one-time activation.
Four optimizers, plus the constructive tools that change what a design is rather than only refining what it already is.
Local optimization is damped least squares. Above it sit multistart, global search and basin hopping for when the design has to leave the basin it started in. Alongside those are tools that alter the structure of the lens: splitting an element in two, searching for a useful aspheric surface, and synthesis by saddle-point construction, which grows a design by inserting elements at the saddle points of the merit function. Every variable takes its own minimum and maximum, so an optimizer explores shapes you could actually build.
Damped least squares adds one damping value to every variable’s diagonal term, and that single number is standing in for something that is not single — each variable’s own curvature. In a real lens those curvatures differ by orders of magnitude, so whatever value steadies a strongly nonlinear surface curvature will throttle a nearly linear airspace. The usual symptom is a run that crawls, or reports convergence while still some way from the minimum.
As an alternative, LensHH-LT offers PSD II and PSD III — the pseudo-second-derivative methods of D. C. Dilworth, which estimate each variable’s curvature directly and put that on the diagonal instead of a shared damping constant. The estimate costs almost nothing, since it comes from comparing derivatives already computed on two successive iterations. Damped least squares remains the default; PSD is a setting you select per run, in the GUI, the CLI or over MCP. The user guide works through what each one does and when it helps.
The PSD methods are D. C. Dilworth’s. LensHH-LT implements them from his published work: “Pseudo-second-derivative matrix and its application to automatic lens design,” Appl. Opt. 17(21), 3372–3375 (1978); “Improved convergence with the pseudo-second-derivative (PSD) optimization method,” Proc. SPIE 399, 159 (1983); and Lens Design, appendix B.3, which introduces PSD III.
Where the aberration is generated, surface by surface — not only what the spot looks like once every surface has had its turn.
The Seidel analysis reports the third-order coefficients per surface and as system totals: spherical aberration, coma, astigmatism, field curvature, distortion, and axial and lateral colour. Per surface is the useful part. A spot diagram tells you the design is soft; the coefficients tell you which surface is making it soft, which is the difference between guessing at a fix and aiming one.
Above third order, LensHH-LT carries Buchdahl/Rimmer fifth- and seventh-order coefficients — fifth-order spherical, two forms of fifth-order coma, three of oblique spherical aberration, three of elliptical coma, fifth-order astigmatism, Petzval and distortion, and seventh-order spherical. They are available as merit-function operands, each over a surface range or across the whole system, so a design can be optimized against a named high-order aberration rather than against the blur it eventually contributes to. Aspheric surfaces are included, conic and even-order terms both.
On top of those sits Robb’s analytic merit function,
which predicts the RMS spot radius from the coefficients in closed form,
with no rays traced at all. Because it costs a coefficient pass instead
of a pupil of real rays, it is quick enough to screen many candidate
designs — and one operand, PRMSA, covers every field
and wavelength in the system at once.
These are estimates from a truncated series, referenced to the paraxial image plane, and they are not a replacement for tracing rays: the user guide is explicit about what they do and do not account for. Ray-traced spot diagrams, MTF, wavefront maps and OPD fans are all there for when the answer has to be the real one.
Coefficients follow Rimmer (1962, University of Rochester Summer School in Optics). The analytic spot estimate follows Robb, JOSA 66, 1037 (1976).
Existing designs are the reason most people cannot try a new tool. LensHH-LT reads and writes the formats you already have.
Import and export run in both directions for Zemax (.zmx),
CODE V (.seq), OSLO (.len),
OpTaliX (.otx) and Optiland (.json).
A file brings its surfaces, thicknesses, materials, conics and
even-order aspheric terms with it, along with the wavelengths, fields
and aperture the original design was specified at — so a design
opens as the lens its author drew, not as a shape you have to rebuild
and re-check.
Glass names are the part that usually breaks in translation, because
every program spells them differently: the catalogs’
N-BK7 and H-ZF52 are NBK7 and
HZF52 in CODE V, and a name no catalog claims leaves a
surface with no material at all. Names are resolved against your loaded
catalogs on the way in and written in each format’s own spelling
on the way out, so a lens survives the round trip with its glasses
intact. Where a material genuinely cannot be resolved, LensHH-LT says
so rather than quietly treating the surface as air.
The trial is the full program. Nothing is disabled, watermarked, or held back for the paid version.
Download it, give an email address, and you have 45 days of the complete tool — every optimizer, every analysis, every catalog, the CLI and the MCP server included. There is no feature matrix separating a trial from a licensed copy, because there is only one build.
A license is $385, paid once. Not a subscription: the version you buy keeps working, and it keeps working if you stop paying us anything ever again, because there is nothing further to pay. That covers activation on up to two machines — a desktop and a laptop, typically — with a year of updates and a year of email support included. Activating is a one-time online step; after that your license is verified on your own machine, so LensHH-LT runs with no network connection and there is no floating-license daemon to install on your network or check seats out of.
One engine, three platforms, and the same file format on all of them.
Windows 10 and 11 get an installer that bundles the .NET 8 runtime, so there is no prerequisite to chase down. Linux ships as a portable AppImage that runs on Ubuntu, Fedora and Arch without being installed. macOS 12 and later runs as a signed app bundle on Apple Silicon — M1 or later; Intel Macs are not supported.
GPU acceleration is available on Windows and Linux, where merit-function
evaluation can run on an NVIDIA card. macOS is CPU-only, since there is
no CUDA on that platform. Everything else is identical across the three,
and a .lhlt file written on one opens unchanged on the
others.
An optical-design program an agent can actually operate, rather than one it can only describe.
LensHH-LT ships an open Model Context Protocol server, tested with Claude Code and Claude Desktop. Through it an agent can build a system surface by surface, set variables and constraints, author a merit function, run any of the optimizers, pull back spot diagrams, MTF, ray fans and Seidel coefficients, and render layouts and plots to look at — the same operations available in the GUI, exposed as tools an agent can call.
The GUI, the CLI and the MCP server are open source under the MIT license, so you can read exactly what a tool call does before you let one run, extend the server with your own tools, or wire LensHH-LT into a pipeline that has nothing to do with us.
Catalog data ships with the program. There is nothing to license separately or download from a vendor portal.
Ten catalogs ship with the program, covering SCHOTT, OHARA, CDGM, HOYA, SUMITA, Corning and LightPath — 1,515 glasses in all, model glasses for working from patent data included. Glass substitution searches those catalogs during optimization, per surface, so a design can be steered toward the glasses you can actually buy rather than toward an index and Abbe number nobody melts.
The stock-lens catalog holds 7,623 real parts from Edmund Optics, Thorlabs and Ross Optical. You can search it by focal length, diameter and type, drop a catalog part straight into a design, or ask which stock lenses come closest to an element you have just designed — which is the difference between a design you can order this week and one that needs custom glass.
LensHH-Pro is on the way: tolerancing, multiple configurations, environmental analysis, optical coatings, and additional surface types — built on the same engine.
Learn more about LensHH-Pro →