Amino Acid TSR
Generates TSR keys at the level of individual amino acids, filtering residues against the expected length for each residue type before triplets are formed.
Read the paper: A Parallel Implementation for Large-Scale TSR-based 3D Structural Comparisons of Protein and Amino Acid (opens in a new tab)Current Bioinformatics, 2025, 20(6), 564–579
On this page
Overview
Amino Acid TSR generates TSR keys and triplets at the level of individual amino acids rather than whole protein chains: the points of its triangles are the heavy atoms of one residue, not the Cα atoms of a chain.
Key triplet generation filters residues against the expected length for each amino acid type, so that only residues meeting the specified condition are processed. The expected lengths are:
| Residue | Expected length |
|---|---|
| GLY (Glycine) | 4 |
| ALA (Alanine) | 5 |
| SER (Serine), CYS (Cysteine) | 6 |
| VAL (Valine), PRO (Proline), THR (Threonine) | 7 |
| LEU (Leucine), ILE (Isoleucine), MET (Methionine), ASP (Aspartic acid), ASN (Asparagine) | 8 |
| LYS (Lysine), GLU (Glutamic acid), GLN (Glutamine) | 9 |
| HIS (Histidine), SEP (Phosphoserine) | 10 |
| PHE (Phenylalanine), ARG (Arginine), TPO (Phosphothreonine) | 11 |
| TYR (Tyrosine) | 12 |
| TRP (Tryptophan) | 14 |
| PTR (Phosphotyrosine) | 16 |
Applying these conditions ensures only relevant residues are processed, which supports identification of structural motifs and functional characteristics within protein chains at triplet level.
Publications
Amino Acid TSR was reported in the 2025 study of spike protein and monoclonal antibody interactions:
Tarikul I. Milon, Titli Sarkar, Yixin Chen, Jordan M. Grider, Feng Chen, Jun-Yuan Ji, Seetharama D. Jois, Konstantin G. Kousoulas, Vijay Raghavan and Wu Xu. Development of the TSR-based computational method to investigate spike and monoclonal antibody interactions. Frontiers in Chemistry, 2025, 13, 1395374.
The paper linked at the top of this page, Chen et al. (2025), describes a parallel implementation of TSR comparisons for proteins and amino acids.
Run it with BioTSR
BioTSR's amino_acid_atomic method computes TSR keys from the heavy atoms of
one amino acid at a time, each atom labelled by its element. To compute them
for Leu15 of ubiquitin:
python -m pip install "biotsr==1.0.0"
biotsr fetch 1UBQ --pdb-dir structures
biotsr run --method amino_acid_atomic --pdb structures/1UBQ.pdb --chain A --residue 15 --residue-name LEU --output resultsLeucine's 8 heavy atoms form 56 triangles, with 46 distinct keys, written under
the prefix results/1UBQ_A_amino_acid_atomic_LEU_15.
Cα methods: one point per residue
Ubiquitin chain A gives 76 points and 70,300 triangles. Leu15 is one of the points, ringed.
Atomic methods: every heavy atom
Leu15’s 8 heavy atoms, each labelled by its element (C 106, N 108, O 109), form 56 triangles with 46 distinct keys.
- One residue, one type, or the whole chain: give
--residuewith--residue-namefor one residue,--residue-namealone for one calculation per residue of that name, or neither for one calculation per residue of the chain. Each residue gets its own files, and a sweep has one completion record. - The expected atom counts: BioTSR keeps this method's rule that a residue
is computed only when its heavy-atom count matches the table above. A residue
that does not match is declined and the reason recorded; a C-terminal residue
with its extra
OXToxygen is one example. - Related methods:
aa_indandaa_ind_mixpool every atom of one or more residue types,aa_ind_specificpools named residues, andamino_acid_atom_selectionuses atoms you name. - Options: mirror images and size filtering. Amino acid grouping and SSE annotation are Cα options and are refused here.
- From Python:
biotsr.analyze(..., method="amino_acid_atomic", residue="15", residue_name="LEU").
The user guide, §5
covers every amino-acid method, and
tutorial 02
runs one. For many structures, biotsr batch runs a CSV manifest
(tutorial 05),
and the
command-line guide, §12
has example Slurm job scripts for an HPC cluster.
Comparing with the earlier package
BioTSR's expected atom counts are the earlier package's own, transcribed unchanged. BioTSR labels each atom from the element field of its PDB record (columns 77–78) and has no option to reproduce the earlier package's output files; the known limitations, §1 explain where its standard definitions come from.
Source code
BioTSR (opens on GitHub)
Current software
Used by the examples on this page.
Licence Apache License 2.0
TSR_AMINOACID_PACKAGE (opens on GitHub)
Earlier implementation
The method's first implementation. It is kept unchanged for provenance and for work that depends on it; its README has its own installation instructions.
Licence No licence stated