Interaction analysis for molecular structures and ensembles
The following steps will generate a compare flare for an entire family of proteins using a structural alignment from EBI PDBeFold.
Given three PDB-files and the PDBeFold XML file containing their alignment:
structure_1.pdb
structure_2.pdb
structure_3.pdb
match.xml
First, split the xml-file into three residue label files:
get_resilabels.py --input_file match.xml --output_prefix labels_
For each structure, first generate a contact list and then the set of residue contact frequencies:
get_static_contacts.py --structure structure_1.pdb --itypes hb --output contacts_1.tsv
get_static_contacts.py --structure structure_2.pdb --itypes hb --output contacts_2.tsv
get_static_contacts.py --structure structure_3.pdb --itypes hb --output contacts_2.tsv
get_contact_frequencies.py --input_files contacts_1.tsv \
--label_file labels_1.tsv \
--itypes all \
--output_file resfrequencies_1.tsv
get_contact_frequencies.py --input_files contacts_2.tsv \
--label_file labels_2.tsv \
--itypes all \
--output_file resfrequencies_2.tsv
get_contact_frequencies.py --input_files contacts_3.tsv \
--label_file labels_3.tsv \
--itypes all \
--output_file resfrequencies_3.tsv
Next, the residue contact frequencies are combined and heatmap and flareplots are written:
get_contact_fingerprints.py --input_frequencies resfrequencies_*.tsv \
--column_headers "Structure 1" "Structure 2" "Structure 3" \
--flare_output multiflare.json \
--plot_output fingerprint.png
Upload the multiflare json at this following link: gpcrviz.github.io/flareplot/?p=create