The Calibrator Tool fits a numerical hysteretic model to a measured cyclic force–deformation response of a structural member, connection or component. It runs the model through the same deformation history as the test and adjusts the model parameters until the simulated response matches the measured one as closely as possible. Everything runs in your browser; your data is not uploaded.
Hysteretic models
Five uniaxial materials of OpenSees are available. They are JavaScript ports of the OpenSees C++ state-determination code, so a parameter set calibrated here gives the same response in OpenSees when the material is driven through the same deformation steps.
- IMKBilin: modified Ibarra–Medina–Krawinkler model with bilinear hysteretic response.
- IMKPeakOriented: modified IMK model with peak-oriented hysteretic response.
- IMKPinching: modified IMK model with pinched hysteretic response.
- Hysteretic: the OpenSees
Hysteretic material, with a trilinear backbone in each direction, pinching of force and deformation, damage due to ductility and energy, and unloading stiffness that degrades with ductility.
- Pinching4: the OpenSees
Pinching4 material (Lowes and Altoontash), with a four-point backbone in each direction, a pinched unload–reload path, and degradation of unloading stiffness, reloading stiffness and strength driven by deformation and dissipated energy (or number of cycles).
The monotonic backbone parameters are the elastic stiffness Ke, the effective yield force Fy, the capping-to-yield force ratio Fc/Fy, the pre-capping plastic deformation δp, the post-capping deformation δpc (from the capping point to zero force), the residual-to-yield force ratio Fr/Fy and the ultimate deformation δu, each in the + and − loading directions. The cyclic response parameters are the deterioration parameters λ (reference energy = λFy), their rate exponents c, the directional deterioration rates D+ and D−, and, for IMKPinching, the pinching parameters κF and κD. Units are those of your data: λ, δp, δpc and δu are in deformation units, Ke in force per deformation unit.
For the Hysteretic material, the backbone is defined by three force–deformation points (F1, δ1), (F2, δ2) and (F3, δ3) in each direction, with 0 < δ1 < δ2 < δ3; beyond the third point the backbone continues on the last slope if it rises, or stays at F3 if it descends. Its cyclic parameters are pinchX and pinchY (pinching of deformation and force on reloading), damfc1 and damfc2 (damage due to ductility and to energy) and β (unloading stiffness degradation). The initial backbone points are the equal-area yield point, the envelope peak and the envelope end. In the OpenSees command the − values are entered as negative numbers, as the material expects.
For Pinching4, the backbone has four points (F1, δ1) to (F4, δ4) in each direction, with 0 < δ1 < δ2 < δ3 < δ4. rDisp, rForce and uForce shape the pinched unload–reload path in each direction. The damage indices for unloading stiffness (γK), reloading stiffness (γD) and strength (γF) each combine a deformation term (coefficient γ1, exponent γ3) and an energy or cycle term (coefficient γ2, exponent γ4), capped at γLimit; γE sets the energy capacity as a multiple of the monotonic energy. By default the exponents are locked and the damage type is energy; the damage type is chosen in the table and is not calibrated. The initial backbone points follow the envelope: the equal-area yield point, intermediate envelope points and the peak (and the envelope end when the envelope drops beyond the peak); the damage parameters start from the OpenSees example values.
How the calibration works
- Initial estimates. The cyclic envelope is extracted with the 1st-cycle envelope method of the Cyclic Response Envelope Extractor (force peaks grouped by deformation amplitude), and the initial stiffness is fitted to the first loading excursion in the same way. Each envelope branch is then idealised as in The Curve Fit App: the hardening line from the yield point to the peak balances the area under the envelope (equal-area rule), and a post-capping slope is fitted to the envelope beyond the peak when it drops. The λ parameters start at the total dissipated energy of the test divided by Fy. A cyclic envelope already includes cyclic deterioration, so it lies inside the monotonic backbone; the estimates are only a starting point and the calibration is free to move them.
- Objective. The tool minimises the area between the measured and simulated curves, accumulated over the whole loading path: A = Σ∫|Ftest − Fmodel| |dδ|. Because the two responses are compared step by step at the same deformation, overlapping and crossing loops are handled correctly. The area error is A divided by the area under |Ftest| along the same path.
- Search. A differential-evolution search explores the parameter bounds, followed by a Nelder–Mead refinement. With Staged calibration, the backbone parameters are calibrated first with the cyclic ones fixed, then the cyclic parameters, and finally all free parameters together. Positive scale parameters are searched on a logarithmic scale. The search runs in the background, so the page stays responsive; Stop keeps the best parameters found so far.
Constraining parameters
Tick the lock box next to a value to keep it fixed during calibration; the other parameters are calibrated within the lower and upper bounds shown. By default δu, the rate exponents c and D are locked, since they are often taken as fixed values. For the IMK materials, the capping (peak) point of the monotonic backbone, (Fy/Ke + δp, Fc), is kept at or beyond the peak point of the measured response in each direction, in both deformation and force, since the cyclic response cannot exceed the monotonic backbone. With Symmetric backbone ticked, the − values follow the + values. You can also edit any value by hand: the simulated response updates immediately.
Tips
- Several parameters trade off against each other (for example δp and λS), so a good fit is not necessarily unique. Check the calibrated values for physical sense and lock the ones you know.
- The energy ratio compares the total dissipated energy of the model with that of the test. Values near 1 together with a small area error indicate a good calibration.
- If the material's internal state breaks down for a parameter set (the force becomes undefined, which would stop an OpenSees analysis), the step is reported and the force is taken as zero from that point.
- Very long records are thinned to about 6000 points for the calibration, keeping every deformation reversal; the plots and exported curves use the full record.
Output
The calibrated parameters are given as a ready-to-use OpenSees uniaxialMaterial command in Tcl or Python. For the IMK materials, negative-direction values are entered as positive magnitudes; for Hysteretic and Pinching4 they are negative. In both cases the command follows what the material expects. The measured and simulated curves can be saved as CSV, and the parameter set can be saved and loaded as a JSON file.
Disclaimer
This app is provided for research and educational purposes, as is, without warranty of accuracy, completeness, or fitness for a particular purpose. Calibrated parameters depend on the input data, bounds, constraints and search settings. Users must independently check the results and exercise appropriate engineering judgment before using them in analysis or design.
Ahmed Elkady and the University of Southampton accept no liability for loss or damage arising from use of this app or its results.