State that evolves
Formalize the dynamical view as a state-space model on the manifold: the latent state \mathbf{x} evolves under an internal dynamics matrix A, driven at times by input \mathbf{u}. During the fast part of a reach, motor cortex behaves approximately autonomously — the dynamics A dominate and the input mainly sets the starting point. The eigenvalues of A read out the machine's behavior: imaginary parts are rotations, real parts are decay or growth.
\dot{\mathbf{x}}(t) = A\,\mathbf{x}(t) + B\,\mathbf{u}(t)The latent population state under internal dynamics A with occasional input \mathbf{u}; muscle commands are a linear read-out of \mathbf{x}.
The population state evolves under its own internal dynamics A, nudged now and then by external input \mathbf{u}; the muscles read out a simple linear function of this state. Movement is generated, not just represented.
- \mathbf{x}(t)
- The latent population state; \dot{\mathbf{x}} is its change.
- A
- The internal dynamics matrix.
- B\,\mathbf{u}(t)
- How occasional external input enters the state.
A brief input sets the initial state; the internal dynamics then roll out the whole reach — the recurrent network view.
Preparation as initial condition
Before movement, preparatory activity settles the state into an optimal subspace so that, once dynamics unfold, they produce the right muscle pattern. Crucially, preparation varies along output-null dimensions — combinations of neurons that do not yet drive muscles — so the arm stays still while the plan is loaded. Then a large condition-independent signal, nearly identical across reach directions, triggers the transition from holding to moving. Neither phenomenon fits a pure representational story; both fall out naturally from a dynamical one.
Rotational dynamics and jPCA
A robust signature of dynamics is that population trajectories rotate. jPCA tests for this directly: it fits the best dynamics matrix constrained to be skew-symmetric — pure rotation, no growth — and finds planes where activity rotates consistently across reach conditions.
\min_{M}\ \lVert \dot{X} - M X \rVert_F^{2} \quad \text{subject to} \quad M = -M^{\top}jPCA fits the best purely rotational (skew-symmetric) dynamics M; strong, consistent rotations are the hallmark of a generator rather than a static code.
jPCA asks how much of the population's flow is pure rotation, by fitting the best rotation-only dynamics to the data. Finding strong, consistent rotations is a fingerprint of an internal generator rather than a static stimulus code.
- \dot{X},\ X
- The state changes and the states over time.
- M
- The fitted dynamics matrix, constrained to be skew-symmetric.
- M = -M^{\top}
- The skew-symmetric constraint that forces pure rotation.
- \lVert \cdot \rVert_F^{2}
- Frobenius norm — total squared fitting error.
Plotted in the jPCA plane, neural states trace circular loops during reaching — rotational dynamics.
Be honest about what this proves. Rotational structure is strong evidence for dynamics, not a proof — certain representational schemes can also produce apparent rotation. What earns jPCA its weight is reproducibility: the rotations recur across labs, tasks and species.
Fixed points, attractors, RNNs
Nonlinear dynamics organize around fixed points and attractors — states where \dot{\mathbf{x}}=0. Line attractors can hold a posture; rotational transients can generate a reach. Trained recurrent network models that output EMG develop internal dynamics strikingly like cortex, turning the vague question of what A is into a concrete, testable model whose fixed points you can find and perturb.
For a smooth autonomous dynamical system, two nearby states cannot have wildly different derivatives — otherwise the flow would be ill-defined. Trajectory tangling quantifies violations of this. Motor cortex keeps tangling low (consistent with a generator), whereas some sensory areas are highly tangled. Low tangling is also a practical gift: it is a big part of why motor-cortex trajectories are so smooth, decodable and noise-robust.