Python package for creating stellarator geometry
Project description
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
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file sbgeom-0.0.6.tar.gz.
File metadata
- Download URL: sbgeom-0.0.6.tar.gz
- Upload date:
- Size: 61.7 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4f1707fc50c8c6469d492d836686b0a0675cee06be0b505636c801a578b023ae
|
|
| MD5 |
cde49f994d8ae157615083f547f88f08
|
|
| BLAKE2b-256 |
e67264e8dd7c9b5a7b8c73ad74293753759cb810e68b596a066d2d5fe0abdc80
|
File details
Details for the file sbgeom-0.0.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-pp310-pypy310_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 346.1 kB
- Tags: PyPy, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8646bbc54c5c19225b57964f9d472163c5bc2197952c824cb58a0e04f3e55b12
|
|
| MD5 |
4e1c69c415283ff9fbd5516417a51905
|
|
| BLAKE2b-256 |
7c3df9b629fec0449132303a53b328bda28290ee22c6cb33c790e51072662808
|
File details
Details for the file sbgeom-0.0.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-pp39-pypy39_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 346.1 kB
- Tags: PyPy, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
f1a6865eb8db23378576c69a7db1031e69246cf234cb9586a1a1e67c92bbc575
|
|
| MD5 |
05d6ffd9010dbd58522ed3be447d2e6c
|
|
| BLAKE2b-256 |
0e046ba16b5487acbe46a99be9e0e4e04715e7f93d35df1351f5dde555ba87f4
|
File details
Details for the file sbgeom-0.0.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-pp38-pypy38_pp73-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 345.8 kB
- Tags: PyPy, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d45786118fc1a5ec22bea50c73ec33f6d287a631db540086c3a91e23dd125def
|
|
| MD5 |
01725ec6d20d7b4483a1e05ffa0484c1
|
|
| BLAKE2b-256 |
d3648498d6d12e9a5a81cd03fa55cd84574ae6244cff6df19123df7d4576f86b
|
File details
Details for the file sbgeom-0.0.6-cp312-cp312-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-cp312-cp312-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 901.4 kB
- Tags: CPython 3.12, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
99074a2b2ca9affb4db8e0815ec4680acabe607a93273b7144584ada21266ad7
|
|
| MD5 |
f5091108b1b1d7f3b52c3eaf09866b37
|
|
| BLAKE2b-256 |
562e7e82671e2f9342b98756c5fc9af00defa4eb2b3e5c8241fb855c96f434c0
|
File details
Details for the file sbgeom-0.0.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 348.2 kB
- Tags: CPython 3.12, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
7b8ba879673fa8bfefd381d486177bea7cd7de2456ccac0180db77b00a900683
|
|
| MD5 |
ac5f43fcec091892c75c8de1fcaa85e2
|
|
| BLAKE2b-256 |
58a5e8c07a601dc21ebb5d5fe3d4da771126c0a884e6bbb96808adc1c04ada82
|
File details
Details for the file sbgeom-0.0.6-cp311-cp311-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-cp311-cp311-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 902.4 kB
- Tags: CPython 3.11, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2e0c70e24fa3d99d5918935e5a2d46633c5c687408e152975890b56dc86ac76e
|
|
| MD5 |
65e0109688bd372dcffbcb15e784179f
|
|
| BLAKE2b-256 |
0c277cd6c14c29073e90e97e41430787f7712f4b5fdb6ae86b40fa885e494cc7
|
File details
Details for the file sbgeom-0.0.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 349.2 kB
- Tags: CPython 3.11, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
01954e45e09bf8d0db10fa7e2512e138eec3f8454ec921b1593a44115665f389
|
|
| MD5 |
258435b305294fa89246defdf87afd57
|
|
| BLAKE2b-256 |
65ad324165b160e9e7b1def82e4a96b4d89647e7bd98462c9c36aa2c068a6b4e
|
File details
Details for the file sbgeom-0.0.6-cp310-cp310-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-cp310-cp310-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 902.8 kB
- Tags: CPython 3.10, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d376955a93afb7ca957c6810d05364fa7c0b117570ca680d483b61c94e32dc6
|
|
| MD5 |
fb91f40951ec9da4599b9d3c83d1feba
|
|
| BLAKE2b-256 |
32b12b8a0034b5a0a3b07b8971c5717df885078b1f9996149f4ff883a4ee3641
|
File details
Details for the file sbgeom-0.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 349.5 kB
- Tags: CPython 3.10, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4b8dfe879d7bad7cdd448b3a3fc6d5db67c73ed2cb1ef4e747007962ac4d0257
|
|
| MD5 |
1d75374c4cadebb42e1ce7bab1f281d3
|
|
| BLAKE2b-256 |
3e2482ca90d8b9ff7f6498f7275501dfe927cf900f9f58c4e9b22112c6ea16e1
|
File details
Details for the file sbgeom-0.0.6-cp39-cp39-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-cp39-cp39-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 902.7 kB
- Tags: CPython 3.9, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0d4946ffb2b51ac9ca1361ddff254252917055db4210f735d589c8b98b87d5e8
|
|
| MD5 |
f430d88c495c85975c4be113d1761067
|
|
| BLAKE2b-256 |
f143d27ad18ab0cff1a1b5c610b4a7dd42810c2c7b1b2d21f9b073db9e3690b6
|
File details
Details for the file sbgeom-0.0.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 349.6 kB
- Tags: CPython 3.9, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
14c1e44670ca3244962bf37a84eb1dfc98b339c057d5afed5daf8e85c7fb6aed
|
|
| MD5 |
c8d51522ba890cfcf4aff6e528e72277
|
|
| BLAKE2b-256 |
ecb4f4aaa1ca14fa2c8d8a9e069c4736704c78cc93d9a82921f7ffcb28501897
|
File details
Details for the file sbgeom-0.0.6-cp38-cp38-musllinux_1_2_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-cp38-cp38-musllinux_1_2_x86_64.whl
- Upload date:
- Size: 902.0 kB
- Tags: CPython 3.8, musllinux: musl 1.2+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
50d3fb7dbb166ba7dd3bf5b8637f865e7a78c143924d6dc72f778e3265410125
|
|
| MD5 |
218e4f866a2b052e50ea60e6b70e9041
|
|
| BLAKE2b-256 |
3981f147d13a2c10d86fe5ac5b76c6a6855ccc4a379942be91e8798e7883acc9
|
File details
Details for the file sbgeom-0.0.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.
File metadata
- Download URL: sbgeom-0.0.6-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
- Upload date:
- Size: 348.8 kB
- Tags: CPython 3.8, manylinux: glibc 2.17+ x86-64
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.12.10
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
808a7c323d5d05492a90515cfd34aa87a97718b63353f9cbc8f5c1ef35453f86
|
|
| MD5 |
542a3b5649c7a3eaaa445b3e1559bf2b
|
|
| BLAKE2b-256 |
891b0e3bfc10e5bd733f051dfd7973cba9d4e0317adeb924463d9e1aebdf3975
|