I would like to form a matrix from its eigenvalues located within the unit circle, not necessarily real. For example, I would like to place them very close to the unit circle, though inside, and then form a real matrix. The entries in the matrix are really not important as long as the eigenvalues match the ones I want to place and the entries are real.
How to do this?
This problem is not solvable for any arbitrary collection of complex numbers, for the following reason: if the matrix $A$ is real, any complex eigenvalues occur in conjugate pairs. So for example it is impossible to construct a real matrix with eigenvalues $1, 2, 2 + 3i$, but it is possible to construct one with eigenvalues $1, 2, 2 + 3i, 2 - 3i$.
The construction is not too difficult. For a real eigenvalue, place it on the diagonal. For the complex conjugate pair $a \pm bi$, place the real $2 \times 2$ matrix
$$ \begin{pmatrix} a & b \\ -b & a \end{pmatrix} $$
on the diagonal. (Check that this matrix has $a \pm ib$ as its eigenvalues).
For example, starting with the set of desired eigenvalues $1, 2, 2 + 3i, 2-3i$, we construct the matrix $$ A = \begin{pmatrix} 1 & 0 & 0 & 0 \\ 0 & 2 & 0 & 0 \\ 0 & 0 & 2 & 3 \\ 0 & 0 & -3 & 2 \end{pmatrix} $$ which is real, and has precisely the set $1, 2, 2 \pm 3i$ as its eigenvalues.