software
check out my open-source projects at the repos below
AI-native biomolecular storage format (.ptt) for structural biology ML. Converts a structure or raw sequence once and caches every training tensor - atomic coordinates, backbone geometry, bond graphs, MSA alignments, ESM2/ESM3 embeddings, dense or sparse pair features, and ligands - in a single Zarr/LZ4 container with memory-mapped lazy access and S3/GCS streaming. Verified end-to-end with Boltz-2. On a 76-3,525 residue benchmark: 2-95x faster full loads, up to ~250x backbone-only loads vs re-parsing mmCIF, ~4x faster full feature assembly, and up to ~75x smaller pair storage via sparse radius graphs. PyTorch / JAX / NumPy.
Python tool for cryptic binding pocket discovery. Generates conformational ensembles (NMA by default; optional OpenMM implicit-solvent MD and Boltz-2 diffusion sampling), detects pockets per conformer, clusters them across the ensemble, and ranks by a continuous crypticity score (opening x druggability-when-open). Evaluated with a size-robust (Jaccard-based) protocol on three independent datasets: 32% recovery on a curated apo/holo set (7/22), 31% on PocketMiner (14/45), and 18% on CryptoBench (32/180), the largest and most diverse benchmark; results hold on 749 held-out structures never used in tuning. Complementary to single-structure detectors, a head-to-head against fpocket shows near-zero overlap in recovered pockets, with the union of both beating either alone. Outputs docking-ready Boltz YAML, AutoDock Vina configs, and pseudoatom PDB files with hotspot-centered pocket localization.