Skip to content

    Under active development. New calculators and features ship every week. Everything currently runs free while the site matures — pricing pages are a preview, checkout is not open yet.

    Engineering / Nonlinear Elastoplastic Damage Core

    Elastoplastic Damage Calculator — J2 Plasticity & Damage

    Simulate 1D J2 plasticity with isotropic hardening and scalar damage. See the stress-strain curve, yield onset, damage growth and the von Mises yield surface.

    ToolCalculatorExecutionIn browserCategoryEngineering
    ZorvLabs Materials LabSmall-strain damage + J2 plasticity

    Nonlinear elastoplastic damage simulator

    Peak stress
    319.99 MPa
    at ε = 0.00153
    Max damage
    50.87%
    Scalar isotropic damage
    Final D
    50.87%
    End of load path
    Final εp
    0.002181
    Plastic strain
    Final α
    0.115094
    Equivalent plastic strain
    Dissipated energy
    31.03
    |σ Δεp| accumulation
    Stress–Strain Response
    Nominal stress, effective stress, and current yield stress
    -0.030-0.0150.0000.0150.030-500-2500250500σy0
    • Nominal σ
    • Effective σ̄
    • Yield σy
    Damage & Internal Variables
    Scalar damage evolution from the standard exponential law
    -0.030-0.0150.0000.0150.030015304560
    • Damage D (%)
    • |Plastic strain| (%)
    Tangent Modulus & Energy
    Incremental response diagnostics
    -0.030-0.0150.0000.0150.030-22.500 T-15.000 T-7.500 T07.500 T
    • Tangent modulus
    • Cumulative plastic work
    Equations Used
    The standard equations this tool solves
    ε = εᵉ + εᵖ — additive small-strain decomposition (GetFEM / J2 theory).
    σ = (1 − D) E : (ε − εᵖ) — scalar-damage nominal stress (ZSoil CPDM, Lemaitre damage mechanics).
    f = σ̄_eq − (σ_y0 + H α) ≤ 0 — J2 / von Mises yield in effective stress space.
    dεᵖ = dγ · (3/2) s / ||s|| — associated J2 flow rule (CompassIS / Purdue notes).
    D_t = 1 − exp(−d_t κ_t), D_c = 1 − exp(−d_c κ_c) — exponential scalar damage evolution (ZSoil CPDM).
    D = 1 − (1 − D_c)(1 − s D_t) — combined isotropic damage parameter (ZSoil CPDM).
    3D Principal-Stress Model
    Exact von Mises yield cylinder in principal-stress space + loading path
    Hydrostatic axis- hydrostaticDeviatoric radius3D J2 / von Mises yield cylinderσ̄eq = σy0 + H α | nominal path scaled by (1 − D)σ̄σ
    3D Model Notes
    Exact J2 geometry: the von Mises surface is a cylinder in principal-stress space because the yield function is independent of hydrostatic pressure.
    Effective stress: the damage law scales the nominal stress by (1 − D), while the yield surface is checked in effective stress space.
    Loading path: the solid line tracks the effective stress; the dashed line tracks the nominal stress.
    Current σ̄y
    458.00 MPa
    Hardening-shifted yield stress
    Cylinder radius
    373.95 MPa
    √(2/3) σy in principal space
    Run Diagnostics
    Numerical checks and warnings
    Yield onset ε
    0.001532
    First plastic step
    Elastic slope
    103.176 k MPa
    Current secant tangent
    Residual plastic strain
    0.002181
    End-of-path εp
    Damage / yield ratio
    1.000
    Final / max damage
    This core is a reduced uniaxial material-point implementation of the standard small-strain J2/von Mises plasticity + scalar damage equations. The 3D viewport renders the exact principal-stress von Mises cylinder; the 2D charts render the constitutive response history.
    ●Nonlinear elastoplastic damage model//J2 plasticity//Scalar isotropic damage//2D / 3D rendering//Benchmark note: ON
    engineering methodology

    A clear path from inputs to results.

    Trace how a metal-like material point behaves past its elastic limit: when it yields, how it hardens, and how microscopic damage gradually erodes the stress it can carry. This is a reduced 1D core built from the standard small-strain J2 plasticity and scalar-damage equations, letting you see the stress-strain curve, damage growth, and the von Mises yield cylinder in principal-stress space.

    Step-by-step methodWorked exampleAssumptions explained

    How to use

    1. Choose a loading protocol: Monotonic Tension (a single ramp), Cyclic Tension–Compression, or fully Reversed loading to expose hysteresis and damage accumulation.
    2. Enter the elastic modulus E and the initial yield stress σy0, which set the elastic slope and where plasticity begins.
    3. Set the isotropic hardening modulus H, which controls how much the yield stress grows with accumulated plastic strain.
    4. Set the tension and compression damage rates d_t and d_c, and the recovery factor s that controls how tension damage is reactivated under the combined damage law.
    5. Set the maximum strain εmax of the prescribed history and the number of integration samples.
    6. Read the peak stress, maximum and final damage, residual plastic strain, equivalent plastic strain, and dissipated energy, and inspect the stress-strain, damage, and 3D yield-surface views.

    The formula

    ε=εe+εp,σˉ=E(ε−εp),f=∣σˉ∣−(σy0+Hα)≤0,Δγ=ftrialE+H,σ=(1−D)σˉ\varepsilon = \varepsilon^e + \varepsilon^p, \quad \bar{\sigma} = E(\varepsilon - \varepsilon^p), \quad f = |\bar{\sigma}| - (\sigma_{y0} + H\alpha) \le 0, \quad \Delta\gamma = \frac{f_{trial}}{E + H}, \quad \sigma = (1 - D)\bar{\sigma}

    Reference: Small-strain J2 (von Mises) plasticity with linear isotropic hardening and scalar (Lemaitre-type) damage; Simo & Hughes, Computational Inelasticity (radial return); Lemaitre, A Course on Damage Mechanics; ZSoil CPDM manual (combined damage D = 1−(1−D_c)(1−sD_t)); GetFEM small-strain plasticity notes.

    Worked example

    Monotonic tension of a hardening, damaging steel-like material

    Inputs
    • Monotonic Tension; E = 210,000 MPa; σy0 = 320 MPa; H = 1,200 MPa; tension damage d_t = 18; recovery s = 0.35; strain ramped to εmax = 0.03 (3%).
    Calculation path
    1. 1

      The material stays elastic until σ̄ = Eε reaches σy0, i.e. εy = σy0/E = 320/210000 = 0.001524. Beyond that, 1D radial return with linear hardening gives the plastic strain in closed form: εp = (Eε − σy0)/(E + H) = (210000×0.03 − 320)/(210000 + 1200) = 5980/211200 = 0.028314, and the equivalent plastic strain α equals εp. The effective (undamaged) stress is σ̄ = σy0 + Hα = 320 + 1200×0.028314 = 353.98 MPa. Tension damage grows as D_t = 1 − e^(−d_t·κ_t) with κ_t = εp, giving D_t = 1 − e^(−18×0.028314) = 0.3993; with no compression excursion the combined damage is D = s·D_t = 0.35×0.3993 = 0.1398. The nominal (measured) stress is σ = (1 − D)σ̄ = 0.8603×353.98 = 304.51 MPa.

    Result

    At 3% strain the effective stress is 353.98 MPa but scalar damage of about 14.0% drops the nominal stress to 304.51 MPa, with residual plastic strain εp = 0.0283. The nominal stress-strain curve actually peaks near σy0 ≈ 320 MPa just after yield and then softens as damage outpaces hardening.

    Interpreting the result

    The effective stress σ̄ is what the undamaged material skeleton carries and keeps rising because of hardening; the nominal stress σ = (1−D)σ̄ is what you would measure, and it falls once damage grows faster than hardening — the signature of damage-induced softening. The gap between the two curves is the damage fraction D. Yield begins at εy = σy0/E; after that the tangent stiffness drops from E toward the hardening-plus-damage slope. On cyclic or reversed paths the same machinery produces hysteresis loops whose area is the dissipated energy, and damage accumulates on every plastic excursion rather than recovering.

    Assumptions & limitations

    • This is a reduced one-dimensional (uniaxial) material-point model, not a full 3D finite-element solve; the 3D view only renders the von Mises yield cylinder for the current state.
    • Small-strain kinematics with an additive split ε = εᵉ + εᵖ; large-deformation and rate (viscoplastic) effects are not modeled.
    • Hardening is linear and isotropic (the yield stress grows as σy0 + Hα); kinematic hardening and the Bauschinger effect are only approximated by the reversed-path geometry.
    • Damage is a scalar that degrades stiffness and stress uniformly through (1−D); it is monotonic non-decreasing and does not heal.
    • The prescribed strain history is a fixed, non-physical benchmark path chosen to exercise plasticity and damage, not a specific material test record.
    • For linear hardening the 1D radial-return update is exact regardless of step count, so results are insensitive to the sample count once plasticity is captured.

    Frequently asked questions

    What is the difference between effective and nominal stress?

    Effective (or true-skeleton) stress σ̄ = E(ε − εp) is the stress carried by the undamaged part of the material and drives the yield check. Nominal stress σ = (1−D)σ̄ is the apparent stress over the full cross-section, reduced by the damage fraction D. In the worked example σ̄ = 353.98 MPa but σ = 304.51 MPa because D ≈ 14%.

    Why does the stress-strain curve go down after a point?

    Two effects compete past yield: isotropic hardening raises the effective stress (slope H), while damage multiplies the stress by (1−D). Once damage grows quickly enough, the (1−D) factor wins and the nominal stress softens even though the material is still hardening internally. Here the nominal stress peaks near 320 MPa just after yield and then declines.

    How do the damage rates d_t and d_c and recovery s work?

    Tension and compression damage follow exponential laws D_t = 1−e^(−d_tκ_t) and D_c = 1−e^(−d_cκ_c), where larger d values make damage saturate faster with accumulated plastic strain. They combine as D = 1−(1−D_c)(1−s·D_t); the recovery factor s scales how much tension damage is active in the combined measure, approximating partial crack-closure recovery under reversal.

    When does the material start to yield?

    Yielding begins when the effective stress reaches the current yield stress, i.e. at εy = σy0/E for the first loading. With σy0 = 320 MPa and E = 210,000 MPa that is εy = 0.001524, or about 0.15% strain. Below that the response is linear elastic with slope E.

    What does the von Mises yield cylinder represent?

    In principal-stress space the J2/von Mises yield condition is a cylinder whose axis is the hydrostatic line (σ₁ = σ₂ = σ₃) and whose radius is √(2/3)·σy. It is a cylinder because yielding depends only on the deviatoric (shape-changing) stress, not on hydrostatic pressure. As the material hardens, the cylinder radius grows with the current yield stress σy0 + Hα.

    Methodology last reviewed 2026-10-06. Results are informational and not financial or engineering advice — see our disclaimer.