Skip to content
BETSE 0.7.0 (Jamboree Jackson) released.

Significant changes include:

* Dynamic ion channels significantly rewritten. Backward compatibility-breaking
  changes include:
  * *OBSOLETE YAML CONFIGURATION SECTION REMOVED.* Users are encouraged to
    switch to the existing gene regulatory network (GRN) formalism, which
    provides more reliable dynamic channels support. See the "channels"
    subsection of the "general network" section in the default YAML file.
  * Pump- and channel-specific electroosmosis removed. Users are encouraged to
    switch to the existing gene regulatory network (GRN) formalism, which
    provides more reliable electroosmosis support.
  * Configuration changed from conductivity to membrane diffusion constants,
    improving consistency with the remainder of the BETSE codebase.
  * Endoplasmic reticulum (ER) calcium dynamics removed entirely.
  * All existing CaV channels renamed for clarity. (Requested by Cassandra.)
  * Multiple new CaV channels added. (Requested by Cassandra.) These include:
    * N-type CaV 2.2 channel.
  * Channel API generalized for external use outside of BETSE (e.g., Jupyter).
* Z-offset support in modulator functions. (Requested by Micah Brodskey.)
* Simulation time updates solved with the backward (implicit) Euler method.
* Gap junctions modelled with the Goldman-Hodgkin-Katz (GHK) flux equation.
* Negative concentrations causing "non-conservative" instabilities detected
  during simulation, triggering human-readable fatal exceptions.
* Positive concentrations updated properly via dynamic dictionaries.
* "show cells: False" plot output aesthetically improved. (Caveat: this option
  now assumes convert rather than concave cell cluster shapes.)
* Voronoi grid construction slightly improved.
* Setuptools >= 38.0.0 compatibility resolved, permitting BETSE to be portably
  installed under all setuptools versions. Setuptools >= 38.0.0 broke backward
  compatibility by prohibiting unordered iterables (e.g., sets) in prominent
  "setup.py" parameters that previously accepted such iterables. *sigh*
* Image I/O API created. The new "betse.lib.pil" subpackage aggregates all
  functionality specific to Pillow, the PIL-compatible fork serving as this
  application's low-level image processing framework.
* Expression alias API sanitized, raising human-readable exceptions on erroneous
  access to expression alias values.
* Directory API sanitized, raising human-readable exceptions from recursive
  directory functions.
* Object API sanitized, permitting object attributes and methods to be
  dynamically accessed in a "safe" sentinel-based manner.
* YAML API generalized, enabling all YAML (sub)configurations to be loaded and
  unloaded in a general-purpose manner.