{"id":16512942,"url":"https://github.com/daskol/nls","last_synced_at":"2025-10-30T21:49:45.860Z","repository":{"id":46070368,"uuid":"48875672","full_name":"daskol/nls","owner":"daskol","description":"Non-linear Schrodinger Equation Solver","archived":false,"fork":false,"pushed_at":"2024-10-26T00:24:42.000Z","size":252,"stargazers_count":13,"open_issues_count":0,"forks_count":6,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-06-03T14:06:53.273Z","etag":null,"topics":["equation","nls","physics-simulation","quantum-mechanics","schrodinger-equation"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/daskol.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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":"2016-01-01T10:47:25.000Z","updated_at":"2025-03-30T10:37:30.000Z","dependencies_parsed_at":"2023-12-26T09:08:28.274Z","dependency_job_id":"37b31a03-fa17-4139-853d-217c17eb3f3e","html_url":"https://github.com/daskol/nls","commit_stats":{"total_commits":105,"total_committers":3,"mean_commits":35.0,"dds":0.05714285714285716,"last_synced_commit":"8ce4f51f8c564498093d1f96c08b008b1cfe2d52"},"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/daskol/nls","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daskol%2Fnls","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daskol%2Fnls/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daskol%2Fnls/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daskol%2Fnls/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/daskol","download_url":"https://codeload.github.com/daskol/nls/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/daskol%2Fnls/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259389884,"owners_count":22850112,"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":["equation","nls","physics-simulation","quantum-mechanics","schrodinger-equation"],"created_at":"2024-10-11T16:06:43.008Z","updated_at":"2025-10-30T21:49:40.811Z","avatar_url":"https://github.com/daskol.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Build Status](https://img.shields.io/travis/nls/nls/master.svg?style=flat-square)](https://travis-ci.org/nls/nls)\n[![Coverage Status](https://img.shields.io/coveralls/nls/nls/master.svg?style=flat-square)](https://coveralls.io/r/nls/nls)\n[![PyPi](https://img.shields.io/pypi/pyversions/nls.svg?style=flat-square)](https://pypi.python.org/pypi/nls/)\n[![Downloads](https://img.shields.io/pypi/dm/nls.svg?style=flat-square)](https://pypi.python.org/pypi/nls/)\n\n# Non-linear Schrodinger Equation Solver(NLS)\n\n## Description\n\nPackage to solve non-linear Schrodinger equation written with Fortran 95 and Python 2.\n\nNLS is scientific package that provides ability to solve effeffectively non-linear schrodinger equation with reservoir. These equation describes exciton-polariton condensation in microcavities. NLS is built on native fortran code and is based on certain natural abstraction layer that wraps native solver. These features are reason that makes calcualtions with NLS fast.\n\n### Features\n\n- core written with native Fortran\n- wrapped with Python interaface\n- [DEV] executables written with native Fortran\n- [DEV] support for multithreading computation\n- [DEV] support for distributed computation\n\n![Gaussian Ring Pumping](doc/pics/gaussian-ring-pumping.png)\n\n## Usage\n\n### Fortran executable\n\n1. Change directory to `src/`\n2. Run `make`\n3. Change directory to `test/`\n4. Run `make` and then run `./test_nls`\n5. Change directory to `bin/`\n6. Run `./solve` in order to start calculation\n7. Visualize solution with `python2 src/visualize.py`\n\n### Python module\n\n1. Change directory to `src/`\n2. Run `make glue` in order to build python lib in `bin/` directory that incapsulate native code\n3. Use python to import native module in a way\n\n\n```python\n    from nls.native import nls\n    print(nls.version())\n```\n\n4. Or use python to import python wrap in a way\n\n```python\n    from nls import Problem\n    model = Problem().model()\n    model.report()\n    model.solve()\n    model.visualize()\n    model.show()\n```\n\n## Testing\n\n## Requirements\n\n1. Fortran compiler\n2. Python libraries `numpy` with `f2py` extension, `matplotlib`, and `scipy`.\n\n## Credits \n\n\u0026copy; [Daniel Bershatsky](mailto:daniel.bershatsky@skolkovotech.ru), 2015-2016\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaskol%2Fnls","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdaskol%2Fnls","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdaskol%2Fnls/lists"}