code: def l_shore(radial_order):
      """Returns the angular regularisation matrix for SHORE basis"""
      F = radial_order / 2
      n_c = int(np.round(1 / 6.0 * (F + 1) * (F + 2) * (4 * F + 3)))
      diagL = np.zeros(n_c)
      counter = 0
      for l in range(0, radial_order + 1, 2):
          for n in range(l, int((radial_order + l) / 2) + 1):
              for m in range(-l, l + 1):
                  diagL[counter] = (l * (l + 1)) ** 2
                  counter += 1
  
      return np.diag(diagL)
  
imports: from warnings import warn
  from math import factorial
  import numpy
  from scipy.special import genlaguerre, gamma, hyp2f1
  from dipy.reconst.cache import Cache
  from dipy.reconst.multi_voxel import multi_voxel_fit
  from dipy.reconst.shm import real_sh_descoteaux_from_index
  from dipy.core.geometry import cart2sphere
  from dipy.utils.optpkg import optional_package
label_desc: Use image node_id 7 for calling a global function with example usage: l_shore(radial_order) and returns: np