Random Matrices Generation

This module provides functions to generate random matrices.

Random Unitary

QuantumCircuits.haar_unitaryFunction
haar_unitary(n::Int) :: Matrix{ComplexF64}

Generate a random Haar unitary matrix of size n x n.

Arguments

  • n::Int: The size of the matrix.

Returns

  • Matrix{ComplexF64}: The generated Haar unitary matrix.
source
using QuantumCircuits
haar_unitary(2)
2×2 Matrix{ComplexF64}:
  -0.426311-0.47117im   -0.659931-0.400934im
 -0.0187658-0.771949im   0.196074+0.604398im

Random Hermitian

QuantumCircuits.random_hermitianFunction
random_hermitian(n::Int) :: Matrix{ComplexF64}

Generate a random Hermitian matrix of size n x n.

Arguments

  • n::Int: The size of the matrix.

Returns

  • Matrix{ComplexF64}: The generated Hermitian matrix.
source
using QuantumCircuits
random_hermitian(2)
2×2 Matrix{ComplexF64}:
 0.775675+0.0im       -1.21233-0.358528im
 -1.21233+0.358528im  0.193208+0.0im