Skip to content
Snippets Groups Projects
  1. Jan 24, 2022
  2. Jan 21, 2022
  3. Jan 18, 2022
  4. Jan 17, 2022
  5. Jan 12, 2022
  6. Jan 07, 2022
    • Nora Abi Akar's avatar
      Expose information about the CV discretization to the public inteface (#1758) · 1363f092
      Nora Abi Akar authored
      Refactor the CV-cable logic from `fvm_layout.cpp`. Specifically, move `cv_geometry_from_ends` into the new public header `cv_data.hpp` and rename it to `cv_data_from_locset`, and move `pw_over_cable` into another new public header `util/piecewise_over_cable.hpp`. 
      Create a new public class `cell_cv_data`, similar to the private `cv_geometry` but which only carries the cv information for a single cable-cell. Add a new constructor to `cv_geometry` which takes `cell_cv_data` as an argument. 
      Add new public function `intersect_region` that takes as arguments a cable-cell, a region on that cell and a `cell_cv_data` object and returns a vector of CV indices and proportions belonging to the region. 
      Add docs, python wrapper and unit tests. 
      
      Fixes #1720. 
  7. Jan 06, 2022
    • Nora Abi Akar's avatar
      Bug fix: properly partition networks containing one-sided gap-junction connections (#1774) · 0636bbfe
      Nora Abi Akar authored
      Replace the `partition_load_balance` function assumed that gap-junction connections are always double-sided (i.e. if gid `x` has a gap-junction connection from peer gid `y`, then gid `y` must also have a gap-junction connection from peer gid `x`). This used to be a requirement that was checked prior to #1682. Since then, single-sided gap-junctions are in principle allowed, but `partition_load_balance` still operates under the bidirectional gap-junction connection assumption resulting in some gids being present in multiple cell-groups. 
      This PR modifies the `partition_load_balance` function to do the following: 
      1. On each rank, generate a gj_connection list per cell. (gj_connection list is a vector of gids that have an outgoing connection ending at the cell under consideration). 
      2. On each rank, gather all the gj_connection lists for each cell in the network. 
      3. On each rank, modify the global list of gj_connections in the network to make all gj_connections bidirectional. 
      4. On each rank, use the global list of gj_connections in the network to partition the graph. 
      
      Fixes #1767.
  8. Jan 05, 2022
  9. Jan 03, 2022
  10. Dec 20, 2021
  11. Dec 15, 2021
  12. Dec 14, 2021
  13. Dec 13, 2021
  14. Dec 08, 2021
  15. Dec 03, 2021
  16. Nov 26, 2021
  17. Nov 22, 2021
    • boeschf's avatar
      Address compiler warnings (#1769) · 99f9ddca
      boeschf authored
      Fix various non-standards compliant code when compiled with elevated warning levels (-Wall -Wpedantic). Here is a list of the problems addressed:
      
      **preprocessor**
      - expansion of empty `__VA_ARGS__` in `ARB_PP_FOREACH`
      - named variadic macro arguments in `TRACE` macro
      
      **glibc** 
      - deprecated `mallinfo` call for newer glibc versions
      
      **simd**
      - non-const C-array sizes
      
      **modcc**
      - generation of C-arrays of size 0
      
      **switch/case**
      - switch-case ranges
      
      **tuple_foreach**
      - compound literals
  18. Nov 17, 2021
  19. Nov 16, 2021
  20. Nov 15, 2021
  21. Nov 12, 2021
  22. Nov 10, 2021
    • Benjamin Cumming's avatar
      Find morphology location from a coordinate (#1751) · 0e8875a9
      Benjamin Cumming authored
      Extend the `pwlin_place` interface to find the location of a morphology that is closest to a 3d coordinate.
      * extend `arb::pwlin_place` interface
      * python wrapper
      * unit tests
      * documentation
      
      Addresses a feature request by @Helveg that I don't think ever had a ticket assigned to it.
      
      Fixes #1661 and #1108.
    • Sam Yates's avatar
      Simplify default proc_allocation generation. (#1725) · e0c13e16
      Sam Yates authored
      * Consolidate default_concurrency, default_gpu functionality into arborenv/default_env.hpp, .cpp.
      * Add new arborenv function `default_allocation()` that uses environment variables ARBENV_NUM_THREADS and ARBENV_GPU_ID to create an `arb::proc_allocation`, with a fallback to `thread_concurrency()`.
      * Use arborenv-specific exceptions instead of generic std::runtime_error etc.
      * Update examples, docs to suit.
      
      Fixes #988 (except for reworking all the unit tests!)
  23. Nov 09, 2021
    • Sam Yates's avatar
      Update/fix tinyopt README.md (#1747) · 2a8878cd
      Sam Yates authored
      tinyopt README.md had an example which was not updated to the 1.0 API. Fixed upstream, and this is a copy.
    • Sam Yates's avatar
      Deal with zero radius points in a morphology (#1719) · 9b35ba52
      Sam Yates authored
      * Add test that is sensitive to small radius loss of precision in ixa computation.
      * Add test that checks for consistent behaviour when there is an (isolated) zero radius point in the morphology.
      * Special case p==1 q==1 case in ratelem so that it can interpolate ixa in the presence of non-finite interpolants.
      * Change naming in pw_element/pw_elements: 'element' refers to the extent+value pairs comprising a 'pw_elements' object; 'value' refers to the value associated with an element; 'extent' refers to the closed interval which is the support of the element.
      * Allow values (but not extents) in a pw_elements object to be mutable, using proxies for iterator access.
      * Write piecewise zip (pw_zip) in terms of a lazy pw_zip_view. Rename zip functions.
      * Document pw_elements more thoroughly.
      * Simplify and document embed_pwlin.cpp routines, expressing everything in terms of simple interpolate/integrate operations.
      * Represent integrated inverse cross-sectional area in the embedding by multiple piecewise-rational functions over a branch, each of which contribute separately to an ixa-based integration, so that precision loss associated with small (or zero) radii can be avoided.
      * Comment embed_pwlin.cpp more thoroughly.
      
      Fixes #1526 
  24. Nov 02, 2021
  25. Oct 29, 2021
  26. Oct 28, 2021
  27. Oct 27, 2021