Torch Lens Maker
Open-source optical systems engineering
Torch Lens Maker is an open-source Python library for modeling and designing optical systems. It can be used to design simple mirrors and lenses, all the way to compound optical systems made of a sequence of optical surfaces, such as camera lenses. Torch Lens Maker is based on PyTorch and implements differentiable geometric optics. This gives access to the full power of modern GPU-based numerical optimization methods. Designing an optical system with Torch Lens Maker is a new approach to optical engineering based on explicit description of the system design parameters with Python and powerful numerical optimization. The project also focuses on interactive visualization and exploration of optical systems with a web-based viewer called tlmviewer. This offers deep integration with the Jupyter Notebook environment which has become a standard in the open source numerical computing community. Torch Lens Maker aims at becoming a complete solution for code-based open-source optical systems engineering.
- The project's own website: https://victorpoughon.github.io/torchlensmaker/
This project was funded through the NGI0 Commons Fund, a fund established by NLnet with financial support from the European Commission's Next Generation Internet programme, under the aegis of DG Communications Networks, Content and Technology under grant agreement No 101135429. Additional funding is made available by the Swiss State Secretariat for Education, Research and Innovation (SERI).