Access system files with PlinderSystem#
PlinderSystem provides the files and coordinate views for one ligand system. See Structures and reconstruction for their provenance and storage.
from plinder.core import PlinderSystem
plinder_system = PlinderSystem(system_id="4agi__1__1.C__1.W")
/home/runner/micromamba/envs/plinder/lib/python3.12/site-packages/vcs_versioning/_backends/_git.py:709: UserWarning: "/home/runner/work/plinder/plinder" is shallow and may cause errors
pre_parse(wd)
Ligand#
canonical_ligand_sdfs contains the asymmetric-unit SDF for each ligand. ligand_sdfs writes copies in the reconstructed biological-assembly coordinates.
plinder_system.canonical_ligand_sdfs, plinder_system.ligand_sdfs
({'1.W': '/home/runner/.local/share/plinder/2026-09/ligand_archives/4agi/ligand_files/W.sdf'},
{'1.W': '/home/runner/.local/share/plinder/2026-09/reconstructed_systems/4agi__1__1.C__1.W/ligand_files/1.W.sdf'})
Use smiles for the corresponding SMILES strings.
plinder_system.smiles
{'1.W': 'C[Se][C@@H]1O[C@@H](C)[C@@H](O)[C@@H](O)[C@@H]1O'}
Receptor#
receptor_cif returns the path to an mmCIF containing the system’s receptor chains.
plinder_system.receptor_cif
'/home/runner/.local/share/plinder/2026-09/reconstructed_systems/4agi__1__1.C__1.W/receptor.cif'
system_cif includes the selected receptor and ligand chains. Both structure views are written as self-contained PDBx/mmCIF files.
plinder_system.system_cif
'/home/runner/.local/share/plinder/2026-09/reconstructed_systems/4agi__1__1.C__1.W/system.cif'
sequences_fasta returns the receptor FASTA path, while sequences returns the protein sequences by chain.
plinder_system.sequences_fasta, plinder_system.sequences
('/home/runner/.local/share/plinder/2026-09/reconstructed_systems/4agi__1__1.C__1.W/sequences.fasta',
{'1.C': 'MSTPGAQQVLFRTGIAAVNSTNHLRVYFQDVYGSIRESLYEGSWANGTEKNVIGNAKLGSPVAATSKELKHIRVYTLTEGNTLQEFAYDSGTGWYNGGLGGAKFQVAPYSXIAAVFLAGTDALQLRIYAQKPDNTIQEYMWNGDGWKEGTNLGGALPGTGIGATSFRYTDYNGPSIRIWFQTDDLKLVQRAYDPHKGWYPDLVTIFDRAPPRTAIAATSFGAGNSSIYMRIYFVNSDNTIWQVCWDHGKGYHDKGTITPVIQGSEVAIISWGSFANNGPDLRLYFQNGTYISAVSEWVWNRAHGSQLGRSALPPA'})
Linked apo chains#
linked_apo_structures returns the ranked apo links for a holo ligand system.
linked_system = PlinderSystem(system_id="10be__1__1.C__1.A_1.B")
link_info = linked_system.linked_apo_structures
link_info[
[
"linked_structure_id",
"source_entry_id",
"source_chain_instance",
"rank",
"source_resolution",
"min_pocket_fident",
"min_protein_fident_qcov_weighted_sum",
]
]
| linked_structure_id | source_entry_id | source_chain_instance | rank | source_resolution | min_pocket_fident | min_protein_fident_qcov_weighted_sum | |
|---|---|---|---|---|---|---|---|
| 0 | 6n4o_A | 6n4o | 1.A | 1 | 2.899 | 100 | 99 |
| 1 | 9rwz_A | 9rwz | 1.A | 2 | 3.100 | 100 | 98 |
| 2 | 6nit_A | 6nit | 1.A | 3 | 3.800 | 100 | 98 |
| 3 | 6nit_B | 6nit | 1.B | 4 | 3.800 | 100 | 98 |
| 4 | 9cmp_C | 9cmp | 1.C | 5 | 3.300 | 100 | 98 |
reconstruct_linked_apo() selects rank 1 by default or accepts a linked_structure_id.
if link_info.empty:
print("No linked apo chain is available for this system.")
else:
apo_cif = linked_system.reconstruct_linked_apo(overwrite=True)
selected_cif = linked_system.reconstruct_linked_apo(
linked_structure_id=link_info.iloc[0]["linked_structure_id"],
overwrite=True,
)
print(apo_cif, selected_cif)
/home/runner/.local/share/plinder/2026-09/reconstructed_systems/10be__1__1.C__1.A_1.B/linked_apo/6n4o_A.cif /home/runner/.local/share/plinder/2026-09/reconstructed_systems/10be__1__1.C__1.A_1.B/linked_apo/6n4o_A.cif