Skip to main content

Shell Quant Qualifier for water-shell topology analysis in MD trajectories.

Project description

SQQ

SQQ (Shell Quant Qualifier) analyzes water-shell topology in molecular dynamics frames.

It builds a water network, finds rings, standard half-cages, quasi-cages, closed cages, cage guest occupancy, F3/F4 metrics, and ice-like waters. Detailed algorithms are documented in docs/design.md; version notes are documented in docs/update.md.

Install

Install the released package from PyPI:

pip install sqq

Upgrade an existing installation:

pip install -U sqq

For local development from a source checkout:

pip install -e .

Then use:

sqq -h
sqq init -o config.yaml
sqq analyze -i ./gro -c config.yaml -o ./result_sqq

During source-tree development without installation:

python -m sqq analyze -i ./gro -c config.yaml -o ./result_sqq

Quick Start

Single GRO file:

sqq analyze -i test1.gro -o ./result_sqq

Directory of GRO files:

sqq analyze -i ./gro --pattern "*.gro" -o ./result_sqq

Glob pattern:

sqq analyze -i "./gro/*.gro" -o ./result_sqq

XTC/TRR trajectory with a topology file:

sqq analyze -i traj.xtc --top topol.gro -c config.yaml -o ./result_sqq

Common Commands

Write a default configuration file:

sqq init -o config.yaml

Analyze 4/5/6 rings, quasi-cages, and cages:

sqq analyze -i md.gro --sizes 4,5,6 -o ./result_sqq_456

Enable outer quasi-cage layers:

sqq analyze -i md.gro --quasi-max-layers 3 -o ./result_sqq_l3

Disable structure GRO output and keep only reports:

sqq analyze -i md.gro --no-gro -o ./result_sqq_report

Parallelize independent GRO/XYZ files:

sqq analyze -i ./gro --pattern "*.gro" --n-jobs 4 -o ./result_sqq

Important Defaults

graph:
  bond_mode: auto
  oo_cutoff_nm: 0.35
  hbond_distance_nm: 0.35
  hbond_angle_deg: 30.0

ring:
  sizes: [5, 6]
  chordless: true

quasi_cage:
  enabled: true
  base_sizes: auto
  side_sizes: auto
  max_layers: 1

cage:
  enabled: true
  ring_sizes: [5, 6]
  target_types: [512, 51262, 51263, 51264]
  output_other: false
  search_mode: grow
  seed_mode: ring
  occupancy_mode: polyhedron

output:
  write_info: true
  write_gro: true
  write_xlsx_summary: true
  structure_layout: grouped

Configuration priority:

built-in defaults < config.yaml < command-line options

Useful Options

Option Meaning
-i, --input Input file, directory, or glob pattern
--pattern "*.gro" File pattern for directory input
--top topol.gro Topology/structure file for XTC/TRR input
-c, --config config.yaml User configuration file
-o, --output DIR Output directory
--sizes 4,5,6 Set ring, quasi-cage, and cage ring sizes together
--ring-sizes 4,5,6 Override only ring search sizes
--quasi-sizes 4,5,6 Override quasi-cage base and side sizes
--quasi-max-layers N Report quasi-cage layers up to N; default is 1
--cage-sizes 4,5,6 Override cage face sizes
--other-cages Include generated unconventional 4/5/6 cage targets
--no-gro Disable all structure GRO files
--no-xlsx Disable summary.xlsx
--output-layout flat Write all per-frame GRO files in one folder

Output Structure

SQQ writes one folder per frame plus a global workbook:

result_sqq/
  summary.xlsx
  run_config.yaml
  test1/
    test1_info.md
    ring/
      test1_ring_5.gro
      test1_ring_6.gro
    half_cage/
      hc_5r_5^5/
        test1_hc_5r_5^5.gro
    quasi_cage/
      qc_5r_5^3-6^2_55566/
        test1_qc_5r_5^3-6^2_55566.gro
    cage/
      5^12/
        test1_cage_5^12.gro
        test1_cage_5^12_empty.gro
        test1_cage_5^12_occupied.gro
    ice/
      test1_ice.gro

Output ownership is:

cage > quasi_cage > half_cage > ring

Cage files include cage waters, CNT center atoms, and assigned guests. Exact guest-composition files are generated from the guest names present in the frame, such as CH4, CH4x2, or CH4+CO2.

See docs/design.md for algorithm details and docs/update.md for release changes.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sqq-0.1.2.tar.gz (1.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sqq-0.1.2-py3-none-any.whl (1.3 MB view details)

Uploaded Python 3

File details

Details for the file sqq-0.1.2.tar.gz.

File metadata

  • Download URL: sqq-0.1.2.tar.gz
  • Upload date:
  • Size: 1.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for sqq-0.1.2.tar.gz
Algorithm Hash digest
SHA256 d6ee28bc0f09a9a8891e4818118b5e25d2b02528fc158f9bfa8530eb078f4a4e
MD5 b676fbf6232d3edd07e32c247c6e0169
BLAKE2b-256 754b3db14108cdd1f512552393e131b4d73ae8df4be60122e303dce19227ac11

See more details on using hashes here.

File details

Details for the file sqq-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: sqq-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 1.3 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.13

File hashes

Hashes for sqq-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 91637e8b64f27795c77a818ff1c92746c4e31c4379b344bf7f55f4cb02c3dfe0
MD5 ef744a441c81f0faa02b09e432d7644c
BLAKE2b-256 32dedb5b4ea7c3c4d007d62e79b8873831aafd2fef3b8c59b4ec6ba9a812117d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page