PredefinedLogarithm
Compress a sigma schedule into log space, e/10/2
- sigmas
- SIGMAS
PredefinedLogarithm applies a logarithm to every sigma value in a schedule, with the base chosen from a dropdown - e, 10, or 2. A logarithm is a compressor: it takes values that span orders of magnitude and squeezes them into a range where the differences between steps are actually visible and editable. That's the whole point of the node - not to produce a schedule, but to put an existing one into a space where you can see and work with its shape.
This is the classic companion to PredefinedExponent. Apply a log to a schedule, tweak the shape in the compressed space, apply the matching exponent to get back to real sigma values, and you've edited the curve in a way that would've been impossible on the raw numbers. The README's own description frames the pair exactly that way: logarithm for scaling schedules into a workable space, exponent for reverting.
How it works
For each sigma it computes log_base(sigma) - natural log for e, log10 for 10, log2 for 2. Since logarithms are only defined for positive numbers, this node quietly refuses to do anything useful with a schedule that contains zeros or negatives; the math just breaks down. And because a log is a monotonic compressor, the relative order of your schedule is preserved - bumps stay bumps, just squished closer together.
The inputs that matter
sigmas- the schedule to compress into log space.base- dropdown:e,10, or2. Default e.- Output:
SIGMAS- the log-transformed array.
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
The zero problem is the one that'll actually bite. Most schedules have a trailing 0 - the final sigma in a full denoise run is literally "no noise left" - and log(0) is undefined. A pack-generated schedule with sigma_min at 0 will throw or produce garbage through this node. If you hit that, set the schedule's minimum above zero, or accept that the last value won't survive the transform.
Also keep the round-trip in mind: log-then-exponent only returns your original values if you use the same base on both sides. Log with base 10 and revert with base e and you've silently remapped the whole curve. It's an easy mismatch to make and a fun one to debug.
Inputs (2)
| Name | Type | Default | Description |
|---|---|---|---|
| sigmas | SIGMAS | — | |
| base | COMBO | 3 options: e, 10, 2 |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| SIGMAS | SIGMAS | — |