Rust CLI tool for physics-informed protein robustness and fragility analysis under environmental conditions (pH, oxidative stress, temperature).
Install from crates.io (Rust 1.91+ / Windows / Linux / MacOS):
cargo install kira-protein-longevity-analysisOr
Build from source (Rust 1.91+):
cargo build --releasekira-protein-longevity-analysis analyze --input <file_or_dir> --ph 5.8 --ros high --temp-c 39Options:
--input <file_or_dir>: structure file or directory of.cif/.mmcif/.pdb--fasta <file>: optional FASTA (currently unused)--ph <float>: environment pH (default 7.4)--ros <low|normal|high>: oxidative stress level (default normal)--temp-c <float>: temperature in C (default 37.0)--threads <usize>: worker threads (default: num_cpus)--backend <scalar|simd>: SIMD backend selection--format <json|tsv>: output format (default json)--out <file>: output file (stdout if omitted)--short: reduce output payload--verbose: per-stage timing info
- Heuristic scoring only (no MD or Rosetta).
- Deterministic output for the same inputs.
.\target\release\kira-protein-longevity-analysis.exe analyze --input 1LYZ.cif --ph 4.5 --ros normal --temp-c 37 --short
{
"schema_version": 1,
"tool": "kira-protein-longevity-analysis",
"env": {
"ph": 4.5,
"ros": "Normal",
"temp_c": 37.0
},
"results": [
{
"protein_id": "1LYZ",
"length": 129,
"chains": 1,
"robustness": {
"score": 0.8534382,
"delta_vs_neutral": -0.069004476,
"verdict": "ACCEPT"
},
"reasons": [
{
"tag": "packing:low_core_packing",
"value": 0.3029582,
"details": {
"contribution": 0.0757395476102829
}
},
{
"tag": "ph:risk_combined",
"value": 0.2760181,
"details": {
"contribution": 0.06900452822446823,
"electrostatic_risk": 0.1336318999528885,
"salt_bridge_loss_fraction": 0.2760181128978729
}
},
{
"tag": "temp:sensitivity",
"value": 0.018177493,
"details": {
"contribution": 0.0018177492311224341
}
},
{
"tag": "ph:salt_bridge_loss",
"value": 0.2760181,
"details": {
"lost": 122,
"total": 442
}
},
{
"tag": "ros:oxidation_exposed",
"value": 0.0,
"details": {
"contribution": 0.0
}
},
{
"tag": "strain:high_turn_strain",
"value": 0.0,
"details": {
"contribution": 0.0
}
},
{
"tag": "surface:exposed_hydrophobic_load",
"value": 0.0,
"details": {
"contribution": 0.0
}
}
],
"hotspots_topk": [
{
"chain": "A",
"res_idx": 129,
"aa": "L",
"fragility": 0.2744191,
"flags": [
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 128,
"aa": "R",
"fragility": 0.25469586,
"flags": [
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 21,
"aa": "R",
"fragility": 0.23720291,
"flags": [
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 114,
"aa": "R",
"fragility": 0.22168806,
"flags": [
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 5,
"aa": "R",
"fragility": 0.19572324,
"flags": [
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 45,
"aa": "R",
"fragility": 0.19572324,
"flags": [
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 20,
"aa": "Y",
"fragility": 0.18489888,
"flags": [
"oxidation_prone",
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 127,
"aa": "C",
"fragility": 0.18489888,
"flags": [
"oxidation_prone",
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 6,
"aa": "C",
"fragility": 0.17529854,
"flags": [
"oxidation_prone",
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 13,
"aa": "K",
"fragility": 0.16678384,
"flags": [
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 116,
"aa": "K",
"fragility": 0.16678384,
"flags": [
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 33,
"aa": "K",
"fragility": 0.15923193,
"flags": [
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 115,
"aa": "C",
"fragility": 0.15923193,
"flags": [
"oxidation_prone",
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 68,
"aa": "R",
"fragility": 0.15469585,
"flags": []
},
{
"chain": "A",
"res_idx": 18,
"aa": "D",
"fragility": 0.15253401,
"flags": [
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 52,
"aa": "D",
"fragility": 0.15253401,
"flags": [
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 30,
"aa": "C",
"fragility": 0.14659348,
"flags": [
"oxidation_prone",
"salt_bridge_loss"
]
},
{
"chain": "A",
"res_idx": 22,
"aa": "G",
"fragility": 0.13720292,
"flags": []
},
{
"chain": "A",
"res_idx": 48,
"aa": "D",
"fragility": 0.13720292,
"flags": []
},
{
"chain": "A",
"res_idx": 118,
"aa": "T",
"fragility": 0.13720292,
"flags": []
}
]
}
]
}
This directory contains protein structure files (pdb & cif) obtained from the Protein Data Bank (PDB, https://www.rcsb.org).
PDB data are in the public domain (CC0 1.0). Original authors retain attribution for experimental determination.
These files are included solely for testing and benchmarking purposes.
MIT