Coordinate Update

A coordinate update is a model step that changes point positions while preserving the intended geometric symmetry.

A translation-invariant coordinate update often uses relative vectors:

If is invariant to global rotations and translations, the coordinate update can be equivariant.

One common message-passing form is:

If is scalar and is invariant, then rotates as a vector:

and the update is rotation equivariant.

Stability

Coordinate updates are often repeated across layers, refinement steps, or sampling steps. Stability depends on step scale, neighborhood definition, normalization, and whether updates preserve physically meaningful constraints.

One way to make the step size explicit is:

where may be fixed, learned, scheduled, or controlled by a numerical solver. Large can improve speed but create clashes, drift, or invalid geometry.

Update Types

UpdateFormUse
displacementrefinement, denoising, coordinate prediction
velocity fieldflow matching, probability-flow ODEs
score fieldscore-based diffusion and denoising
force-like fieldenergy-based or physics-inspired models
frame updaterotate/translate local frameresidue frames, rigid body refinement

Constraint Boundary

Coordinate updates can optimize a loss while violating constraints:

For molecules and proteins, record which constraints are enforced or only evaluated: bond lengths, angles, chirality, steric clashes, chain connectivity, pocket constraints, atom mapping, and symmetry.

Why It Matters

  • Coordinate updates appear in structure refinement, docking, diffusion, and flow-based generation.
  • Updates should be designed so translated or rotated inputs produce translated or rotated outputs.
  • Separating scalar features from coordinate movement helps audit equivariance assumptions.

Failure Modes

  • Absolute coordinates enter the scalar message, breaking translation behavior.
  • A vector update is normalized or clipped in a way that depends on a global frame.
  • Large repeated updates create invalid geometries, atom clashes, or drift.
  • Coordinate targets are rotated during augmentation but vector/force labels are not rotated consistently.

Checks

  • Are coordinate deltas built from relative vectors or arbitrary absolute positions?
  • Does the update preserve translation and rotation behavior?
  • Are scalar features allowed to influence movement without breaking symmetry?
  • Is the update stable under repeated refinement or sampling steps?
  • Are units consistent, such as Angstrom versus nanometer?
  • Are generated structures evaluated for validity, not only coordinate loss?
  • Is the step size, solver, or number of refinement steps fixed across comparisons?
  • Are chemistry, chain, or rigid-body constraints enforced during the update?