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
A joke conlang with minimal semantics

SyntaxLang Reserved Defined Words Word Function fo Terminates a noun phrase or verb phrase tu Converts an adjective block or sentence to a noun to Ter

Leo Treloar 1 Dec 07, 2021
A python script for compiling and executing .cc files

Debug And Run A python script for compiling and executing .cc files Example dbrun fname.cc [DEBUG MODE] Compiling fname.cc with C++17 ------------

1 May 28, 2022
A browser login credentials thief for windows and Linux

Thief 🦹🏻 A browser login credentials thief for windows and Linux Python script to decrypt login credentials from browsers in windows or linux Decryp

Ash 1 Dec 13, 2021
NotesToCommands - a fully customizable notes / command template program, allowing users to instantly execute terminal commands

NotesToCommands is a fully customizable notes / command template program, allowing users to instantly execute terminal commands with dynamic arguments grouped into sections in their notes/files. It w

zxro 5 Jul 02, 2022
Wrappers around the most common maya.cmds and maya.api use cases

Maya FunctionSet (maya_fn) A package that decompose core maya.cmds and maya.api features to a set of simple functions. Tests The recommended approach

Ryan Porter 9 Mar 12, 2022
a simple functional programming language compiler written in python

Functional Programming Language A compiler for my small functional language. Written in python with SLY lexer/parser generator library. Requirements p

Ashkan Laei 3 Nov 05, 2021
Airbrake Python

airbrake-python Note. Python 3.4+ are advised to use new Airbrake Python notifier which supports async API and code hunks. Python 2.7 users should con

Airbrake 51 Dec 22, 2022
A python script to run any executable and pass test cases to it's stdin and compare stdout with correct output.

quera_testcase_checker A python script to run any executable and pass test cases to it's stdin and compare stdout with correct output. proper way to u

k3y1 1 Nov 15, 2021
A PDM plugin to publish to PyPI

PDM Publish A PDM plugin to publish to PyPI NOTE: Consider if you need this over using twine directly Installation If you installed pdm via pipx: pipx

Branch Vincent 20 Aug 06, 2022
This tool allows you to do goole dorking much easier

This tool allows you to do goole dorking much easier

Steven 8 Mar 06, 2022
A frontend to ease the use of pulseaudio's routing capabilities, mimicking voicemeeter's workflow

Pulsemeeter A frontend to ease the use of pulseaudio's routing capabilities, mimicking voicemeeter's workflow Features Create virtual inputs and outpu

Gabriel Carneiro 164 Jan 04, 2023
You'll learn about Iterators, Generators, Closure, Decorators, Property, and RegEx in detail with examples.

07_Python_Advanced_Topics Introduction 👋 In this tutorial, you will learn about: Python Iterators: They are objects that can be iterated upon. In thi

Milaan Parmar / Милан пармар / _米兰 帕尔马 252 Dec 23, 2022
basic tool for NFT. let's spam, this is the easiest way to generate a hell lotta image

NFT generator this is the easiest way to generate a hell lotta image buckle up and follow me! how to first have your image in .png (transparent backgr

34 Nov 18, 2022
Simple python script for AD enumeration

AutoAD - Simple python script for AD enumeration This tool was created on my spare time to help fellow penetration testers in automating the basic enu

Mohammad Arman 28 Jun 21, 2022
CMPE 204 Modelling Project

CISC/CMPE 204 Modelling Project Welcome to the major project for CISC/CMPE 204 (Fall 2021)! Change this README.md file to summarize your project (few

totallyrin 2 May 16, 2022
Blender Addon for Snapping a UV to a specific part of a Tilemap

UVGridSnapper A simple Blender Addon for easier texturing. A menu in the UV editor allows a square UV to be snapped to an Atlas texture, or Tilemap. P

2 Jul 17, 2022
Aoc 2021 kedro playground with python

AOC 2021 Overview This is your new Kedro project, which was generated using Kedro 0.17.5. Take a look at the Kedro documentation to get started. Rules

1 Dec 20, 2021
A simple BrainF**k compiler written in Python

bf-comp A simple BrainF**k compiler written in Python. What else were you looking for?

1 Jan 09, 2022
jonny is a stack based programming language

jonny-lang jonny is a stack based programming language also compiling jonny files currently doesnt work on windows you can probably compile jonny file

1 Nov 24, 2021
Library for mocking AsyncIOMotorClient built on top of mongomock.

mongomock-motor Best effort mock for AsyncIOMotorClient (Database, Collection, e.t.c) built on top of mongomock library. Example / Showcase from mongo

Michael Kryukov 43 Jan 04, 2023