Besides being symmetric, when will a matrix have ONLY real eigenvalues? I realize that when a matrix is symmetric, then it must have all real eigenvalues. However, I am doing research on matrices for my own pleasure and I cannot find a mathematical proof or explanation when a matrix will have all real eigenvalues except for when it is symmetric. I am dealing with matrices such as A below and I want to know what is it about A and its characteristic polynomial that gives it real eigenvalues (0, 0, -2)? Similarly, what is it about matrix B that gives it only one real eigenvalue (0) and the other two complex? 


 A: There are so-called $\mathcal{PT}$-symmetric matrices which may have purely real eigenvalues. A square matrix $M$ is called $\mathcal{PT}$-symmetric iff it satisfies the property:
$$
[\mathcal{PT},M] = 0 \Leftrightarrow \mathcal{P}M = M^*\mathcal{P}
$$
where $\mathcal{T}\equiv*$ is the complex conjugation operator and $\mathcal{P}$ is a matrix satisfying  $[\mathcal{P},\mathcal{T}]=0$ (implying that $\mathcal{P}$ is a real matrix) and $\mathcal{P}^2=1$, $\mathcal{T}^2=1$ $\Rightarrow (\mathcal{PT})^2=1$. Since $\mathcal{P}$ is an involution, its eigenvalues are $\pm1$ and one may find a basis such that $\mathcal{P}=\mathrm{diag}(1,1,1,1,...,-1,-1,-1)$. A $\mathcal{PT}$-symmetric matrix is said to have 'unbroken' $\mathcal{PT}$ symmetry iff any eigenvector of $M$ is also an eigenvector of $\mathcal{PT}$.
Claim:
If $M$ has unbroken $\mathcal{PT}$ symmetry, this implies that $M$ has real eigenvalues.
Proof: First note that the eigenvalues of $\mathcal{PT}$ are non-zero since the combination is an involution: $\mathcal{PT} u = \mu u \Rightarrow \mathcal{PT}^2 u = u = \mu^*\mu u  \Rightarrow |\mu|=1$.
Now let $Mv = \lambda v \Rightarrow \mathcal{PT}Mv = \mathcal{PT} \lambda v$. Thus since the combination $\mathcal{PT}$ is an anti-linear operator and $M$ commutes with $\mathcal{PT}$: $\mathcal{PT} M v = \lambda^*\mathcal{PT}v\Rightarrow \lambda \mu = \lambda^*\mu$. Since we've shown that $\mu\neq0$, this implies $\lambda^* = \lambda$. QED 
More on $\mathcal{PT}$-symmetry and related concepts in this article: http://arxiv.org/abs/1212.1861
The English in there isn't perfect but the content looks good.
A: Another approach is  to construct a triangular matrix with pre-determined diagonal entries; they will be the eigenvalues, and the matrix is not symmetric.
A: Do you know of  companion matrices? See the Wikipedia link here: 
http://en.wikipedia.org/wiki/Companion_matrix
They are made-to-order matrices which will have the polynomial you want as its characteristic polynomial. They are far from symmetric matrices. Now start with a polynomial having your favorite real numbers as its roots, and construct the Companion matrix for that polynomial.
A: Here is one example of sufficient conditions. 
A: I do not understand what is the OP's question. Yet, I think that the interesting question is : if I randomly choose a large square matrix, then should I wait for a long time before getting a matrix whose all eigenvalues ​​are real? The answer is: yes, a very long time.
Let $N_n$ be the number of real roots of a random polynomial (its coefficients are iid and follow the same law)  of degree $n$. In this paper (one of the authors is Van Vu who wrote papers with Terrific Tao...),
https://arxiv.org/pdf/1402.4628.pdf
we find this beautiful result
$\textbf{Theorem}$. For any random variable $\xi$ with mean $0$ and variance $1$ and bounded $(2 +\epsilon)$-moment, one has
$E(N_n)=2/π\log n+O(1)$ where $O(1)$ depends on $\xi$.
$\textbf{Remark}$.  Generally, the standard deviation of $N_n$ is in $O(\sqrt{\log(n)})$.
Thus, the probability when $n$ is large that $N_n=n$ is $\approx 0$. For example, if $n=10$ and the coefficients are uniformly random in $[[-100,100]]$, then $10^5$ tests give $0$ such matrix!!
A: A necessary and sufficient condition for a matrix$~A$ to have only real eigenvalues (that is, not have any non-real complex eigenvalues) is the existence of a polynomial $P$ that splits into linear factors over the real numbers and such that $P[A]=0$. If such a polynomial exists at all, one can take the characteristic polynomial for$~A$ (but not necessarily the minimal polynomial) as$~P$. This gives a trivially valid, but fairly hard to check condition. Without using eigenvectors, it is actually not so obvious why the characteristic polynomial of a symmetric matrix should always allow such a factorisation. But I don't think one can do much better to completely characterise the case of real-only eigenvalues.
