Python scripts for making working with UMICH NERS PSTL Lab Equipment much easier
Project description
pstl-tools
Python scripts for making working with UMICH NERS PSTL Lab Equipment much easier
Current Version
v2024.06.10
Python Version
-
v3.11
Requried Packages
- pyvisa (with VISA library aviable or pyvisa-py)
- numpy
- scipy
- pandas
- matplotlib
Optional Packages
pyvisa-py
- pyvisa-py
dev
- pip-tools
- psutil
- zeroconf
other
- pyserial
- alicat
Subpackages
Install
Via Python virtutal enviroment (venv)
- Ensure python is installed
- Run in command line
For Linux or Mac
python -m venv <path/to/directory/to/store/venvs/your-venv>
For Windows
python -m venv <path\to\directory\to\store\venvs\your-venv>
Replace python with the python version you want to use i.e. python3.11
- Now activate your python venv
For Linux or Mac
source <path/to/directory/to/store/venvs>/bin/activate
For Windows
<path\to\directory\to\store\venvs>\Scripts\activate.bat
- Run pip install (If you have a VISA library installed, if not skip to step 5)
pip install pstl-tools
--or--
python -m pip install pstl-tools
- Must have one of the following
-
VISA Library from NI-LABVIEW or alternative
-
Install pyvisa-py and other dependences (open-source version of the previous)
If no visa library (from NI-LABVIEW or Keysight etc), you may see an error saying:
ValueError: Could not locate a VISA implementation. Install either the IVI binary or pyvisa-py.
then, run the following
pip install pyvisa-py
For more help with python venv
GUI Langmuir Example
Have a .CSV file comma delimlated with one-line for the headers.
Run the following once python package is installed via pip install
gui_langmuir <-additional flags>
some optional flags are
- -S, --settings_file "path/to/settings_file.json"
i.e.
gui_langmuir -S settings_gui_langmuir.json
this runs a single Langmuir probe anaylsis and saves graphs when save button is hit.
A template hardcoded settings file can be found at https://github.com/umich-pstl/pstl-tools/blob/main/tests/gui_langmuir/settings/settings_gui_langmuir-hardcode_template.json
A buidling template is like https://github.com/umich-pstl/pstl-tools/blob/main/tests/gui_langmuir/settings/settings_gui_langmuir-02.json can also be used to in an automated script to quickly swap out probe JSON files.
In this JSON file, paths to the following are requried:
- solver.data.BUILD.file = <path\to\data\file.csv>
- solver.data.BUILD.negative = bool (false by default) The kwargs have delimiter is set to "," but can be "\t" for tab-delimited. If there is a header set header=0 if not, null. If there are extra rows above the header set skiprows=number of these rows.
The plasma settings need to also be defined under
- solver.plasma.BUILD (either neutral_gas = xenon, krypton, neon or m_i needs to be defined)
The probe dimensions need to be defined as well under
- solver.probe.BUILD.diameter = # (in meters)
- solver.probe.BUILD.length = # (in meters, leave as zero for planar)
- sovler.probe.BUILD.shape = (spherical, cylindrical, planar)
Optional definitions inclued
- preprocess = true (to remove noisy data points, default is true but maybe changed in the future)
- name = "NAME-TO-DISPLAY-ON-SOLVER-GUI"
- canvas_kwargs.saveas = "BASENAME-TO-SAVE-PLOT-AS.png"
- cavas_kwargs.width(or height) = size of gui plots
- panal_kwargs.displays_kwargs.fname = "NAME-TO-SAVE-RESULTS.csv"
future updates will have additional buttons to change the analysis methods
Examples of the GUI Langmuir can be found in the same locations as the template.
Known issue in
settings_langmuir_solver-01.json
using the negative index for fits.
Acknowledgements
If you use this package for analysis, please acknowledge this package and version used.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file pstl_tools-2024.6.10.tar.gz
.
File metadata
- Download URL: pstl_tools-2024.6.10.tar.gz
- Upload date:
- Size: 4.8 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | cefae16ee4fbc371dcf8083c6ca4ef6865dd1ee77683ceeaef6ade8bc467c9df |
|
MD5 | 30ea63a18167a573b9e387d93a8d1da7 |
|
BLAKE2b-256 | 3ba5c25a49e61c433c267acfb4b9837c42d4e45b5d986d5a890df7552b8c3c0f |
File details
Details for the file pstl_tools-2024.6.10-py3-none-any.whl
.
File metadata
- Download URL: pstl_tools-2024.6.10-py3-none-any.whl
- Upload date:
- Size: 4.8 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.0.0 CPython/3.11.9
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 3279db545e670f7f82476549c96099848a1838d8a947ebec7ec49d3885ddbcd5 |
|
MD5 | 0bc2cd22be926f5923ea8669816ccfc1 |
|
BLAKE2b-256 | 505f718eac6c7c2a0481106a9ce4ec6ce395b7af328ffb3b7e031b06def0e5e3 |