There is a newer version of this record available.

Software Open Access

ahkab: Ahkab v 0.16

Giuseppe Venturini; Ian Daniher; endolith; Shahar Or

Changelog for v 0.16

Version 0.16 represents the culmination of 1 month of efforts, yet another step in the current time-based release scheme.

Features added:

This release brings the test coverage of the codebase over the 80% milestone for the first time. It also features a faster substitution algorithm for symbolic simulations, we empoly the tabulate module more extensively, producing a prettier output (for example print_short() now prints a pretty table.)

Internally, We removed occurrences of np.matrix, in favor of np.array, according to the overall planned switch in the library. This should be completely transparent to the user.

A few changes that have been introduced are incompatible with the previous releases:

  • The axis iterators utilities.log_axis_iterator and utilities.lin_axis_iterator now follow the syntax (min, max, points).
  • The solution method solution.asmatrix() has been renamed to solution.asarray().
  • We droppped the (undocumented) support for accessing singularities in pz_solution as 'Re(p0)' and 'Im(p0)'. Hopefully, being undocumented it had little use. Please use numpy.real(r['p0']) or numpy.imag(r['p0']) to achieve the same result.
  • Remove printing.table_print() for print(printing.table()).

We apologize about the above, we believe the technical debt we paid with the changes above makes up for the discomfort to our userbase.

Moreover, as in the previous releases, several commits were devoted to improving the documentation: you can find the new, improved documentation online at

Issues fixed
  • #29 - ahkab should now work well in IPython running under Python2 again.
Changes from contributors and pull requests merged:


Bugs fixed, short list:
  • BUGFIX: Always plot in tests even if the test fails (especially then!)
  • BUGFIX: catch ValueError in results.cid
  • BUGFIX: fix pss_solution.asmatrix()
  • BUGFIX: import codecs even if on Ipython
  • BUGFIX: fix iterator off-by-one in symbolic_solution
  • BUGFIX: key misses in symbolic_solution raise KeyErrors
  • BUGFIX: fix slicing in the solution (use it too)
  • BUGFIX: dc_solution.values() now slices along the correct axis
  • BUGFIX: load_csv() raises ValueError
  • BUGFIX: key misses raise KeyErrors
  • BUGFIX: prevent breaking readline on ipython, fixes #29
  • BUGFIX: ensure w is always returned as real data, not cplx
  • BUGFIX: Improve the iterators syntax, always include endpoints.
  • BUGFIX: raise KeyError for key misses in ac_solution
  • BUGFIX: items() returns no arrays.
  • BUGFIX: values() returns a list, not an array.
  • BUGFIX: fix iterator increment-by-one bug
Files (4.1 MB)
Name Size
4.1 MB Download
All versions This version
Views 36546
Downloads 212
Data volume 103.6 MB8.3 MB
Unique views 31845
Unique downloads 142


Cite as