Skip to content

Automatic chunkwise integration, model simplification, better datasets and evolution

Compare
Choose a tag to compare
@caglorithm caglorithm released this 26 Feb 14:21
· 1022 commits to master since this release
f87d941

We are happy to announce a new release of neurolib which brings us a lot closer to reaching one of our main milestones, the implementation of a multi-model Circuit πŸ€―πŸπŸŽ‰.

Changes:

  • This update brings Python 3.6-3.8 support (backwards compatibility)
  • A new feature of all models called autochunk can integrate a model chunkwise by itself which makes model implementation a lot easier! If a model wants to use this feature, it has to specify a list of its state_vars (state variables), the name of the analogous init_vars (initial values), output_vars for automatic storing of the model results and optionally a `default_output.
  • autochunk can also integrate every model by a single dt. This is a necessary preparation for the upcoming Circuit class.
  • With this update, every model can now also produce a BOLD signal. If the model is not a firing rate model (that produces outputs with a physcal unit of Hz, namely spikes per second), it can specify an attribute normalize_bold_input and the output will be normalized to a given range (given by normalize_bold_input_max) and a BOLD signal will be computed. See neurolib.models.hopf for an example.
  • The DTI datasets can now be loaded with several normalization methods, if the appropriate information is provided in the dataset. The provided DTI matrices are produced using FSL, from which we included the waytotal.txt (number of valid fibers found) and the nvoxel.txt file (number of voxels of the source region).
  • The evolutionary algorithm now allows you to register your own mating and mutation operators, making use of the simple interface that is provided by the deap package.
  • Got rid of 230 lines of code while the functionality increased. Yay!