Suppose I have starting qubit like the one described on the Bloch sphere below.
Also, denote the state $|0\rangle \equiv |+\rangle$. So my starting state would be:
$$ |\psi(0)\rangle=\frac{1}{\sqrt{2}}(|+\rangle-|-\rangle) $$
Now suppose I apply some magnetic field $\vec{B}(t)=B_0\cos(\omega t)\hat{k}$. Thus the hamiltonian of my system would be:
$$ \hat{H}=-\hat{\vec{\mu}}\cdot\hat{\vec{B}}=-\gamma B_0\cos(\omega t)\hat{S_z} $$
where $\gamma$ denotes the gyromagnetic ratio and $\hat S_z$ is the $z$ Pauli matrix multiplied by $\hbar/2$. My goal is to find the probability as a function of time of finding the particle on the other eigenvector of $\hat S_x$ corresponding to the eigenvalue of $-\hbar/2$ which is$|\alpha\rangle=\frac{1}{\sqrt{2}}(|-\rangle-|-\rangle)$. Here's my attempt:
The evolution operator is:
$$ \hat U(t;0)=\exp \bigg(\frac{i}{\hbar}\gamma B_0 \cos (\omega t)\hat S_z t\bigg) \tag{*} $$
Hence the state that is time dependent is given by:
$$ |\psi(t)\rangle=\hat U(t;0)|\psi(0)\rangle=\exp \bigg(\frac{i}{\hbar}\gamma B_0 \cos (\omega t)\hat S_z t\bigg)\frac{1}{\sqrt{2}}(|+\rangle-|-\rangle) $$
which in the eigenbasis of $\hat S_z$ translates to: $$ |\psi(t)\rangle=\frac{\exp\bigg(\frac{i\gamma B_0cos(\omega t)t}{2}\bigg)}{\sqrt{2}} \bigg[|+\rangle+\exp\bigg(-i\gamma B_0 \cos(\omega t)t\bigg)|-\rangle \bigg] $$
Finnaly the probability of finding the particle at the state $|\alpha\rangle$ is:
$$ P_\alpha (t)=|\langle \alpha |\psi(t)\rangle|^2=(...)=\frac{1}{2}-\frac{1}{2}\cos\bigg[\gamma B_0 \cos(\omega t)t] $$
Now here's my question:
From a quick "playing around with a graphing software we see that the function is something like the image below.
So we see that the behaviour on the bloch sphere would be quite erratic, starting by wobbling around the eigenstate that it started in but quickly changing to the opposite pole of the sphere and it keeps changing between poles at a forever increasing rate. Why is this behaviour like so? My intuition would be: If it started on an eigenstate it should remain in it forever, are my calculations wrong? Does the basis that I chose reflect on the result? If so, how should I have proceeded?