FIT THE CURVES WITH POLYNOMIALS

Fits one or more input curves with a polynomial of selectable order (1–5) using least-squares regression, optionally restricting the fit to a user-defined x-range and resampling the result to a specified number of points. Use this worker to smooth noisy curves, extract trend lines, or prepare regularised representations of test or simulation data for downstream processing.

When to use

Classification: process.

Tagged: curve_fit, digitize, force_origin, knot_adjust, least_squares, optimize, polynomial, regression.

Inputs

Label ID Type Default Required Description
Curves curves vector One or more input curves (x/y vector pairs) to be fitted; accepts multiple curve objects passed as a vector collection.
Order order list 1 Polynomial degree for the fit — integer 1 (linear) through 5 (quintic); defaults to 1 (linear).
DIG POINTS digitize list -1   Number of evenly-spaced points used to re-digitise the fitted curve for output; set to -1 (default) to keep the original x-spacing of the input curve.
XMIN - Optional xmi_n-optional scalar 0   Lower bound of the x-range over which the polynomial is fitted and evaluated; leave at 0 (default) to use the curve’s own minimum x value.
XMAX - Optional xma_x-optional scalar 0   Upper bound of the x-range over which the polynomial is fitted and evaluated; leave at 0 (default) to use the curve’s own maximum x value.
Step step-optional scalar 0.001   X-axis step size used when resampling the output curve; default is 0.001 — only active when digitize is not -1.
Remove Intercept remove_intercept list no   Line is rotated about the mean point until it passes through the origin. For segmented linear, the window_size is used as number of knots whose positions are to be optimized
Window Size window_size scalar   Percentage of points to use over which the regression is built. By default the entire curve is used as the window size
Type Of Fit optimize list no   Type of fit
Smallest Segment To Consider For Fit increment_ratio text 0.01   Ratio of points in the curve to use for as increments for the fit
R2 Cut Off For Fit Optimization r2_cutoff text 0.995   When the R2 of a fit is below this to the previous fit, the fit considered goog
Force Zero Origin force_zero_origin list no   This option fores the fit to pass through 0,0 point
Limit to 100 points while searching for Knots limit_to_100_points list no   By default all points are used while searching. This option may help reduce execution time
Adjust Knots adjust_knots list no   In some instances, the auto-knots might find knots points that could create noise in the fit. This option helps to re-adjust those knots to minimize noise
Number of Knot Adjustments num_adjusts text 3   When <b> Adjust Knots </b> is turned on, number of adjustments is determined by this number

Outputs

Label ID Type Description
curves_fit_polynomial_output_1 curves_fit_polynomial_output_1 vector Collection of polynomial-fitted curves (one per input curve), each containing the evaluated polynomial as an x/y vector at the requested resolution and x-range.

Disciplines

  • ai_ml.supervised.regression
  • data.curve.transform

Runnable example

A runnable example is registered for this worker. Open the example workflow on the d3VIEW canvas: /api/workflow/example?id=curves_fit_polynomial


Auto-generated from transformation schema. Worker id: curves_fit_polynomial. Schema hash: 6cedb2847032. Hand-curated docs in workerexamples/ override this page when present.