code: def single_tensor_msd(evals=None, tau=1 / (4 * np.pi**2)):
      """Simulate a Multi-Tensor rtop.
  
      Parameters
      ----------
      evals : 1D arrays,
          Eigen-values for the tensor.  By default, values typical for prolate
          white matter are used.
      tau : float,
          diffusion time. By default the value that makes q=sqrt(b).
  
      Returns
      -------
      msd : float,
          Mean square displacement.
  
      References
      ----------
      .. [1] Cheng J., "Estimation and Processing of Ensemble Average Propagator
             and Its Features in Diffusion MRI", PhD Thesis, 2012.
  
      """
      if evals is None:
          evals = diffusion_evals
  
      msd = 2 * tau * np.sum(evals)
      return msd
  
imports: import numpy
  from numpy import dot
  from dipy.core.geometry import sphere2cart
  from dipy.core.geometry import vec2vec_rotmat
  from dipy.core.gradients import GradientTable
  from dipy.reconst.utils import dki_design_matrix
  from scipy.special import jn
label_desc: Use image node_id 22 for calling a global function with example usage: single_tensor_msd(evals, tau) and returns: msd