Releases: pyrates-neuroscience/PyRates
Releases · pyrates-neuroscience/PyRates
v1.0.10: Cumulative bug fixes
- fixed #38
- updated use example for delayed differential equations https://pyrates.readthedocs.io/en/latest/auto_analysis/dde.html#sphx-glr-auto-analysis-dde-py
- TODO: fix issues with numpy backend and
past()usage - added
sqrtfunction to pytorch backend - fixed dimension problem with external inputs and vectorized networks. Now, different inputs to different network nodes can be passed using the
all/operator/variableconvention, if the input is an appropriate 2D array. - merged pull request #40 from PC-DOS/master to fix issue #39 as well as a typo in
python_definitions.py
v1.0.9: Updated use examples and fortran backend bug fix
- updated use examples to work with recent updates
- debugged problems with the Fortran backend that were caused by the changes
PyRates 1.0.8(state variables were represented as length-1 vectors instead of as scalars after 1.0.8)
v1.0.8: Added NumPy >= 2.3 support
added support for numpy 2.3: Changes from numpy 2.2 to numpy 2.3 dropped support for using a default shape of None for non-array variables. This update introduces several changes to the PyRates backend to account for that.
v1.0.7: Fortran backend updates and edge template debugging
- updated pytests to account for recent updates to sympy and other python packages
- fixed a bug in the documentation use example
continuation.py - improved support for complex variables in Fortran backend. The global variable
I = sqrt(-1.0)is now defined in each fortran script. Also, initial conditions for complex variables are properly set via the parentheses notation, e.g.v = (1.0, 0.5). - fixed a bug with the recognition of complex-valued variables in the
OperatorTemplateclass - resolved bug with edge template vectorization where edge source and target indices were not applied correctly
- dropped support for Python 3.7 and added support for Python 3.11 and 3.12
v1.0.6: Bug Fixes and Fortran Backend Improvements
- fixed a bug that caused vectorization to fail if the same operator was used multiple times on a single node
- fixed a bug that caused an error in the generation of unique variable names on nodes with more than 10 operators defined on them
- fixed a bug that caused
CircuitTemplate.clear()calls to not clear all attributes on aCircuitTemplateinstace, causing issues with multiple calls ofCircuitTemplate.get_run_func - updated the fortran backend to work with the recent changes to the
numpy.f2pymodule for generating a modulate that can be imported into python from a fortran file - fixed a bug in the
ComputeGraphclass of computegraph.py that caused function names to not be updated properly for backend-specific function definitions
v1.0.5: Resolved backend bugs with the equation parser
- adjusted the call of the max/min functions: Use
maxiandminiin the equations. Both functions take two input arguments, and return the larger/smaller one, respectively - updated the PyRates reference in the readme and on the documentation website (using the PLOS CB paper now instead of the arxiv preprint)
- removed a bug where differential equations with a constant right-hand side were not properly handled by the automated compute graph optimization
- resolved an issue with the fortran backend where complex data types were not properly processed during the code generation
v1.0.4: Dropped support for Python 3.6 and added support for Python 3.10
- updated readthedocs configuration file
- added keyword argument
adaptiveto theCircuitTemplate.get_run_funcmethod, which allows to indicate whether the generated equation file is expected to be called with an adaptive step-size solver (adaptive=True) or not - reduced computational overhead for the creation and simulation of delayed differential equation systems
- removed a bug where edge attribute dictionaries were changed by mistake during the
CircuitIRinstantiation - improved working directory management in the backend
- dropped official support for python 3.6 and added support for python 3.10
v1.0.3: Simplified variable name generation
- simplified automated generation of unique variable names. Recursive calls etc. were replaced with look-up tables, thus improving speed during the file generation process.
- improved variable passing between different operators within a node. Less additional variables are now created, thus reducing the memory load during run time.
v1.0.2: Improved Fortran Backend Functions and PyCoBi integration
- fixed bug in fortran backend where the NPAR parameter for Auto-07p files was not properly set
- improved code readability in fortran backend
- moved selection of output variables from the results of a numerical simulation from the backend to the computegraph, thus reducing the amount of variables that had to be passed between the different classes
- after each simulation, the value of all state variables in the compute graph is updated to the value at the final simulation step
- added functionalities to the
CircuitTemplatethat allow to remember the state of all network variables from a previous simulation, even if a new backend is chosen for function generation or more simulations
v1.0.1: Improved edge adding mechanism
- added a background input parameter to the izhikevich population template
- updated the documentation example for parameter sweeps to account for recent changes in the keyword arguments to the
grid_searchfunction - changed keyword argument
vectorizationof the functiongrid_searchtovectorize, to be consistent with the naming of the same argument inCircuitTemplate.run - updated the
CircuitTemplate.add_edges_from_matrixmethod to allow for edges that connect separate network nodes