fn rope_partial(x: &mut [f32], pos: usize, rot: usize, theta: f32)
Partial RoPE over the first rot dims with half-split pairing (rotate_half): pair (j, j + rot/2) uses inv_freq theta^(-2j/rot).
rot