Skip to content
Snippets Groups Projects
  1. Apr 23, 2021
  2. Apr 22, 2021
  3. Apr 21, 2021
  4. Apr 20, 2021
  5. Apr 14, 2021
  6. Apr 12, 2021
  7. Apr 08, 2021
    • Sam Yates's avatar
      Add phase parameter to current clamps. (#1474) · 05569a16
      Sam Yates authored
      * `i_clamp` constructors take new optional phase argument.
      * Pulse or box envelope clamps are now provided by the static method `i_clamp::box`, taking onset, duration, and amplitude parameters.
      * Bump pybind11 version so we can have keyword-only arguments in the Python API.
      * Make frequency and phase keyword-only arguments to Python `iclamp`.
      * Change frequency units for clamps from Hz to kHz for consistency with other interfaces.
      
      Fixes #1454.
  8. Apr 06, 2021
    • Benjamin Cumming's avatar
      Update NEURON-style swc reader (#1475) · 00fd01b6
      Benjamin Cumming authored
      * update and simplify the `load_swc_neuron` reader to match the simplified and more correct interpretation in NEURON 8
      * update the documentation on the interpretation, and add details about how it still differs from the neuromorpho descriptions. 
      * update unit tests to reflect new interpretation
      * add a unit test that reproduces a complex case from the NEURON test suite.
      * remove the `load_swc_allen` C++ and Python calls
      * add links to NeuroMorpho site in the documention
      
      Fixes #1445.
    • Benjamin Cumming's avatar
      Clarify Python installation from CMake (#1413) · 0c3ce90f
      Benjamin Cumming authored
      Always install Python module inside CMAKE_INSTALL_PREFIX, unless the user explicitly sets the ARB_PYTHON_LIB_PATH CMake variable.
      
      Update documentation on installing and building the Python packing using CMake to have a detailed example of how to install the Python module inside a virtual env.
      
      Fixes #1403
    • Brent Huisman's avatar
      Assorted docs fixes (#1471) · 334830ae
      Brent Huisman authored
      * Correct the installation page.
      * Custom css is not supported by theme, so a css snippet improving table formatting was moved to the theme css.
      * Non cable-cell concept docs were wrong, improved formatting
      * Some typos
      
      Co-authored-by: @clinssen 
  9. Apr 02, 2021
  10. Apr 01, 2021
  11. Mar 31, 2021
    • Nora Abi Akar's avatar
      Arbor Cable-Cell Format (ACC) (#1423) · 96d961ac
      Nora Abi Akar authored
      * Implements parsers and writers in `arborio` for the s-expression based Arbor Cable-Cell Format defined in #1336.
      * Moves `s_expr.hpp` to the public interface.
      * Adds python wrappers to support the features in pyarb.  
      * Adds unit tests.
      * Adds docs.
      
      Fixes #1336
      Partially addresses #1233
  12. Mar 30, 2021
  13. Mar 29, 2021
    • Nora Abi Akar's avatar
      Remove `gid` attribute of target of a connection, and local gap-junction site... · db0041a5
      Nora Abi Akar authored
      Remove `gid` attribute of target of a connection, and local gap-junction site of a gap-junction connection (#1467)
      
      * Change the type of the target of a `connection` from `cell_member_type` to `cell_lid_type`. The target cell's gid is always known in both the recipe and simulation.
      * Change the type of the local site of a `gap_junction_connection` from `cell_member_type` to `cell_lid_type`, and make it such that the first argument of the connection is the peer site, and the second the local site. The local cell's gid is always known in both the recipe and simulation.
      * Change the type of the target of an `event_generator` from `cell_member_type` to `cell_lid_type`. The target cell's gid is always known in both the recipe and simulation.
      * New `cell_spike_events` and `cse_vector` for `simulation::inject_events`.
      * Simplify recipe sanity checks and remove associated exception types. 
      * Fix unit tests, examples, docs
    • Nora Abi Akar's avatar
      Update nmodl guidelines (#1468) · d6e990d0
      Nora Abi Akar authored
    • Sam Yates's avatar
      Add optional spherical root for NeuroML. (#1464) · cab5d33d
      Sam Yates authored
      * Adds a `neuroml_options` namespace with enum for use with `neuroml::morphology(...)` and `neuroml::cell_morphology(...)`.
      * Add support for a 'spherical' root segment with option `neuroml_options;:allow_spherical_root`; a zero-length root segment with identical proximal and distal radius will then be converted into an area-equivalent cylinder in the resultant morphology.
      * Amend `place_pwlin::all_at` so that locations on a zero-length segment with different radii at the endpoint will give an mpoint for either end.
      * Add `allow_spherical_root` boolean optional parameter to Python NeuroML morphology methods.
      * Update docs; C++ unit tests.
  14. Mar 25, 2021
  15. Mar 24, 2021
  16. Mar 23, 2021
  17. Mar 22, 2021
  18. Mar 19, 2021
    • Sam Yates's avatar
      Rename/hide components to fix ODR violation in arborio. (#1444) · 41952060
      Sam Yates authored
      * Add `nml_` prefix to NeuroML-related classes in arborio.
      * Separate `arborio/xmlwrap` from NeuroML exceptions.
      * Put xmlwrap functionality in its own namespace.
      * Have xmlwrap property access errors returned by util::expected, so that the corresponding NeuroML exceptions are strictly the
      responsibility of the NeuroML parsing code.
      * Rename NeuroML implementation and support sources and headers.
      * Place implementation classes for Neurolucida ASC parsing in an anonymous namespace.
      
      Fixes #1441.
    • Benjamin Cumming's avatar
      Fix bug attaching branches to the soma in ASCII file descriptions (#1440) · 7ae3f39f
      Benjamin Cumming authored
      Fix bug attaching branches to the soma in ASCII file descriptions.
      
      Branches in an ASCII description attached to the soma were incorrectly creating a segment
      from the center of the soma to the first point in the branch.
    • Sam Yates's avatar
      Amend segment cables for zero length branches. (#1443) · 085c4299
      Sam Yates authored
      Amend segment cables for zero length branches.
      
      Ensure cables corresponding to segments cover even zero length branches, by setting the segment cables to (b, 0, 0) for all but the last segment in a zero-length branch b, and setting that last segment cable to (b, 0, 1).
      
      Fixes #1442 
  19. Mar 18, 2021
  20. Mar 17, 2021
    • Benjamin Cumming's avatar
      Neurolucida ASCII file format support (#1429) · 6f8e6f52
      Benjamin Cumming authored
      Basic support for reading morphologies from Neurolucida ASCII (.asc) files.
      
      Added to the arborio C++ library, and wrapped similarly to the other arborio features in Python.
      
      Fixes #1429
    • Brent Huisman's avatar
      Port of Brunel example (#1404) · c326ab3b
      Brent Huisman authored
      * Add Python version of brunel.cpp example.
      * Enforce consistency in units: both C++ and Python APIs use unit `kHz` for all frequencies.
      * Align Python version `poisson_schedule` signature with C++ equivalent.
      * Update unit tests to suit API changes.
      * Update documentation to suit, along with minor additions related to networks and interconnectivity.
      * Add `brunel.py` to `basic.yml` tests
  21. Mar 15, 2021
  22. Mar 13, 2021
    • thorstenhater's avatar
      MechABI Prelim: Add parameter packs for multicore (#1406) · 69b90b2f
      thorstenhater authored
      - Use parameter packs for multicore mechanisms.
      - Adjust unit tests and modcc.
      - CPU and GPU use the same mechanism_ppack_base.
      - CPU code uses a split similar to GPU with `mech_XYZ_foo` and `kernel::mech_XYZ_foo.
      - Make mechanism_ppack_base header public.
      - Tracing macros for modcc code gen.
  23. Mar 12, 2021
    • Sam Yates's avatar
    • Sam Yates's avatar
      Enable simulation resume/restart. (#1427) · a7070e36
      Sam Yates authored
      * Add start time to `epoch` struct, rename time fields to avoid confusion with tfinal parameter to `simulation_state::run()`. Default constructed epoch now has id -1.
      * Replace `t_`, `epoch_`, `min_delay_` timekeeping in simulation_state with `epoch_` and `t_interval_`: `epoch_` holds most recently simulated interval.
      * Split event_lane population out of exchange task.
      * Document in code comments the sub-task dependencies in `simulation_state::run()`.
      * Rewrite main simulation loop to abide by pre- and post-conditions that ensure correct behaviour from successive calls to
      `simulation_state::run()`.
      * Replace double buffer for `simulation::local_spikes_` with array, analogous to `event_lanes_`.
      * Update cell groups, unit tests for new epoch interfaces.
      * Remove `util::double_buffer` and test.
      * Remove unnecessary includes in `mc_cell_group.hpp`.
      * Add unit tests for simulation global spike callback and restart operations (i.e. successive calls to `simulation::run()`).
      * Fix for `lif_cell_group::reset()` error leading to out of bounds access.
      
      Fixes #873 and #1426.