code: def testLobpcgValidatesArguments(self):
      A, _ = _concrete_generators(np.float32)["id"](100, 10)
      X = self.rng().standard_normal(size=(100, 10)).astype(np.float32)
  
      with self.assertRaisesRegex(ValueError, "search dim > 0"):
          linalg.lobpcg_standard(A, X[:, :0])
  
      with self.assertRaisesRegex(
          ValueError, "A, X must have same dtypes"
      ):
          linalg.lobpcg_standard(
              lambda x: jnp.array(A).dot(x).astype(jnp.float16), X
          )
  
      with self.assertRaisesRegex(
          ValueError, r"A must be \(100, 100\)"
      ):
          linalg.lobpcg_standard(A[:60, :], X)
  
      with self.assertRaisesRegex(
          ValueError, r"search dim \* 5 < matrix dim"
      ):
          linalg.lobpcg_standard(A[:50, :50], X[:50])
  
imports: import functools
  import re
  import os
  import unittest
  from absl.testing import absltest
  from absl.testing import parameterized
  import numpy
  import scipy.linalg
  import scipy.sparse
  import jax
  from jax import config
  from jax._src import test_util
  from jax.experimental.sparse import linalg, bcoo
  import jax.numpy
label_desc: Use image node_id 2 for calling the F32LobpcgTest obj's underlying member method code with example usage: obj.testLobpcgValidatesArguments() without return types