Skip to main content

Dig, short for diagnostic, is used to help acquire diagnostic data from MDSplus.

Project description

dig

Structure

  • dig, python package folder
  • notebooks, python notebook folder to demonstrate how can we use dig

Install

Prequisite:

  • MDSplus
  • We do not support Anaconda. Use virtualenv instead if you don't want to mess up your system built-in python environment.
# for clients
pip install dig-mhd 

# for developers
cd /to-somewhere-you-want-to-clone-the-repo
git clone https://github.com/WenyinWei/dig.git
cd dig # (not dig/dig)
pip install -e . # "-e" means editable

Add mhd_settings.ini (you can find a template at this repo) to you application data path, e.g.

  • C:\Users\<your-user-name>\mhd\mhd_settings.ini for Windows,
  • /home/<your-user-name>/.mhd/mhd_settings.ini for Debian systems like Ubuntu.

Parameters are stored in this .ini file and you need to check and modify some of them. Having configuring the .ini file in a right way, the following import should be successful.

import dig 

Use Python in Matlab

Common Data Format

*.npy, *.npz file formats are common in python/numpy community; while *.mat file format is common in matlab community. Matlab has professional documents to demonstrate how to use Python from Matlab and vice.

from scipy.io import loadmat
annots = loadmat('*.mat')
% In Matlab, npy-matlab module could help you read and write npy format files, https://github.com/kwikteam/npy-matlab
a = rand(5,4,3);
writeNPY(a, 'a.npy');
b = readNPY('a.npy');
% In Matlab, configure Python environment https://ww2.mathworks.cn/help/matlab/ref/pyenv.html
pyenv % 返回当前默认的 Python 环境
pyenv('Version', 3.8) % 寻找当前电脑上的对应版本的 Python 环境
pyenv('Version', path-to-your-python-executable) % 寻找当前电脑上的对应路径的 Python 环境

if count(py.sys.path,'path-to-your-package') == 0
    insert(py.sys.path,int32(0),'path-to-your-package');
end

py.importlib.import_module('dig')
py.importlib.reload('dig')
returned_tuple = py.dig.utilvar.get_EAST_EFIT_BR_BZ_Bt(shotnum, py.list({tpoint1, tpoint2, ...}));
R = returned_tuple{1};
Z = returned_tuple{2};
tpoints = returned_tuple{3};
BRs = returned_tuple{4};
BZs = returned_tuple{5};
Bts = returned_tuple{6};
# Rewrite all npy files in mat format, https://ww2.mathworks.cn/matlabcentral/answers/444998-how-do-read-npy-files-in-matlab#answer_624742
from scipy.io import savemat
import numpy as np
import glob
import os

npzFiles = glob.glob("*.npz")
for f in npzFiles:
    fm = os.path.splitext(f)[0]+'.mat'
    d = np.load(f)
    savemat(fm, d)
    print('generated ', fm, 'from', f)

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

dig-mhd-0.0.1.tar.gz (17.9 kB view details)

Uploaded Source

Built Distribution

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

dig_mhd-0.0.1-py3-none-any.whl (18.4 kB view details)

Uploaded Python 3

File details

Details for the file dig-mhd-0.0.1.tar.gz.

File metadata

  • Download URL: dig-mhd-0.0.1.tar.gz
  • Upload date:
  • Size: 17.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for dig-mhd-0.0.1.tar.gz
Algorithm Hash digest
SHA256 0f69399a5e2afdd020f6f0c020c60175c79597e01d6da8be3abc4629a1be2918
MD5 218f05ed0cf4a2b78045adbf32ff3fa2
BLAKE2b-256 aeacf46007447610cfb1a9aaf0d5126308cb85c3566ca9817f5ba90b5fd123b4

See more details on using hashes here.

File details

Details for the file dig_mhd-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: dig_mhd-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 18.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.10.4

File hashes

Hashes for dig_mhd-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5da2edbe4f921de678d435544536b8bab941929306ae736bc6e444f11c6c0103
MD5 db9dad4dd21014d322a75bd6faa41fb6
BLAKE2b-256 058fb82474d345cb20831fd2435a92daa9d501c7d4ab67bc90bc8002392ce759

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