Skip to content
Snippets Groups Projects
  1. Jan 11, 2021
  2. Jan 08, 2021
  3. Jan 07, 2021
  4. Jan 06, 2021
  5. Jan 05, 2021
    • Brent Huisman's avatar
    • Brent Huisman's avatar
      Improve Recipe concept documentation · 808bb8fc
      Brent Huisman authored
      808bb8fc
    • Sam Yates's avatar
      Add unit test for 0-length segment area. (#1291) · e62db937
      Sam Yates authored
      * Add unit test that checks the expected contribution of an
      annulus to the embed_pwlin integrated area, when a zero-length segment
      with differing radii exists in the segment tree.
      e62db937
    • Benjamin Cumming's avatar
      Remove dependence of docs on the Python module (#1293) · d326f2ea
      Benjamin Cumming authored
      Revert a change introduced in #1282 that required the python module for arbor to build the documentation.
      
      This breaks the readthedocs build, where arbor is not available.
      
      * Remove arbor dependence from `doc/conf.py`, reverting to the original "out of core" approach
      * Fix other recently introduced issues that lead to CMake errors when configuring the documentation
        when the Python target is not configured.
        * The CMake variable `PYTHON_EXECUTABLE` wasn't set, but was required to make calls to the
           Python interpreter.
        * Instead of relying on pybind11 to find Python, explicitly detect it using `find_package(Python3 ...)`
        * Make Python3 a hard requirement when building the Python wrapper
        * And a soft requirement otherwise, that will fail only when the docs are built.
      d326f2ea
  6. Jan 04, 2021
  7. Dec 18, 2020
    • Nora Abi Akar's avatar
      Docs: Python examples (#1279) · 6ebfb3db
      Nora Abi Akar authored
      * Add 2 new examples to `python/examples` and their corresponding tutorials in the docs. 
          1. `single_cell_detailed.py` : a slightly more complex example using `single_cell_model`
          2. `single_cell_detailed_recipe.py`: equivalent to `single_cell_detailed.py` but using a recipe. 
      * Change `load_swc`-> `load_swc_arbor` for consistency.
      * Run Sphinx with specified PYTHON_EXECUTABLE.
      * Set PYTHONPATH env var in doc/CMakeLists.txt, such that it propagates correctly, including locally.
      * Build pyarb BEFORE html such that docs build can import arbor in Github Actions script.
      6ebfb3db
    • Nora Abi Akar's avatar
      Docs: Add missing class descriptions (#1280) · fdd30bda
      Nora Abi Akar authored
      Add API for `single_cell_model` and `label_dict`
      fdd30bda
    • Nora Abi Akar's avatar
      Docs: Miscellaneous (#1281) · d7c7c28e
      Nora Abi Akar authored
      * `concepts/cable_cell`: number subcategories to better illustrate document structure.
      * `concepts/labels`: concretize -> thingify; more on label dictionaries.
      * `concepts/mechanisms`: Some info on modcc, link to nmodl files in repo.
      * `concepts/morphology`: NeuroML section and some notes on branches/segments
      d7c7c28e
    • thorstenhater's avatar
      Expose `(segment id)` region expression. (#1282) · 5fcb14a1
      thorstenhater authored
      * Expose and document the (segment id) region expressions.
      * gen-labels.py was not up to speed with decor #1235.
      * The SWC example is read from disk and inserted into the docs verbatim.
      * The same file is used to generate the image.
      * The missing decor constructor has been added.
      * Generating inputs.py on the fly when building docs. That should prevent this issue from coming up again.
      5fcb14a1
  8. Dec 17, 2020
    • Brent Huisman's avatar
      Improved selection of default Python install path. (#1277) · 54b5c3ac
      Brent Huisman authored
      * Docs: emphasised the option of having pip install a local copy of the Arbor source.
      * CMake: default Python library install path to `${PYTHON_EXECUTABLE} -c "import sysconfig; print(sysconfig.get_path('platlib'))"`. Fixes #1100.
      * CMake: remove ARB_PYTHON_PREFIX option, added ARB_PYTHON_LIB_PATH option. We cannot know in general where in the prefix the packages are expected by Python.
      54b5c3ac
  9. Dec 16, 2020
  10. Dec 15, 2020
    • Nora Abi Akar's avatar
      Remove deleted example (#1286) · 0df4aa65
      Nora Abi Akar authored
      0df4aa65
    • 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
      cca8b761
    • 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.
      5037e597
    • 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`.
      ff06a4d9
  11. 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`
      5fdfb02e
    • 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.
      ac63809f
    • 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 
      a597ff8d
    • 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.
      175c3b32
  12. Dec 11, 2020
  13. Dec 10, 2020
  14. Dec 09, 2020
  15. Dec 08, 2020
    • Brent Huisman's avatar
      Fixes #1266 (#1267) · 3e8155eb
      Brent Huisman authored
      Replace CMAKE_SOURCE_DIR with PROJECT_SOURCE_DIR to pick up the correct paths when used as a sub-module.
      
      Fixes #1266.
      3e8155eb
  16. Dec 07, 2020
  17. Nov 30, 2020
    • Brent Huisman's avatar
      Docs frontpage elaboration · 92fdf6c5
      Brent Huisman authored
      * An explanation of documentation structure.
      * Added HBP/Ebrains to acknowledgements.
      92fdf6c5
    • Nora Abi Akar's avatar
      Allow arbitrary argument name for NET_RECEIVE (#1258) · 604e27f4
      Nora Abi Akar authored
      Fixes #1257
      604e27f4
    • Nora Abi Akar's avatar
      Bug fix: shared state time vector swap (#1253) · 64001961
      Nora Abi Akar authored
      Fixes a bug caused by swapping the `time` and `time_to` vectors in the `shared_state` and not swapping the corresponding data pointers in the `threshold_watcher` and `mechanism`.
      - This fix keeps the swapping optimization, and instead, the `threshold_watcher` and `mechanism` hold pointers to the std::vectors (not the underlying arrays) which are dereferenced before use. 
      - The mechanism API functions have been renamed. 
      - A unit test is also added that checks the interpolation behavior of the `threshold_watcher`.
      
      Fixes #1251 
      64001961
  18. Nov 27, 2020