Simulated Diffusion in Realistic Imaging Features of Tissue (Sim-DRIFT)
Simulated Diffusion in Realistic Imaging Features of Tissue (Sim-DRIFT) - Published in JOSS (2023)
Science Score: 95.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 4 DOI reference(s) in README and JOSS metadata -
✓Academic publication links
Links to: joss.theoj.org -
✓Committers with academic emails
1 of 3 committers (33.3%) from academic institutions -
○Institutional organization owner
-
✓JOSS paper metadata
Published in Journal of Open Source Software
Scientific Fields
Engineering
Computer Science -
60% confidence
Physics
Physical Sciences -
40% confidence
Last synced: 4 months ago
·
JSON representation
Repository
simDRIFT - A software package for massively parallel forward simulation of Pulsed Gradient Spin Echo diffusion weighted MRI experiments on biophysically accurate tissue systems.
Basic Info
- Host: GitHub
- Owner: jacobblum
- License: bsd-3-clause
- Language: Python
- Default Branch: main
- Homepage: https://simdrift.readthedocs.io
- Size: 31.1 MB
Statistics
- Stars: 4
- Watchers: 3
- Forks: 1
- Open Issues: 1
- Releases: 2
Created over 3 years ago
· Last pushed over 1 year ago
Metadata Files
Readme
Contributing
License
Code of conduct
Security
README.rst
.. image:: https://joss.theoj.org/papers/10.21105/joss.05621/status.svg
:target: https://doi.org/10.21105/joss.05621
.. image:: https://github.com/jacobblum/dMRI-MCSIM/blob/main/joss/figs/logo.png
:alt: simDRIFT logo
Introduction
----------------------
This library, ``simDRIFT``, provides for rapid and flexible Monte Carlo simulations of Pulsed Gradient Spin Echo (PGSE) diffusion-weighted magnetic resonance imaging (dMRI) experiments, which we expect to be useful for dMRI signal processing model development and validation purposes. The primary focus of this library is forward simulations of molecular self-diffusion processes within an ensemble of nuclear magnetic resonance (NMR) active nuclei ("spins") residing in complex, biophysical tissue systems. ``simDRIFT`` is written in Python and supported by a Numba backend. Thus, ``simDRIFT`` benefits from Numba's CUDA API, allowing individual spin trajectories to be simulated in parallel on single Graphics Processing Unit (GPU) threads. The resulting performance gains support ``simDRIFT``'s aim to provide a customizable tool for rapidly prototyping diffusion models, ground-truth model validation, and in silico phantom production.
- **Documentation:** https://simdrift.readthedocs.io/en/latest/
- **Source Code:** https://github.com/jacobblum/simDRIFT/tree/main/src
- **Bug Reports:** https://github.com/jacobblum/simDRIFT/issues
Installation
----------------------
Compatibility
~~~~~~~~~~~~~~~~~~~~~
``simDRIFT`` is compatible with Python 3.8 or later, and requires a CUDA device with a compute capability of 3 or higher. We find that in typical use-case simulations on isotropic imaging voxels on the micometer size scale, ``simDRIFT`` will use less than 1.5 Gb of VRAM. For much larger simulations of imaging voxels on the millimeter size scale, typical GPU memory consumption doesn't exceed 2.0 Gb. Thus, we don't anticipate any memory issues given the available memory of compatible GPUs.
Installing
~~~~~~~~~~~~~~~~~~~~
We recommend installing ``simDRIFT`` in its own conda environment. This allows for easier installation and prevents conflicts with any other Python packages you may have installed. To install ``simDRIFT`` from source:
First, create a conda environment and activate it:
.. code-block:: bash
>conda create -n simDRIFT python=3.8
>conda activate simDRIFT
Then, install `numba `_ by following the linked instructions. For different hardware platforms, the specific numba installation syntax may varry. These instructions are covered in the `numba installation guide `_. Shown below are the commands for installation on our lab's computers, which are x64-based windows machines. If you encounter any difficulties with this step, please see our `troubleshooting guide `_ for an alternative installation procedure.
.. code-block:: bash
(simDRIFT) >conda install -c numba numba=0.56.0
After numba has been installed, please download and install the appropriate `NVIDIA Drivers `_ . Afer the driver installation is complete, install ``cudatoolkit``:
.. code-block:: bash
(simDRIFT) >conda install cudatoolkit
Also, please install the appropriate version of `pytorch `_ (shown below using the syntax for our lab's GPUs; however, the specific syntax will vary based on your CUDA Toolkit version) :
.. code-block:: bash
(simDRIFT) >conda install pytorch==2.0.0 torchvision==0.15.0 torchaudio==2.0.0 pytorch-cuda=11.7 -c pytorch -c nvidia
Clone this repository and install simDRIFT:
.. code-block:: bash
(simDRIFT) >git clone https://github.com/jacobblum/simDRIFT.git
(simDRIFT) >pip install -e simDRIFT
To confirm that everything is working as expected, run the test suite:
.. code-block:: bash
(simDRIFT) >simDRIFT run_tests
Development
----------------
To contribute to ``simDRIFT`` , or to seek support and report any issues or problems with the software, please follow the instructions laid out `here `_!
Owner
- Login: jacobblum
- Kind: user
- Repositories: 1
- Profile: https://github.com/jacobblum
JOSS Publication
Simulated Diffusion in Realistic Imaging Features of Tissue (Sim-DRIFT)
Published
September 17, 2023
Volume 8, Issue 89, Page 5621
Authors
Tags
Diffusion MRI Diffusion Tensor Imaging Biophysics Monte-Carlo Simulation CUDAGitHub Events
Total
Last Year
Committers
Last synced: 5 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| jacobblum | 7****m | 372 |
| Kainen L. Utt | 5****t | 122 |
| Daniel S. Katz | d****z@i****g | 3 |
Committer Domains (Top 20 + Academic)
ieee.org: 1
Issues and Pull Requests
Last synced: 4 months ago
All Time
- Total issues: 10
- Total pull requests: 5
- Average time to close issues: 13 days
- Average time to close pull requests: about 1 month
- Total issue authors: 1
- Total pull request authors: 3
- Average comments per issue: 1.9
- Average comments per pull request: 0.6
- Merged pull requests: 2
- Bot issues: 0
- Bot pull requests: 0
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- kainenutt (8)
Pull Request Authors
- kainenutt (3)
- jacobblum (1)
- danielskatz (1)
Top Labels
Issue Labels
invalid (4)
enhancement (3)
bug (3)
question (2)
documentation (1)
wontfix (1)
