GNU General Public License v3.0

项目介绍

orion-project/rezonator2 是一个托管在 GitHub 上的开源项目,主要使用 C++ 编写,采用 GNU General Public License v3.0 许可证,目前获得 81 个 Star、18 次 Fork。

仓库全名
orion-project/rezonator2
开源许可证
GNU General Public License v3.0
Star 数
81
Fork 数
18
未关闭 Issue
2

README 摘要

reZonator About reZonator a powerful cross-platform software for designing laser resonators and calculating light beam propagation (as Gaussian as ray vectors) in complex optical systems, not only resonators but also single-pass systems. It is proven to be useful by many people around the globe. It's written by a professional programmer with many years of experience having a classical scientific background…

完整内容见 GitHub 原始 README 或本页 。

常见问题

rezonator2 用什么语言开发?

主要使用 C++ 编写,采用 GNU General Public License v3.0 许可证,目前有 81 个 Star。

rezonator2 可以免费商用吗?

仓库标注的许可证为 GNU General Public License v3.0,商用前请先阅读仓库 LICENSE 文件确认授权范围。

如何获取 rezonator2 的源码?

可以直接克隆仓库:git clone https://github.com/orion-project/rezonator2.git;安装与运行步骤见仓库 README。

rezonator2 最近还在维护吗?

仓库最近一次更新为 7月24日,当前有 2 个未关闭 Issue;Star 数为 81,可作为社区活跃度的参考。

关于

GitHub 原始描述(英文)

Laser resonator calculation tool

描述取自 GitHub 官方 API,保持仓库作者书写的原文。

简要分析

热度分
198
价值分
62
活跃状态
活跃

语言占比

Batchfile
C
C++
CMake
CSS
HTML
Inno Setup
JavaScript
Jupyter Notebook
Python
Shell

Release

README

reZonator

About

reZonator a powerful cross-platform software for designing laser resonators and calculating light beam propagation (as Gaussian as ray vectors) in complex optical systems, not only resonators but also single-pass systems. It is proven to be useful by many people around the globe.

It’s written by a professional programmer with many years of experience having a classical scientific background. Initially, it was done as a working tool for internal usage. So we know what we want from the tool and implement it as it would be convenient to use. Sure, different people have different understandings of what “convenience” means and different needs for features. So suggestions and bug reports are welcomed, and especially bug reports 🫣😀

Download

See project’s Home page or GitHub Releases page for binary packages for Windows, Linux, and macOS. See build instructions for building from source code.

Windows: If you encounter an error about missing DLL files (such as MSVCP140.dll), you may need to install the Microsoft Visual C++ Redistributable packages. Download the latest version from the official Microsoft page.

Motivation

Despite the number of good examples, in the professional scientific software today there is still an ancient trend for wasting users’s money even if the functions they offer are rather generic and straightforward and well-described in the literature. These days, most of such calculations could be carried out by a good student using just Python. Python and its libraries are extremely powerful and open-source, and it is a great example of in what direction software development, even commercial, goes in the modern world. Unlike commercial scientific software, it opens its internals and encourages users to learn and enhance, almost not requesting anything back. This project follows the same open source principle. It tries to bring at least a bit of the same level of openness to the world of “scientific” software. It just offers you conventional, well-known approaches, wrapping them into a convenient interface, not pretending it implements some “patented” algorithms that “only we know how to do, and we will keep it a secret.” Everyone can go to the sources, check the correctness, implement their own functions, or enhance the existing ones. It doesn’t intend to offer all the features that paid monsters have, but to offer enough to help and be useful.

Features

  • Optical systems: reZonator supports different optical system types — standing wave laser cavities and running wave (ring) resonators, as well as conventional single-pass systems, e.g., pump roads or beam expanders. The M² beam quality factor also is taken into account for single-pass systems.

  • Optical elements: programs’ elements catalog contains many essential optical elements — ranges, lenses, mirrors, crystals, and many more. The ABCD ray matrix algorithm is used for simulation of optical elements, so you also can define your own element by providing its matrix.

  • :new: :fire: With Custom elements you can provide formulas for computing matrices from element’s parameters and create your own optical components that are not presented in the standard library.

  • :new: :fire: Custom parameters allow you to extend elements with additional user-defined parameters beyond their standard built-in parameters which is useful when you need to track or calculate additional properties specific to your optical system.

  • Unrestricted design: the app doesn’t calculate any particular optical geometry. Instead, it is possible to construct an arbitrary optical system from proposed or user-defined optical elements. reZonator automatically creates a rendition of the system under investigation — almost as if you could sketch it on a paper sheet or your drawing board.

  • Stability maps: for advanced system optimization, reZonator can compute cavity stability maps against values of one or two parameters of any element. Also, automatic computation of stability boundaries is provided.

  • Wavefront calculation: reZonator can plot the size and the wavefront curvature radius of the Gaussian beam over one or a few elements, astigmatism also taken into account. It is possible to compute beam size at any position inside the system. Automatic determination of the position and size of the waist at an element where it is, calculation of the radius of diffractive divergence, and other parameters of the Gaussian beam are provided.

  • :new: :fire: Custom functions provide a powerful way to extend reZonator’s capabilities by writing your own Python code to analyze optical schemas, perform specialized calculations, and visualize results in ways that suit your specific needs.

  • Tuning: the adjustment tool allows you to gradually change any parameter of any element — just like you rotate a screw of some mirror mount or a translating stage. Any results are instantly recalculated while the parameter value is changed.

  • Parametric design: global parameters can interconnect different elements; parameter values given by custom formulas allow you to construct a dynamic and parameterized system.

  • And more: other convenient and useful tools and functions are also available: repetition rate, beam parameters at all elements, misalignments of elements (via custom scripts), “freezing” results, full plot format customization, copying results to the clipboard, and more…

Main Window

Star History Chart

评论

暂无评论