- Apr 06, 2021
-
-
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 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 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
-
- Apr 02, 2021
-
-
Benjamin Cumming authored
Replicate the spack `package.py` from the main spack repository into the arbor repo. Some small updates were made: - Correctly provide a url for the GitHub tagged release - Specify minimum pybind11 version 2.6 Fixes #1465
-
- Apr 01, 2021
-
-
Brent Huisman authored
* Install gcc-8 and clang-8 in GitHub Actions Ubuntu image, as these had been removed in an update 29.03.2021. See https://github.com/actions/virtual-environments/issues/2950
-
- Mar 31, 2021
-
-
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
-
- Mar 30, 2021
-
-
Charl Linssen authored
Co-authored-by:
C.A.P. Linssen <charl@turingbirds.com>
-
Nora Abi Akar authored
* Fix the regular schedule generated in `single_cell_model::run` * Adjust frequency of probes in python examples to the correct unit (KHz). Fixes #1457
-
- Mar 29, 2021
-
-
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 authored
-
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.
-
- Mar 25, 2021
-
-
Benjamin Cumming authored
Fix orientation of ASC somas from along z axis to along the y axis. As per the rules followed by Arbor's SWC parsers, and prescribed in: http://neuromorpho.org/SomaFormat.html Addresses #1445
-
- Mar 24, 2021
-
-
Sam Yates authored
-
- Mar 23, 2021
-
-
Nora Abi Akar authored
* Fix semantic passes and error visitor expression coverage in modcc.
-
Nora Abi Akar authored
* Add a method to `event_generator` that returns all of its targets. * When the simulation is constructed, check the targets of each event generator, and throw an exception if an the `gid` or `lid` is invalid. * Add corresponding unit tests.
-
- Mar 22, 2021
-
-
Nora Abi Akar authored
* Make net_receive and post_event APIMethods in modcc.
-
- Mar 19, 2021
-
-
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 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 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
-
- Mar 18, 2021
-
-
Nora Abi Akar authored
* Add on-components to label_parse.cpp, and to corresponding unit test.
-
- Mar 17, 2021
-
-
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 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
-
- Mar 15, 2021
-
-
thorstenhater authored
- Add _running_ C++ examples to standard CI runs (compiling has been in since the start). - Fix `bench.cpp` to set return value to 1 if exceptions are caught.
-
Brent Huisman authored
-
- Mar 13, 2021
-
-
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.
-
- Mar 12, 2021
-
-
Sam Yates authored
-
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 `simulat...
-
- Mar 11, 2021
-
-
Sam Yates authored
* Change implementation of current clamp from a builtin mechanism to functionality provided by the back-end shared state classes. * Extend clamp functionality to cover more use cases: it now supports DC and AC stimuli governed by a piecewise-linear envelope. * Update Python iclamp wrapper to suit; add unit test. * Account for total applied stimulus currents separately, and remove their contribution to the reported transmembrane current and ionic (i.e. non-capacitive) transmembrane current. * Add new probe specifically for tracking total current stimulus in a cell. * Update docs, and add an entry for current clamps to the concepts doc. * Remove entirely the builtin catalogue.
-
Sam Yates authored
* Provide defines and variables for version string components: major version; minor version; patch level version; development suffix. * Change commit date format to strict ISO. * Add define/variable for Arbor build configuration. * Add usage/help info to `git-source-id` script. * Add define/variable for a full build identification string, incorporating source info, version, build configuration, feature options. * Add documentation for the version and build defines and variables. * Extend version unit tests to suit.
-
- Mar 09, 2021
-
-
Nora Abi Akar authored
* Remove parts of the C++ API which leaked into `doc/fileformat/neuroml.rst` * Add links to the relevant C++ and Python API
-
- Mar 08, 2021
-
-
Brent Huisman authored
-
- Mar 05, 2021
-
-
Brent Huisman authored
* Correct some malformed YAML.
-
Brent Huisman authored
* Auto-generate binary Python wheels, triggered by git tags 'v*'. * Wheels are generated for Python versions 3.6-3.9, for Linux using the [PyPA manylinux-2014 image](https://github.com/pypa/manylinux) and MacOS using macos-latest (10.15 at time of writing). * The Action generates `sdist` for any other platforms. * The cibuildwheel action automatically prepares the wheels using [auditwheel](https://cibuildwheel.readthedocs.io/en/stable/options/#repair-wheel-command), which means bundling of external deps (e.g. libxml2 for NeuroML). * The output is all that's needed for publication of a new version to (Test)PyPI. * `setup.py` defaults `neuroml` to on. * A small change to `CMakeLists.txt` was required to build the wheels: based on this [Pybind hint](https://pybind11.readthedocs.io/en/stable/compiling.html#findpython-mode) `Development.Module`is now required, and not `Development` when CMake searches for Python. I confirm this change is needed to make Arbor build in the manylinux docker images, but I do not understand what the change implies, other than that we now don't link to `libpython`.
-
- Mar 04, 2021
-
-
Brent Huisman authored
* Refactor Documentation layout. * Display Spack page. * Display Extending catalogues page. Fixes #1353.
-
- Mar 03, 2021
-
-
thorstenhater authored
Force nvcc to use the c++ compiler used to compile the c++ code.
-
- Mar 02, 2021
-
-
thorstenhater authored
* Fix a quite obvious ptr arithmetic bug. * Clean-up to avoid similar issues. * Const, my old friend. * Test: refactor.. * Lambda capture. * Clean up using append_chunk. * Catch two escaped _.
-
- Mar 01, 2021
-
-
Nora Abi Akar authored
Update `set_ion` method of `cable_global_properties` to allow the addition of new ions
-
Brent Huisman authored
-
- Feb 25, 2021
-
-
Nora Abi Akar authored
* Remove redundant `initial_ion_data` specification.
-
thorstenhater authored
* Use CMake check_cxx_source_compiles and check_cxx_source_runs to detect how std::filesystem is enabled. The probes are executed first, if none succeeds, we use link-only to cover the possibility that we are cross-compiling.
-