code: def _convert_to_su4(U):
      r"""Convert a 4x4 matrix to :math:`SU(4)`.
  
      Args:
          U (array[complex]): A matrix, presumed to be :math:`4 \times 4` and unitary.
  
      Returns:
          array[complex]: A :math:`4 \times 4` matrix in :math:`SU(4)` that is
          equivalent to U up to a global phase.
      """
      # Compute the determinant
      det = math.linalg.det(U)
  
      exp_angle = -1j * math.cast_like(math.angle(det), 1j) / 4
      return math.cast_like(U, det) * math.exp(exp_angle)
  
file_path: pennylane/pennylane/ops/op_math/decompositions/two_qubit_unitary.py
imports: import numpy
  import pennylane
  from pennylane import math
  from .single_qubit_unitary import one_qubit_decomposition
label_desc: Use image node_id 1 for calling a global function with example usage: _convert_to_su4(U) and returns: unknown