Skip to content

Advanced Analysis Examples

Custom Analysis Workflow

import smolsat
import numpy as np

# Load trajectory
trajectory = smolsat.load_trajectory("simulation.xyz")

# Create system with periodic boundaries
system = smolsat.System(trajectory, periodic_boundaries=True)

# Select specific particles
polymer_particles = trajectory.particles_of_type_name('POL')
solvent_particles = trajectory.particles_of_type_name('SOL')

# Analyze polymer dynamics
if polymer_particles:
    msd_polymer = smolsat.MeanSquareDisplacement(system, polymer_particles)
    msd_polymer.compute()

    rg_polymer = smolsat.RadiusOfGyration(system, polymer_particles)
    rg_polymer.compute()

# Analyze solvent dynamics
if solvent_particles:
    msd_solvent = smolsat.MeanSquareDisplacement(system, solvent_particles)
    msd_solvent.compute()

# Compare results
print('Analysis complete!')