code: def test_compute_elementary_effects_small():
      """
      Computes elementary effects for two variables, over six trajectories with
      four levels.
      """
      model_inputs = np.array(
          [
              [0, 1.0 / 3],
              [0, 1],
              [2.0 / 3, 1],
              [0, 1.0 / 3],
              [2.0 / 3, 1.0 / 3],
              [2.0 / 3, 1],
              [2.0 / 3, 0],
              [2.0 / 3, 2.0 / 3],
              [0, 2.0 / 3],
              [1.0 / 3, 1],
              [1, 1],
              [1, 1.0 / 3],
              [1.0 / 3, 1],
              [1.0 / 3, 1.0 / 3],
              [1, 1.0 / 3],
              [1.0 / 3, 2.0 / 3],
              [1.0 / 3, 0],
              [1, 0],
          ],
          dtype=float,
      )
  
      model_outputs = np.array(
          [
              0.97,
              0.71,
              2.39,
              0.97,
              2.3,
              2.39,
              1.87,
              2.40,
              0.87,
              2.15,
              1.71,
              1.54,
              2.15,
              2.17,
              1.54,
              2.2,
              1.87,
              1.0,
          ],
          dtype=float,
      )
  
      delta = 2.0 / 3
      actual = _compute_elementary_effects(
          model_inputs, model_outputs, 3, delta
      )
      desired = np.array(
          [
              [2.52, 2.01, 2.30, -0.66, -0.93, -1.30],
              [-0.39, 0.13, 0.80, 0.25, -0.02, 0.51],
          ]
      )
      assert_allclose(actual, desired, atol=1e-0)
  
file_path: SALib/tests/test_analyze_morris.py
imports: from pytest import raises, fixture
  import numpy
  from numpy.testing import assert_allclose, assert_equal
  from SALib.analyze.morris import analyze, _compute_mu_star_confidence, _compute_elementary_effects, _reorganize_output_matrix, _compute_grouped_metric, _compute_grouped_sigma, _check_if_array_of_floats
label_desc: Use image node_id 9 for calling a global function with example usage: test_compute_elementary_effects_small() without return types