code: def test_minimize_bad_initial_values(self):
      # This test runs deliberately "bad" initial values to test that handling
      # of failed line search, etc. is the same across implementations
      initial_value = jnp.array([92, 0.001])
      opt_fn = himmelblau(jnp)
      jax_res = jax.scipy.optimize.minimize(
          fun=opt_fn,
          x0=initial_value,
          method="BFGS",
      ).x
      scipy_res = scipy.optimize.minimize(
          fun=opt_fn,
          jac=jax.grad(opt_fn),
          method="BFGS",
          x0=initial_value,
      ).x
      self.assertAllClose(
          scipy_res, jax_res, atol=2e-5, check_dtypes=False
      )
  
imports: from absl.testing import absltest
  import numpy
  import scipy
  import scipy.optimize
  from jax import numpy
  from jax._src import test_util
  from jax import jit
  from jax import config
  import jax.scipy.optimize
label_desc: Use image node_id 4 for calling the TestBFGS obj's underlying member method code with example usage: obj.test_minimize_bad_initial_values() without return types