Skip to main content

SBGeom

SBGeom is a package for creating parametric stellarator geometry from VMEC files and filament coils.

Current features:

  • Flux surfaces position including beyond the last closed flux surface
  • Constant $\phi$ radial extension from last closed flux surface
  • Discrete and fourier coils position and tangent
  • Meshing of surfaces inside the plasma
  • Meshing of surfaces outside the plasma by specifying a distance from the last closed flux surface
  • Fourier transforming surfaces outside the plasma using equal-arclength parametrisation and non-equidistant surfaces
  • Finite build coils using rotation-minimized frames
  • Fourier transforming discrete coil filaments using equal-arclength parametrisation
  • Meshing of watertight surfaces
  • Meshing of layered geometries using tetrahedrons

Documentation at the moment only available at https://s1668021.pages.tue.nl/sbgeom_v2/index.html (requires TU/e account).

Installation

Linux

Linux wheels are available on PyPi:

pip install sbgeom

For manual compilation, see below.

Windows and MacOS

No wheels are available. Compilation can be done by first cloning Eigen3 and setting the environment variable as :

git clone https://gitlab.com/libeigen/eigen.git
export EIGEN3_INCLUDE_DIR=$PWD/eigen/

Nanobind is used for binding generation:

pip install nanobind

Some C++20 features are used, so a compatible compiler is required. Then, install using

pip install .

TODO

This package was developed solely to satisfy the requirements I had at that time, and thus, some desirable features are not present. Some features that could be especially useful include:

  • Ports, divertors, intra-coil support structures
  • Automated DAGMC conversions

Metadata

Release files for SBGeom 0.0.6

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

Source distribution (sdist)

Source distribution for SBGeom 0.0.6
File Size Uploaded Provenance Actions
sbgeom-0.0.6.tar.gz 61.7 MB Without provenance Details for sbgeom-0.0.6.tar.gz

Built distributions (wheels)

Table of built distributions (wheels) for SBGeom 0.0.6
File Actions
sbgeom-0.0.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.10 PyPy 3.10 7.3 Linux glibc 2.17+ x86-64 Details for sbgeom-0.0.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
sbgeom-0.0.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.9 PyPy 3.9 7.3 Linux glibc 2.17+ x86-64 Details for sbgeom-0.0.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
sbgeom-0.0.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl PyPy 3.8 PyPy 3.8 7.3 Linux glibc 2.17+ x86-64 Details for sbgeom-0.0.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
sbgeom-0.0.6-cp312-cp312-musllinux_1_2_x86_64.whl CPython 3.12 CPython 3.12 Linux musl 1.2+ x86-64 Details for sbgeom-0.0.6-cp312-cp312-musllinux_1_2_x86_64.whl
sbgeom-0.0.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.12 CPython 3.12 Linux glibc 2.17+ x86-64 Details for sbgeom-0.0.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
sbgeom-0.0.6-cp311-cp311-musllinux_1_2_x86_64.whl CPython 3.11 CPython 3.11 Linux musl 1.2+ x86-64 Details for sbgeom-0.0.6-cp311-cp311-musllinux_1_2_x86_64.whl
sbgeom-0.0.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.11 CPython 3.11 Linux glibc 2.17+ x86-64 Details for sbgeom-0.0.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
sbgeom-0.0.6-cp310-cp310-musllinux_1_2_x86_64.whl CPython 3.10 CPython 3.10 Linux musl 1.2+ x86-64 Details for sbgeom-0.0.6-cp310-cp310-musllinux_1_2_x86_64.whl
sbgeom-0.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.10 CPython 3.10 Linux glibc 2.17+ x86-64 Details for sbgeom-0.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
sbgeom-0.0.6-cp39-cp39-musllinux_1_2_x86_64.whl CPython 3.9 CPython 3.9 Linux musl 1.2+ x86-64 Details for sbgeom-0.0.6-cp39-cp39-musllinux_1_2_x86_64.whl
sbgeom-0.0.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.9 CPython 3.9 Linux glibc 2.17+ x86-64 Details for sbgeom-0.0.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
sbgeom-0.0.6-cp38-cp38-musllinux_1_2_x86_64.whl CPython 3.8 CPython 3.8 Linux musl 1.2+ x86-64 Details for sbgeom-0.0.6-cp38-cp38-musllinux_1_2_x86_64.whl
sbgeom-0.0.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl CPython 3.8 CPython 3.8 Linux glibc 2.17+ x86-64 Details for sbgeom-0.0.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Total release size: 69.0 MB

Release files / sbgeom-0.0.6.tar.gz

Download URL sbgeom-0.0.6.tar.gz
Size 61.7 MB
Tags Source
SHA-256 checksum
How to use checksums
4f1707fc50c8c6469d492d836686b0a0675cee06be0b505636c801a578b023ae
BLAKE2b-256 checksum
How to use checksums
e67264e8dd7c9b5a7b8c73ad74293753759cb810e68b596a066d2d5fe0abdc80
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL sbgeom-0.0.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 346.1 kB
Tags Linux glibc 2.17+ x86-64 PyPy 3.10 PyPy 3.10 7.3
SHA-256 checksum
How to use checksums
8646bbc54c5c19225b57964f9d472163c5bc2197952c824cb58a0e04f3e55b12
BLAKE2b-256 checksum
How to use checksums
7c3df9b629fec0449132303a53b328bda28290ee22c6cb33c790e51072662808
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL sbgeom-0.0.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 346.1 kB
Tags Linux glibc 2.17+ x86-64 PyPy 3.9 PyPy 3.9 7.3
SHA-256 checksum
How to use checksums
f1a6865eb8db23378576c69a7db1031e69246cf234cb9586a1a1e67c92bbc575
BLAKE2b-256 checksum
How to use checksums
0e046ba16b5487acbe46a99be9e0e4e04715e7f93d35df1351f5dde555ba87f4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL sbgeom-0.0.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 345.8 kB
Tags Linux glibc 2.17+ x86-64 PyPy 3.8 PyPy 3.8 7.3
SHA-256 checksum
How to use checksums
d45786118fc1a5ec22bea50c73ec33f6d287a631db540086c3a91e23dd125def
BLAKE2b-256 checksum
How to use checksums
d3648498d6d12e9a5a81cd03fa55cd84574ae6244cff6df19123df7d4576f86b
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-cp312-cp312-musllinux_1_2_x86_64.whl

Download URL sbgeom-0.0.6-cp312-cp312-musllinux_1_2_x86_64.whl
Size 901.4 kB
Tags CPython 3.12 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
99074a2b2ca9affb4db8e0815ec4680acabe607a93273b7144584ada21266ad7
BLAKE2b-256 checksum
How to use checksums
562e7e82671e2f9342b98756c5fc9af00defa4eb2b3e5c8241fb855c96f434c0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL sbgeom-0.0.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 348.2 kB
Tags CPython 3.12 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
7b8ba879673fa8bfefd381d486177bea7cd7de2456ccac0180db77b00a900683
BLAKE2b-256 checksum
How to use checksums
58a5e8c07a601dc21ebb5d5fe3d4da771126c0a884e6bbb96808adc1c04ada82
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-cp311-cp311-musllinux_1_2_x86_64.whl

Download URL sbgeom-0.0.6-cp311-cp311-musllinux_1_2_x86_64.whl
Size 902.4 kB
Tags CPython 3.11 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
2e0c70e24fa3d99d5918935e5a2d46633c5c687408e152975890b56dc86ac76e
BLAKE2b-256 checksum
How to use checksums
0c277cd6c14c29073e90e97e41430787f7712f4b5fdb6ae86b40fa885e494cc7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL sbgeom-0.0.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 349.2 kB
Tags CPython 3.11 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
01954e45e09bf8d0db10fa7e2512e138eec3f8454ec921b1593a44115665f389
BLAKE2b-256 checksum
How to use checksums
65ad324165b160e9e7b1def82e4a96b4d89647e7bd98462c9c36aa2c068a6b4e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-cp310-cp310-musllinux_1_2_x86_64.whl

Download URL sbgeom-0.0.6-cp310-cp310-musllinux_1_2_x86_64.whl
Size 902.8 kB
Tags CPython 3.10 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
5d376955a93afb7ca957c6810d05364fa7c0b117570ca680d483b61c94e32dc6
BLAKE2b-256 checksum
How to use checksums
32b12b8a0034b5a0a3b07b8971c5717df885078b1f9996149f4ff883a4ee3641
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL sbgeom-0.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 349.5 kB
Tags CPython 3.10 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
4b8dfe879d7bad7cdd448b3a3fc6d5db67c73ed2cb1ef4e747007962ac4d0257
BLAKE2b-256 checksum
How to use checksums
3e2482ca90d8b9ff7f6498f7275501dfe927cf900f9f58c4e9b22112c6ea16e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-cp39-cp39-musllinux_1_2_x86_64.whl

Download URL sbgeom-0.0.6-cp39-cp39-musllinux_1_2_x86_64.whl
Size 902.7 kB
Tags CPython 3.9 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
0d4946ffb2b51ac9ca1361ddff254252917055db4210f735d589c8b98b87d5e8
BLAKE2b-256 checksum
How to use checksums
f143d27ad18ab0cff1a1b5c610b4a7dd42810c2c7b1b2d21f9b073db9e3690b6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL sbgeom-0.0.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 349.6 kB
Tags CPython 3.9 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
14c1e44670ca3244962bf37a84eb1dfc98b339c057d5afed5daf8e85c7fb6aed
BLAKE2b-256 checksum
How to use checksums
ecb4f4aaa1ca14fa2c8d8a9e069c4736704c78cc93d9a82921f7ffcb28501897
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-cp38-cp38-musllinux_1_2_x86_64.whl

Download URL sbgeom-0.0.6-cp38-cp38-musllinux_1_2_x86_64.whl
Size 902.0 kB
Tags CPython 3.8 Linux musl 1.2+ x86-64
SHA-256 checksum
How to use checksums
50d3fb7dbb166ba7dd3bf5b8637f865e7a78c143924d6dc72f778e3265410125
BLAKE2b-256 checksum
How to use checksums
3981f147d13a2c10d86fe5ac5b76c6a6855ccc4a379942be91e8798e7883acc9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Release files / sbgeom-0.0.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl

Download URL sbgeom-0.0.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Size 348.8 kB
Tags CPython 3.8 Linux glibc 2.17+ x86-64
SHA-256 checksum
How to use checksums
808a7c323d5d05492a90515cfd34aa87a97718b63353f9cbc8f5c1ef35453f86
BLAKE2b-256 checksum
How to use checksums
891b0e3bfc10e5bd733f051dfd7973cba9d4e0317adeb924463d9e1aebdf3975
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.10

Security for SBGeom 0.0.6

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.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

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