Skip to content

PDB Combiner

Merges up to five PDB dictionaries into a single PDB dictionary. Optionally prefixes keys to avoid name conflicts by adding PDB1_, PDB2_, etc. Ensures unique keys even without prefixing by appending numeric suffixes when duplicates occur.
Preview

Usage

Use this node when you have multiple PDB inputs (each as a dictionary mapping an ID to a PDB string) and need to consolidate them into one structure for downstream steps like extraction, conversion, or visualization. Connect any subset of pdb_1 through pdb_5 and enable prefix_chains if you want guaranteed unique IDs derived from each input slot.

Inputs

FieldRequiredTypeDescriptionExample
pdb_1FalsePDBFirst PDB dictionary to merge. Keys are identifiers; values are PDB content strings.{"pdbA": ""}
pdb_2FalsePDBSecond PDB dictionary to merge.{"pdbB": ""}
pdb_3FalsePDBThird PDB dictionary to merge.{"pdbC": ""}
pdb_4FalsePDBFourth PDB dictionary to merge.{"pdbD": ""}
pdb_5FalsePDBFifth PDB dictionary to merge.{"pdbE": ""}
prefix_chainsFalseBOOLEANIf true, prefixes each key with PDBi_ (based on the input slot) to avoid key conflicts. If false, duplicates are resolved by appending _1, _2, etc.true

Outputs

FieldTypeDescriptionExample
combined_pdbPDBA single dictionary containing all merged PDB entries with unique keys.{"PDB1_pdbA": "", "PDB2_pdbB": ""}

Important Notes

  • At least one input must be provided: If none of pdb_1 to pdb_5 are connected or contain data, the node raises an error.
  • Key uniqueness handling: With prefix_chains enabled, keys are prefixed (PDB1_, PDB2_, etc.). Without it, duplicate keys are made unique by appending numeric suffixes (_1, _2, ...).
  • Input format: Each PDB input must be a non-empty dictionary mapping an identifier to a PDB text string.
  • Merging behavior: All entries from provided inputs are included; conflicts are resolved rather than overwritten.

Troubleshooting

  • Error: 'At least one PDB input is required': Connect at least one valid PDB dictionary to pdb_1–pdb_5.
  • Unexpected key collisions: Enable prefix_chains to systematically avoid collisions by slot-based prefixes.
  • Invalid input type: Ensure each pdb_i is a dictionary {id: pdb_string}. Passing plain strings or empty values will be ignored and can lead to errors if nothing valid remains.
  • Missing outputs: Verify your inputs are non-empty and contain valid PDB text. Empty strings are skipped.