Skip to main content

Clean and add extra information to data produced by the battery cyclers from Novonix.

Project description

build coverage Documentation Status pypi zenodo

Preparing Novonix Data

preparenovonix is a Python package that handles common issues encountered in data files generated with a range of software versions from the Novonix battery-testers. This package can also add extra information that makes easier coulombic counting and relating a measurement to the experimental protocol. The package provides a master function, prepare_novonix, that can run at once the cleaning and adding derived information, with flexibility to choose only some features. There is a separate function to simply read a column by its given name.

Example

The example.py runs over the given example data, producing a new file and a plot that compares the original and the prepared data. To run this example, simply type: python example.py.

Requirements and Installation

This code has been developed in Python 3.7.1 and it is compatible with Python above 3.5 versions. The code has been tested to run in Windows, OSX and Linux operating systems.

This code uses numpy as specified in docs/requirements.txt. The ploting routine from the example.py also requires the use of matplotlib.

The code can be run directly from a cloned GitHub repository or it can also be installed as a python package through pip:

pip install preparenovonix

The functions in the package can be used after importing novonix_add, for example as follows:

import preparenovonix.novonix_add as prep

The code has been tested within Matlab R2018a.

Running preparenovonix code from MatLab

To run the code from Matlab, Python will need to be installed including the packages: numpy, pathlib and preparenovonix (see details above). Ensure that Matlab can see your installation of Python by running pyversion. If this is not the case then: (i) find where your Python executable is (within a python terminal you can do this by typing: import os, sys ; os.path.dirname(sys.executable)), (ii) type within your MatLab interpreter pyversion [path to python executable] and (iii) check that now the path to Python is recognised with pyversion. Make sure that

In your code you can add the following lines that will call the master function from the package, catching exceptions:

try
     py.preparenovonix.novonix_prep.prepare_novonix(file_to_open,...
             pyargs('addstate','True',...
             'lprotocol','True',...
             'overwrite','True',...
             'verbose','False'));
catch e
     e.message
     if(isa(e,'matlab.exception.PyException'))
             e.ExceptionObject
     end
end

Compatibility

This code has been tested with data generated by different versions of the Novonix software. If you encounter issues running the code for any version of Novonix software report an issue. Note that an example file will be needed in order to improve the code. List of the Novonix software. If you encounter issues running the code for any version of Novonix software report an issue. Note that an example file will be needed in order to improve the code. List of the Novonix software versions the code has been tested against:

  • 3.0.2.3
  • 3.0.2.1
  • TO
  • 2.0.0.7
  • 1.9.4.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for preparenovonix, version 1.0.3
Filename, size File type Python version Upload date Hashes
Filename, size preparenovonix-1.0.3-py3-none-any.whl (30.7 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size preparenovonix-1.0.3.tar.gz (17.7 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page