Changelogs » Myokit

Myokit

1.28.9

- Added PySide2 support.
- Deprecated PyQt4 and PySide.
- Added a method `Model.remove_derivative_references()`.
- Bugfix to `repr(Model)` for models with no name.
- Added `Model.timex()`, `.labelx()` and `.binding()`, which work like `.time()`, `.label()` and `.binding()` but raise an exception if no appropriate variable is found.
- Deprecated `lib.multi.time()`, `.label()`, and `.binding()`.

1.28.8

- Added method `Variable.convert_unit()` that changes a variable's units and updates the model equations accordingly.
- `Unit.conversion_factor()` now returns a `Quantity` instead of a float, and accepts helper Quantities for incompatible conversions.
- Added `Unit.clarify()` method that gives clear representation.
- Added `Unit.multiplier_log_10()` method.
- Added `rtruediv` and `pow` operators to `Quantity` class.
- Small bugfixes to `myokit.lib.hh`.
- Stopped requiring `myokit.lib.hh` alphas/betas and taus/infs to depend on V (allows drug-binding work).
- Bugfix: Time variable in CellML export no longer has equation or initial value.
- CellML export: components now ordered alphabetically.
- Variables with e.g. an `oxmeta: time` annotation are now exported to CellML with an oxmeta RDF annotation.
- CellML import now allows `deca` prefix.
- Added CellML identifier checks to CellML import.
- Renamed `DataLog.find()` to `find_after()`.
- Added `DataLog.interpolate_at(name, time)` method.
- Improved colormap used in `plots.cumulative_current()`.
- Bugfix to `myokit step` for models without a name meta property.
- Updated sign error handling in `myokit.step()`.
- Added IDE shortcuts for unit checking.
- IDE now jumps to unit errors, if found.
- Improved exception display in IDE.
- `Variable.var_info()` now includes unit.
- Fixed bug in `Unit.__repr__()` for small multipliers.
- Improved notation of units when complaining about them.

1.28.7

- Added option to register external formats.
- Added option to avoid certain prefixes when generating unique variable names.
- Model.expressions_for() now accepts more than 1 argument, and handles dependencies on derivatives correctly.
- Removed deprecated method Model.solvable_subset().

1.28.6

- Added a debug option to the `myokit compiler` command.

1.28.5

- Bugfix: Removing variables now also removes their bindings and labels.
- Added unit tests.
- Improved performance in lib.markov analytical simulations.
- Updated the `myo` script to use the python3 executable
- Fixed a bug in the default script used when creating or importing a model.
- Made GNOME/KDE icons install using `sys.executable` instead of a hardcoded python command.
- Fixed handling of string encoding in CellML import.

1.28.4

- Myokit is now tested on Python 3.7, but no longer on 3.4
- Updated default OpenCL paths for windows
- GUI fixes for matplotlib 3.1.0+
- Added set_constant() method to markov simulations.
- Added log_times option to lib.markov.AnalyticalSimulation, and started pre-allocating arrays.
- Added option to cumulative current plot to normalise currents.

1.28.3

- Fixed some floating point issues with protocols and pacing.
- Updated OpenCL code to work with VS 9.
- Some small changes to the Protocol API.
- Added format protocol option to IDE.

1.28.2

* Improved support for native OpenCL on OS/X.
* Native maths in OpenCL simulations is now configurable and disabled by default.

1.28.1

* Added support for Sundials 4.0.0
* Made SymPy a dependency.
* Made current loggable in discrete markov simulations.
* Added log_times argument to analytical HH simulation.
* Improved performance of analytical HH simulation.
* Added AbfFile.extract_channel method that joins sweeps.
* Added ATF capability to datalog viewer.
* Added limited .pro support to DataLogViewer.
* Added ProgressReporter that cancels the operation after a time out.
* Added cut/copy/paste options to menu in IDE.
* Bugfix: myokit.system didn't check for sympy version.
* Deprecated myo script.
* Changed myokit.VERSION to myokit.__version__.
* Various minor tweaks and fixes.

1.28.0

- Added `myokit.lib.hh` module for recognising Hodgkin-Huxley style ion current models and using them in fast analytical simulations.
- Added Rush-Larsen (RL) option to `OpenCLSimulation`.
- Added CUDA kernel export with RL updates.
- Added OpenCL kernel export with RL updates.
- Improved logging of intermediary variables in OpenCL simulations.
- Improved logging in `Simulation1d`.
- Fix to Abf reader for (unsupported) userlists (abf v2).
- Fixes to Sundials configuration on Windows
- Small bugfixes, documentation updates, etc..

1.27.7

* Various fixes to make Myokit work with Python 2.7.6 (and later).

1.27.6

* Now running sundials auto-detection with every 'import myokit' if not set in config file.

1.27.5

- Bugfix to `OpenCL.load_selection()`.
- Added system info command
- Added command option to show C Compiler support.
- Added command option to show Sundials support.
- Bugfix to `Unit.rdiv`
- Small fixes to `lib.fit`
- Documentation config update for `sphinx >=1.8`.
- Parsing now has full test cover.
- Removed special line feed code from parser, as in unicode they are treated as newlines (and stripped out by splitlines())
- Removed obsolete `TEXT_OPS` code from parser.
- Removed redundant check from parser.
- Removed another redundant check from parser.
- Various small bugfixes and tweaks.

1.27.4

- Added sundials version detection on first run.
- Moved myokit config files from ~/.myokit to ~/.config/myokit
- Renamed NumpyExpressionwriter NumPyExpressionWriter.
- Fixed test issues on os/x.

1.27.3

Changes:

- Updated the way sundials library locations are stored on windows systems.

1.27.2

Changes:

- Added script that creates icons for windows.
- Updated script that creates icons for linux (gnome/kde).

1.27.1

This fixes a documentation / pypi issue with Myokit 1.27.0

This release introduces Python 3, Sundials 3, and Visual Studio support, and marks the transition of Myokit development from a private repository to a public GitHub repo.

The major changes are:

- Added support for Python 3.4, 3.5, and 3.6.
- Added support for Sundials 3 (by teosbpl).
- Added support for various Visual C++ compilers.
- Made Myokit pip-installable, stopped providing windows installer.
- Replaced windows sundials binaries with Visual-Studio compiled ones.
- Added a system-wide `myokit` command (after pip install on unix systems).
- Moved development from private repo to [GitHub](https://github.com/MichaelClerx/myokit/)
- Set up automated testing with Travis (linux) and Appveyor (windows)
- Greatly increased unit-test coverage (and set up checking with codecov.io)
- Added contribution guidelines
- Added style checking with `flake8`.
- Removed `OrderedPiecewise`, `Polynomial`, `Spline`, and `lib.approx`.
- Deprecated `lib.fit`. Please have a look at [Pints](https://github.com/pints-team/pints) instead.
- Removed `quadfit()` methods from `lib.fit`.
- Deprecated `lib.common`
- Removed HTML page generating classes from `mxml`.
- Simplified some of the error classes.
- Simplified Benchmarker.
- `DataLog.apd()` now has same output as Simulation threshold crossing finder.
- On-the-fly compilation switched from distutils to setuptools.
- Tidied up.
- Lots of bugfixes.
- Made IDE show Python version in about screen.

1.27.0

This release introduces Python 3, Sundials 3, and Visual Studio support, and marks the transition of Myokit development from a private repository to a public GitHub repo.

The major changes are:

- Added support for Python 3.4, 3.5, and 3.6.
- Added support for Sundials 3 (by teosbpl).
- Added support for various Visual C++ compilers.
- Made Myokit pip-installable, stopped providing windows installer.
- Replaced windows sundials binaries with Visual-Studio compiled ones.
- Added a system-wide `myokit` command (after pip install on unix systems).
- Moved development from private repo to [GitHub](https://github.com/MichaelClerx/myokit/)
- Set up automated testing with Travis (linux) and Appveyor (windows)
- Greatly increased unit-test coverage (and set up checking with codecov.io)
- Added contribution guidelines
- Added style checking with `flake8`.
- Removed `OrderedPiecewise`, `Polynomial`, `Spline`, and `lib.approx`.
- Deprecated `lib.fit`. Please have a look at [Pints](https://github.com/pints-team/pints) instead.
- Removed `quadfit()` methods from `lib.fit`.
- Deprecated `lib.common`
- Removed HTML page generating classes from `mxml`.
- Simplified some of the error classes.
- Simplified Benchmarker.
- `DataLog.apd()` now has same output as Simulation threshold crossing finder.
- On-the-fly compilation switched from distutils to setuptools.
- Tidied up.
- Lots of bugfixes.
- Made IDE show Python version in about screen.