Skip to main content

Python package for running and analysing gyrokinetic simulations

Project description

Pyrokinetics

This project aims to standardise gyrokinetic analysis.

A general pyro object can be loaded either from simulation/experimental data or from an existing gyrokinetics file.

In general pyrokinetics can do the following

  • Read data in from:
    • Gyrokinetic input files
    • Simulations outputs
  • Write input files for various GK codes
  • Generate N-D pyro object for scans
  • Read in gyrokinetic outputs
  • WIP: Standardise analysis of gk outputs

At a minimum pyrokinetics needs the local geometry and species data. Example scripts can be found in the examples folder

Documentation

Documentation

Installation

Install pyrokinetics with pip as follows

pip install --user pyrokinetics

Otherwise, for the latest version install directly with

$ git clone https://github.com/pyro-kinetics/pyrokinetics.git
$ cd pyrokinetics
$ python setup.py install --user

If you are planning on developing pyrokinetics use the following instead to install

$ python setup.py develop --user

Code structure

Pyro object comprised of

  • Equilibrium
    • LocalGeometry
      • Miller
      • Fourier (to be added)
  • Kinetics
    • LocalSpecies
  • Numerics
  • GKCodes
  • GKOutput
    • For nonlinear simulations
      • Fields (field, kx, ky, theta, time)
      • Fluxes (field, species, moment, ky, theta, time)
    • For linear simulations
      • Fields (field, kx, ky, theta, time)
      • Fluxes (field, species, moment, ky, theta, time)
      • Eigenfunctions (field, ky, theta, time)
      • Eigenvalues - growth rate and mode freq (ky, time)

There also exists the PyroScan object which allows you to make a N-D parameter scan of Pyro objects

Supports sources of Equilibrium data

pyrokinetics currently supports

Future formats to be added are

  • CHEASE

Supported sources of Kinetic data

Sources of kinetic profile data currently supported are

  • SCENE
  • JETTO
  • TRANSP

Future codes to be add

  • SimDB
  • OMFIT

Supported GK codes

The following gk codes are supported in pyrokinetics

  • CGYRO
  • GS2
  • GENE
  • TGLF

Codes to be added in the future

  • Stella
  • GX

Note on units

The pyro object uses standardised reference values to normalise the results. It will automatically handle converting to a GK codes standard units.

Note any scans/parameter changes made will be in standard pyro units so please account for this.

Reference values

It is possible to change the reference units but proceed with caution

Used By

This project is used by the following institutions

  • CCFE
  • University of York

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

pyrokinetics-0.4.0.tar.gz (41.8 MB view details)

Uploaded Source

Built Distribution

pyrokinetics-0.4.0-py3-none-any.whl (41.7 MB view details)

Uploaded Python 3

File details

Details for the file pyrokinetics-0.4.0.tar.gz.

File metadata

  • Download URL: pyrokinetics-0.4.0.tar.gz
  • Upload date:
  • Size: 41.8 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for pyrokinetics-0.4.0.tar.gz
Algorithm Hash digest
SHA256 e8e588bbf5a676fa1846bda623e4287eed7df9b5781c4b9fe69d19e7eb6ec3ef
MD5 e55e57533bd73d59d57067c369d98fc2
BLAKE2b-256 1b8d7073faf4a87c3514f2d857012564fc6b66230463362f86c28d4ed31039a4

See more details on using hashes here.

File details

Details for the file pyrokinetics-0.4.0-py3-none-any.whl.

File metadata

  • Download URL: pyrokinetics-0.4.0-py3-none-any.whl
  • Upload date:
  • Size: 41.7 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.15

File hashes

Hashes for pyrokinetics-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 dd9702823e35d22047d5a54ffa036698fb2290f59ac4d76cf6688daf96b1b204
MD5 ac8e11b6a98ba37118c1c64a9955061c
BLAKE2b-256 350176e333def95020e3408544846f12e53a6fffe7fe681ae719c5a9a13b9fde

See more details on using hashes here.

Supported by

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