Skip to main content

Includes functions to upload DESC and VMEC data to the stellarator database.

Project description

Stellarator-Database

Includes the functions required to upload DESC or VMEC results to the stellarator database. You can access the database here.

This is still a work in progress.

Install using pip

If you are on Linux, WSL or MacOS, you should be able to install stelladb directly from PyPi.

pip install stelladb

You may have difficulty installing on Windows due to simsopt dependency. More detailed instructions will come for that. For now, you can use the repo on Windows with slight difference on building the environment.

Install using GIT

Clone GIT repo

git clone https://github.com/PlasmaControl/Stellarator-Database.git

Once you get the files,

cd Stellarator-Database

Building conda environment

conda create --name db 'python>=3.9, <=3.12'
conda activate db
pip install -r requirements.txt

If you are on Windows, simsopt might need additional instructions. If you just want to upload DESC results, follow these steps for creating conda environment,

conda create --name db 'python>=3.9, <=3.12'
conda activate db
pip install desc-opt selenium

Then, you can upload to database inside the repo, or anywhere where you can access the module stelladb.

Sample usage

For more detailed explanation, refer to the tutorial.ipynb notebook in the repo.

from desc.examples import get
from stelladb import save_to_db_desc

eq = get("HELIOTRON")

# if you are using DESC, you can directly upload Equilibrium or 
# EquilibriumFamily objects. For EquilibriumFamily, only the last
# Equilibrium will be uploaded.
save_to_db_desc(eq, config_name="test-HELIOTRON", user="username")

# if you have an outfile, supply the name of it without extension
# For DESC example, we need to save it first to get the .h5 file
eq.save("test_output_HELIOTRON.h5")
save_to_db_desc("test_output_HELIOTRON", config_name="another-HELIOTRON", user="username")

# use copy parameter, if you want the local copy of the files that are uploaded
# default value is False
save_to_db_desc(eq, config_name="HELIOTRON-test-name", user="username", copy=True)

You can give config_name as you wish. However, if there is an existing configuration with same parameters in the database, you will get following error,

Configuration data already exists in the database with name: HELIOTRON.

Then, you should change your config_name to match that and try again.

VMEC Utilities are not tested yet!

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

stelladb-0.2.9.tar.gz (12.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

stelladb-0.2.9-py3-none-any.whl (14.4 kB view details)

Uploaded Python 3

File details

Details for the file stelladb-0.2.9.tar.gz.

File metadata

  • Download URL: stelladb-0.2.9.tar.gz
  • Upload date:
  • Size: 12.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for stelladb-0.2.9.tar.gz
Algorithm Hash digest
SHA256 887c19e4ed7a56bd9f55ac558829f8fa8fe8c6f473b64d7b70ae2d1c9213d150
MD5 9935dbaa960a3cc1d24f8b65874c1c3c
BLAKE2b-256 1c8abe7d118e01bef7c65f59010a63f961541ae73c19979c1815c3a2d73c4229

See more details on using hashes here.

File details

Details for the file stelladb-0.2.9-py3-none-any.whl.

File metadata

  • Download URL: stelladb-0.2.9-py3-none-any.whl
  • Upload date:
  • Size: 14.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.9.19

File hashes

Hashes for stelladb-0.2.9-py3-none-any.whl
Algorithm Hash digest
SHA256 1dc459b42a9cd4686e5c25ccbd1bf12cf75ecb299b562fb29aae02fbe3923281
MD5 4ef250a5c55b02ddc635d1fab708d832
BLAKE2b-256 585c473f8ab6f4f0bbee9f97209a622df431c60d3597c5ff693930feb05e7cbf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page