class_docstr: Class for the 3D Heisenberg group in the vector representation.
  
  The 3D Heisenberg group represented as R^3. It is a step-2 Carnot Lie
  group. It can be equipped with a natural sub-Riemannian structure, and it
  is a fundamental example in sub-Riemannian geometry.
  
  Parameters
  ----------
  No parameters
  
  References
  ----------
  https://en.wikipedia.org/wiki/Heisenberg_group
class_docstr_tok: ["Class","for","the","3D","Heisenberg","group","in","the","vector","representation",".","The","3D","Heisenberg","group","represented","as","R^3",".","It","is","a","step-2","Carnot","Lie","group",".","It","can","be","equipped","with","a","natural","sub-Riemannian","structure",",","and","it","is","a","fundamental","example","in","sub-Riemannian","geometry",".","Parameters","--","--","--","--","--","No","parameters","References","--","--","--","--","--","https",":","\/\/en.wikipedia.org\/wiki\/Heisenberg_group"]
docstr: Compute the vector representation of the upper triangular matrix.
  
  Parameters
  ----------
  matrix : array-like, shape=[..., 3, 3]
      Upper triangular matrix.
  
  Returns
  -------
  vector : array-like, shape=[..., 3]
docstr_tok: ["Compute","the","vector","representation","of","the","upper","triangular","matrix",".","Parameters","--","--","--","--","--","matrix",":","array-like",",","shape=","[","...",",","3",",","3","]","Upper","triangular","matrix",".","Returns","--","--","--","-","vector",":","array-like",",","shape=","[","...",",","3","]"]
code: def vector_from_upper_triangular_matrix(matrix):
      """Compute the vector representation of the upper triangular matrix.
  
      Parameters
      ----------
      matrix : array-like, shape=[..., 3, 3]
          Upper triangular matrix.
  
      Returns
      -------
      vector : array-like, shape=[..., 3]
      """
      modified_point = gs.triu_to_vec(matrix, k=1)
      corrected_elem = (
          modified_point[..., 1]
          - 1 / 2 * modified_point[..., 0] * modified_point[..., 2]
      )
      return gs.stack(
          [
              modified_point[..., 0],
              modified_point[..., 2],
              corrected_elem,
          ],
          axis=-1,
      )
  
file_path: geomstats/geomstats/geometry/heisenberg.py
imports: import geomstats.backend
  from geomstats.geometry.base import VectorSpace
  from geomstats.geometry.euclidean import Euclidean
  from geomstats.geometry.lie_group import LieGroup
  from geomstats.geometry.symmetric_matrices import SymmetricMatrices
label_desc: Use image node_id 10 for calling the HeisenbergVectors obj's underlying member method code with example usage: obj.vector_from_upper_triangular_matrix(matrix) and returns: gs