RF Diffusion Symmetry Config¶
Builds a validated symmetry configuration for RF Diffusion protein design. It lets you specify the symmetry type (cyclic, dihedral, or polyhedral), how structures are positioned around the symmetry center, and whether symmetry should be enforced during denoising.

Usage¶
Use this node when designing symmetric assemblies with RF Diffusion. Connect its output to the 'symmetry_config' input of the RF Diffusion node to control symmetry behavior during sampling. Typical workflow: define contigs and other configs, create a symmetry config here (e.g., c2 or d5), and feed it alongside other optional configs (contigmap/denoiser/potentials) into the RF Diffusion node.
Inputs¶
| Field | Required | Type | Description | Example |
|---|---|---|---|---|
| symmetry | True | STRING | Type of symmetry to sample. Allowed values: empty (no symmetry), cyclic (cn, e.g., c2), dihedral (dn, e.g., d5), or one of tetrahedral, octahedral, icosahedral. | c3 |
| recenter | True | BOOLEAN | If true, repositions the complex so its center aligns with the origin before applying symmetry. | true |
| radius | True | INT | Distance from the symmetry center to where symmetric subunits are placed. Must be >= 1. | 12 |
| model_only_neighbors | True | BOOLEAN | If true, model only neighboring subunits of the asymmetric unit rather than the full symmetric assembly. | false |
| symmetric_self_cond | True | BOOLEAN | If true, enforces symmetry during intermediate steps of the diffusion process (self-conditioning). | true |
Outputs¶
| Field | Type | Description | Example |
|---|---|---|---|
| symmetry_config | JSON | Validated configuration dictionary to plug into the RF Diffusion node's symmetry_config input. | {"symmetry": "c3", "recenter": true, "radius": 12, "model_only_neighbors": false, "symmetric_self_cond": true} |
Important Notes¶
- Validation of symmetry: The symmetry string must be empty, cn/dn (e.g., c2, d5), or one of tetrahedral/octahedral/icosahedral. Any other value raises an error.
- No symmetry: Leaving symmetry empty results in no explicit symmetry being enforced (it will be passed as null in the config).
- Radius constraint: radius must be an integer >= 1.
- Intended use: This node only prepares configuration. To take effect, connect its output to the RF Diffusion node.
Troubleshooting¶
- Invalid symmetry string error: Ensure the value matches cn (e.g., c2), dn (e.g., d5), or tetrahedral/octahedral/icosahedral. Remove spaces and use lowercase (e.g., "c2").
- Unexpected no symmetry applied: If you leave symmetry empty, no symmetry is enforced. Provide a valid value like "c3" or "d2".
- Radius out of range: Set radius to a positive integer (>= 1).
- No effect in results: Verify the output of this node is connected to the 'symmetry_config' input of the RF Diffusion node and that the overall task supports symmetry.