Local frame of reference I am currently simulating particle trajectories in Kerr spacetime numerically with $M=1$ and $a=1$.

In the picture above, I am calculating the geodesic in Boyer-Lindquist coordinates. I was messing around with the simulation a little bit and I wanted to transform to a local lorentz frame by use of a vierbein (tetrad) $e^m_{\ \ \  \nu}$. The problem I encounter is that in the local lorentz frame I get velocities higher than the speed of light.
So far, I have checked that: 


*

*$e^m_{\ \ \ \mu}e^n_{\ \ \ \nu}g^{\mu \nu}=\eta^{mn}$

*$u^\mu u_\nu = -1$


which seems to imply both that 1) the $e^m_{\ \ \ \mu}$ is calculated correctly and 2) that the particle is not moving faster than the speed of light.
My transformation into local frame is done via: $e^m_{\ \ \ \mu}u^\mu=u^m$
And I get the result $u^3>1$.
My question would be whether I am doing the local frame transformation incorrectly / I am missing something. The other possibility is numerical error.
 A: The requirement for the velocity to be timelike, i.e lower than the speed of light, is that $u^iu_i < 0$ ($u^iu_i = -1$ is desired in your case since the transformation should retain normalization, which the values given in the comments matches to the 13th decimal), regardless of the numerical value of independent components. 
To extract the observed 3-velocity is more complicated and to be honest not my strong suit. I found this paper on arxiv that might be helpful. However, at a cursory glance it seems like if you consider a single observer with a single world line the result given should depend on the choice of extension of the observer velocity, wherefore it would seem the speed can only be properly defined for an observer coincident with the test particle. Parallel transport of the observer velocity vector along the null geodesic connecting the observer and the test particle might solve this, but as I said: not my strong suit. 
A: As @Erik_Jorgenfelt says, a timelike four velocity will have $\vec{u}\cdot\vec{u}=-1$.  Remember that $\vec{u}$ is proper velocity,
$$ \vec{u} = \frac{\mathrm{d}\vec{x}}{\mathrm{d}\tau},$$
not coordinate velocity.  It's perfectly okay to have a component of proper velocity be greater than one in geometrized units as long as the vector remains timelike.
To get coordinate velocity, you can just compute (for the speed in the $\hat{e}_i$ direction):
$$ v^i = \frac{\mathrm{d}x^i}{\mathrm{d}t} = \frac{u^i}{u^t} = \frac{p^i}{p^t}, $$
In your case, it makes sense to use the components of the proper velocity.  You already have them in the frame of interest.  If you were dealing with a lightlike trajectory you would need to use momentum.
Another case where it is more useful to use momentum would be if you want to know the velocity of some test particle relative to the Boyer-Lindquist coordinates.  To get the velocity in the $\hat{e}_\phi$ direction, you would compute:
$$ p^\phi = g^{\phi \mu} p_\mu = g^{\phi t}p_t + g^{\phi\phi}p_\phi $$
$$ p^t = g^{\phi \mu} p_\mu = g^{t t}p_t + g^{t\phi}p_\phi $$
where $g_{\mu\nu}$ are the components of the Kerr metric in Boyer-Lindquist coordinates.
If the particle of interest is the ZAMO, then $p_\phi=0$ so $\frac{\mathrm{d}\phi}{\mathrm{d}t} = \frac{g^{\phi t}}{g^{t t}}$.  This is frame-dragging.
If you carry out the momentum based process in the locally inertial ZAMO frame, the metric of interest is Minkowski.  This would simplify things.
