Implementations
- The compute server itself
- The Python sidecar
- Downhill Simplex (native)
- Levenberg-Marquardt (Python/lmfit)
- Downhill Simplex, curve by curve (native)
- Downhill Simplex, restarted (native)
The compute server itself
This software's choice — A decision made by this software rather than by the field's sources; the explanation says why it was made.
Code built into this program's compute server, which needs nothing installed beside it.
A provider is where an implementation runs. This program defines its abstractions - the fitting engine, the peak search, the background arithmetic - and lets the user choose which implementation fills each where a build offers more than one (the fitting engine, under Fit > Minimizer); every one has a native implementation, the default, and a provider only adds alternatives beside it.
The native provider is the compute server itself. It is always there, which is why every default runs on it.
Limitations
- Whether a provider is there is asked when a choice is used, not watched.
See also: The compute server itself
The Python sidecar
This software's choice — A decision made by this software rather than by the field's sources; the explanation says why it was made.
A Python process the compute server starts on first use and owns. The installers ship it with its libraries; a copy without it loses the alternatives it offers, not a function.
A provider is where an implementation runs. This program defines its abstractions - the fitting engine, the peak search, the background arithmetic - and lets the user choose which implementation fills each where a build offers more than one (the fitting engine, under Fit > Minimizer); every one has a native implementation, the default, and a provider only adds alternatives beside it.
When this provider is not there at all - not installed, or not set up - whatever was chosen from it is replaced by the default for as long as it is missing, and the reply that would have used it says so. The choice itself is kept.
When it is there but fails - it does not start, or stops part way through - the operation that needed it is refused with the reason, rather than quietly done by another implementation: the user chose this one, and its fault is theirs to see and fix.
Limitations
- Whether a provider is there is asked when a choice is used, not watched.
See also: The compute server itself
Downhill Simplex (native)
This software's choice — A decision made by this software rather than by the field's sources; the explanation says why it was made.
The original algorithm. Needs no Python and fits any curve type, including those with no formula.
One of the implementations of "minimizer" this build offers. It runs on the compute server itself.
It is the default: what runs until another is chosen, and whenever the chosen one cannot run here.
See also: The compute server itself
Levenberg-Marquardt (Python/lmfit)
This software's choice — A decision made by this software rather than by the field's sources; the explanation says why it was made.
Trust-region least squares with uncertainties. Needs the Python sidecar, and a curve type that has a formula.
One of the implementations of "minimizer" this build offers. It runs on the Python sidecar.
While the Python sidecar is not available, "Downhill Simplex (native)" runs instead, and the answer says why; the choice is kept.
Limitations
- Needs the Python sidecar.
See also: The Python sidecar
Downhill Simplex, curve by curve (native)
This software's choice — A decision made by this software rather than by the field's sources; the explanation says why it was made.
The same simplex over one curve's parameters at a time, widest curve first, repeated until a pass gains nothing. Faster on models of many curves that each shape their own stretch; curves that trade off against each other may settle less well than under the simplex over everything.
One of the implementations of "minimizer" this build offers. It runs on the compute server itself.
See also: The compute server itself
Downhill Simplex, restarted (native)
This software's choice — A decision made by this software rather than by the field's sources; the explanation says why it was made.
The same simplex over every parameter, started again from its own best, stepping each parameter forward or backward at random, until a run improves the loss by less than one percent. Never worse than the simplex, which is its first run; slower, and often a good deal better.
One of the implementations of "minimizer" this build offers. It runs on the compute server itself.
See also: The compute server itself