# simsopt
![GitHub](https://img.shields.io/github/license/hiddensymmetries/simsopt)
[![codecov](https://codecov.io/gh/hiddenSymmetries/simsopt/branch/master/graph/badge.svg?token=ltN6qonZ5p)](https://codecov.io/gh/hiddenSymmetries/simsopt)
[![DOI](https://zenodo.org/badge/247710081.svg)](https://zenodo.org/badge/latestdoi/247710081)
![SIMSOPT](docs/source/logo.png)
![SIMSOPT](docs/source/coils_and_surfaces.png)
`simsopt` is a framework for optimizing
[stellarators](https://en.wikipedia.org/wiki/Stellarator).
The high-level routines of `simsopt` are in python, with calls to C++
or fortran where needed for performance. Several types of components
are included:
- Interfaces to physics codes, e.g. for MHD equilibrium.
- Tools for defining objective functions and parameter spaces for
optimization.
- Geometric objects that are important for stellarators - surfaces and
curves - with several available parameterizations.
- Efficient implementations of the Biot-Savart law and other magnetic
field representations, including derivatives.
- Tools for parallelized finite-difference gradient calculations.
The design of `simsopt` is guided by several principles:
- Thorough unit testing, regression testing, and continuous
integration.
- Extensibility: It should be possible to add new codes and terms to
the objective function without editing modules that already work,
i.e. the [open-closed principle](https://en.wikipedia.org/wiki/Open%E2%80%93closed_principle).
This is because any edits to working code can potentially introduce bugs.
- Modularity: Physics modules that are not needed for your
optimization problem do not need to be installed. For instance, to
optimize SPEC equilibria, the VMEC module need not be installed.
- Flexibility: The components used to define an objective function can
be re-used for applications other than standard optimization. For
instance, a `simsopt` objective function is a standard python
function that can be plotted, passed to optimization packages
outside of `simsopt`, etc.
`simsopt` is fully open-source, and anyone is welcome to use it, make
suggestions, and contribute.
Several methods are available for installing `simsopt`. One
recommended approach is to use pip:
pip install simsopt
For detailed installation instructions on some specific systems, see
[the wiki](https://github.com/hiddenSymmetries/simsopt/wiki).
Also, a Docker container is available with `simsopt` and its components pre-installed, which
can be started using
docker run -it --rm hiddensymmetries/simsopt
More [installation
options](https://simsopt.readthedocs.io/en/latest/installation.html),
[instructions for the Docker
container](https://simsopt.readthedocs.io/en/latest/containers.html), and
other information can be found in the [main simsopt documentation
here.](https://simsopt.readthedocs.io)
Some of the physics modules with compiled code reside in separate
repositories. These separate modules include
- [VMEC](https://github.com/hiddenSymmetries/VMEC2000), for MHD
equilibrium.
- [SPEC](https://github.com/PrincetonUniversity/SPEC), for MHD
equilibrium.
- [booz_xform](https://hiddensymmetries.github.io/booz_xform), for
Boozer coordinates.
If you use `simsopt` in your research, kindly cite the code using
[this reference](https://doi.org/10.21105/joss.03525):
[1] M Landreman, B Medasani, F Wechsung, A Giuliani, R Jorge, and C Zhu,
"SIMSOPT: A flexible framework for stellarator optimization",
*J. Open Source Software* **6**, 3525 (2021).
See also [the simsopt publications page](https://simsopt.readthedocs.io/en/latest/publications.html).
We gratefully acknowledge funding from the [Simons Foundation's Hidden
symmetries and fusion energy
project](https://hiddensymmetries.princeton.edu).
Raw data
{
"_id": null,
"home_page": "",
"name": "simsopt",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": "Bharat Medasani <mbkumar@gmail.com>, Matt Landreman <mattland@umd.edu>",
"keywords": "plasma physics plasma magnetohydrodynamics mhd nuclear fusion reactor fusion stellarator vmec spec optimization Biot-Savart magnetostatics",
"author": "",
"author_email": "Matt Landreman <mattland@umd.edu>, Bharat Medasani <mbkumar@gmail.com>, Florian Wechsung <wechsung@nyu.edu>",
"download_url": "https://files.pythonhosted.org/packages/34/57/d4928851bbe41a60743b850184bb8e969b305891c92ccc3bbe034773477c/simsopt-1.2.0.tar.gz",
"platform": null,
"description": "# simsopt\n\n![GitHub](https://img.shields.io/github/license/hiddensymmetries/simsopt)\n[![codecov](https://codecov.io/gh/hiddenSymmetries/simsopt/branch/master/graph/badge.svg?token=ltN6qonZ5p)](https://codecov.io/gh/hiddenSymmetries/simsopt)\n[![DOI](https://zenodo.org/badge/247710081.svg)](https://zenodo.org/badge/latestdoi/247710081)\n\n![SIMSOPT](docs/source/logo.png)\n![SIMSOPT](docs/source/coils_and_surfaces.png)\n\n`simsopt` is a framework for optimizing\n[stellarators](https://en.wikipedia.org/wiki/Stellarator).\nThe high-level routines of `simsopt` are in python, with calls to C++\nor fortran where needed for performance. Several types of components\nare included:\n\n- Interfaces to physics codes, e.g. for MHD equilibrium.\n- Tools for defining objective functions and parameter spaces for\n optimization.\n- Geometric objects that are important for stellarators - surfaces and\n curves - with several available parameterizations.\n- Efficient implementations of the Biot-Savart law and other magnetic\n field representations, including derivatives.\n- Tools for parallelized finite-difference gradient calculations.\n\nThe design of `simsopt` is guided by several principles:\n\n- Thorough unit testing, regression testing, and continuous\n integration.\n- Extensibility: It should be possible to add new codes and terms to\n the objective function without editing modules that already work,\n i.e. the [open-closed principle](https://en.wikipedia.org/wiki/Open%E2%80%93closed_principle).\n This is because any edits to working code can potentially introduce bugs.\n- Modularity: Physics modules that are not needed for your\n optimization problem do not need to be installed. For instance, to\n optimize SPEC equilibria, the VMEC module need not be installed.\n- Flexibility: The components used to define an objective function can\n be re-used for applications other than standard optimization. For\n instance, a `simsopt` objective function is a standard python\n function that can be plotted, passed to optimization packages\n outside of `simsopt`, etc.\n\n`simsopt` is fully open-source, and anyone is welcome to use it, make\nsuggestions, and contribute.\n\nSeveral methods are available for installing `simsopt`. One\nrecommended approach is to use pip:\n\n pip install simsopt\n\nFor detailed installation instructions on some specific systems, see\n[the wiki](https://github.com/hiddenSymmetries/simsopt/wiki).\nAlso, a Docker container is available with `simsopt` and its components pre-installed, which\ncan be started using\n\n docker run -it --rm hiddensymmetries/simsopt\n\nMore [installation\noptions](https://simsopt.readthedocs.io/en/latest/installation.html),\n[instructions for the Docker\ncontainer](https://simsopt.readthedocs.io/en/latest/containers.html), and\nother information can be found in the [main simsopt documentation\nhere.](https://simsopt.readthedocs.io)\n\nSome of the physics modules with compiled code reside in separate\nrepositories. These separate modules include\n\n- [VMEC](https://github.com/hiddenSymmetries/VMEC2000), for MHD\n equilibrium.\n- [SPEC](https://github.com/PrincetonUniversity/SPEC), for MHD\n equilibrium.\n- [booz_xform](https://hiddensymmetries.github.io/booz_xform), for\n Boozer coordinates.\n \nIf you use `simsopt` in your research, kindly cite the code using\n[this reference](https://doi.org/10.21105/joss.03525):\n\n[1] M Landreman, B Medasani, F Wechsung, A Giuliani, R Jorge, and C Zhu,\n \"SIMSOPT: A flexible framework for stellarator optimization\",\n *J. Open Source Software* **6**, 3525 (2021).\n\nSee also [the simsopt publications page](https://simsopt.readthedocs.io/en/latest/publications.html).\n\nWe gratefully acknowledge funding from the [Simons Foundation's Hidden\nsymmetries and fusion energy\nproject](https://hiddensymmetries.princeton.edu). \n",
"bugtrack_url": null,
"license": "MIT License",
"summary": "Framework for optimizing stellarators",
"version": "1.2.0",
"project_urls": {
"Documentation": "https://simsopt.readthedocs.io",
"Download": "https://pypi.org/project/simsopt",
"Homepage": "https://github.com/hiddenSymmetries/simsopt",
"Issues": "https://github.com/hiddenSymmetries/simsopt/issues",
"Repository": "https://github.com/hiddenSymmetries/simsopt"
},
"split_keywords": [
"plasma",
"physics",
"plasma",
"magnetohydrodynamics",
"mhd",
"nuclear",
"fusion",
"reactor",
"fusion",
"stellarator",
"vmec",
"spec",
"optimization",
"biot-savart",
"magnetostatics"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "9703c471a3d6f202f42bcde60c53099fb71d26f5a08847e01c8ba4d7c513767b",
"md5": "6026d76979bb6393c64656f52aeda97d",
"sha256": "d013b2019e3953c20e7254d34df1e31c9f95f7b36cbe4cbe925d2f8e203763ac"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp310-cp310-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "6026d76979bb6393c64656f52aeda97d",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 1193475,
"upload_time": "2024-01-16T17:36:11",
"upload_time_iso_8601": "2024-01-16T17:36:11.838166Z",
"url": "https://files.pythonhosted.org/packages/97/03/c471a3d6f202f42bcde60c53099fb71d26f5a08847e01c8ba4d7c513767b/simsopt-1.2.0-cp310-cp310-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "1b7c4a543d7ff376eb5c6ed2781b81bb500933b13c4d958fd9f42a4184af7666",
"md5": "b275478ab1cbd279c6007882c94e20fa",
"sha256": "bf964f9fab51a5cc0e2d2ea546459611d6d2eae756edfed080beeb6b716bf0b3"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp310-cp310-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "b275478ab1cbd279c6007882c94e20fa",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 1067981,
"upload_time": "2024-01-16T17:36:15",
"upload_time_iso_8601": "2024-01-16T17:36:15.503038Z",
"url": "https://files.pythonhosted.org/packages/1b/7c/4a543d7ff376eb5c6ed2781b81bb500933b13c4d958fd9f42a4184af7666/simsopt-1.2.0-cp310-cp310-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "2294dea574806bdca7be67a953820eddafc657aface11d2894cf3e464a346f18",
"md5": "b734dfc8020831daf887cfbaa1a53584",
"sha256": "4a247776ecc551a7ae726f9cb1d1feaaca15244e2a0912d2546485d2b2505029"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "b734dfc8020831daf887cfbaa1a53584",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 1273488,
"upload_time": "2024-01-16T17:36:18",
"upload_time_iso_8601": "2024-01-16T17:36:18.529672Z",
"url": "https://files.pythonhosted.org/packages/22/94/dea574806bdca7be67a953820eddafc657aface11d2894cf3e464a346f18/simsopt-1.2.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9fcd2dcaff74940e068727316a9f6db447fe2716e74f135f433df357b6adc405",
"md5": "d2a85d615cb73a60aac524625ab10043",
"sha256": "8035b7fbfbbd8c9b0637b138d05a68ce552d89fa7daf225b5f20efeb56989475"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp310-cp310-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "d2a85d615cb73a60aac524625ab10043",
"packagetype": "bdist_wheel",
"python_version": "cp310",
"requires_python": ">=3.8",
"size": 1778305,
"upload_time": "2024-01-16T17:36:20",
"upload_time_iso_8601": "2024-01-16T17:36:20.883261Z",
"url": "https://files.pythonhosted.org/packages/9f/cd/2dcaff74940e068727316a9f6db447fe2716e74f135f433df357b6adc405/simsopt-1.2.0-cp310-cp310-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "392558426530a8fe53b516dc7e42908215bcd1d429abf4c183997cc5f8f60291",
"md5": "989c167f58151071f89a76a788c44900",
"sha256": "2323f4046407b19e19dcfd529ac125476485f3bbcabfc3c21aad7984db65adaa"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp311-cp311-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "989c167f58151071f89a76a788c44900",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 1194478,
"upload_time": "2024-01-16T17:36:23",
"upload_time_iso_8601": "2024-01-16T17:36:23.780663Z",
"url": "https://files.pythonhosted.org/packages/39/25/58426530a8fe53b516dc7e42908215bcd1d429abf4c183997cc5f8f60291/simsopt-1.2.0-cp311-cp311-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "72fac5761491e5d1a8fc3665c7f072df61a32449f420db72430b55eab82bb745",
"md5": "6c8124098184a9475097834b0a6c36bc",
"sha256": "eaeafb7520d6d1ae7ae0578ec0c3c012b194f9e504a30d493e7c0d789329bf96"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp311-cp311-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "6c8124098184a9475097834b0a6c36bc",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 1069268,
"upload_time": "2024-01-16T17:36:26",
"upload_time_iso_8601": "2024-01-16T17:36:26.400583Z",
"url": "https://files.pythonhosted.org/packages/72/fa/c5761491e5d1a8fc3665c7f072df61a32449f420db72430b55eab82bb745/simsopt-1.2.0-cp311-cp311-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "e47656eeb86913b868e89c1de858bfd86cf34f042a5dc68aa51840c75725fc8a",
"md5": "a6c43198ad0d7a40eb09a869ecd2e352",
"sha256": "c0192180f9b4f8d3e958a77d01aaa2e7b6fcd35885f0ceb0e9374788ae16658e"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "a6c43198ad0d7a40eb09a869ecd2e352",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 1274721,
"upload_time": "2024-01-16T17:36:28",
"upload_time_iso_8601": "2024-01-16T17:36:28.566588Z",
"url": "https://files.pythonhosted.org/packages/e4/76/56eeb86913b868e89c1de858bfd86cf34f042a5dc68aa51840c75725fc8a/simsopt-1.2.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "6bbb484a2e014b2d56c997e643285998a75f659749400ad9fd30fd300f271bd2",
"md5": "543e41edd1866fcf4e5f2eddb26ab074",
"sha256": "bf7d8addf1c1c15006acb7a4bbe96f8045c080ca046caa3f375dd354c3329bd1"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp311-cp311-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "543e41edd1866fcf4e5f2eddb26ab074",
"packagetype": "bdist_wheel",
"python_version": "cp311",
"requires_python": ">=3.8",
"size": 1778816,
"upload_time": "2024-01-16T17:36:31",
"upload_time_iso_8601": "2024-01-16T17:36:31.223156Z",
"url": "https://files.pythonhosted.org/packages/6b/bb/484a2e014b2d56c997e643285998a75f659749400ad9fd30fd300f271bd2/simsopt-1.2.0-cp311-cp311-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "8e612605611b8ac6c34c9aa9a3cf9e58cf56c43114bab9457d20ba648b17d32d",
"md5": "6cbb9b4420710472cf6d41e603632482",
"sha256": "1877ce21e2e2493cbeee38fa93bf7da2be49cea9d9cde69215b377201ddab30f"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp38-cp38-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "6cbb9b4420710472cf6d41e603632482",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 1193390,
"upload_time": "2024-01-16T17:36:34",
"upload_time_iso_8601": "2024-01-16T17:36:34.410392Z",
"url": "https://files.pythonhosted.org/packages/8e/61/2605611b8ac6c34c9aa9a3cf9e58cf56c43114bab9457d20ba648b17d32d/simsopt-1.2.0-cp38-cp38-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c73fdaeaffed501725c537d48e9e81ed2778cda53e5a8f9e01c9e3cf5f601745",
"md5": "b87ede2a27133183d7239076afaffbe9",
"sha256": "c543e05c9f4c310135c9a225df12cb702f77f3da93aa56017a9c37d7c61d828b"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp38-cp38-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "b87ede2a27133183d7239076afaffbe9",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 1067723,
"upload_time": "2024-01-16T17:36:37",
"upload_time_iso_8601": "2024-01-16T17:36:37.194548Z",
"url": "https://files.pythonhosted.org/packages/c7/3f/daeaffed501725c537d48e9e81ed2778cda53e5a8f9e01c9e3cf5f601745/simsopt-1.2.0-cp38-cp38-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "021d72d4cb285a53f6539bc81e2a4c0424fc13ecdf9f95ba9511fb8607b265c9",
"md5": "5e741c5043603389efbcdbb1bbcaf654",
"sha256": "ce8802d12654915ec5876481dfdb80af1be8416f8d5b3f8b0a5ae5df7a0a9053"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "5e741c5043603389efbcdbb1bbcaf654",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 1273346,
"upload_time": "2024-01-16T17:36:39",
"upload_time_iso_8601": "2024-01-16T17:36:39.727542Z",
"url": "https://files.pythonhosted.org/packages/02/1d/72d4cb285a53f6539bc81e2a4c0424fc13ecdf9f95ba9511fb8607b265c9/simsopt-1.2.0-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9574827bf477b1ef495b0e46fd76a9cac96ba71401768ab19705769847786598",
"md5": "43805942c77c620a6b8b6116bdd8b843",
"sha256": "cfca68a0cdc303402b10ece1aac1fd68e345d4e79d1ae68d4e231368e881f580"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp38-cp38-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "43805942c77c620a6b8b6116bdd8b843",
"packagetype": "bdist_wheel",
"python_version": "cp38",
"requires_python": ">=3.8",
"size": 1778001,
"upload_time": "2024-01-16T17:36:42",
"upload_time_iso_8601": "2024-01-16T17:36:42.496315Z",
"url": "https://files.pythonhosted.org/packages/95/74/827bf477b1ef495b0e46fd76a9cac96ba71401768ab19705769847786598/simsopt-1.2.0-cp38-cp38-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "84d55f08fea40f3ca0f465658471b07a1f929138987bbd68ddd2548bd17e2434",
"md5": "4d668527d60dff826186e13e9a0293ac",
"sha256": "0906763e5b5005656632973c7473d2b40bc966f2e74dda7a9d5587ffe07d9408"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp39-cp39-macosx_10_9_x86_64.whl",
"has_sig": false,
"md5_digest": "4d668527d60dff826186e13e9a0293ac",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 1193543,
"upload_time": "2024-01-16T17:36:44",
"upload_time_iso_8601": "2024-01-16T17:36:44.559192Z",
"url": "https://files.pythonhosted.org/packages/84/d5/5f08fea40f3ca0f465658471b07a1f929138987bbd68ddd2548bd17e2434/simsopt-1.2.0-cp39-cp39-macosx_10_9_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "dd15fe5baded24c80c3090fd04c1465b1339e7404971503489635a0c4c88f578",
"md5": "8c259dcf3171f2bd95987362ff708a5d",
"sha256": "38ec8ff95a6ad75b584938f68eb4ef153016e0e7f82cd4a1a22377c99200f569"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp39-cp39-macosx_11_0_arm64.whl",
"has_sig": false,
"md5_digest": "8c259dcf3171f2bd95987362ff708a5d",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 1068101,
"upload_time": "2024-01-16T17:36:46",
"upload_time_iso_8601": "2024-01-16T17:36:46.899832Z",
"url": "https://files.pythonhosted.org/packages/dd/15/fe5baded24c80c3090fd04c1465b1339e7404971503489635a0c4c88f578/simsopt-1.2.0-cp39-cp39-macosx_11_0_arm64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3573fc7590ec9590f243d58cd2ab8aab00dcb28c5eedc0b8c2235bcab952a6e9",
"md5": "945c0726af75fccd41522b83d238cc83",
"sha256": "f094cd5122478010ee67d33a69ab6f3705c48471bfe55afaf493eebbf4587ecd"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"has_sig": false,
"md5_digest": "945c0726af75fccd41522b83d238cc83",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 1273997,
"upload_time": "2024-01-16T17:36:49",
"upload_time_iso_8601": "2024-01-16T17:36:49.263505Z",
"url": "https://files.pythonhosted.org/packages/35/73/fc7590ec9590f243d58cd2ab8aab00dcb28c5eedc0b8c2235bcab952a6e9/simsopt-1.2.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "47859d529af0f53dbf29ece56fe21d4f89a75f283514c7f5e0be9a56315577d6",
"md5": "9040fdb3520ead327f4e8cb94a976c0d",
"sha256": "21230f25694ba95432ab3d7bfc53cf6da739abdfe9fec5396d58a8a784ac5949"
},
"downloads": -1,
"filename": "simsopt-1.2.0-cp39-cp39-musllinux_1_1_x86_64.whl",
"has_sig": false,
"md5_digest": "9040fdb3520ead327f4e8cb94a976c0d",
"packagetype": "bdist_wheel",
"python_version": "cp39",
"requires_python": ">=3.8",
"size": 1778512,
"upload_time": "2024-01-16T17:36:51",
"upload_time_iso_8601": "2024-01-16T17:36:51.916690Z",
"url": "https://files.pythonhosted.org/packages/47/85/9d529af0f53dbf29ece56fe21d4f89a75f283514c7f5e0be9a56315577d6/simsopt-1.2.0-cp39-cp39-musllinux_1_1_x86_64.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "3457d4928851bbe41a60743b850184bb8e969b305891c92ccc3bbe034773477c",
"md5": "936c71bf60ecd12e38423161cca676bb",
"sha256": "74f5a48f271bf038f90b06ffad17ab3ad83ca7062fd0ffd4c5c0ec7373ee1aea"
},
"downloads": -1,
"filename": "simsopt-1.2.0.tar.gz",
"has_sig": false,
"md5_digest": "936c71bf60ecd12e38423161cca676bb",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 25124346,
"upload_time": "2024-01-16T17:36:56",
"upload_time_iso_8601": "2024-01-16T17:36:56.919120Z",
"url": "https://files.pythonhosted.org/packages/34/57/d4928851bbe41a60743b850184bb8e969b305891c92ccc3bbe034773477c/simsopt-1.2.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-01-16 17:36:56",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "hiddenSymmetries",
"github_project": "simsopt",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [],
"tox": true,
"lcname": "simsopt"
}