Skip to content
Snippets Groups Projects
  1. Jul 05, 2021
  2. May 31, 2021
  3. Feb 03, 2021
    • 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
  4. Jan 11, 2021
    • 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
  5. 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
  6. Nov 02, 2020
  7. Oct 09, 2020
  8. Oct 01, 2020
  9. Sep 25, 2020
    • Sam Yates's avatar
      Replace arb::util::optional with std::optional. (#1158) · d5ace349
      Sam Yates authored
      * Substitute `std::optional<T>` for `arb::util::optional<T>` for non-reference types T.
      * Remove reference-deducing `util::value_by_key`; replace usages with new function `util::ptr_by_key`.
      * Add some missing header includes that were required but included only transitively.
      * Remove `operator<<` overload for optional in python/strprintf.hpp; replace with utility wrapper class that catches `std::optional<T>`.
      * Wrap some `std::optional` values with `to_string` in ostream output in python lib.
      
      Fixes #1154.
      d5ace349
  10. Jul 24, 2020
  11. Jul 13, 2020
    • thorstenhater's avatar
      Python/allen catalogue (#1074) · 6151e173
      thorstenhater authored
      * Add import method for mechanism catalogues, allowing mechanisms from a second catalogue to be incorporated with a prefix, together with Python interface.
      * Expose `global_allen_catalogue`.
      * Extend unit tests to cover mechanism catalogue import and check for name collision error cases.
      6151e173
  12. Jun 24, 2020
    • Benjamin Cumming's avatar
      Pycat (#1072) · e0c14f34
      Benjamin Cumming authored
      Update core library:
      * support derivation of named mechanisms in catalogue from a string description of the parent.
      * fix bug in radois_ge region expression that was finding region_lt.
      * fix test for radius_ge region expression
      
      Add support for mechanism, global properties and catalogue shenanigans to python wrapper
      e0c14f34