FIT POST-NECKING EXTRAPOLATION¶
Fits multiple analytical post-necking extrapolation laws (Swift, Voce, Hocket-Sherby, Mixed Swift+Voce, Stoughton-Yoon, Ludwik, Voce+Linear, Mixed Hardening) to a hardening curve by DOE-sampling each method’s parameter space and scoring candidates via squared-error curve matching. Optionally refines the search with a dense DOE pass or an ML surrogate. Returns the best-fitting method, its parameters, the fitted curve, and a per-method summary table.
When to use¶
Tagged: DEFINE_CURVE_STRESS, LS-DYNA, curve-fitting, doe, extrapolation, hardening, hocket-sherby, lhs.
Inputs¶
| Label | ID | Type | Default | Required | Description |
|---|---|---|---|---|---|
| Hardening Curve | eff_curve | vector | — | ✓ | Hardening curve as plastic strain (X) vs. effective stress (Y); must extend past the necking point so the post-necking region is available for fitting — this is the only required input. |
| Modulus | modulus | scalar | 210000 | Elastic (Young’s) modulus in the same stress units as eff_curve (default 210000 MPa); used to recover engineering stress-strain for statistics and to compute the effective necking strain. | |
| Yield Offset | yield_offset | scalar | 0.002 | Offset strain for 0.2%-style yield detection (default 0.002); rarely needs changing unless a non-standard offset convention is required. | |
| Necking Strain | necking_strain | scalar | — | Effective plastic strain at the onset of necking; if left blank the value is auto-detected from the engineering stress-strain statistics via eff_necking_strain. | |
| Methods | methods | select | swift,voce,hocket_sherby,mixed,stoughton_yoon,ludwik,voce_linear,mixed_hardening | Subset of analytical extrapolation forms to evaluate; defaults to all available methods — deselect methods to speed up the search or to constrain results to physically appropriate laws for the material. | |
| Sampling Type | sampling_type | select | lhs | DOE strategy used to explore each method’s parameter space (default LHS); LHS and Space-Filling give good coverage with fewer points, Full-Factorial can be expensive for high-dimensional parameter sets. | |
| Points Per Variable | num_points_per_variable | scalar | 5 | Number of DOE levels per parameter variable (default 5); higher values increase coverage but multiply evaluation cost — used together with num_experiments to control total sample count. | |
| Number of Experiments | num_experiments | scalar | 25 | Total number of DOE candidate samples to evaluate per method (default 25); increase for finer coverage at the cost of runtime. | |
| Match Type | match_type | select | squared | Error metric used to score curve candidates against the reference post-necking region (default ‘squared’); ‘squared’ corresponds to sum-of-squared-errors between fitted and reference stress values. | |
| Digitize Points | num_dig_points | scalar | 50 | Number of discrete strain points used when reconstructing each candidate’s extrapolated curve for scoring (default 50); higher values give smoother curves at marginal extra cost. | |
| Use ML Meta-Model | use_ml | select | no | Refinement strategy after the initial DOE pass: ‘no’ (default) uses only DOE, ‘dense_doe’ augments with a larger LHS grid, ‘ml_surrogate’ trains a regression surrogate and iteratively refines the search. | |
| ML Dense Samples | ml_dense_samples | scalar | 200 | Number of additional LHS samples added when use_ml=’dense_doe’ (default 200); ignored when use_ml=’no’ or ‘ml_surrogate’. | |
| ML Regression Types | ml_regression_types | select | gpr_regression,rfr_regression,gboostr_regression | Comma-separated list of surrogate regression algorithms to try when use_ml=’ml_surrogate’ (default: GPR, Random Forest, Gradient Boosting); ignored unless use_ml=’ml_surrogate’. | |
| ML Refinement Iterations | ml_iterations | scalar | 1 | Number of surrogate-guided refinement iterations when use_ml=’ml_surrogate’ (default 1); more iterations can improve accuracy but increase runtime. | |
| Last Strain | last_strain | scalar | 1.0 | Maximum effective plastic strain to which the fitted extrapolation is extended when generating the output best_curve (default 1.0); set to match the strain range required by the downstream material card. | |
| Include Per-Sample Curves | include_curves_in_output | select | no | Set to ‘yes’ to embed the full extrapolated hardening curve for every DOE sample in the all_samples output dataset; leave as ‘no’ (default) to keep the dataset compact. | |
| Include Necking Treatment Output | include_necking_treatment_output | select | no | Set to ‘yes’ to emit the necking_treatment output dataset in the array format accepted by curve_truetoeffectivestress; leave as ‘no’ (default) if that downstream worker is not used. | |
| Variable Range Overrides | variable_ranges | dataset | (complex) | Optional dataset with columns {name, min_sf, max_sf} that apply multiplicative scale factors to the built-in parameter bounds for each DOE variable; leave empty to use the default bounds derived from the input curve. |
Outputs¶
| Label | ID | Type | Description |
|---|---|---|---|
| Best Method | best_method | text | |
| Best Parameters | best_parameters | keyvalue | |
| Best Error | best_error | scalar | |
| Best Fitted Curve | best_curve | vector | |
| Per-Method Best | all_methods_summary | dataset | |
| All DOE Samples | all_samples | dataset | One row per evaluated candidate. Columns: method (extrapolation type), sample_id, error, last_y, plus each method’s parameters. When include_curves_in_output=yes also includes a hardening_curve column with the extrapolated curve. |
| Effective Necking Strain | effective_necking_strain | scalar | |
| Necking Treatment (for curve_truetoeffectivestress) | necking_treatment | dataset | Only produced when include_necking_treatment_output=yes. Dataset of best-fit rows (expression + parameter columns) in the exact array format that curve_truetoeffectivestress’s necking_treatment input accepts. Wire directly into that input to re-apply the fitted analytical form. |
Disciplines¶
- ai_ml.surrogate
- data.curve.pair
- data.curve.transform
- design_exploration.doe
- engineering.material.calibration
- engineering.material.characterization
- engineering.material.failure
Runnable example¶
A runnable example is registered for this worker. Open the example workflow on the d3VIEW canvas: /api/workflow/example?id=curve_post_necking_fit
Auto-generated from platform schema. Worker id: curve_post_necking_fit. Schema hash: c25a3209e355. Hand-curated docs in workerexamples/ override this page when present.