class_docstr: Test GeneralSpace works on a Sphere.
class_docstr_tok: ["Test","GeneralSpace","works","on","a","Sphere","."]
code: def embed_coords(self, coords):
      xy_angle = coords[..., 0]
      z_angle = coords[..., 1]
      return tf.stack(
          [
              tf.math.sin(z_angle) * tf.math.cos(xy_angle),
              tf.math.sin(z_angle) * tf.math.sin(xy_angle),
              tf.math.cos(z_angle),
          ],
          axis=-1,
      )
  
imports: from absl.testing import parameterized
  import numpy
  import tensorflow.compat.v2
  from tensorflow_probability.python.bijectors import exp
  from tensorflow_probability.python.bijectors import reshape
  from tensorflow_probability.python.bijectors import scale
  from tensorflow_probability.python.bijectors import scale_matvec_tril
  from tensorflow_probability.python.bijectors import transform_diagonal
  from tensorflow_probability.python.experimental.tangent_spaces import spaces
  from tensorflow_probability.python.experimental.tangent_spaces import spaces_test_util
  from tensorflow_probability.python.internal import test_util
label_desc: Use image node_id 2 for calling the HalfSphereSpaceTest obj's underlying member method code with example usage: obj.embed_coords(coords) and returns: tf