Data wrangling & common calculations for results from qMem measurement software

Overview

qMem Datawrangler

This script processes output of qMem measurement software into an Origin ® compatible *.csv files and matplotlib graphs to quickly visualy analyze data. Odd and even sweep numbers are treated seperately to account for hysteretic or memristive effects.

It also performs the following calculations:

  • Absolute values of current / current density (for semi-log plots)
  • Memory window (the ratio between the absolute values of odd and even sweeps)
  • Differential resistance
  • Fowler-Nordheim with variable exponent
  • Normalized differential resistance (NDR)
  • Statistics on all measured and calculated data (min, max, avg)

Parameters

Calculations made and plots generated by this script are controlled via the config.ini file within the same folder as the main script. The following Parameters can be set:

section parameter type explanation
Directory home_directory Bool The directory where all folders with data can be found.\Will automatically change to last one used and leaving it empty will set it to root
Parameters filter string The column that is evaluated from the file. Could be "Current [A]" or "Current Density"
Parameters resistance_slice double The value at which the differential resistance calculation is displayed
Parameters resistance_range double The size of the window used to perform linear fits of data to to calculate the differential resistance
Parameters mem_method string The method of how the memory window is calculated. Either "divide" if currents have to be devided (standard method) ord "substract" if currents should be subtracted.
Parameters start_index integer The first sweep that is used for calculations. "2" ignores the first sweep that often shows "burn-in" effects
Calculate absolute bool Parameter that sets whether or not the absolute value of currents is calculated (required "True" for semi-log plots, "False" for further Tunneling model processing)
Calculate stats bool Parameter that sets whether or not the sweep-to-sweep statistics are calculated.
Calculate fowler-nordheim bool Parameter that sets whether or not fowler_nordheim calculations should be performed (i.e. a dataset with ln(J/V)^2 vs J/V)
Calculate memory_window bool Parameter that sets whether or not the memory window should be calculated
Calculate differential_resistance bool Parameter that sets whether or not the normalized differential resistance should be calculated
Plot currents bool Parameter that sets whether or not I-V or J-V Data from all sweeps should be plotted
Plot stats bool Parameter that sets whether or not I-V or J-V min,max and average Data should be plotted
Plot currents bool Parameter that sets whether or not Fowler Nordheim Plots should be generated.
Plot currents bool Parameter that sets whether or not the memory window vs voltage plots should be generated.
Plot currents bool Parameter that sets whether or not the differential resistance vs voltage plots should be generated
Plot currents bool Parameter that sets whether or not the resistance slice and resulting fit should be displayed

Files Generated

After processing, csv files are generated and suffixes according to their content are added:

  • *_header: The header extracted from the measurement file - including all measurement parameters (e.g. step size, operator, material ID, ..)
  • *_all: File with all sweeps or *_stats: File with only the statistical analysis of all sweeps
  • *-abs: indicating that only absolute J or I values are recorded
  • *_Current _[A] or _Current-density: Indicating either current or current density within the file
  • *_fn: Results from Fowler Nordheim calculations (including V-->1/V at x-Position)
  • *_mwindow _ {method} where {method} is either "divide" or "subtract"
Owner
Julian
Julian
An Android app that runs Elm in a webview. And a Python script to build the app or install it on the device.

Requirements You need to have installed: the Android SDK Elm Python git Starting a project Clone this repo and cd into it: $ git clone https://github.

Benjamin Le Forestier 11 Mar 17, 2022
Converts a base copy of Pokemon BDSP's masterdatas into a more readable and editable Pokemon Showdown Format.

Showdown-BDSP-Converter Converts a base copy of Pokemon BDSP's masterdatas into a more readable and editable Pokemon Showdown Format. Download the lat

Alden Mo 2 Jan 02, 2022
A lighweight screen color picker tool

tkpick A lighweigt screen color picker tool Availability Only GNU/Linux 🐧 Installing Install via pip (No auto-update): [sudo] pip install tkpick Usa

Adil Gürbüz 7 Aug 30, 2021
FCurve-Cleaner: Tries to clean your dense mocap graphs like an animator would

Tries to clean your dense mocap graphs like an animator would! So it will produce a usable artist friendly result while maintaining the original graph.

wiSHFul97 5 Aug 17, 2022
An alternative app for core Armoury Crate functions.

NoROG DISCLAIMER: Use at your own risk. This is alpha-quality software. It has not been extensively tested, though I personally run it daily on my lap

12 Nov 29, 2022
Senior Comprehensive Project For Python

Senior Comprehensive Project Author: Grey Hutchinson My project, which I nicknamed “Murmur”, was to create a research tool that would use neural netwo

1 May 29, 2022
Let’s Play with Python3

Python3-FirstEdition a bunch of python programs and stuff Super Important Notice THIS IS LICENSED UNDER GNU PUBLIC LICENSE V3 also, refer to Contribut

Jym Patel 2 Nov 24, 2022
Python tools for experimenting with differentiable intonation cost measures

Differentiable Intonation Tools The Differentiable Intonation Tools (dit) are a collection of Python functions to analyze the intonation in multitrack

Simon Schwär 2 Mar 27, 2022
Blender 3.0 Python - Open temporary areas in the Text Editor

PopDrawers When editing text in Blender, it can be handy to have areas like Info, Console, Outliner, etc visible on screen to help with scripting. How

SpectralVectors 7 Nov 16, 2022
Repo contains Python Code Reference to learn Python in a week, It also contains Machine Learning Algorithms and some examples for Practice, Also contains MySql, Tableau etc

DataScience_ML_and_Python Repo contains Python Code Reference to learn Python in a week, It also contains Machine Learning Algorithms and some example

Meerabo D Shah 1 Jan 17, 2022
Stocks Trading News Alert Using Python

Stocks-Trading-News-Alert-Using-Python Ever Thought of Buying Shares of your Dream Company, When their stock price got down? But It is not possible to

Ayush Verma 3 Jul 29, 2022
A collection of daily usage utility scripts in python. Helps in automation of day to day repetitive tasks.

Kush's Utils Tool is my personal collection of scripts which is used to automated daily tasks. It is a evergrowing collection of scripts and will continue to evolve till the day I program. This is al

Kushagra 10 Jan 16, 2022
Writeup and scripts for the 2021 malwarebytes crackme

Malwarebytes Crackme 2021 Tools and environment setup We will be doing this analysis in a Windows 10 VM with the flare-vm tools installed. Most of the

Jerome Leow 9 Dec 02, 2022
Trackthis - This library can be used to track USPS and UPS shipments.

Trackthis - This library can be used to track USPS and UPS shipments. It has the option of returning the raw API response, or optionally, it can be used to standardize the USPS and UPS responses so t

Aaron Guzman 0 Mar 29, 2022
Biohacking con Python honeycon21

biohacking-honeycon21 This repository includes the slides of the public presentation 'Biohacking con Python' in the Hack&Beers of HoneyCON21 (PPTX and

3 Nov 13, 2021
Bootstraparse is a personal project started with a specific goal in mind: creating static html pages for direct display from a markdown-like file

Bootstraparse is a personal project started with a specific goal in mind: creating static html pages for direct display from a markdown-like file

1 Jun 15, 2022
Auto-ropper is a tool that aims to automate the exploitation of ROP.

Auto-ropper is a tool that aims to automate the exploitation of ROP. Its goal is to become a tool that no longer requires user interaction.

Zerotistic 16 Nov 13, 2022
A TODO-list tool written in Python

PyTD A TODO-list tool written in Python. Its goal is to provide a stable posibility to get a good view over all your TODOs motivate you to actually fi

1 Feb 12, 2022
"Hacking" the (Telekom) Zyxel GPON SFP module (PMG3000-D20B)

"Hacking" the (Telekom) Zyxel GPON SFP module (PMG3000-D20B) The SFP can be sour

Matthias Riegler 52 Jan 03, 2023
Python Programmma DarkMap.py

DarkMap Python Programmma DarkMap.py O'rganish va rasmlarni ko'riosh https://drive.google.com/drive/folders/1l1zybs_0Zy9z_trZYz5R72WrwsE6mFOh?usp=shar

Og'abek 0 May 06, 2022