code: def test_number_of_coefficients(radial_order=4, time_order=2):
      gtab_4d = generate_gtab4D()
      l1, l2, l3 = [0.0015, 0.0003, 0.0003]
      S = generate_signal_crossing(gtab_4d, l1, l2, l3)
      qtdmri_mod = qtdmri.QtdmriModel(
          gtab_4d, radial_order=radial_order, time_order=time_order
      )
      qtdmri_fit = qtdmri_mod.fit(S)
      number_of_coef_model = qtdmri_fit._qtdmri_coef.shape[0]
      number_of_coef_analytic = qtdmri.qtdmri_number_of_coefficients(
          radial_order, time_order
      )
      assert_equal(number_of_coef_model, number_of_coef_analytic)
  
imports: import warnings
  import numpy
  import scipy.integrate
  from numpy.testing import assert_, assert_almost_equal, assert_array_almost_equal, assert_equal, assert_raises
  import pytest
  from dipy.core.gradients import gradient_table_from_qvals_bvecs
  from dipy.data import get_gtab_taiwan_dsi, get_sphere
  from dipy.reconst import qtdmri, mapmri
  from dipy.reconst.shm import descoteaux07_legacy_msg
  from dipy.sims.voxel import multi_tensor, add_noise
  from dipy.testing.decorators import set_random_number_generator
label_desc: Use image node_id 10 for calling a global function with example usage: test_number_of_coefficients(radial_order, time_order) without return types