- Oct 07, 2021
-
-
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.
-
- Oct 06, 2021
-
-
Sebastian Schmitt authored
-
Sebastian Schmitt authored
-
- 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 28, 2021
-
-
Robin De Schepper authored
Expose default (empty) catalogue constructor to Python
-
- Aug 27, 2021
-
-
Nora Abi Akar authored
- Expose `arb_mechanism_kind` to `mechanism_info`. - While building mechanism data in `fvm_build_mechanism_data`, check that synapses, painted region dynamics and reversal potential methods have the expected `arb_mechanism_kind`. - Add unit test.
-
- Aug 16, 2021
-
-
Brent Huisman authored
Latest Pandas versions required unique indices, breaking the plotting in the python examples.
-
- Aug 10, 2021
-
-
Brent Huisman authored
-
- Aug 02, 2021
-
-
thorstenhater authored
* Fix failure to return value in `py_mech_cat_value_iterator `. * String butchered by formatting. * Join unnecessary separation of string literals in `arborio/cabelio.cpp` * Add missing throw in s_expr code. * Return value, not reference, in `merge_iterator::operator++(int)`. * Check for self-assignment in `mechanism_catalogue`. * Initialize all members of `mechanism`. * Fix index check order in `multi_event_stream` debug output. * Use coordinator_ from base class in `memory::array`.
-
- Jul 29, 2021
-
-
thorstenhater authored
Implements #1376. * Provide a common C linkage ABI for externally compiled mechanisms, for both CPU and GPU. * Remove mechanism type hierarchy (`concrete_mechanism` etc.), and move corresponding functionality to the back-end shared state objects. Mechanism catalogue is no longer indexed by type id. * Distinguish between SIMD optimal alignment and SIMD width with new `min_align` attribute. Mechanisms provide both pieces of information via ABI.
-
- Jul 27, 2021
-
-
Brent Huisman authored
* added notes re literal_include to python examples * merged changes in #1504 * deduped and includified (https://github.com/arbor-sim/arbor/pull/1558) tutorials. * First divergence of tutorial and code spotted! * Added some contrib documentation for examples and docs.
-
- Jul 05, 2021
-
-
thorstenhater authored
Closes #1547. - Move `MechCat*Iter` to module instead of catalogue class - Add `keys`, `values`, and `items` - Fix a typo.
-
- Jul 02, 2021
-
-
Brent Huisman authored
- Minor fixes to python examples. - Fix `mpi.py` to use new label API. - Rename `mpi.py`.
-
- Jun 29, 2021
-
-
thorstenhater authored
1. All s-exp parsing has migrated to `arborio` 2. CV policies can now be read from string as per #1334. This is needed for the GUI project. 2. No longer can `arb::locset` and `arb::region` be constructed from mere strings 2. We have `arborio::literals` to construct `region`s, `locset`s, and `cv_policy`s in the form of `_rg`, `_ls`, and `_cvp`. 3. The `_lab` suffix now constructs an object that converts to `named` morphologies, rather than a simple string. 4. Constructors of `region` and `locset` are now properly guarded 5. Consequently, a lot of missing inheritance from `region_tag` and `locset_tag` was retrofitted. Closes #1334 Closes #1419
-
- Jun 24, 2021
-
-
Nora Abi Akar authored
* Remove test_simulator.py. * Add missing python unit test file and fix errors. * Run python unit tests in verbose mode to display which were skipped.
-
- Jun 23, 2021
-
-
Sebastian Schmitt authored
-
Benjamin Cumming authored
- Add an optional CMake option `ARB_CXX_FLAGS_TARGET` for setting target-specific flags to use when compiling for the target architecture (not applied to compilation of modcc). - If `ARB_ARCH=="none"` CMake will not add architecture-specific `mtune/march/mcpu` flags - Remove `ARB_CXXOPT_ARCH` from the installed `arbor-config.cmake`, and replace with more general `ARB_CXX_FLAGS_TARGET`. - Update spack `package.py` to use this feature to pass custom flags. Fixes #1519 Fixes #1522 Replaces PR #1518
-
- Jun 18, 2021
-
-
Nora Abi Akar authored
New structs and types: * `cell_tag_type` (std::string): for labelling placeable items on a cell. The label refers to a number of items placed on a locset, equal to the number of locations in a locset. The number of locations in not always known to the user, so the previous way of using indices for items was no longer sufficient. * `lid_selection_policy`: for allowing a user to select a single item from a group of items sharing a label. Currently only `round_robin` and `assert_univalent` are supported. * `cell_local_label_type` and `cell_global_label_type`: for identifying the target and source of a connection or gap_junction connection. * `cell_label_ranges`, and `cell_labels_and_gids`: for propagating information about the labelled items on the cell from the cell groups back to the simulation and communicator. * `label_resolution_map` and `resolver`: for selecting an item (and retaining state) from a labelled group of items on a cell according to a user-selected policy. Changes to the model-initialization: * The `communicator` now needs `label_resolution_maps` constructed from the cell group data in order to build the `connections` vectors. * The `simulation_state` object handles the transfer of the information when it is constructed. * Spike exchange at runtime remains unchanged, because `communicator::connections` remains unchanged. Changes to cells, cell_groups and recipe: * `decor::place` expects a third label parameter, no longer returns an `lid_range`. * `lif`, `source`, and `benchmark` cells need source/target labels in their constructors. * A `cell_group` needs to save data about the gid/labels/lid_ranges of each cell, to propagate back to the `communicator` constructor. * Connections/gap junction connections are formed between {label, policy} pairs on cells instead of indices. * `num_sources`, `num_targets`, `num_gap_junction_sites` deleted from `recipe`. Additional changes: * Add MPI wrapper for exchanging vectors of strings. * Corresponding updates to unit tests, Python wrapper, C++ and Python examples, documentation. Fixes #1394
-
- Jun 16, 2021
-
-
Sebastian Schmitt authored
-
Benjamin Cumming authored
* Sort collected spikes in Python API lfirst by time, then gid, then lid. * Remove redundant old spike handling code from Python lib.
-
- May 31, 2021
-
-
thorstenhater authored
* Raise KeyError in catalogue. * Raise KeyError in label_dict.
-
- May 26, 2021
-
-
Robin De Schepper authored
-
Benjamin Cumming authored
The `label_dict` Python wrapper caches label strings and their descriptions in order to provide a convenient Python iterator interface and `[]` access. These were not being properly updated or set when the label_dict was constructed from a C++ label_dict.
-
Brent Huisman authored
* Update URLs to arbor-sim.org * update badge links
-
- May 17, 2021
-
-
Nora Abi Akar authored
Fix mistakes reported by @Helveg in the Python tutorial docs.
-
- May 04, 2021
-
-
Brent Huisman authored
-
- Apr 29, 2021
-
-
Sam Yates authored
-
Nora Abi Akar authored
* Exit with correct exit code from Python test runners. * Fix unit tests that were using older APIs.
-
- Apr 22, 2021
-
-
Nora Abi Akar authored
-
- Apr 21, 2021
-
-
Sebastian Schmitt authored
-
- Apr 08, 2021
-
-
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.
-
- 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
-
- 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
-
-
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
-
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 23, 2021
-
-
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.
-