ForHosting KIT · Developer Utilities

Modulus of toughness estimate

This modulus of toughness estimate calculator provides a quick approximation of how much energy a material can absorb per unit volume before fracture.

● BetaFree · in your browser
Use it from WebAPIEmailTelegramApp soon

Enter yield strength and ultimate tensile strength in megapascals, then enter engineering fracture strain as a dimensionless ratio. The calculator averages the two stress values and multiplies that average by fracture strain. The result is reported in megajoules per cubic metre, making it useful for early comparisons when a complete stress–strain curve is unavailable.

What the estimate represents

Modulus of toughness is the energy absorbed per unit volume as a material is loaded from zero stress until it fractures. In a laboratory, the most defensible value comes from integrating the entire area under a measured stress–strain curve. Early design work, supplier screening, or classroom exercises may provide only yield strength, ultimate tensile strength, and elongation at break. This calculator turns those three values into a transparent approximation by treating the representative stress over the fracture strain as the arithmetic average of yield and ultimate strength. Multiplying that average stress by fracture strain estimates the curve area. Because one megapascal is numerically equal to one megajoule per cubic metre when multiplied by dimensionless strain, the numerical conversion is direct. The output is best interpreted as a screening estimate, not as a substitute for test data. It helps compare candidates consistently when every candidate is evaluated with the same assumptions and the same definitions of strength and strain.

Enter consistent engineering values

Provide both strength values in megapascals. The ultimate strength must be equal to or greater than the yield strength, because the approximation assumes the usual tensile sequence in which yielding precedes the maximum engineering stress. Enter fracture strain as a ratio rather than a percentage: use 0.20 for 20 percent elongation at fracture, 0.05 for 5 percent, and 1.00 for 100 percent. The calculator does not silently convert percentages because confusing 20 with 0.20 would make the result one hundred times too large. Use values from the same specimen orientation, temperature, strain rate, conditioning state, and test convention whenever possible. Engineering stress and engineering strain should not be mixed with true stress or true strain. If a material has no distinct yield point, a consistently defined proof strength may be used, but that choice should be recorded beside the estimate. Inputs must be positive finite numbers, and incompatible strength ordering is rejected instead of producing a plausible-looking but physically inconsistent result.

Understand the approximation and its limits

The averaged-stress model simplifies a real stress–strain curve to a rectangle whose height is halfway between yield strength and ultimate strength and whose width is fracture strain. Real curves rarely have that exact shape. The method can omit the initial elastic triangle, necking behaviour, strain hardening details, and the difference between engineering and true stress after deformation becomes localized. Consequently, it may understate or overstate the measured toughness, especially for brittle materials, highly ductile polymers, metals with extensive necking, or materials whose stress falls sharply before rupture. Use the estimate for ranking, rough feasibility checks, teaching, and documenting a preliminary assumption. For safety factors, fracture-critical components, material certification, or final finite-element inputs, integrate properly sampled test data and follow the applicable material and test standards. The returned average stress is included so the calculation can be audited easily. Repeating the calculation with lower and upper plausible input values is also a practical way to see whether uncertainty changes the engineering decision.

Screen candidate materials

Compare approximate energy absorption per unit volume when datasheets provide strengths and elongation but no full tensile curve.

Check an early design assumption

Record a reproducible toughness estimate for preliminary calculations before laboratory stress–strain data becomes available.

Teach stress–strain energy concepts

Demonstrate how representative stress multiplied by strain gives an energy density and discuss why curve integration is more accurate.

What formula does the calculator use?

It uses ((yield strength + ultimate strength) / 2) × fracture strain. This is an averaged-stress approximation of the area under the stress–strain curve.

What units should I enter?

Enter yield and ultimate strength in MPa and fracture strain as a dimensionless ratio. The estimated modulus of toughness is returned in MJ/m³.

Should fracture strain be a percentage?

No. Convert the percentage to a ratio first. Enter 0.30 for 30 percent fracture strain.

Is this the same as integrating a stress–strain curve?

No. Integration of measured curve data is more accurate. This method is intended for estimates when only summary material properties are available.

How much does the API calculation cost?

Each API request costs $0.002. The same deterministic calculation can also run in the browser.

Everything on this page is available programmatically. This section is for teams who want to wire it into their own systems; everyone else can just use the tool above.

POSThttps://api.kit.forhosting.com/eng/modulus-of-toughness

Prefer to automate it? One authenticated POST creates the task; the result comes back by webhook or a signed link. The same capability also runs here on the web, by email and from Telegram — and soon from our app too.

curl -X POST https://api.kit.forhosting.com/eng/modulus-of-toughness \
  -H "Authorization: Bearer $KIT_KEY" \
  -H "Content-Type: application/json" \
  -d '{"yield_strength":250,"ultimate_strength":450,"fracture_strain":0.3}'
{
  "yield_strength": 250,
  "ultimate_strength": 450,
  "fracture_strain": 0.3
}
{
  "task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
  "type": "eng.modulus_of_toughness",
  "status": "queued",
  "_links": {
    "result": "/tasks/tsk_…/result"
  }
}

The API is asynchronous: the call returns a task_id immediately and the result arrives by webhook. Polling is capped at 1 req/s per task.

Per request$0.002

Published price — no tokens, no invented credits. A failed task is never charged.

HTTPCodeMeaning
401unauthorizedMissing or invalid API key.
402insufficient_balanceYour balance doesn't cover the task price.
404unknown_typeThat task type doesn't exist.
429rate_limitedToo many requests. Use the webhook instead of polling.

Read the full KIT documentation →