  In this paper we present the Neuron Module that we implemented within the
Matlab-based diffusion MRI simulation toolbox SpinDoctor. SpinDoctor uses
finite element discretization and adaptive time integration to solve the
Bloch-Torrey partial differential equation for general diffusion-encoding
sequences, at multiple b-values and in multiple diffusion directions. In order
to facilitate the diffusion MRI simulation of realistic neurons by the research
community, we constructed finite element meshes for a group of 36 pyramidal
neurons and a group of 29 spindle neurons whose morphological descriptions were
found in the publicly available neuron repository NeuroMorpho. We also broke
the neurons into the soma and dendrite branches and created finite elements
meshes for these cell components. Through the Neuron Module, these neuron and
cell components finite element meshes can be seamlessly coupled with the
functionalities of SpinDoctor. To illustrate some potential uses of the Neuron
Module, we show numerical examples of the simulated diffusion MRI signals in
multiple diffusion directions from whole neurons as well as from the soma and
dendrite branches, and include a comparison of the high b-value behavior
between dendrite branches and whole neurons. In addition, we demonstrate that
the neuron meshes can be used to perform Monte-Carlo diffusion MRI simulations
as well. We show that at equivalent accuracy, if only one gradient direction
needs to be simulated, SpinDoctor is faster than a GPU implementation of
Monte-Carlo. Finally, we numerically compute the eigenfunctions and the
eigenvalues of the Bloch-Torrey and the Laplace operators on the neuron
geometries using a finite elements discretization, in order to give guidance in
the choice of the space and time discretization parameters for both finite
elements and Monte-Carlo approaches.
