- Nov 09, 2021
-
-
Sam Yates authored
* Add test that is sensitive to small radius loss of precision in ixa computation. * Add test that checks for consistent behaviour when there is an (isolated) zero radius point in the morphology. * Special case p==1 q==1 case in ratelem so that it can interpolate ixa in the presence of non-finite interpolants. * Change naming in pw_element/pw_elements: 'element' refers to the extent+value pairs comprising a 'pw_elements' object; 'value' refers to the value associated with an element; 'extent' refers to the closed interval which is the support of the element. * Allow values (but not extents) in a pw_elements object to be mutable, using proxies for iterator access. * Write piecewise zip (pw_zip) in terms of a lazy pw_zip_view. Rename zip functions. * Document pw_elements more thoroughly. * Simplify and document embed_pwlin.cpp routines, expressing everything in terms of simple interpolate/integrate operations. * Represent integrated inverse cross-sectional area in the embedding by multiple piecewise-rational functions over a branch, each of which contribute separately to an ixa-based integration, so that precision loss associated with small (or zero) radii can be avoided. * Comment embed_pwlin.cpp more thoroughly. Fixes #1526
-
- Nov 02, 2021
-
-
Nora Abi Akar authored
Add SVE implementations of `sin` and `cos` using `std::sin` and `std::cos` respectively. Fixes failing CI on a64fx architectures for vectorized builds.
-
- Oct 29, 2021
-
-
Benjamin Cumming authored
-
Benjamin Cumming authored
-
- Oct 28, 2021
-
-
Brent Huisman authored
-
Brent Huisman authored
-
- Oct 27, 2021
-
-
Nora Abi Akar authored
-
Brent Huisman authored
-
- Oct 22, 2021
-
-
Nora Abi Akar authored
Some refactoring of the SOLVE statement handling in `module.cpp`. Allow the usage of `SparseNonlinearSolverVisitor` for non-linear systems not only when in the form of a kinetic scheme. Check linearity of kinetic schemes and linear systems (was previously skipped).
-
Nora Abi Akar authored
Adds support for user-defined gap junction mechanisms. Fixes #1600. - API Change: Wrap `mechanism_desc` in one of `density`, `synapse`, `junction` to be able to differentiate the kind of placed mechanism between point and junction mechanisms. - API Change: The `ggap` parameter of a `gap_junction_connection` renamed to `weight` and is not a unit-less parameter. - Mechanism ABI change: New `peer_index` vector which stores the indices of the peer sites of a gap-junction-connection. New mechanism kind. - Internal API change: `shared_state` no longer controls the gap junction current contribution, that is now handled in the mechanism callbacks. - Modcc change: Add `JUNCTION_PROCESS` and `v_peer` keywords to nmodl, the first to identify a gap-junction mechanism, the second to access the peer voltage of a gap-junction connection. Modify modcc to be able to compile nmodl and generate correct code. - Behavior change: gap-junctions now contribute to both the current and conductance of a CV as opposed to just the current. - Add new "gj" mechanism, to replace the built-in constant-conductance based linear gap-junction implementation. - Fix unit tests. - Fix python wrapper. - Fix docs.
-
Benjamin Cumming authored
Add `proximal-translate` and `distal-translate` locset expressions. Fixes #1662
-
- Oct 21, 2021
-
-
Robin De Schepper authored
-
Thorsten Hater authored
-
Brent Huisman authored
-
- Oct 18, 2021
-
-
Robin De Schepper authored
-
- Oct 14, 2021
-
-
Nora Abi Akar authored
Fix sub-optimal performance in external catalogues. Fixes #1712
-
- Oct 13, 2021
-
-
Nora Abi Akar authored
-
Robin De Schepper authored
-
Alexander Peyser authored
Add methods to `label_dict` - iterators `keys`, `values`, `items` - `update(dict)` - `label_dict(iter[k, v])`, `label_dict(label_dict)` - `__contains__` Also bump `pybind11` to latest and clean up `label_dict` implementation. Addresses #1535 (in so far as possible)
-
- Oct 12, 2021
-
-
Brent Huisman authored
-
Thorsten Hater authored
* Add platform abstraction for loading DLL/SOs. * Throw more informative exceptions when handling DLL/SOs. * More informative errors when dealing with dynamically loaded catalogues. * Translate `arb::file_not_found_error` to `FileNotFoundError` in Python.
-
- Oct 08, 2021
-
-
Robin De Schepper authored
-
max9901 authored
- Add `simulation.clear_samplers` to remove spikes and samples from Python. - Usecase: long-running simulations; where unlimited growth of sampling memory is an issue.
-
Sebastian Schmitt authored
-
- Oct 07, 2021
-
-
Robin De Schepper authored
-
Robin De Schepper authored
-
Robin De Schepper authored
A `--debug` flag is added so that users can inspect the out-of-tree generated C++ code of their catalogue builds.
-
Robin De Schepper authored
Adds the `profiler_initialize(ctx)` and `profiler_summary()` functions to the Python module and the `profiling` key to `arbor.config()`. closes #1685.
-
Sebastian Schmitt authored
-
- Oct 06, 2021
-
-
Sebastian Schmitt authored
-
Sebastian Schmitt authored
-
Brent Huisman authored
-
Brent Huisman authored
-
- Oct 05, 2021
-
-
Sebastian Schmitt authored
- `make install` in CI - make `build-catalogue` play nice with Python 3.6 - execute `build-catalogue`
-
- Oct 04, 2021
-
-
Brent Huisman authored
Fixes #1666
-
Espen Hagen authored
-
- Sep 30, 2021
-
-
Sebastian Schmitt authored
Limit poisson schedule with a stop time using the same semantics as the regular schedule. closes #1617
-
- Sep 29, 2021
-
-
Thorsten Hater authored
More, subtler fallout of the ABI patchset: When mechanisms are added to empty regions, various, layered segfaults appear. 1. `set_parameter` will receive a `nullptr` upon linear search, throwing `no such parameter` 2. Guarding this for finite `width` uncovers further need in the ABI interface methods 3. This is caused by early exit in `instantiate` on `width == 0` 4. Getting rid of this is better, as we can treat vacuous mechanism painting like all others... 5. ...but causes another segfault, since we default index arrays to `cv_pos.back()` but `cv_pos` is empty. This patch fixes all of the above and in addition removes mechanisms without support before reifying them on the FVM cells. Relevant tests are added.
-
- Sep 28, 2021
-
-
Robin De Schepper authored
Expose default (empty) catalogue constructor to Python
-
Nora Abi Akar authored
Fixes 2 bugs where modcc expects a range variable but gets a non-range variable instead. PowBinaryExpressions were being handled separately from other BinaryExpressions and as a result, some crucial analysis was being skipped on the analysis of the lhs and rhs arguments. This PR incorporates the analysis and printing of PowBinaryExpression into BinaryExpression. Printing code for a masked AssignmentExpression was not handling the case of a non-range variable on the rhs of the assignment correctly. In that case, an explicit cast to a vector is needed, which is added in this PR.
-