Table of Contents
Fetching ...

dynsight: an Open Python Platform for Simulation and Experimental Trajectory Data Analysis

Simone Martino, Matteo Becchi, Andrew Tarzia, Daniele Rapetti, Giovanni M. Pavan

TL;DR

dynsight addresses the fragmentation of trajectory-analysis tools by delivering an open Python platform that streamlines trajectory extraction, descriptor computation, and time-series clustering for both simulated and experimental systems. It introduces core data objects—Trj, Insight, and ClusterInsight—to support end-to-end workflows, and implements descriptors such as LENS, SOAP, and TimeSOAP, plus Onion Clustering for robust single-point time-series analysis. The platform also extends to experimental data via vision and track modules and emphasizes open-data archiving to promote reproducible research. By providing a modular, extensible framework with comprehensive documentation and open-source licensing, dynsight lowers barriers to advanced trajectory analysis and enables cross-scale studies from atomic to macroscopic trajectories.

Abstract

The study of complex many-body systems via analysis of the trajectories of the units that dynamically move and interact within them is a non-trivial task. The workflow for extracting meaningful information from the raw trajectory data is often composed of a series of interconnected steps, such as, (i) identifying and tracking the constitutive objects/particles, resolving their trajectories (e.g., in experimental cases, where these are not automatically available as in typical molecular simulations), (ii) translating the trajectories into data that are easier to handle/analyze by using well suited descriptors, and (iii) extracting meaningful information from such data. Each of these different tasks often requires non-negligible programming skills, the use of various types of representations or methods, and the availability/development of an interface between them. Despite the considerable potential that new tools contributed to each of these individual steps, their integration under a common framework would decrease the barrier to usage (especially by diverse communities of users), avoid fragmentation, and ultimately facilitate the development of new approaches in data analysis. To this end, here we introduce dynsight, an open Python platform that streamlines the extraction and analysis of time-series data from simulation- or experimentally-resolved trajectories. dynsight simplifies workflows, enhances accessibility, and facilitates time-series and trajectories data analysis offering a useful tool to unraveling the dynamic complexity of a variety of systems (or signals) across different scales. dynsight is open source (https://github.com/GMPavanLab/dynsight) and can be easily installed using pip.

dynsight: an Open Python Platform for Simulation and Experimental Trajectory Data Analysis

TL;DR

dynsight addresses the fragmentation of trajectory-analysis tools by delivering an open Python platform that streamlines trajectory extraction, descriptor computation, and time-series clustering for both simulated and experimental systems. It introduces core data objects—Trj, Insight, and ClusterInsight—to support end-to-end workflows, and implements descriptors such as LENS, SOAP, and TimeSOAP, plus Onion Clustering for robust single-point time-series analysis. The platform also extends to experimental data via vision and track modules and emphasizes open-data archiving to promote reproducible research. By providing a modular, extensible framework with comprehensive documentation and open-source licensing, dynsight lowers barriers to advanced trajectory analysis and enables cross-scale studies from atomic to macroscopic trajectories.

Abstract

The study of complex many-body systems via analysis of the trajectories of the units that dynamically move and interact within them is a non-trivial task. The workflow for extracting meaningful information from the raw trajectory data is often composed of a series of interconnected steps, such as, (i) identifying and tracking the constitutive objects/particles, resolving their trajectories (e.g., in experimental cases, where these are not automatically available as in typical molecular simulations), (ii) translating the trajectories into data that are easier to handle/analyze by using well suited descriptors, and (iii) extracting meaningful information from such data. Each of these different tasks often requires non-negligible programming skills, the use of various types of representations or methods, and the availability/development of an interface between them. Despite the considerable potential that new tools contributed to each of these individual steps, their integration under a common framework would decrease the barrier to usage (especially by diverse communities of users), avoid fragmentation, and ultimately facilitate the development of new approaches in data analysis. To this end, here we introduce dynsight, an open Python platform that streamlines the extraction and analysis of time-series data from simulation- or experimentally-resolved trajectories. dynsight simplifies workflows, enhances accessibility, and facilitates time-series and trajectories data analysis offering a useful tool to unraveling the dynamic complexity of a variety of systems (or signals) across different scales. dynsight is open source (https://github.com/GMPavanLab/dynsight) and can be easily installed using pip.

Paper Structure

This paper contains 21 sections, 5 figures, 1 table.

Figures (5)

  • Figure 1: The dynsight workflow Typical dynsight pipeline, where trajectories, obtained from either simulations or experimental videos, are converted into datasets through the computation of descriptors, and subsequently analyzed to extract physically-relevant information.
  • Figure 2: The vision and track modules of dynsight. (A) A first operative phase aims to extract the trajectory data from experimental videos or simulations. (B) Schematic representation of the workflow to extract 2D trajectories from experimental videos. Procedure of labeling (left), training (center), and tracking (right) to obtain the trajectories of the moving objects/particles from input video in dynsight.
  • Figure 3: Descriptors: Example descriptors in dynsight for analyzing trajectories to produce a dataset (A). (B) Smooth Overlap of Atomic Position (SOAP)bartok2013representing, a continuous, high-dimensional representation of the local particles' density around a particle. (C) timeSOAPcaruso2023timesoap, a uni-dimensional measure of the temporal variation of the SOAP spectra. (D) Local Environments and Neighbors Shuffling LENScrippa2023detecting, a measure of the degree of neighbors' reshuffling around a particle.
  • Figure 4: Time-series clustering: Example of dynsight usage for information extraction through the Onion Clustering algorithm from descriptor based datasets (A). (B) Prototypical example of a water-ice molecular dynamics simulation. (C) Number of identified environments (blue) and unclassified data (orange) as a function of $\Delta t$ used by Onion Clustering. (D) Time-series of the LENS descriptor classified by Onion Clustering, with corresponding kernel density estimation (KDE) on the right. (E) Snapshot colored according to the detected clusters. Application of Onion Clustering to an experimental video.
  • Figure 5: Workflow of Label_tool and vision / track modules. (A) Single frame taken from a representative experimental video of an example complex colloidal systemLiu2021Activity. For visual purposes, a relatively simple many-body system is used here as a representative example, while it is worth noting that such approaches become particularly useful when the complexity of the system increasesbecchi2024layer, caruso2025classification, doria2025data, Lionello2025Relevant. (B) The Label_tool GUI allows the user to manually select prototypical examples of target particles from a color-corrected frame. (C) Using these annotations, dynsight.vision performs iterative training and detection to locate all particles across frames, while dynsight.track associates each detection with its corresponding trajectory.