  We propose a method to decompose dynamical systems based on the idea that
modules constrain the spread of perturbations. We find partitions of system
variables that maximize 'perturbation modularity', defined as the
autocovariance of coarse-grained perturbed trajectories. The measure
effectively separates the fast intramodular from the slow intermodular dynamics
of perturbation spreading (in this respect, it is a generalization of the
'Markov stability' method of network community detection). Our approach
captures variation of modular organization across different system states, time
scales, and in response to different kinds of perturbations: aspects of
modularity which are all relevant to real-world dynamical systems. It offers a
principled alternative to detecting communities in networks of statistical
dependencies between system variables (e.g., 'relevance networks' or
'functional networks'). Using coupled logistic maps, we demonstrate that the
method uncovers hierarchical modular organization planted in a system's
coupling matrix. Additionally, in homogeneously-coupled map lattices, it
identifies the presence of self-organized modularity that depends on the
initial state, dynamical parameters, and type of perturbations. Our approach
offers a powerful tool for exploring the modular organization of complex
dynamical systems.
