code: def test_phantom():
      N = 50
  
      vol = orbital_phantom(
          gtab,
          func=f,
          t=np.linspace(0, 2 * np.pi, N),
          datashape=(10, 10, 10, len(bvals)),
          origin=(5, 5, 5),
          scale=(3, 3, 3),
          angles=np.linspace(0, 2 * np.pi, 16),
          radii=np.linspace(0.2, 2, 6),
          S0=100,
      )
  
      m = TensorModel(gtab)
      t = m.fit(vol)
      FA = t.fa
      # print vol
      FA[np.isnan(FA)] = 0
      # 686 -> expected FA given diffusivities of [1500, 400, 400]
      l1, l2, l3 = 1500e-6, 400e-6, 400e-6
      expected_fa = (
          np.sqrt(0.5)
          * np.sqrt((l1 - l2) ** 2 + (l2 - l3) ** 2 + (l3 - l1) ** 2)
          / np.sqrt(l1**2 + l2**2 + l3**2)
      )
  
      assert_array_almost_equal(FA.max(), expected_fa, decimal=2)
  
file_path: dipy/dipy/sims/tests/test_phantom.py
imports: import numpy
  from numpy.testing import assert_, assert_array_almost_equal
  from dipy.data import get_fnames
  from dipy.reconst.dti import TensorModel
  from dipy.sims.phantom import orbital_phantom
  from dipy.core.gradients import gradient_table
  from dipy.io.gradients import read_bvals_bvecs
  from dipy.testing.decorators import set_random_number_generator
label_desc: Use image node_id 2 for calling a global function with example usage: test_phantom() without return types