Skip to content

Instantly share code, notes, and snippets.

View RuhiRG's full-sized avatar
🎯
Focusing

Ruhi RuhiRG

🎯
Focusing
  • University of Iceland
  • 09:32 (UTC)
View GitHub Profile
@RuhiRG
RuhiRG / gsoc24_PydSEAMSlib_fin_report.md
Created August 26, 2024 07:18
GSoC 2024: PySEAMS enhancements for d-SEAMS under the PSF

PydSEAMSlib : Enhanced Python bindings for d-SEAMS

d-SEAMS (Deferred Structural Elucidation Analysis for Molecular Simulations), a free and open-source advanced post-processing engine designed for the analysis of molecular dynamics (MD) trajectories, focusing particularly on the classification of ice structures. It was developed by Rohit Goswami, Amrita Goswami, and Jayant Kumar Singh, and introduced in a 2020 publication in the Journal of Chemical Information and Modeling.

The primary objective of this project was to enhance pySEAMS, a Python interface for the d-SEAMS (Deferred Structural Elucidation Analysis for Molecular Simulations) core engine. Last year, under GSoC 2023, I started writing pybind11 bindings to the engine to slowly transition away from the lua embedded single-purpose yodaStruct binary. This project focused on improving the usability and accessibility of pySEAMS by creating comprehensive documentation, refining the installation process, and integrat

@RuhiRG
RuhiRG / gsoc23_pyseams_fin_report.md
Last active August 28, 2023 22:58
GSoC 2023: Python Bindings for d-SEAMS under the PSF

PYSEAMS : Python bindings for d-SEAMS

d-SEAMS (Deferred Structural Elucidation Analysis for Molecular Simulations), a free and open-source post-processing engine for the analysis of molecular dynamics trajectories, which is specifically able to qualitatively classify ice structures, in both strong confinement and bulk systems.

The objective of my project was to create Python bindings to the seams-core C++ engine of d-SEAMS. I named my bindings repository and project as pyseams with the importable name cyoda in keeping with yodaStruct and yodaLib from d-SEAMS. The d-SEAMS project provided lua bindings which many users may find difficult. I wrote bindings with pybind11 for the functions and classes present in d-SEAMS. Each basic example has it's own file in pyseams, which users can run. Initially, d-SEAMS didn't support the latest version of Macos but I worked to ensure M1-Macos users can use d-SEAMS as well.

Beyond th