pyNLO / PyNLO

Python package for nonlinear optics
https://pynlo.readthedocs.io/en/latest/
GNU General Public License v3.0
96 stars 52 forks source link

Still alive? #67

Open BenediktBurger opened 2 months ago

BenediktBurger commented 2 months ago

Hey @ycasg ,

are you around here, such that the project could continue?

DanHickstein commented 2 months ago

Dead 💀. But pyNLO will live forever in our hearts ❤️.

The backstory is that @ycasg lost access to the email account that he used to create the PyNLO organization, and GitHub refused to transfer access, so this particular repo is dead. In theory, someone could copy this repo into a new organization and start maintaining it.

I thought about doing this, but there was too much legacy code. So, I decided that it was better to start fresh with a more streamlined NLSE solver and port the features from PyNLO as needed. The result is laserfun: https://github.com/laserfun/laserfun The NLSE capabilities and interface are similar to PyNLO, but with far fewer lines of code. If there are PyNLO features that you like that are missing from laserfun, I'm happy to accept pull requests or try to implement the feature. I intend to maintain the package for the foreseeable future. Our company (Octave Photonics) has started work on a browser-based NLSE simulator that uses laserfun as the backend: https://www.octavephotonics.com/nlse

Also note: @cdfredrick did a large-scale re-write of the PyNLO code, and modified it to include Chi-2 propagation as well. I think that his development efforts are still somewhat active. In the long run, we should probably figure out how to combine our efforts. https://github.com/cdfredrick/PyNLO

BenediktBurger commented 2 months ago

I'm looking for an alternative to SNLO for simulating nonlinear processes. During my search, I found this repository (with a good name, which is unfortunately lost). Thanks for clarifying the current state of this repository and thanks for telling about those developments.

DanHickstein commented 2 months ago

@ycasg did include some chi-2 nonlinear optics simulation abilities into PyNLO. This example shows some a basic DFG simulation: https://github.com/pyNLO/PyNLO/blob/master/src/examples/pulsed_dfg.py

I never used the chi2 capabilities of pyNLO, so can offer little insight. As far as I know, SNLO is still considered the gold standard for what it does.

cdfredrick commented 2 months ago

If you're looking to simulate 2nd order effects in waveguides my fork is definitely worth checking out. Documentation and examples are available at cdfredrick.github.io/PyNLO/

BenediktBurger commented 2 months ago

Thanks for your work and for sharing it with the community.

BenediktBurger commented 2 months ago

As far as I know, SNLO is still considered the gold standard for what it does.

I have an autoclicker to automate usage of SNLO, if someone is interested. I might publish it on Pypi: https://git.rwth-aachen.de/nloqo/snlo-helper

DanHickstein commented 2 months ago

Oh wow! What a roundabout method. I see why you're looking for some Python code that you can work with directly! Good luck my friend :)

BenediktBurger commented 2 months ago

I published it on pypi: https://pypi.org/project/snlo-helper/