Releases: BioDynaMo/biodynamo
BioDynaMo 1.04
The following people have contributed to this version
(ordered by the number of contributions):
- Lukas Breitwieser
- Tobias Duswald
- Nicolò Cogno
- Fons Rademakers
- Ahmad Hesam
- Jack Jennings
- Moritz Grabmann
New Features and Improvements
- Add check for PVSM output files to system tests #280
- Generalize continuum integration #260
- Improve scheduler information #277
- Update flocking demo with local fluctuations #256
- Added check for decay rate in diffusion grid #271
- Make floating-point precision adjustable #253
- Improve UniformGridEnvironment::Box::Iterator interface
- Add switch to turn off automatic sim size detection in UniformGridEnvironment
- Add missing ForEachNeighbor implementation for UniformGridEnvironment
- Add BinarySearch.DuplicatesLarge test
- Remove const specifier from Agent::RemoveFromSimulation
- Improve the time series collection API #266
- AgentPointer return nullptr directly for corresponding AgentUid
- Make InPlaceExecutionContext::remove_ protected
- Make Agent::RemoveFromSimulation virtual
- Remove all virtual functions from InlineVector
- Introduce different AgentPointer modes #264
- Improve mechanism to reuse the index part of AgentUids #263
- Update paraview build on macOS i386 #261
- Don't run Singularity GHA on all branches
- Avoid parsing of
bdm.json
withbdm test
- Add macOS packages to user guide
- Extend DiffusionGrid interface for full gradient information #257
- Link Singularity in User Guide
- Add left-multiplication to MathArray #255
- Minor code quality improvements #252
- Create BioDynaMo singularity image #244
- Reenable gitpod image workflow but only for manual triggering
- Add additional LamdaFunctor tests
- Add safety check in function PlotNeighborMemoryHistogram
- Improve documentation of Agent::RemoveBehavior
- Add coverage reporting with SonarCloud #247
- Upgrade to ParaView 5.10 on macOS #235
- Update continuum models #241
- Add improvements suggested by Sonar Cloud #246
- Add quality checks with
Sonar Cloud
#245 - Add SWC export for neurons #243
- Update link to endpoint package (CentOS CI)
- Add CLI wrapper for
bdm-config
#238 - Add ProgressBar to visualise progress in
Simulate()
#237 - Remove
benchmark
from default build target #236 - Add SHA's for macOS 12.1 and Ubuntu 22.04.
- Extend functionality of
show_simulation_step
parameter #234
Bug Fixes
- Fix issue with markupsafe which breaks nbconvert and thus the website #281
- Fix Python libraries on macOS #279
- Fix warning in multi-simulation mode #272
- Update GHA for macOS and fix notebooks on Ubuntu #274
- Fix notebook related packages on CentOS #275
- Fix issues introduced due to the global edit from double to
real_t
in OpenCL code. - Fix to find python3.9 on macOS.
- Added version check and threshold fix for ParaView in epidemiology demo
- Attribute environment update time to the correct operation
- Reduce size of UniformGridEnvironment::Box
- Remove obsolete parameter from toml file
- Fix NUMA bug in ResourceManager::RemoveAgents
- Fix GHA copyright script for linux
- Fix DiffuseWithOpenEdge #248
- Add fixes for code-smells #249
- Fix bug in function GenerateSimulationInfoJson
- Add additional AgentPointer tests; fix bug in AgentPointer
- Fix possible race condition in user-defined thread-safety mechanism #262
- Fix normalization of the diffusion gradient #259
- Fix static agents bug in mechanical_forces_op
- Fix compiler warnings #254
- Fix date-format in userguide/Singularity.md
Examples
New Demos
Supported Platforms
- Ubuntu 18.04, 20.04
- CentOS 7
- MacOS 11.7 and 12.6 (Intel and ARM)
BioDynaMo 1.02
The following people have contributed to this version
(ordered by the number of contributions):
- Lukas Breitwieser
- Tobias Duswald
- Fons Rademakers
- Ahmad Hesam
- Will Hemsley
New Features
- Enabled one-line install script to install arbitrary BioDynaMo versions #231
- Add Scheduler function to print operation information
- Added parallelized optimization manager #205
- Added googletest support for simulations #187
- Improved biodynamo cli #215
- Added experimental version of the automated benchmarking suite #202
- Added CopyExecutionContext
- Added support for different execution orders
- Introduced execution context interface #189
- Reduced memory consumption of the BDM memory manager #186
- Added SphericalAgent
- Added toroidal space boundary condition
- Added RandomizedRm to randomize the iteration over all agents
- Added support for hierarchical agent-based models
- Added analysis classes to simplify data collection and plotting #177
- Improved random number generation
- Added
Scheduler::SimulateUntil(exit_condition)
- Added class LambdaFunctor and function L2F to simplify functor creation #175
- Added octree and kd-tree as alternative environments #169
Bug Fixes
- Fixed environment inconsistencies #226
- Added simulation dependent diffusion time step #198
- Fixed bug in diffusion grid initialization #199
- Fixed MathArray::Norm and Normalize for zero vector #194
- Do not call
Rm::EndOfIteration
inExecCtxt::SetupIterationAll
- Fixed errors in the static agent detection mechanism #191
- Fixed race condition in
DiffusionGrid::ChangeConcentrationBy
- Changed BioDynaMo version from
vXX.YY-ZZ-gSHA
tovXX.YY.ZZ-SHA
#216
Examples
New Demos
- Binding cells
- Pyramidal cell growth
New Notebooks
- ST01-model-initializer.ipynb
- ST02-user-defined-random-number-distribution.ipynb
- ST03-agent-reproduction-mortality.ipynb
- ST04-agent-reproduction-with-behaviors.ipynb
- ST05-agent-reproduction-advanced.ipynb
- ST06-environment-search.ipynb
- ST07-multi-scale-simulation.ipynb
- ST08-histograms.ipynb
- ST09-timeseries-plotting-basic.ipynb
- ST10-timeseries-plotting-and-analysis.ipynb
- ST11-multiple-experiments-statistical-analysis.ipynb
- ST12-hierarchical-model.ipynb
- ST13-dynamic-scheduling.ipynb
- ST14-randomize-iteration-order.ipynb
- ST15-replace-interaction-force.ipynb
Supported Platforms
- Ubuntu 18.04, 20.04
- CentOS 7
- macOS 10.15, >=11.6 and >=12.0
BioDynaMo 1.0
The following people have contributed to this first major version
(ordered by number of contributions):
- Lukas Breitwieser
- Ahmad Hesam
- Fons Rademakers
- Konstantinos Kanellis
- Jean de Montigny
- Roman Bauer
- Giovanni De Toni
- Jack Jennings
- Dorukhan Arslan
- Nam Nguyen
- Johannes Franz
- Lukasz Stempniewicz
- Robert Harakaly
- Sadyksaj
- Tobias Duswald
- Victor Drobny
Main features
- A general API to implement and customize agent-based models
- A fully parallelized, high-performance simulation engine
- Ability to offload computations to GPUs of all major vendors
- Large-scale model support. BioDynaMo can simulate billions of agents on a single server.
- Predefined building blocks for simulations in neuroscience, oncology, and epidemiology
- Support for spherical and cylindrical agent geometries
- Diffusion methods: Euler, Runge-Kutta
- Multi-scale simulation support
- Visualization in ParaView
- Parameter configuration: JSON, C++ interpreter script, command line, or in-code
- Automatic backup and restore functionality using ROOT
- BioDynaMo Notebooks for rapid web-based prototyping
For a more detailed description of BioDynaMo's features and capabilities,
please have a look at the following publication:
BioDynaMo: a general platform for scalable agent-based simulation
Lukas Breitwieser, Ahmad Hesam, Jean de Montigny, Vasileios Vavourakis, Alexandros Iosif, Jack Jennings, Marcus Kaiser, Marco Manca, Alberto Di Meglio, Zaid Al-Ars, Fons Rademakers, Onur Mutlu, Roman Bauer
bioRxiv 2020.06.08.139949; doi: https://doi.org/10.1101/2020.06.08.139949
Demos
BioDynaMo v1.0 comes with the following demos:
- Cell division
- Diffusion
- Soma clustering
- Tumor concept
- Epidemiology
- Gene regulation
- Parameters
- Multiple simulations
- Makefile project
Supported Platforms
- Ubuntu 18.04, 20.04
- CentOS 7
- macOS 10.15 and macOS 11.1
Initial BioDynaMo Release
Fix cmake config error Snap package config file was generated before install path was modified