{"id":18662132,"url":"https://github.com/gregmoille/pylle","last_synced_at":"2025-04-04T17:04:11.390Z","repository":{"id":32831658,"uuid":"143764754","full_name":"gregmoille/pyLLE","owner":"gregmoille","description":"Lugiato Lefever Equation Solver in Python/Julia","archived":false,"fork":false,"pushed_at":"2025-01-24T14:14:21.000Z","size":173441,"stargazers_count":74,"open_issues_count":2,"forks_count":42,"subscribers_count":5,"default_branch":"master","last_synced_at":"2025-04-04T17:03:41.557Z","etag":null,"topics":["combs","frequency-comb","frequency-combs","julia","lle","python"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gregmoille.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-08-06T18:03:44.000Z","updated_at":"2025-03-29T08:26:21.000Z","dependencies_parsed_at":"2022-08-31T22:10:34.535Z","dependency_job_id":"37174e96-8bb1-4835-a748-43268efa2431","html_url":"https://github.com/gregmoille/pyLLE","commit_stats":{"total_commits":409,"total_committers":6,"mean_commits":68.16666666666667,"dds":0.2616136919315404,"last_synced_commit":"f5584d47700feced2d50afd93f00e049bd5950e9"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gregmoille%2FpyLLE","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gregmoille%2FpyLLE/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gregmoille%2FpyLLE/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gregmoille%2FpyLLE/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gregmoille","download_url":"https://codeload.github.com/gregmoille/pyLLE/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247217173,"owners_count":20903008,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["combs","frequency-comb","frequency-combs","julia","lle","python"],"created_at":"2024-11-07T08:10:06.989Z","updated_at":"2025-04-04T17:04:11.365Z","avatar_url":"https://github.com/gregmoille.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pyLLE ![NIST logo](images/NISTlogo32x32.jpg)\n\n[![](https://img.shields.io/static/v1.svg?label=docs\u0026message=passing\u0026color=green\u0026style=flat)](https://gregmoille.github.io/pyLLE/)\n![](https://img.shields.io/static/v1.svg?label=version\u0026message=4.1\u0026color=9cf\u0026style=flat)\n[![](https://img.shields.io/static/v1.svg?label=DOI\u0026message=10.6028/jres.124.012\u0026color=blue\u0026style=flat)](https://doi.org/10.6028/jres.124.012)\n\n## What's new\n\nA major revision, v4.0.0 introduces a lot of new stuff including:\n\n- Complete recoding of the core with better coding and commenting which hopefully makes it easier to implement custom features\n- Modification of interfacing with parameters and results through method attributes instead of bulky dictionaries\n- Stability of the half step Fourier method, allowing to use a soliton solution as an original state for the LLE\n- Allowing arbitrary number of driving pump, according to Taheri et al The European Physical Journal D 2017. and our paper on Nature Communication (Moille et al. Nature Communication 2021)\n- **Julia compatibility with version 1.8 (current as of 05/01/2023) and above**. Previous version are no longer supported\n\n## How to Cite Us?\n\nPlease, if you use this package and it helps you with your research and publication, cite us in your paper. Not only does it allow us to have a better idea of new things people are interested in and how to keep improving the solver, but it also helps us build a community where everybody can help maintain the solver to better suit the needs of everybody.\nYou can cite our paper published in the Journal of Research of the National Institute of Standards and Technology, available [here](https://doi.org/10.6028/jres.124.012), with the following BibTeX entry.:\n\n```latex\n@article{moille_pyLLE,\n      author = {Gregory Moille and Qing Li and Xiyuan Lu and Kartik Srinivasan},\n      title = {pyLLE: a Fast and User Friendly Lugiato-Lefever Equation Solver},\n      year = {2019},\n      volume = {124},\n      pages = {124012},\n      month = {2019-05-24},\n      journal = {Journal of Research of the NIST},\n       doi = {https://doi.org/10.6028/jres.124.012},\n     }\n```\n\n## How to install\n\nAs pyLLE relies on a Julia back-end, please prior to installing this package be sure that Julia is installed on your machine or visit the julia [package download page](https://julialang.org/downloads/) to install it. The code should now work with any recent version of Julia.\n\nOnce Julia installed, the different packages needed to run pyLLE, either python or julia related, will be automatically downloaded and installed. Just a heads up, the installation of the package can vary in time, especially because of Julia that might rebuild the cache.\n\npyLLE will look by default to find the Julia binary in the `/opt/bin/julia`, which you can make it happen either in MacOS\n\n```bash\nln -s /Applications/Julia-\u003cversion\u003e.app/Contents/Resources/julia/bin/julia /opt/bin/julia\n```\n\nor Linux\n\n```bash\nln -s \u003cjulia_path\u003e/bin/julia /opt/bin/julia\n```\n\nNote that if this step is skipped it is alright as an update of the pyLLE package provide a way to specify the julia binary you would like to use specifyin `solver.SolveTemporal(bin = \u003cwhere julia bin is\u003e)`\n\nNow, one can simply automatic install, just pip it :\n\n```bash\npip install pyLLE\n```\n\nor pip the github\n\n```bash\npip install git+https://github.com/gregmoille/pyLLE.git\n```\n\n\n**For windows** the julia package have to be installed manually, using a julia console and typing the following command:\n\n```julia\nusing Pkg\n\nPkg.add(\"HDF5\")\nPkg.update(\"HDF5\")\n\nPkg.add(\"FFTW\")\nPkg.update(\"FFTW\")\n\nPkg.add(\"LinearAlgebra\")\nPkg.update(\"LinearAlgebra\")\n\n```\n\n\nFor a manual install, download the .zip of the repository or clone it and install with the setup.py script.\n\n## Checking that everything works correctly\n\nLaunch a julia console and within type the commands:\n\n```julia\nusing HDF5\nusing FFTW\nusing LinearAlgebra\n```\n\nif any of the previous command throw an issue, mostly it is because it is not installed. One way to fix it is to remove the installed packaged to remove the cache\n\n- for linux and mac os user: remove everything in ~/.julia/\n- for windows users: remove everything in C:\\Users\\\u003cyour user name\u003e\\.julia\\\n\nThen enter the pacakge manager for julia by typing in the julia console:\n\n```julia\njulia\u003e]\n```\n\nthen\n\n```julia\n(v1.1) pkg\u003eadd HDF5\n(v1.1) pkg\u003eadd FFTW\n```\n\n## Example [![NBviewer](https://custom-icon-badges.demolab.com/badge/jupyter-notebook-blue.svg?logo=eye\u0026logoColor=white)](https://nbviewer.org/github/gregmoille/pyLLE/blob/master/example/TemporalDualPump.ipynb)\n\nA complete example is available in the example directory [notebook](https://github.com/gregmoille/pyLLE/blob/master/example/TemporalDualPump.ipynb) with the corresponding file needed in the folder.\nYou can also access the [nbviewer](https://nbviewer.org/github/gregmoille/pyLLE/blob/master/example/TemporalDualPump.ipynb) example to have a better idea of what's going on:\n\n## Works Using/citing pyLLE\n\nIf you want to be featured here, shoot me an email! I try to keep it up to date but this is not a priority. I would love to hear anybody who uses it!\n- 2025:\n  - Moille, G. et al. Versatile optical frequency division with Kerr-induced synchronization at tunable microcomb synthetic dispersive waves. Nat. Photon. 19, 36–43 (2025).\n  - Shandilya, P. et al. All-optical azimuthal trapping of dissipative Kerr multi-solitons for relative noise suppression. APL Photonics 10, 016104 (2025).\n- 2024:\n  - Moille, G., Shandilya, P., Erkintalo, M., Menyuk, C. R. \u0026 Srinivasan, K. On-Chip Parametric Synchronization of a Dissipative Kerr Soliton Microcomb. Preprint at https://doi.org/10.48550/arXiv.2409.05388 (2024).\n  - Moille, G., Westly, D. \u0026 Srinivasan, K. Broadband Visible Wavelength Microcomb Generation In Silicon Nitride Microrings Through Air-Clad Dispersion Engineering. Preprint at https://doi.org/10.48550/arXiv.2404.01577 (2024).\n- 2023:\n  - Moille, G., Stone, J., Chojnacky, et al. Kerr-Induced Synchronization of a Cavity Soliton to an Optical Reference. Nature 624, 267–274 (2023). \n  - Moille, G., Lu, X., Stone, J., Westly, D., \u0026 Srinivasan, K. (2023). Fourier synthesis dispersion engineering of photonic crystal microrings for broadband frequency combs. Communications Physics, 6(1), 144.\n  - Ren, D., Dong, C., \u0026 Burghoff, D. Integrated nonlinear photonics in the longwave-infrared: A roadmap. MRS Communications, 13(6), 942-956 (2023).\n  - Ji, H., Geng, Z., Cheng, W., Wu, P., Yu, Z., Liu, Y., ... \u0026 Zhao, Q. (2023). High-power two-color Kerr frequency comb generation on the gallium phosphide-on-insulator platform at SWIR and MIR spectra. JOSA B, 40(8), 1976-1985.\n  - Geng, Z., Ji, H., Yu, Z., Cheng, W., Wu, P., Li, Y., \u0026 Zhao, Q. (2023). Dispersion-flattened concentric structure for microcomb bandwidth broadening in GaP-OI resonators. JOSA B, 40(3), 673-681.\n  - Moille, G., Li, C., Stone, J., Chojnacky, M., Shandilya, P., Chembo, Y. K., Dutt, A., ... \u0026 Srinivasan, K. (2023). Two-Dimensional Nonlinear Mixing Between a Dissipative Kerr Soliton and Continuous Waves for a Higher-Dimension Frequency Comb. arXiv preprint arXiv:2303.10026.\n- 2022:\n  - Afridi, A. A., Weng, H., Li, J., Liu, J., McDermott, M., Lu, Q., ... \u0026 Donegan, J. F. (2022). Breather solitons in AlN microresonators. Optics Continuum, 1(1), 42-50.\n  - Lu, S., Liu, X., Shi, Y., Yang, H., Long, Z., Li, Y., ... \u0026 Liang, H. (2022). Mid-infrared ultra-broadband optical Kerr frequency comb based on a CdTe ring microresonator: a theoretical investigation. Optics express, 30(19), 33969-33979.\n- 2021:\n  - Weng, H., Liu, J., Afridi, A. A., Li, J., Dai, J., Ma, X. _et al._ \"_Octave-spanning Kerr frequency comb generation with stimulated Raman scattering in an AlN microresonator_\". Optics Letters, 46(3), 540-543. (2021)\n  - Weng, H., Liu, J., Afridi, A. A., Li, J., Dai, J., Ma, X. _et al._ \"_Directly accessing octave-spanning dissipative Kerr soliton frequency combs in an AlN microring resonator_\" Photonics Research (2021)\n  - Moille, G., Westly, D., Orji, N. G., \u0026 Srinivasan, K. \"_Tailoring broadband Kerr soliton microcombs via post-fabrication tuning of the geometric dispersion_\". Applied Physics Letters, 119(12), 121103 (2021)\n  - Weng, H., Liu, J., Afridi, A. A., Li, J., Dai, J., Zhang, Y., _et al._ \"_Perfect soliton crystal in an AlN microresonator\"_. In CLEO: QELS_Fundamental Science (pp. JTh3A-31). Optical Society of America. (2021)\n  - Moille, G., Westly, D., Simelgor, G., \u0026 Srinivasan, K. \"_Impact of the precursor gas ratio on dispersion engineering of broadband silicon nitride microresonator frequency combs_\". Optics\n    Letters, 46(23), 5970-5973 (2021).\n- 2020:\n  - Schuttrups, B. (2020). \"_Modelling nonlinear optical pulse propagation using pseudo-spectral methods_\" (Master's thesis, University of Twente).\n  - Moille, G., Chang, L., Xie, W., Rao, A., Lu, X., Davanco, M. _et al._ \"_Dissipative Kerr Solitons in a III‐V Microresonator_\". Laser \u0026 Photonics Reviews, 14(8), 2000022 (2020)\n    -2019:\n  - Gregory Moille, Xiyuan Lu, Ashutosh Rao, Qing Li, Daron A. Westly, Leonardo Ranzani, Scott B. Papp, Mohammad Soltani, and Kartik Srinivasan \"_Kerr-Microresonator Soliton Frequency Combs at Cryogenic Temperatures_,\" Phys. Rev. Applied 12, 034057 (2019)\n  - Gregory Moille, Qing Li, Travis C. Briles, Su-Peng Yu, Tara Drake, Xiyuan Lu, Ashutosh Rao, Daron Westly, Scott B. Papp, and Kartik Srinivasan \"_Broadband resonator-waveguide coupling for efficient extraction of octave-spanning microcombs_,\" Optics Letters Vol. 44, Issue 19, pp. 4737-4740 (2019)\n  - Lin Chang, Weiqiang Xie, Haowen Shu, Qifan Yang, Boqiang Shen, Andreas Boes, Jon D. Peters, Warren Jin, Songtao Liu, Gregory Moille, Su-Peng Yu, Xingjun Wang, Kartik Srinivasan, Scott B. Papp, Kerry Vahala, John E. Bowers \"_Ultra-efficient frequency comb generation in AlGaAs-on-insulator microresonators_,\" arXiv:1909.09778 (2019)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgregmoille%2Fpylle","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgregmoille%2Fpylle","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgregmoille%2Fpylle/lists"}