code: def test_brute_lower_bounds_and_brute_step(params_lmfit):
      """TEST 6: using finite lower bounds, Ns=15, and brute_step specified."""
      Ns = 15
      params_lmfit["y"].set(max=np.inf)
      params_lmfit["y"].set(brute_step=0.1)
  
      mini = lmfit.Minimizer(func_lmfit, params_lmfit)
      out = mini.minimize(method="brute", Ns=Ns)
  
      grid_x_expected = np.linspace(
          params_lmfit["x"].min, params_lmfit["x"].max, Ns
      )
      grid_x = np.unique([par.ravel() for par in out.brute_grid][0])
      assert_allclose(grid_x, grid_x_expected)
  
      grid_y_expected = np.linspace(
          params_lmfit["y"].min,
          params_lmfit["y"].min + Ns * params_lmfit["y"].brute_step,
          Ns,
          False,
      )
      grid_y = np.unique([par.ravel() for par in out.brute_grid][1])
      assert_allclose(grid_y, grid_y_expected)
  
imports: import pickle
  import numpy
  from numpy.testing import assert_allclose, assert_equal
  import pytest
  from scipy import optimize
  import lmfit
label_desc: Use image node_id 9 for calling a global function with example usage: test_brute_lower_bounds_and_brute_step(params_lmfit) without return types