.. _auto_curves_crossplot: *CREATE A NEW CURVE USING Y FROM CURVE 1 AND THE Y FROM CURVE 2* ================================================================ Creates a new curve by cross-plotting two input curves: the Y-values of Curve 1 become the X-axis and the Y-values of Curve 2 become the Y-axis of the output curve. Optional per-curve scale factors, interpolation control, digitization, and sudden-jump handling allow fine-grained pre-processing before the cross-plot is formed. When to use ----------- Classification: **process**. Tagged: ``cross-plot``, ``crossplot``, ``curve_pair``, ``digitize``, ``failure_curve``, ``interpolation``, ``scale_factor``, ``sudden_jump``. Inputs ------ .. list-table:: :header-rows: 1 :widths: 20 20 20 20 20 20 * - Label - ID - Type - Default - Required - Description * - Curve X - curve_x - vector - — - - Curve 1 (vector): its Y-values are used as the X-axis of the output cross-plot curve; must be provided together with curve_y. * - Curve Y - curve_y - vector - — - - Curve 2 (vector): its Y-values are used as the Y-axis of the output cross-plot curve; must be provided together with curve_x. * - Curve X X-Scale Factor - curve_x_x-scale_factor - scalar - 1 - - Multiplicative scale factor applied to the X-values of Curve 1 before cross-plotting; dimensionless, default 1 (no scaling). * - Curve X Y-Scale Factor - curve_x_y-scale_factor - scalar - 1 - - Multiplicative scale factor applied to the Y-values of Curve 1 (which become the output X-axis) before cross-plotting; dimensionless, default 1 (no scaling). * - Curve Y X-Scale Factor - curve_y_x-scale_factor - scalar - 1 - - Multiplicative scale factor applied to the X-values of Curve 2 before cross-plotting; dimensionless, default 1 (no scaling). * - Curve Y Y-Scale Factor - curve_y_y-scale_factor - scalar - 1 - - Multiplicative scale factor applied to the Y-values of Curve 2 (which become the output Y-axis) before cross-plotting; dimensionless, default 1 (no scaling). * - skip_interpolation - skip_interpolation - list - no - - When set to 'yes', skips the interpolation step that synchronises the two curves onto a common abscissa before cross-plotting; default 'no' (interpolation is performed). * - digitize - digitize - list - no - - When set to 'yes', digitizes the resulting cross-plot curve to reduce the number of points; default 'no'. * - remove_sudden_jumps_in_x - remove_sudden_jumps_in_x - list - no - - When set to 'yes', detects and removes sudden monotonicity-breaking jumps in the output X-axis derived from Curve 1; default 'no'. * - slope_type - slope_type - list - averaged - - Algorithm used to characterise slope when detecting sudden jumps; accepted values are 'averaged' (default) or other supported slope-type strings. * - Slope detection constant - slope_c1 - text - 0.2 - - When slope-type is averaged, this value is the fraction of XMAX that is used to determine the average slope. If linear fit is used, this is the mminimum R2 value * - Behaviour at the detected jump - sudden_jump_handling - list - extrapolate - - Controls behaviour after a sudden jump in X is detected: 'extrapolate' (default) preserves legacy behaviour with a straight tail, 'clip' truncates Curve 1 at the jump to faithfully represent a failure event. * - Detect sudden jump on the cross-plotted curve - detect_sudden_jump - list - none - - Optional: scan the cross-plotted result curve for a sudden jump (failure event) and stash the jump location on the curve as 'jump_value'. 'auto' is the recommended user-independent option — runs both 'noise_onset' (catches spring-back / oscillation regime change) and 'sudden_drop' (peak-collapse at 80 % of y_peak) and returns the earlier trigger; the threshold input is ignored. 'noise_onset' alone catches the smooth-to-noisy regime change without firing on ramping curves. 'sudden_drop' alone is peak-and-collapse (parameter-free in spirit; 0.8 ratio is the ASTM-style convention). 'median' is the legacy per-sample dy-spike detector (flags the first sample where /dy/ exceeds the threshold multiplier times the robust median of /dy/). 'zscore' uses an MAD-based robust z-score. 'cusum' uses a two-sided cumulative-sum change-point detector. * - Jump detection threshold multiplier - jump_threshold - text - 10 - - Threshold passed to the chosen detection method. For 'median', a sample is flagged when /dy/ > threshold * median(/dy/) (default 10 — typical force/displacement failures show 100x ratios). For 'zscore', this is the number of robust sigmas (default 3-5). For 'cusum', this scales the cumulative-sum cutoff (default 3-5). * - Jump direction filter - jump_direction - list - any - - Filter which kinds of jumps count. 'any' returns the first jump in either direction; 'drop' returns only y-decreasing jumps (e.g. force collapse at fracture); 'rise' returns only y-increasing jumps (e.g. displacement spike at fracture). * - Jump value to return - jump_return - list - x - - Which coordinate of the jump point to surface as the curve's 'jump_value' attribute. 'x' is typical for displacement-at-failure; 'y' for force-at-failure. Outputs ------- .. list-table:: :header-rows: 1 :widths: 20 20 20 20 * - Label - ID - Type - Description * - curves_crossplot_output_1 - curves_crossplot_output_1 - vector - Output cross-plot curve (vector) whose X-values are the scaled Y-values of Curve 1 and whose Y-values are the scaled Y-values of Curve 2; returns null if either input curve is missing. Disciplines ----------- - data.curve.pair - 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_crossplot `_ .. raw:: html

Auto-generated from transformation schema. Worker id: curves_crossplot. Schema hash: 8d9d50425350. Hand-curated docs in workerexamples/ override this page when present.