Random Pure States

Four subroutines for producing both REAL or CPLX Random Pure States, distributed according to the Haar measure of O(N), respectively U(N). Such a pure states can be produced as vectors |ψ〉, or as rank 1 projectors ρ = |ψ〉〈ψ|.

 
The four subroutines here below are designed on the algorithms described in the appendix of:

H. J. Sommers and K. Zyczkowski
Induced measures in the space of mixed quantum states
J. Phys. A: Math. Gen. 34(35), 7111-7125 (2001)
 
Subroutine ’s Name Precision Version Compatibility
R_pure_vect.f Single 1.0.1 Fortran 90
Uses:  rgnf_lux.f
Description: 

Generator of REAL Random Pure States drawn according to the Haar measure of O(N). Such states are produced as N dimensional REAL vectors |ψ〉.

 
Subroutine ’s Name Precision Version Compatibility
C_pure_vect.f Complex 1.0.1 Fortran 90
Uses:  rgnf_lux.f
Description: 

Generator of CPLX Random Pure States drawn according to the Haar measure of U(N). Such states are produced as N dimensional CPLX vectors |ψ〉.

 
Subroutine ’s Name Precision Version Compatibility
R_pure_Dmatr.f Single 1.0.1 Fortran 90
Uses:  rgnf_lux.f
Description: 

Generator of REAL Random Pure States drawn according to the Haar measure of O(N). States are given as N x N REAL density matrices, namely rank 1 projectors ρ = |ψ〉〈ψ|.

 
Subroutine ’s Name Precision Version Compatibility
C_pure_Dmatr.f Complex 1.0.1 Fortran 90
Uses:  rgnf_lux.f
Description: 

Generator of CPLX Random Pure States drawn according to the Haar measure of U(N). States are given as N x N CPLX density matrices, namely rank 1 projectors ρ = |ψ〉〈ψ|.