ComfyUI Node

InvertSigmas

Mirror your schedule so the low end becomes the high end

By mfg637·Created 2 years ago·Updated about a year ago· 11
InvertSigmas
  • sigmas
  • SIGMAS

InvertSigmas flips a sigma schedule inside out. Every value is mirrored around the midpoint of the schedule's range: the biggest sigma becomes the smallest, the smallest becomes the biggest, and everything in between maps symmetrically. A schedule that front-loads its denoising comes out back-loading it; a warmup curve becomes a cooldown curve. Same length, same endpoints, opposite orientation.

That sounds like party-trick math, and for most workflows it is. But there's one genuinely common use: turning a "shaped" schedule you like into its mirror image so you can A/B test the same curve in both directions without rebuilding it. If your first attempt with a peak-shaped curve felt like the interesting part landed at the wrong end of the run, InvertSigmas is the one-node fix.

How it works

It finds the max and min of your input sigmas, then applies the reflection inverted = sigma_max - sigma + sigma_min to every element. Note it works on the range of your actual input - so a schedule that lives between 0.1 and 8 gets mirrored around 4.05, not around some global standard. The mirror keeps the endpoints in place: min stays min... wait, no. Let me be precise: the smallest value maps to sigma_max - sigma_min + sigma_min = sigma_max, and the largest maps to sigma_min. The endpoints swap. That's the inversion.

The inputs and output

  • sigmas - the schedule to flip.
  • Output: SIGMAS - the mirrored array, same length.

Install

Part of ComfyUI-ScheduledGuider-Ext. ComfyUI Manager - search ComfyUI-ScheduledGuider-Ext - or:

cd ComfyUI/custom_nodes
git clone https://github.com/mfg637/ComfyUI-ScheduledGuider-Ext

Restart ComfyUI. No models, no extra dependencies.

Common issues

One thing to keep straight: this flips the shape of the schedule, it does not reverse the order of the values. A descending list stays descending, because each value is remapped to its mirror - the curve's bumps and dips swap places, but the overall high-to-low flow samplers expect is preserved. If you actually want to reverse the order of the list (last step first), that's a different operation and this node won't do it for you.

Beyond that, the input/output contract is trivial - one SIGMAS in, one out - so the failure modes are basically limited to feeding it values you didn't mean to mirror, which the node will happily do. When in doubt, stick a preview or debug node on the output and look at the numbers.

Categorysampling/custom_sampling/sigmas

Inputs (1)

NameTypeDefaultDescription
sigmasSIGMAS

Outputs (1)

NameTypeDescription
SIGMASSIGMAS