RF Diffusion Potentials Config¶
Builds and validates the guiding potentials configuration for RF Diffusion runs. It parses a semicolon-separated list of potentials, sets global scaling and decay behavior, and configures oligomer contact rules and optional ligand-driven (substrate) contacts. Empty or omitted fields are safely normalized so downstream nodes receive a clean, structured config.

Usage¶
Use this node to specify energetic guiding terms that shape designs (e.g., radius of gyration, contact potentials, substrate interactions). Connect its output to the 'potentials_config' input of the RF Diffusion node alongside your symmetry/contigmap/denoiser settings.
Inputs¶
| Field | Required | Type | Description | Example |
|---|---|---|---|---|
| guiding_potentials | True | STRING | Semicolon-separated list of potentials. Each potential is a comma-separated set of key:value pairs starting with type:potential_type. If left empty, no guiding potentials are applied. | type:monomer_ROG,weight:1,min_dist:15;type:olig_contacts,weight_intra:1,weight_inter:0.1,r_0:8,d_0:2 |
| guide_scale | True | INT | Global scale factor applied to all guiding potentials. | 10 |
| guide_decay | True | ["constant", "linear", "quadratic", "cubic"] | Schedule describing how guiding strength decays across diffusion timesteps. | constant |
| olig_inter_all | True | BOOLEAN | If true, enables inter-chain contact potentials for all off-diagonal chain pairs. | False |
| olig_intra_all | True | BOOLEAN | If true, enables intra-chain contact potentials for all chains (diagonal pairs). | False |
| olig_custom_contact | True | STRING | Custom contact rules between chain pairs. Comma-separated pairs; '!' denotes repulsive and '&' denotes attractive interactions. | A!B,B&C |
| substrate | True | STRING | Ligand residue name present as a HETATM in the input PDB. Enables substrate-based potentials when provided. | ATP |
Outputs¶
| Field | Type | Description | Example |
|---|---|---|---|
| potentials_config | RFDIFFUSION_POTENTIALS_CONFIG | Structured configuration dict for guiding potentials to be consumed by the RF Diffusion node. | {'guiding_potentials': ['type:monomer_ROG,weight:1,min_dist:15', 'type:olig_contacts,weight_intra:1,weight_inter:0.1,r_0:8,d_0:2'], 'guide_scale': 10, 'guide_decay': 'constant', 'olig_inter_all': False, 'olig_intra_all': False, 'olig_custom_contact': 'A!B,B&C', 'substrate': 'ATP'} |
Important Notes¶
- Guiding potentials format: Use semicolons to separate potentials; within each potential, use commas to separate key:value pairs starting with type:...
- Supported potential types: monomer_ROG, binder_ROG, dimer_ROG, binder_ncontacts, interface_ncontacts, monomer_contacts, olig_contacts, substrate_contacts (each with specific arguments and defaults).
- Empty handling: Empty guiding_potentials becomes null (no potentials); empty olig_custom_contact and substrate become null.
- Substrate requirement: The substrate value must match a ligand residue name present in the input PDB (HETATM).
- Connection: Plug this node’s output into the 'potentials_config' input of the RF Diffusion node to take effect.
Troubleshooting¶
- Invalid potentials string: If parsing fails, ensure each entry follows 'type:NAME,key:value,...' and entries are separated by ';'.
- Unknown potential type: Verify the type is one of the supported types; typos will lead to rejection downstream.
- No effect from olig_custom_contact: Check formatting (e.g., 'A!B' or 'B&C') and ensure chain IDs exist in your contig layout/inputs.
- Substrate not applied: Confirm the ligand residue (e.g., ATP, HEM) is present in the input PDB as HETATM and the name matches exactly.