ComfyUI Node

LogNormal Scheduler

The bell curve, skewed the way noise actually behaves

By mfg637·Created 2 years ago·Updated about a year ago· 11
LogNormal Scheduler
    • SIGMAS
    steps20
    sigma_max1.00
    sigma_min0.00
    mean0.00
    standard_deviation1.00
    a0.00
    b1.00

    The LogNormal Scheduler is the sibling of GaussianScheduler, and it exists because noise doesn't behave like a plain symmetric bell curve. A log-normal distribution is a bell that's been skewed - a long tail stretching off to one side, the mass of it concentrated at the other. Applied to a sigma schedule, that gives you a curve where most of the interesting denoising happens in a concentrated region and the rest of the run trails off gently. It's the sort of shape people hand-build when they want a middle-heavy schedule with soft landings on both ends.

    How it works

    Like its Gaussian sibling, it evaluates a probability density function across an x-window defined by a and b, then rescales the curve to sit exactly between sigma_min and sigma_max. The difference is the distribution: instead of a symmetric bump, you get the log-normal's distinctive asymmetry. mean shifts where the peak of that skewed bump lands, and standard_deviation controls how spread out (and how lopsided) it is. Small stdev gives a sharp, heavily-peaked curve with most steps doing almost nothing; larger stdev spreads the effort into a gentler dome. Either way the shape is asymmetric in a way a plain Gaussian isn't, and that asymmetry is the point.

    The inputs that matter

    • steps (20) - number of sigma values.
    • sigma_max (1.0) / sigma_min (0.0) - endpoints. 0–1 by default.
    • mean (0.0) - where the skewed peak sits.
    • standard_deviation (1.0) - spread and lopsidedness. Your main shape dial.
    • a (0.0) / b (1.0) - the x-window. Swapped automatically if a > b; an error if they're equal.

    Output is a SIGMAS 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

    By now you know the drill: default range is 0–1, which is ideal for a guider's CFG curve and wrong for a raw sampler schedule - run it through ScaleToRange first if it's going to a KSampler.

    The subtler thing: a log-normal's long tail means some of your sigma values sit very close together, which is fine for a CFG curve (denser points = smoother interpolation) but can waste sampler steps if you feed it as a real schedule on a model that doesn't want concentration. And the flow-matching caveat from GaussianScheduler applies double here - heavily skewed schedules are exactly the kind of aggressive reshaping that flow-matching models dislike. SD 1.5/SDXL, or a guider curve, is where this node belongs.

    Categorysampling/custom_sampling/CFG-schedulers

    Inputs (7)

    NameTypeDefaultDescription
    stepsINT201–10000
    sigma_maxFLOAT1.000–5000
    sigma_minFLOAT0.000–5000
    meanFLOAT0.00-5000–5000
    standard_deviationFLOAT1.000–5000
    aFLOAT0.00-5000–5000
    bFLOAT1.00-5000–5000

    Outputs (1)

    NameTypeDescription
    SIGMASSIGMAS