{"id":20956546,"url":"https://github.com/bluebrain/neurodamus","last_synced_at":"2025-05-14T05:32:04.930Z","repository":{"id":176576477,"uuid":"640796304","full_name":"BlueBrain/neurodamus","owner":"BlueBrain","description":"A BBP Simulation Control application for NEURON","archived":true,"fork":false,"pushed_at":"2025-02-26T12:57:00.000Z","size":18095,"stargazers_count":10,"open_issues_count":8,"forks_count":9,"subscribers_count":7,"default_branch":"main","last_synced_at":"2025-04-17T17:42:48.362Z","etag":null,"topics":["brain","cellular","neuron-simulations","simulation"],"latest_commit_sha":null,"homepage":"https://neurodamus.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BlueBrain.png","metadata":{"files":{"readme":"README.rst","changelog":"CHANGES.rst","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":"authors.txt","dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-05-15T06:36:44.000Z","updated_at":"2025-02-26T12:57:04.000Z","dependencies_parsed_at":"2024-05-13T09:29:26.362Z","dependency_job_id":"d10f1258-960f-4740-aaa4-a44aec7c7b2c","html_url":"https://github.com/BlueBrain/neurodamus","commit_stats":null,"previous_names":["bluebrain/neurodamus"],"tags_count":92,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fneurodamus","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fneurodamus/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fneurodamus/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BlueBrain%2Fneurodamus/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BlueBrain","download_url":"https://codeload.github.com/BlueBrain/neurodamus/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254076977,"owners_count":22010630,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["brain","cellular","neuron-simulations","simulation"],"created_at":"2024-11-19T01:26:38.368Z","updated_at":"2025-05-14T05:31:59.869Z","avatar_url":"https://github.com/BlueBrain.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"|banner|\n\n=============\nNeurodamus\n=============\n.. image:: https://zenodo.org/badge/DOI/10.5281/zenodo.8075202.svg\n   :target: https://doi.org/10.5281/zenodo.8075202\n\n\nNeurodamus is a BBP Simulation Control application for Neuron.\n\nThe Python implementation offers a comprehensive Python API for fine tuning of the simulation, initially defined by a BlueConfig file.\n\n\nDescription\n===========\n\nNeurodamus is the BBP in-house developed application for setting up large-scale neuronal simulations.\nIt has traditionally been implemented as a set of extensions to Neuron, in the form of .hoc and .mod files.\nThe parameters of the simulation are loaded from a configuration file, by default BlueConfig.\n\nTo address several limitations of the Hoc implementation, including development effort, the\nhigh-level layers of Neurodamus have been reimplemented in Python.\nSuch implementation effectively makes available to the user a Python module with a comprehensive\nAPI, suitable to fine control simulation aspects, as well as inspect and eventually adapt the\nsimulations as intended.\n\nInstall\n=======\n\nPrerequisites\n-------------\n- hdf5\n- libsonatareport https://github.com/BlueBrain/libsonatareport\n- neuron with MPI https://github.com/neuronsimulator/nrn\n\nInstall neurodamus\n------------------\n.. code-block:: sh\n\n  git clone https://github.com/BlueBrain/neurodamus.git\n  cd neurodamus\n  pip install .\n\nBuild special with mod files\n----------------------------\n.. code-block:: sh\n\n  mkdir mods\n  cp -r mod-files-from-released-circuit mods/\n  cp -r neurodamus-install-prefix/share/mod/* mods/\n  nrnivmodl -incflags '-I \u003cinclude-paths-of-our-dependencies\u003e' -loadflags '-L \u003clibs-paths-for-linking\u003e' mod\n\nExamples\n========\nOnce installed, you should be able to find `neurodamus` in your path:\n\n.. code-block::\n\n  $ neurodamus\n    Usage:\n        neurodamus \u003cConfigFile\u003e [options]\n        neurodamus --help\n\nAmong the options you will find flags to tune run behavior.\n\nNeurodamus explicitly depends on MPI libraries for parallel execution.\nTherefore please use \"srun\" or \"mpiexec\" to launch it, according to your platform. If you\ndon't, complicated error messages may show up. Please remember it.\n\nEven though a `neurodamus` launcher is provided, for production runs we suggest using\n`special` instead. This way has proven to take advantage of optimized math libraries.\nWe hope to bring the same advantages to the launcher script soon.\n\n.. code-block:: sh\n\n srun \u003csrun params\u003e \u003cyour_built_special\u003e -mpi -python $NEURODAMUS_PYTHON/init.py \u003cneurodamus params\u003e\n\nAn example of a full installation with a simulation run can be found in the workflow test\n`simulation_test.yaml \u003chttps://github.com/BlueBrain/neurodamus/blob/main/.github/workflows/simulation_test.yml\u003e`__.\n\nDocker container\n================\nAlternatively, you can start directly a neurodamus docker container where all the packages are built.\nWith the container, you can build your mod files and run simulations.\nSee instructions in `docker/README.md \u003chttps://github.com/BlueBrain/neurodamus/blob/main/docker/README.md\u003e`_.\n\nBuilding the docker container\n-----------------------------\nThe docker container image is built automatically when a new tag is created in the repository, if a container with the specified version doesn't already exist.\nOn manual pipeline runs, the container image is also built but not automatically pushed to docker-hub; you'll have to manually start the job in the pipeline you created if you want this to happen. Keep in mind that this is *optional*, the container image is *always* pushed to the gitlab registry!\n\nThe docker images will be built in the `regular gitlab pipeline \u003chttps://bbpgitlab.epfl.ch/hpc/sim/neurodamus/-/pipelines\u003e`_ - if triggered under the right conditions (either manually or through git tag creation) the container jobs will be added to this pipeline.\n\nIf you run the pipeline manually, you can also set versions for the dependencies:\n  * `LIBSONATAREPORT_TAG`: git tag for libsonata-report\n  * `LIBSONATA_TAG`: git tag for libsonata\n  * `NEURON_COMMIT_ID`: commit ID for neuron\n  * `REGISTRY_IMAGE_TAG`: this will be the container version. Must be specified if you specify one of the others.\n\n\nAcknowledgment\n==============\nThe development of this software was supported by funding to the Blue Brain Project,\na research center of the École polytechnique fédérale de Lausanne (EPFL),\nfrom the Swiss government's ETH Board of the Swiss Federal Institutes of Technology.\n\nCopyright (c) 2005-2023 Blue Brain Project/EPFL\n\n.. substitutions\n.. |banner| image:: docs/img/neurodamus_banner_230701.png\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbluebrain%2Fneurodamus","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbluebrain%2Fneurodamus","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbluebrain%2Fneurodamus/lists"}