Batch PDB¶
Combines multiple PDB inputs into a single batch. Each input can be a single PDB or an existing batch (dictionary) of PDBs. The node merges all inputs into one dictionary keyed by PDB IDs and enforces that all IDs are unique.

Usage¶
Use this node to aggregate several protein structures before downstream steps that accept batched PDBs (for example, analysis, scoring, or visualization pipelines). Start by connecting pdb_1, then additional inputs (pdb_2, pdb_3, …) become available sequentially. It is suitable for merging outputs from multiple sources or for grouping structures for batch processing.
Inputs¶
| Field | Required | Type | Description | Example | 
|---|---|---|---|---|
| pdb_1 | True | PDB | First PDB to add to the batch. Can be either a single PDB dict or a batch dict. Keys are PDB IDs and values are PDB content strings. | {"protA": "ATOM ... END"} | 
Outputs¶
| Field | Type | Description | Example | 
|---|---|---|---|
| structure.pdb | PDB | Merged batch of PDBs as a dictionary {pdb_id: pdb_content}. Guaranteed to have unique PDB IDs. | {"protA": "ATOM ... END", "protB": "ATOM ... END"} | 
Important Notes¶
- IDs must be unique across all merged inputs. Duplicate IDs will cause the node to raise an error.
- Each input accepts either a single PDB (e.g., {"id": "pdb_string"}) or a batch (multiple key-value pairs). The node flattens and merges them.
- Inputs beyond pdb_1 are hidden until the previous input is connected, guiding you to add PDBs sequentially.
- Output preserves only one flat dictionary; nested batches are merged into a single level keyed by PDB IDs.
Troubleshooting¶
- Duplicate PDB IDs error: Ensure that all inputs use distinct PDB IDs. If two inputs contain the same key, rename one before merging.
- Cannot access pdb_2 or later: Connect pdb_1 first; additional inputs become available only after the previous one is set.
- Unexpected content type: Inputs must be PDB-typed dictionaries mapping IDs to PDB strings. Verify upstream nodes provide the correct format.
Example Pipelines¶
