I want to generate 8 random variables (in reality to form 4 complex numbers) such that the sum of the 8 variables squared is equal to unity. The aim of generating such numbers is to perform a quantum simulation of 4 qubits (thus the 8 parameters). I've been trying to use RandomVariate[NormalDistribution[]]
, but I'm not quite sure how to satisfy the constraint previously described.
$\begingroup$
$\endgroup$
1
1 Answer
$\begingroup$
$\endgroup$
1
You can use RandomPoint
of a Sphere
:
SeedRandom[1]
RandomPoint[Sphere[{0,0,0,0,0,0,0,0}]]
Norm @ %
{0.218453, 0.184026, 0.117791, 0.285912, 0.694608, 0.304419, 0.0587873, \ 0.494151}
1.
[0,2Pi]
and then you calculate the point on the circle with{Cos[phi],Sin[phi]}
. This automatically has your condition. Now you extend this into 8 dimensions. $\endgroup$