1. 11 Feb, 2021 5 commits
    • Brent Huisman's avatar
      Docs reorder cable cell (#1310) · c96ef921
      Brent Huisman authored
      * Sync Cable Cell page names and ordering between sections (concept, python, cpp). Except cpp cable cell page. Is still one big page.
      * Move CV definition across categories to consistent location.
      * Move decor to separate page (cpp currently missing decor documentation) because it's a top-level concept that should be in the TOC like the other ingredients of the cable cell.
      * Slight rework of Concept intro and Cable Cell pages.
      * The Cable Cell page is now basically an intro, and lay out how the other pages/concepts relate to each other.
      c96ef921
    • schmitt sebastian's avatar
      Example for a plastic synapse (#1345) · fc5e98ba
      schmitt sebastian authored
      Online STDP is implemented in the synapse and
      and demonstrated by recording an STDP curve in
      an example.
      fc5e98ba
    • Nora Abi Akar's avatar
      Modcc: comments & seg fault (#1360) · 2775b3f3
      Nora Abi Akar authored
      * fix nmodl comment parsing
      * proper handling of \r
      * fix segmentation fault when api_state is null
      * add unit tests
      2775b3f3
    • Nora Abi Akar's avatar
      Modcc: parse the unit of `FUNCTION` (#1361) · 89a2f041
      Nora Abi Akar authored
      * add function unit parsing
      * add unit tests
      89a2f041
    • Nora Abi Akar's avatar
      update gitpod cmake (#1363) · 2adcd65c
      Nora Abi Akar authored
      2adcd65c
  2. 10 Feb, 2021 2 commits
  3. 09 Feb, 2021 1 commit
  4. 08 Feb, 2021 1 commit
  5. 06 Feb, 2021 1 commit
    • Nora Abi Akar's avatar
      Use JFrog as a registry and fix build errors (#1350) · e5123942
      Nora Abi Akar authored
      * Make Gitlab CI push images to CSCS' JFrog registry reg.giuv.cscs.ch so that sarus can pull images on Daint again. 
        This URL is probably temporary until JFrog officially goes into production later this month.
        Unfortunately JFrog is currently behind the firewall.
      * Upgrade g++ to g++8 on the Docker image.
      * Only require libxml when compiling with NeuroML support.
      e5123942
  6. 05 Feb, 2021 4 commits
  7. 04 Feb, 2021 2 commits
    • thorstenhater's avatar
      68389ebe
    • Nora Abi Akar's avatar
      Add `post events` functionality to support models with STDP synapses (#1255) · 3531f7ee
      Nora Abi Akar authored
      * Added a `POST_EVENTS` procedure to nmodl, that takes an argument that represents the time since the last spike on the cell. In the event of multiple detectors on the cell, and multiple spikes on the detectors within the same integration period, all spikes will be processed by the synapse. Spikes are processed only once and then cleared.
      * Added 3 vectors to the shared state required to dispatch post-events: `cv_to_cell` map, `time_since_spike` holding max(num_detectors) slots per cell, and `src_to_spike` mapping spike sources (detectors) to slots in `time_since_spike`.
      * Renamed `vec_ci_` to `vec_di_` (to better reflect that it stands for **domain index**). Named the new `cv_to_cell` index as `vec_ci_` in the mechanisms.
      * Fixed existing unit tests and added new tests for the new post-events functionality.
      
      Fixes #1206
      3531f7ee
  8. 03 Feb, 2021 1 commit
    • thorstenhater's avatar
      Allow dynamically creating and loading of mechanism catalogue (#1287) · aa1b6f04
      thorstenhater authored
      First phase of dynamically loaded mechanism catalogues.
      
      - Add functionality to load and use catalogues from DSOs in Python and C++.
      - Add documentation and support scripts to build catalogues DSOs.
      - Re-factor CMakeLists.txt for mechanisms
      - Limitations
        - Needs (compatible, preferably identical) arbor sources when building catalogues
        - Can only work on MacOS and Linux (uses dlfnc)
      aa1b6f04
  9. 02 Feb, 2021 1 commit
  10. 28 Jan, 2021 1 commit
  11. 27 Jan, 2021 1 commit
  12. 25 Jan, 2021 2 commits
    • Sam Yates's avatar
      Respect CMAKE_INSTALL_PREFIX in python lib path (#1325) · b1a016d4
      Sam Yates authored
      * Respect CMAKE_INSTALL_PREFIX in python lib path
      
      * Set `base` and `platbase` to the CMAKE_INSTALL_PREFIX, if defined,
      when asking Python for the default python lib install path.
      
      * Differentiate between explicit and default prefix.
      
      * Test for defaulted CMAKE_INSTALL_PREFIX, in which case, use the system
      python site packages path, so that it's overall less excitingly awful in
      python virtual environments. If you want /usr/local, set it.
      b1a016d4
    • Brent Huisman's avatar
      2d6bb96b
  13. 22 Jan, 2021 1 commit
  14. 19 Jan, 2021 1 commit
  15. 15 Jan, 2021 1 commit
  16. 14 Jan, 2021 1 commit
    • Brent Huisman's avatar
      Docs: define branch, mlocation, cv default. (#1302) · b10238e0
      Brent Huisman authored
      * Used Sphinx glossary directive to create terms that can be referred to in `concepts/morphology.rst` and `concepts/labels.rst`.
      * Added note box on difference with Neuron, add source for NEURON cylinder discretisation
      * Parameters added to svg generation script: turn off colors, root
      * Fix cpp TOC duplication, match ordering in other sections.
      * State default cv policy
      * center/re -> midpoints
      * Clarify and remove compartment term
      b10238e0
  17. 11 Jan, 2021 2 commits
    • thorstenhater's avatar
      More pythonic membership on mechanism_catalogue. (#1306) · d2623ecf
      thorstenhater authored
      Introduce two minor changes to the Python API
      to handle mechanism_catalogues idiomatically.
      
      Instead of
      
      import arbor as A
      
      cat = A.default_catalogue()
      
      if cat.has('hh'):
        print("Found HH.")
      
      for mech in cat.keys():
         print("*", mech)
      
      we can now write
      
      import arbor as A
      
      cat = A.default_catalogue()
      
      if 'hh' in cat:
        print("Found HH.")
      
      for mech in cat:
         print("*", mech)
      
      which is closer to the expectations of Python users.
      d2623ecf
    • Brent Huisman's avatar
      add numpy as runtime req (#1308) · 54ab542f
      Brent Huisman authored
      54ab542f
  18. 08 Jan, 2021 3 commits
  19. 07 Jan, 2021 1 commit
  20. 06 Jan, 2021 4 commits
  21. 05 Jan, 2021 4 commits
    • 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