PRONY SERIES GENERATOR

Fits a Prony series representation to viscoelastic relaxation data, accepting either engineering stress–strain curves or relaxation-function-vs-time curves as input. The worker optimises the Prony term coefficients (Gi, βi) and outputs the fitted parameters together with a ready-to-use LS-DYNA MAT_181 keyword block.

When to use

Tagged: MAT_181, curve_fitting, material_calibration, prony_series, relaxation, simulation, viscoelastic.

Inputs

Label ID Type Default Required Description
Curve to Fit input_curves vector One or more curves to fit; interpretation depends on input_type — either engineering stress–strain pairs (Pa or MPa vs dimensionless strain) or normalised relaxation-function-vs-time pairs (dimensionless vs seconds).
Input Type input_type select eng_stress_vs_strain Specifies the physical meaning of input_curves: eng_stress_vs_strain for engineering stress–strain data (default) or relaxation_function for a pre-computed relaxation modulus vs time curve.
Source of Viscosity viscosity_from select tension Selects which loading direction is used to derive the viscosity (damping) parameters: tension (default) or compression; choose compression when only compressive test data are available.
Number of Prony Terms num_prony_terms select Number of Prony exponential terms (1–12) used in the series expansion; higher values improve fit accuracy but increase solver cost — start with 3–5 and increase if residuals are large.
G Max g_sum scalar 0.0 Maximum shear modulus G_max (same unit as input stress data); set to 0.0 (default) to let the worker auto-detect it as the peak initial modulus across the input curves.
Beta Min beta_min scalar 0.01 Lower bound for the relaxation-rate parameters βi (1/s); constrains the optimiser search space — default 0.01; reduce for very slow relaxation processes.
Beta Max beta_max scalar 1.0 Upper bound for the relaxation-rate parameters βi (1/s); constrains the optimiser search space — default 1.0; increase for fast relaxation processes.
Number of Timesteps num_timesteps scalar 1000 Number of internal time steps used when reconstructing and verifying the fitted relaxation curve; default 1000 — increase for smoother reference curves or higher-frequency data.
Fit Verification Method verification_method select analytical   Method used to verify the Prony fit against the input data; currently only analytical is supported (default), which evaluates the closed-form Prony sum.
Optimize Method opt_method select pareto   Optimisation strategy for selecting the best Prony coefficients: pareto (default) applies a Pareto-optimal multi-objective search balancing fit accuracy and term count.
Sampling Type sampling_type select lhs    
Number of Samples num_sampling scalar 100   Number of samples to use to find the Optimum
Initial Length initial_length scalar 1.0   Required when the method = Analytical
Strain-rate or velocity strain_rate scalar 1.0   Strain-rate or velocity. Units must be consistent with the input curves.
Type of loading input strain_rate_input select strain_rate    
Quasi-Static Strain Rate quasi_static_strain_rate scalar 0   Strain rate at which the quasi-static input curve was acquired. After the optimal Prony terms are picked the worker runs an extra forward simulation at this rate and emits the predicted quasi-static engineering stress vs strain curve so it can be visually compared with the input quasi-static measurement. Leave at 0 to default to the configured beta_min value (slowest decay constant — a reasonable proxy for a quasi-static rate).
Quasi-Static Stress vs Strain quasi_static_stress_strain vector   Quasi-static Stress vs Strain. Required for method=Analytical
User Experiments experiments dataset   If provided, these will be used for evalating the analytical method
Error Type error_type select raw   Error type by default is RAW (yanalytical-yactual).
Fit Type fit_type select max   Fit type to fit parameters for single max curve or for all curves
Use log scale for BETA DOE values use_log_scale select no  
Split input ranges for DOE split_input_ranges select no   When yes, the DOE sampler subdivides variable ranges into buckets before sampling, producing better coverage at range boundaries.
Split step percentage step_percentage scalar 20   Bucket step size as a percentage of each variable’s range. Only used when split is enabled.
Apply split to all variables apply_split_to_all_variables select no   When yes, splitting is applied across all variables simultaneously. When no, only one variable is split at a time.
Include analytical curve in experiments dataset include_analytical_curve select yes   When yes, each row in the experiments dataset includes the per-experiment analytical curve. When no, the analytical curve columns are stripped (the optimal fit curve is still emitted separately).
Include Overstress curve in experiments dataset include_overstress_curve select yes   When yes, each row in the experiments dataset includes the per-experiment overstress curve. When no, the overstress curve columns are stripped (the optimal fit curve is still emitted separately).
Allow negative G values allow_negative_g select yes   When yes, Gmin is sete to -1.0 * Gmax
Number of Curve Portions (incremental fit) num_portions select 1   When greater than 1, the fitter runs in incremental mode: the reference curve is split into N equal portions along x, and at each portion exactly one new Prony term is fitted while the terms locked in by previous portions are held fixed. The total number of Prony terms equals num_portions. Capped at 12 (the same limit as num_prony_terms). Default 1 keeps the existing single-shot global fit using num_prony_terms.

Outputs

Label ID Type Description
Optimal Prony Terms optimal_prony_terms dataset Dataset containing the optimised Prony series coefficients (Gi and βi for each term) that minimise the fitting residual; primary result for downstream material-card authoring.
Experiments experiments dataset Dataset summarising each candidate Prony-term configuration evaluated during optimisation, including per-experiment residual and parameter values; useful for auditing the optimisation sweep.
Reference Curve ref_curve vector Reference relaxation-function curve (dimensionless G/G_max vs time in seconds) reconstructed from the input data and used as the optimisation target.
Shear Modulus Max gmax scalar Resolved maximum shear modulus G_max (scalar, same units as input stress) — either the user-supplied value or the auto-detected peak initial modulus.
Optimal Fit optimal_curve vector Fitted Prony-series relaxation curve (dimensionless G/G_max vs time) evaluated at the optimal coefficients; compare visually against ref_curve to assess fit quality.
Predictions (Dynamic + Quasi-Static) comparison_curves vector Predicted engineering stress vs strain curves at both the dynamic strain rate and the quasi-static strain rate, computed from the optimal Prony terms. Drop alongside the input curves on a slide to visually compare the fit against both measurements at once. Empty for relaxation_function input (no quasi-static stress-strain context).
Keyword for MAT_181 with Prony Terms keyword textarea Ready-to-paste LS-DYNA MAT_181 keyword block containing the optimised Prony series parameters; copy directly into a simulation deck or pipe to a deck-authoring worker.
ML Predictions ml_predictions dataset Dataset of ML-model predictions produced during the surrogate-assisted optimisation phase; can be used to inspect model accuracy or diagnose extrapolation regions.

Disciplines

  • ai_ml.supervised.regression
  • cae.preprocessing.deck_authoring
  • design_exploration.optimization
  • engineering.material.calibration
  • engineering.material.characterization

Runnable example

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


Auto-generated from platform schema. Worker id: prony_series_generator. Schema hash: e24c508ce7fc. Hand-curated docs in workerexamples/ override this page when present.