# iirrational fitter

The wiki git carries the notebooks, papers and presentation on this new fitter

## Install

This library is a python package, with some matlab functions for usage directly from matlab. It is a bit large at this point to maintain a separate matlab codebase, although the code would mostly translate 1-1. To install for python

pip install --user iirrational

## Usage in Matlab

The matlab interface relies on the matlab built-in python support since R2014. Documentation Here. It also defines a number of helpers for automatic conversion to/from matlab data types, since particularly complex arrays do not convert into python, and most python objects (notably numpy arrays) do not automatically convert back. The native-like interface bridges the gap so that regular usage should not be impeded.

to access the native matlab functions from the python install

addpath(char(py.iirrational.matlabpath()))

Or get the path from that call and add it permanently to you path config file (or MATLABPATH)

Once this is done, there should be a +iirrational package defined.

- Matlab Interface - notes on the matlab specific interface and calling conventions
- Matlab with Python - notes on the design requirements to interface between the two

## Papers

- robust_rational_disc.pdf
- rational_interpolation.pdf
- Original code from these first two papers ratdisk.m
- polynomial_basis.pdf
- robust_pade_approximation.pdf
- pade_presentation.pdf

## Notebooks

The notebooks need the packages

- phasor
- h5py

to run. The QUAD data were taken from the sus svn and converted to h5 via the python dtt2hdf package. The data can be downloaded with the wiki git repo.

- notebooks/tests
- notebooks/quad_tests
- notebooks/quad_tests-cplx
- notebooks/cheby_fitting
- notebooks/bilinear_conformal