Section modulus calculator
A section with I of 0.0001 m⁴ and its farthest fibre 0.05 m from the neutral axis has a section modulus of 0.002 m³. Enter I and c to get S = I/c, the number that turns a bending moment into extreme-fibre stress. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Moment of inertia
- 0.0001
- Fiber distance
- 0.05
- Section modulus
- 0.002
The elastic section modulus of a beam is a geometric property of the cross-section: the second moment of area I divided by the perpendicular distance c from the centroidal (neutral) axis to the farthest fiber. Once you have S, extreme-fiber bending stress follows at once from sigma equals M over S, which is the flexure formula sigma equals M y over I rewritten so the section contribution sits in one number.
What elastic section modulus means and which two quantities you need to send
The elastic section modulus S, sometimes written W in European codes, is the ratio I over c of a cross-section's second moment of area about a bending axis to the distance from that axis to the extreme fiber. It is not a material property: two beams of the same steel with different shapes have different S even though Young's modulus is identical.
Search intent clusters around section modulus calculator, elastic section modulus, S equals I over c, beam section modulus, and turning a known I and c into S without opening a full section-property handbook. Keep units consistent: if I is in metres to the fourth and c is in metres, S comes out in metres cubed; millimetre input yields millimetres cubed.
The formula assumes a linear-elastic stress distribution that peaks at the extreme fiber; the plastic section modulus used in plastic design is a different quantity and is out of scope here.
How this calculator validates input and applies S = I / c
Numeric strings that parse to finite numbers are accepted so forms and CSV-style pipelines can pass values without an extra cast. Fiber distance must be non-zero; a distance of zero is rejected with a clear message because section modulus is undefined when you divide I by a vanishing c. Negative c is allowed and simply reverses the sign of S, which is the fiber-side convention when the caller already stores y as signed from the neutral axis.
Moment of inertia may be signed as well, though a physical second moment of area is typically positive. There is no handbook lookup, no plastic-modulus mode, no unit auto-conversion, and no stress evaluation; this is the pure I over c evaluation only. Pair the result with a separate bending-stress calculator when you already know M and want sigma, or with a unit converter when you already have S and only need millimetres cubed from metres cubed.
Practical use, limits, pricing, and delivery channels
Use the browser tool when you want an immediate section-modulus check while grading strength-of-materials homework, converting a measured I and extreme-fiber distance into S, verifying a preliminary rectangle or I-section against an allowable moment, or teaching how S grows when the same area is spread farther from the neutral axis. Results are fully deterministic: identical inputs always produce the same section modulus and the same formula and method labels.
There is no language model, no external structural table, and no randomness, so the capacity is safe to pin in continuous-integration checks and reproducible course materials. For converting an already-known section modulus among cubic metres, cubic centimetres, cubic millimetres, and cubic inches, use the separate section-modulus converter; that is a different search intent and a different formula.
What you can do with it
Preliminary beam-section checks
Turn a calculated I and c into elastic section modulus so allowable moment M_allow = σ_allow × S can be compared before a handbook lookup or finite-element run.
FAQ
Which formula does the section modulus calculator use?
The elastic definition S = I / c, where I is the second moment of area about the bending axis and c is the perpendicular distance from that axis to the extreme fiber. Plastic section modulus is not computed.
What happens if the fiber distance is zero?
Zero fiber distance is not allowed because S = I/c would divide by zero; those calls are not charged.
What units should I send for I and c?
Use a coherent pair. Metres to the fourth with metres yield S in metres cubed; millimetres to the fourth with millimetres yield millimetres cubed. The calculator does not convert mixed unit systems.
How do I use S to find bending stress?
Divide the bending moment by S to get the stress at the extreme fibre, or multiply an allowable stress by S to get the allowable moment. This calculator gives S only; it does not compute the stress itself.
What is the section modulus of a rectangular beam?
For width b and height h bent about the strong axis, I is b h³/12 and c is h/2, so S equals b h²/6. It is a handy check on the result for a solid rectangle.
Related tools
For developers — API access
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.
API endpoint
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.
Call it from your stack
curl -X POST https://api.kit.forhosting.com/phys/section-modulus \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"moment_of_inertia":0.0001,"fiber_distance":0.05}'const res = await fetch("https://api.kit.forhosting.com/phys/section-modulus", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"moment_of_inertia": 0.0001,
"fiber_distance": 0.05
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/phys/section-modulus",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"moment_of_inertia": 0.0001,
"fiber_distance": 0.05
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/phys/section-modulus", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"moment_of_inertia":0.0001,"fiber_distance":0.05}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"moment_of_inertia":0.0001,"fiber_distance":0.05}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/phys/section-modulus", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"moment_of_inertia": 0.0001,
"fiber_distance": 0.05
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "phys.section_modulus",
"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.
Pricing
Published price — no tokens, no invented credits. A failed task is never charged.
Errors
| HTTP | Code | Meaning |
|---|---|---|
401 | unauthorized | Missing or invalid API key. |
402 | insufficient_balance | Your balance doesn't cover the task price. |
404 | unknown_type | That task type doesn't exist. |
429 | rate_limited | Too many requests. Use the webhook instead of polling. |
Technical notes
This section modulus calculator takes those two quantities as finite numbers, performs the division S equals I over c, and returns structured JSON with the section modulus, echoed inputs, the formula, and the method label. A fiber distance of zero is rejected as invalid_input because the model would divide by zero.
What elastic section modulus means and which two quantities you need to send
People want a numeric S they can multiply into allowable moment M_allow equals sigma_allow times S, compare to a mill certificate, or pin in a homework key—not only a reminder that the formula exists. Delivering section_modulus, moment_of_inertia, fiber_distance, formula, and method as JSON makes the result easy to paste into notes, pin in automated tests, or reuse across languages without reimplementing the arithmetic. For a rectangle of width b and height h bent about its strong centroidal axis, I equals b h cubed over twelve and c equals h over two, so S equals b h squared over six—a useful closed-form check of this endpoint.
How this calculator validates input and applies S = I / c
Send a JSON body with moment_of_inertia and fiber_distance. Both fields are required and must be finite: missing either field, empty strings, non-numeric text, NaN, and Infinity all fail immediately with invalid_input before any result is returned, and failed validation is not charged. Aliases are recognized for convenience: moment_of_inertia also accepts I, second_moment, inertia, and second_moment_of_area; fiber_distance also accepts c, y, y_max, extreme_fiber, and distance. After validation, section_modulus is computed as moment_of_inertia divided by fiber_distance. Results are rounded to twelve decimal places so the same input always yields the same JSON across JavaScript engines. The same pure function powers the free in-browser tool and the API path, with no network, no random seed, and no wall clock in the computation path.
Practical use, limits, pricing, and delivery channels
Each successful request is one billable item at $0.002; failed validation does not consume balance. Choose units consistently and stay within the published magnitude bounds so the quotient remains finite on a Worker isolate. Wire the endpoint into mechanics drills, contest answer checkers, early-stage design worksheets, or preprocessing steps where you prefer explicit domain errors—such as rejecting a fiber distance of zero—over opaque widgets that cannot explain why a bad input was refused.
Integration use cases
Homework and exam verification
Students and graders confirm S = I/c for a given second moment of area and extreme-fiber distance, with a clear invalid_input rejection when the fiber distance is zero.
Deterministic fixtures for design tests
Pipelines that seed unit tests or interactive beam demos can call a pure I-and-c oracle instead of reimplementing the quotient in every language.
Technical questions
How do I compute elastic section modulus with this API?
Send a JSON body with moment_of_inertia (I, length^4) and fiber_distance (c, length) to phys.section_modulus. The response returns moment_of_inertia, fiber_distance, section_modulus, formula, and method.
What does the section modulus calculator cost?
The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.