Skip to main content

simsopt

GitHub codecov DOI

SIMSOPT SIMSOPT

simsopt is a framework for optimizing stellarators. 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. 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. 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, instructions for the Docker container, and other information can be found in the main simsopt documentation here.

Some of the physics modules with compiled code reside in separate repositories. These separate modules include

  • VMEC, for MHD equilibrium.
  • SPEC, for MHD equilibrium.
  • booz_xform, for Boozer coordinates.

If you use simsopt in your research, kindly cite the code using this reference:

[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.

We gratefully acknowledge funding from the Simons Foundation's Hidden symmetries and fusion energy project.

Metadata

Release files for simsopt 1.11.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for simsopt 1.11.1
File Size Uploaded Provenance
simsopt-1.11.1.tar.gz 29.8 MB Without provenance Details

Built distributions (wheels)

Table of built distributions (wheels) for simsopt 1.11.1
File
simsopt-1.11.1-cp313-cp313-manylinux_2_28_x86_64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ x86-64 Details
simsopt-1.11.1-cp313-cp313-manylinux_2_28_aarch64.whl CPython 3.13 CPython 3.13 Linux glibc 2.28+ ARM64 Details
simsopt-1.11.1-cp313-cp313-macosx_11_0_arm64.whl CPython 3.13 CPython 3.13 macOS 11.0+ ARM64 Details
simsopt-1.11.1-cp313-cp313-macosx_10_13_x86_64.whl CPython 3.13 CPython 3.13 macOS 10.13+ x86-64 Details
simsopt-1.11.1-cp312-cp312-manylinux_2_28_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ x86-64 Details
simsopt-1.11.1-cp312-cp312-manylinux_2_28_aarch64.whl CPython 3.12 CPython 3.12 Linux glibc 2.28+ ARM64 Details
simsopt-1.11.1-cp312-cp312-macosx_11_0_arm64.whl CPython 3.12 CPython 3.12 macOS 11.0+ ARM64 Details
simsopt-1.11.1-cp312-cp312-macosx_10_13_x86_64.whl CPython 3.12 CPython 3.12 macOS 10.13+ x86-64 Details
simsopt-1.11.1-cp311-cp311-manylinux_2_28_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ x86-64 Details
simsopt-1.11.1-cp311-cp311-manylinux_2_28_aarch64.whl CPython 3.11 CPython 3.11 Linux glibc 2.28+ ARM64 Details
simsopt-1.11.1-cp311-cp311-macosx_11_0_arm64.whl CPython 3.11 CPython 3.11 macOS 11.0+ ARM64 Details
simsopt-1.11.1-cp311-cp311-macosx_10_9_x86_64.whl CPython 3.11 CPython 3.11 macOS 10.9+ x86-64 Details
simsopt-1.11.1-cp310-cp310-manylinux_2_28_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ x86-64 Details
simsopt-1.11.1-cp310-cp310-manylinux_2_28_aarch64.whl CPython 3.10 CPython 3.10 Linux glibc 2.28+ ARM64 Details
simsopt-1.11.1-cp310-cp310-macosx_11_0_arm64.whl CPython 3.10 CPython 3.10 macOS 11.0+ ARM64 Details
simsopt-1.11.1-cp310-cp310-macosx_10_9_x86_64.whl CPython 3.10 CPython 3.10 macOS 10.9+ x86-64 Details

Total release size: 54.5 MB

Release files / simsopt-1.11.1.tar.gz

Download URL simsopt-1.11.1.tar.gz
Size 29.8 MB
Tags Source
SHA-256 checksum
How to use checksums
33a39375a73223043ab5ce0f814574474da1842749036c7ad39a6f3ccc295089
BLAKE2b-256 checksum
How to use checksums
5b1d477478e110b8aedec5a694bf871efad1b6b5e2a0762473f695db5ff89a2f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp313-cp313-manylinux_2_28_x86_64.whl

Download URL simsopt-1.11.1-cp313-cp313-manylinux_2_28_x86_64.whl
Size 1.7 MB
Tags CPython 3.13 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
36ed1a59b14bc100df4644cc01e6a223bdd8cab610bd75f44e223321ee2d8ec6
BLAKE2b-256 checksum
How to use checksums
6f066facb57527786b60201f44e9e5cc01456cee847ece7a5591744c8d2f2706
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp313-cp313-manylinux_2_28_aarch64.whl

Download URL simsopt-1.11.1-cp313-cp313-manylinux_2_28_aarch64.whl
Size 1.6 MB
Tags CPython 3.13 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
27166d3bde668b7341a06ad9a1227db2191bae3b61b40fd94383a450ce66a30d
BLAKE2b-256 checksum
How to use checksums
48cebca052e1a1ba8bc620b263de46872fb022c862dd05a974b5783312d88fb7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp313-cp313-macosx_11_0_arm64.whl

Download URL simsopt-1.11.1-cp313-cp313-macosx_11_0_arm64.whl
Size 1.4 MB
Tags CPython 3.13 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
6ae258af17291e66cbf75e27ee845b9db1a30d5901c469a95e68bea09f7a6429
BLAKE2b-256 checksum
How to use checksums
7f9d121e6fb561816c23606019f164bf3e576287b9ac9f976e49834efb4304b7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp313-cp313-macosx_10_13_x86_64.whl

Download URL simsopt-1.11.1-cp313-cp313-macosx_10_13_x86_64.whl
Size 1.5 MB
Tags CPython 3.13 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
afdbb6f2102e11c649b629295d3429c5238a4005f8d6e83a6bd4d7a71f4041b8
BLAKE2b-256 checksum
How to use checksums
e49cc96f1b0844d89ef23d314fbd0a0d0d6138123de60b0da9bfc0126feada8f
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp312-cp312-manylinux_2_28_x86_64.whl

Download URL simsopt-1.11.1-cp312-cp312-manylinux_2_28_x86_64.whl
Size 1.7 MB
Tags CPython 3.12 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
4723ca19433dd735e138bf903ba39eb38138b55fef0be810ee1647d4be0c874c
BLAKE2b-256 checksum
How to use checksums
c603e58cb108c0eb8a82d9cda6489d524123b018e0856f74653c3d2e15c9eae6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp312-cp312-manylinux_2_28_aarch64.whl

Download URL simsopt-1.11.1-cp312-cp312-manylinux_2_28_aarch64.whl
Size 1.6 MB
Tags CPython 3.12 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
61a78c2b644074767809bc7754821df168c87529bb88535001f41dd261dc07c2
BLAKE2b-256 checksum
How to use checksums
0e8d212ca87a595ed7902e1d87960cfb894b35cfb61d14dd8a9a5ce6cf899a90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp312-cp312-macosx_11_0_arm64.whl

Download URL simsopt-1.11.1-cp312-cp312-macosx_11_0_arm64.whl
Size 1.4 MB
Tags CPython 3.12 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
eb988f9a0865b591b405345bb9156018643af5e5e11c60a4f276fa02aee0df9a
BLAKE2b-256 checksum
How to use checksums
1795bae611d95ac5e5961fd7e07e02c4c47d3856359643c12e35f989358a7fa1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp312-cp312-macosx_10_13_x86_64.whl

Download URL simsopt-1.11.1-cp312-cp312-macosx_10_13_x86_64.whl
Size 1.5 MB
Tags CPython 3.12 macOS 10.13+ x86-64
SHA-256 checksum
How to use checksums
7891b2068886476dd87009cfb286698fe4004ddf83bf52de0606620b0b1f3d4d
BLAKE2b-256 checksum
How to use checksums
b99dd2a6d9ffa3cb05e8563442455f21a058ed3fdc35fa74843f295cb9de3121
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp311-cp311-manylinux_2_28_x86_64.whl

Download URL simsopt-1.11.1-cp311-cp311-manylinux_2_28_x86_64.whl
Size 1.7 MB
Tags CPython 3.11 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
c1e66c56e97b866220f4ebe74488d5b716570b5fe2d8589b4eec808f42eae3aa
BLAKE2b-256 checksum
How to use checksums
7296ee7dae8245cc948c5a757bf130570f930e1999c2c6c8a7e7f9999fba44a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp311-cp311-manylinux_2_28_aarch64.whl

Download URL simsopt-1.11.1-cp311-cp311-manylinux_2_28_aarch64.whl
Size 1.6 MB
Tags CPython 3.11 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
a3937c4c7c96ad9d0e2fa2f0eae70f057e12253e565df606454d19662020bcba
BLAKE2b-256 checksum
How to use checksums
15ee3758ab0319ea2123795689ae11deec86d388bf31c8171df74c394f0e14df
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp311-cp311-macosx_11_0_arm64.whl

Download URL simsopt-1.11.1-cp311-cp311-macosx_11_0_arm64.whl
Size 1.4 MB
Tags CPython 3.11 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
5ba3b890f83fee52a751f81f83b7783a549ddadb5b59a22f007643cc84b0d4ca
BLAKE2b-256 checksum
How to use checksums
21768612a4487dd0865b4377316f9ee128ca1e3b00e4008743a7823324344a82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp311-cp311-macosx_10_9_x86_64.whl

Download URL simsopt-1.11.1-cp311-cp311-macosx_10_9_x86_64.whl
Size 1.5 MB
Tags CPython 3.11 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
1abaf9de18656caad4e043a5db2681f9873cba8e867c66d9834b9aaf43ae9113
BLAKE2b-256 checksum
How to use checksums
f2b7fac0adc00a3faeab023dd1c3085b28d15ecde290b1a89c83b4bf30d46cc1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp310-cp310-manylinux_2_28_x86_64.whl

Download URL simsopt-1.11.1-cp310-cp310-manylinux_2_28_x86_64.whl
Size 1.7 MB
Tags CPython 3.10 Linux glibc 2.28+ x86-64
SHA-256 checksum
How to use checksums
01ecafb69368ba6ddf498330596b008cb201f71bce632eb0c6ed46795dddf084
BLAKE2b-256 checksum
How to use checksums
62d6490510a8058caa01a7c86deb3361befce1e566cbb8f5fd48059707663398
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp310-cp310-manylinux_2_28_aarch64.whl

Download URL simsopt-1.11.1-cp310-cp310-manylinux_2_28_aarch64.whl
Size 1.6 MB
Tags CPython 3.10 Linux glibc 2.28+ ARM64
SHA-256 checksum
How to use checksums
eb2376b1f3aa9369e9f2ed6c5142cc3a9f640f3ed549bdc51f27564ceb128bec
BLAKE2b-256 checksum
How to use checksums
7e34abdd0c7552f81fe141e51c611cbe6c94967bdbe5094af9d1136987620cad
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp310-cp310-macosx_11_0_arm64.whl

Download URL simsopt-1.11.1-cp310-cp310-macosx_11_0_arm64.whl
Size 1.4 MB
Tags CPython 3.10 macOS 11.0+ ARM64
SHA-256 checksum
How to use checksums
4465afd83fa5f112c4cff8a545e8d934115cb24cfe9b4f8a4826d8cf569a54c9
BLAKE2b-256 checksum
How to use checksums
c37f41df38da8524442f47c3d7bd4055cb87ae1ed9435eb87ce1b697dc7a5981
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / simsopt-1.11.1-cp310-cp310-macosx_10_9_x86_64.whl

Download URL simsopt-1.11.1-cp310-cp310-macosx_10_9_x86_64.whl
Size 1.5 MB
Tags CPython 3.10 macOS 10.9+ x86-64
SHA-256 checksum
How to use checksums
80d6d7ba7618255c703859f160f961d646a0dfc4ea2200d5c037a70721844964
BLAKE2b-256 checksum
How to use checksums
fc26e067cac752b84366bf441626311493f17fe9bda5c09b0ee96d7690fa6d7a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Security for simsopt 1.11.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

1.11.1 This release

17 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page