Introduction

This library provides a collection of classes and functions for analysing datasets which are of the from of one independent and one dependent variable. This is very common in condensed mater physics experiment and gigaanalysis was produced for use in high magnetic field facilities.

Layout

It broken into a collection of modules for different uses

  • gigaanalysis.data This contains the Data class which gigaanalysis is built around. It also contains a few functions for very common uses.

  • gigaanalysis.mfunc - This contains mathematical functions that are useful to act on data objects. This is broken into four sections applying numpy ufuncs, making Data objects, performing FFTs, and transforming Data objects.

  • gigaanalysis.dset - For saving, loading, and manipulating collections of Data objects which are referred to datasets.

  • gigaanalysis.fit - For fitting forms to the data contained in Data objects.

  • gigaanalysis.parse - Contains functions for collecting all the data contained in datasets together, or distribution of data into Data objects.

  • gigaanalysis.qo - Functions and classes for analysing quantum osculations experiments.

  • gigaanalysis.contour - Class for producing contour maps from a data set, using Gaussian processes.

  • gigaanalysis.htsc - Functions which are useful for studying superconductivity.

  • gigaanalysis.magnetism - Functions for studying magnetism.

  • gigaanalysis.heatc - Functions for studying heat capacity of materials.

  • gigaanalysis.diglock - An implementation of a digital lock in.

  • gigaanalysis.highfield - A class for processing the data from pulsed magnetic field facilities.

  • gigaanalysis.const - A few useful scientific constants in different systems of units.

Installation

In an environment with python >= 3.7 the following should install gigaanalysis.

pip install gigaanalysis

Requirements

This was developed mostly using

  • python 3.7.7

  • numpy 1.21.2

  • pandas 1.3.4

  • matplotlib 3.4.3

  • h5py 2.10.0

I haven’t found any problems with using newer versions of these same dependencies.