class_docstr: Tests for linear_operator_unitary.LinearOperatorUnitary.
code: def test_solve(self):
      x = tf.random.stateless_normal(
          [7, 1, 13, 13],
          seed=test_util.test_seed(sampler_type="stateless"),
      )
      q, _ = tf.linalg.qr(x)
      operator = linear_operator_unitary.LinearOperatorUnitary(q)
      y = tf.random.stateless_normal(
          [13, 3], seed=test_util.test_seed(sampler_type="stateless")
      )
      broadcasted_y = tf.broadcast_to(y, [7, 1, 13, 3])
      self.assertAllClose(
          self.evaluate(tf.linalg.solve(q, broadcasted_y)),
          self.evaluate(operator.solve(y)),
          atol=1e-5,
          rtol=1e-5,
      )
  
      self.assertAllClose(
          self.evaluate(
              tf.linalg.solve(q, broadcasted_y, adjoint=True)
          ),
          self.evaluate(operator.solve(y, adjoint=True)),
          atol=1e-5,
          rtol=1e-5,
      )
  
file_path: probability/tensorflow_probability/python/experimental/linalg/linear_operator_unitary_test.py
imports: import tensorflow.compat.v2
  from tensorflow_probability.python.experimental.linalg import linear_operator_unitary
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 5 for calling the LinearOperatorUnitaryTest obj's underlying member method code with example usage: obj.test_solve() without return types