Detail of deriving Berry Curvature From Berry Connection The Berry curvature of the $n^{\mathrm{th}}$ eigenstate of Hamiltonian $H$ for the vector of external parameters $\vec{R}$ can be derived in part by writing the following two lines:
$$
B^n(\vec{R}) \equiv \nabla \times A^n(\vec{R}) = -\mathrm{Im} \left[ \left< \nabla n(\vec{R}) | \nabla n (\vec{R}) \right> \right]
$$
where $A^n(\vec{R})\equiv -\mathrm{Im} \left[ \left< n(\vec{R})| \partial_{\vec{R}} n(\vec{R}) \right> \right]$ is the Berry connection.
I don't know exactly how perform this step in the calculation in detail:
$$
\nabla \times A^n(\vec{R}) = -\mathrm{Im} \left[ \left< \nabla n(\vec{R}) | \nabla n (\vec{R}) \right> \right]
$$
Help would be greatly appreciated.
Thank you very much.
 A: The symbols $\partial_{\vec R}$ and $\nabla$ denote the same operation, so I'm going to unify the notation by using $\nabla$ only.
The expression in the OP cannot be correct as written, because $\nabla\times A$ is a vector, while $\langle\nabla n(\vec R)|\nabla n(\vec R)\rangle$ is a tensor of rank two (i.e., a matrix). The problem is that the curvature is not really the curl of the connection, but the exterior derivative instead. This is trivial to solve (cf. Hodge star): we just contract the curl with the Levi-Civita symbol: $\epsilon_{ijk}\partial_i A_j\to \partial_{[i}A_{j]}$. We proceed with $\nabla\times$ for now (because it simplifies the notation), and take its dual at the end.
With this, you only need the basic identity
$$\tag 1
\nabla\times(f\vec F)=f(\nabla\times\vec F)+(\nabla f)\times\vec F
$$
valid for any scalar function $f$ and any vector function $\vec F$.
First, $\nabla\times$ commutes with $\mathrm{im}$, and therefore
$$
\nabla\times A^n(\vec R)=-\mathrm{im}\left(\nabla\times \left\langle n(\vec{R})\bigg| \nabla n(\vec{R}) \right> \right)
$$
Next, use the product rule:
$$
\nabla\times A^n(\vec R)\overset{\mathrm{(1)}}=-\mathrm{im}\left(\left[\left< n(\vec{R})\bigg|\left[\nabla\times  \bigg|\nabla n(\vec{R}) \right>+ \left< \nabla n(\vec{R})\bigg|\right]\times\bigg| \nabla n(\vec{R}) \right>\right] \right)
$$
The first term vanishes because $\nabla\times\nabla f=0$ for any $f=f(\vec R)$. We are left with 
$$
\nabla\times A^n(\vec R)=-\mathrm{im}\left< \nabla n(\vec{R})\bigg|\times\bigg| \nabla n(\vec{R}) \right>
$$
which is essentially the result we were after. Taking the dual,
$$
\Omega_{ij}=\epsilon_{ijk}(\nabla\times A^n(\vec R))^k=-\mathrm{im}\left< \nabla_{[i} n(\vec{R})\bigg| \nabla_{j]} n(\vec{R}) \right>
$$
as required. Note that we may drop the brackets because the $\mathrm{im}$ operation kills the symmetric part anyway.
