Skip to content
Snippets Groups Projects
  1. Dec 15, 2020
    • Nora Abi Akar's avatar
      Fix Python build in GH Actions (#1285) · cca8b761
      Nora Abi Akar authored
      Python tests were failing because pyarb was not built
    • thorstenhater's avatar
      Ci/gh actions (#1249) · 5037e597
      thorstenhater authored
      First step of replacing Travis with GithubActions
      
      Here, only a basic set of tests has been added
      
      - Build arbor with MPI and Python
      - Compile examples
      - Run unit tests, incl distributed.
      - Run python tests, incl distributed.
      - Run python examples.
      - Build documentation.
    • Sam Yates's avatar
      Python API for `place_pwlin`. (#1250) · ff06a4d9
      Sam Yates authored
      Wrap place_pwlin interface to allow querying rich geometry information from cell morphologies.
      
      * Add Python bindings for the `place_pwlin` and `isometry` classes.
      * Add equality test for Python `mpoint`.
      * Add unit tests for new Python interfaces.
      * Split C++ API morphology documentation into its own file.
      * Add C++ API and Python API documentation for `place_pwlin` and `isometry`.
  2. Dec 14, 2020
    • Nora Abi Akar's avatar
      Expose global_properties in Python recipes (#1273) · 5fdfb02e
      Nora Abi Akar authored
      Extend Ptyhon recipe wrapper to support setting of global cell properties.
      
      * Rename `pyrecipe::get_probes` to `py_recipe::probes`
      * Remove `global_properties_shim` : It's easy to make mistakes with the class, as it holds a `mechanism_catalogue` and a `cable_cell_global_properties` which holds a pointer to the catalogue. This would likely have caused issues with the users.
      * Expose `py_recipe::global_properties`
    • Benjamin Cumming's avatar
      Decor (#1235) · ac63809f
      Benjamin Cumming authored
      Make the `cable_cell` interface read only by passing the decorations
      to its constructor in a new `decor` type.
      
      C++ library
      * Remove the paint/place/set_default interface from `cable_cell`
      * Create a `decor` type that:
        * stores lists of paintings and placings
        * stores a set of cable cell parameters
        * uses the `paint`, `place`, `set_default` interface that was deprecated
          from `cable_cell`.
      * Create `paintable`, `placeable` and `defaultable` variants that are sum types
        over the respective types that can be painted, placed and defaulted.
      * Remove the overloaded `cable_cell::paint`, `cable_cell::place`,
        `cable_cell::set_default` methods to single methods that consume the sum types.
      
      Unit Tests
      * Many small changes because many many tests use cable cell API.
      * There were no `cable_cell` unit tests! Not such a big deal, since cable_cell
        is tested implicitly in so many other tests
        * but I added cable_cell tests: not much at the moment but will quickly fill
          up as we work on reading, writing, etc.                                                            
      
      Python
      * Wrap the new decor type.
      * Update cable cell type to reflect read only API.
      * Wrap the cv_policy types and implement the same operator overloading.
    • Nora Abi Akar's avatar
      modcc : report linear test error. (#1278) · a597ff8d
      Nora Abi Akar authored
      Fix segfault in modcc when min/max used in net_receive.
      
      * The error occurred when a synapse that use `max` or `min` expressions in the `net_receive` block: we test for linearity to check whether they can be coalesced; we cannot differentiate the expression; an error is raised but not reported; seg fault. 
      * Fixes ` as_c_double` printing which does not print integers as doubles as intended. 
      
      Fixes #1275 
    • thorstenhater's avatar
      Fix GIL related error in pybind11 interface. (#1272) · 175c3b32
      thorstenhater authored
      Fix a latent bug in the Python wrapper that was triggered in pybind11 v2.6.1
      
      These changes ensure that the GIL is acquired before calling functions in C++ that
      may consume a Python object with reference count 1 as an argument, in which case
      the object's destructor is called at the end of the function, after any GIL acquired inside
      the function would have been released.
      
      Fixes #1271.
  3. Dec 11, 2020
  4. Dec 10, 2020
  5. Dec 09, 2020
  6. Dec 08, 2020
  7. Dec 07, 2020
  8. Nov 30, 2020
  9. Nov 27, 2020
  10. Nov 23, 2020
    • Nora Abi Akar's avatar
      Docs: Cell kind and description (#1227) · 9ab86402
      Nora Abi Akar authored
      * Modify `cell kind` concept docs.
      * Add `cell description` concept docs.
      * Reorder the docs so that the recipe, cell kind and description, interconnectivity, hardware management, domain decomposition, and simulation are consecutive. Then start the more detailed cable cell docs. 
  11. Nov 19, 2020
  12. Nov 18, 2020
    • thorstenhater's avatar
      Add readme to examples. (#1228) · 9233b784
      thorstenhater authored
      * Add a readme for the C++ examples
      * Improved readme for dryrun
      
      Fixes #868, #1107.
    • Sam Yates's avatar
      Expose diverse probes in Python API. (#1225) · 1bfe96bc
      Sam Yates authored
      Major changes in Python library and documentation:
      
      * Add global state (immutable after initialization) for the Python module that
        manages the mapping between probe metadata types and the method by which the
        corresponding [sample data can be collected and presented as Python objects.
        This is necessary for decoupling the implementation of the simulation wrapper
        from that of the various cable cell probe types.
      
      * Wrap each of the C++ cable cell probe types with a Python function that
        returns a `probe_info` object.
      
      * Add code for converting and accumulating C++ probe metadata and sample
        data, registered in the module global state against the metadata type info.
      
      * Make the `arbor.simulator` object responsible for recording all spike and
        sample data, with corresponding new methods.
      
      * Use NumPy arrays and structured datatypes for returning spike and
        sample data.
      
      * Place Python schedule proxies under an abstract interface so tha...
  13. Nov 17, 2020
  14. Nov 13, 2020
  15. Nov 11, 2020
  16. Nov 10, 2020
  17. Nov 09, 2020
  18. Nov 06, 2020
  19. Nov 05, 2020
    • Nora Abi Akar's avatar
      Modify SWC loaders (#1214) · 594a365f
      Nora Abi Akar authored
      * Rename `as_segment_tree` to `load_swc_arbor`.
      * Remove `swc_mode`: `sort_and_validate_swc` now performs the `relaxed` checks by default, `load_swc_arbor` performs the `strict` checks. 
      * Change `load_swc_xxx` to only accept `swc_data` as an argument
      * Remove default constructor for `swc_data` and enforce validation of SWC records via `sort_and_validate_swc` at construction.
      * Add fixes for docs and unit tests.