Impulse calculator
A 50 N push lasting 0.02 s delivers an impulse of 1 N·s, and the object's momentum changes by exactly that amount. Enter the average force and the contact time to get both, for kicks, collisions or lab drills. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Force
- 50
- Time
- 0.02
- Impulse
- 1
- Delta momentum
- 1
Impulse links a force acting over a short contact window to the sudden change in momentum that contact produces. Collision problems, ballistics estimates, sports impact drills, crashworthiness sketches, and introductory mechanics homework all ask the same pair of numbers: how large is the impulse, and what change in momentum does it deliver.
What impulse means and which two quantities you need to send
In classical mechanics, the impulse of a force over a time interval is the integral of force with respect to time. When force is treated as a constant average over the contact window, that integral collapses to the product J equals F times Δt. The impulse–momentum theorem then states that the net impulse on a body equals its change in linear momentum, so Δp equals J for the same interval and the same free-body direction you chose.
Search intent clusters around phrases such as impulse calculator, force times time calculator, change in momentum from impulse, J equals F delta t, and contact time momentum change. People want a numeric answer they can check against a worksheet, embed in a simulation, or feed into a larger pipeline—not only a reminder that the formula exists. Units stay consistent with whatever force and time basis you chose: newtons with seconds yield newton-seconds, which are equivalent to kilogram metres per second for momentum change.
What you can do with it
Homework and lab impulse–momentum drills
Students and graders confirm impulse and change in momentum for given force and contact time, with clear rejection when time is negative or a field is missing.
Game, sim, and impact sanity checks
Quick structured numbers for collision impulse under known average force and contact duration without standing up a full dynamics stack.
FAQ
Which formula does the impulse calculator use?
Force may be signed; time must be non-negative.
What happens if contact time is negative?
Negative time is rejected before any result is returned, and those calls are not charged.
Is the impulse calculator free?
The browser tool runs free on your device.
Can the force be negative?
Yes. A negative force simply points the other way along your axis, so the impulse and the change in momentum come out negative too. Only the contact time has to be zero or positive.
Are newton-seconds the same as kilogram metres per second?
Yes. An impulse in newton-seconds equals a momentum change in kilogram metres per second, which is why the impulse and the change in momentum show the same number when you use newtons and seconds.
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/mech/impulse \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"force":50,"time":0.02}'const res = await fetch("https://api.kit.forhosting.com/mech/impulse", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"force": 50,
"time": 0.02
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/mech/impulse",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"force": 50,
"time": 0.02
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/mech/impulse", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"force":50,"time":0.02}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"force":50,"time":0.02}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/mech/impulse", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"force": 50,
"time": 0.02
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "mech.impulse",
"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 capacity takes a finite average force and a non-negative contact time, multiplies them to form impulse J equals F times Δt, sets the change in momentum equal to that impulse by the impulse–momentum theorem, and returns structured JSON with force, time, impulse, delta_momentum, formula, and method. Negative contact time, missing fields, and non-finite values fail with invalid_input before any result is returned.
What impulse means and which two quantities you need to send
Delivering force, time, impulse, delta_momentum, formula, and method as JSON makes the result easy to paste into notes, diff in automated tests, or reuse across languages without reimplementing the arithmetic.
How this calculator validates input and applies J = F · Δt
Numeric strings that parse to finite numbers are accepted so forms and CSV-style pipelines can pass values without an extra cast. Contact time must be non-negative; a negative duration is rejected with a clear field-named message because physical contact intervals cannot run backward in this average-force model. Force may be signed: a negative value simply reverses the sense of the impulse axis and therefore the sign of the momentum change. There is no variable-force history, no multi-body system, and no unit conversion; this is ideal constant-average-force impulse from the two known quantities. Send a JSON body with force and time. 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. After validation, impulse is computed as force times time and delta_momentum is set equal to that impulse. Results are rounded to a stable decimal precision 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.
Practical use, limits, pricing, and delivery channels
Use the browser tool when you want an immediate impulse and momentum-change check while grading homework, verifying a lab force-plate impact, sanity-checking a game collision constant, or sketching how hard a short thruster burn pushes. Choose units consistently—if force is in newtons and time is in seconds, impulse and change in momentum come out in newton-seconds. There is no language model, no external physics service, and no randomness, so the capacity is safe to pin in continuous-integration checks and reproducible lesson materials. Each successful request is one billable item at $0.002; failed validation does not consume balance. Results are fully deterministic: the same force and time always yield the same impulse and the same delta_momentum. Wire the endpoint into mechanics drills, contest answer checkers, impact worksheets, or preprocessing steps where you already prefer explicit domain errors—such as rejecting a negative contact time—over opaque black-box widgets that cannot explain why a bad input was refused.
Integration use cases
Deterministic fixtures for physics tests
Pipelines that seed unit tests or interactive impact demos can call a pure J=F·Δt oracle instead of reimplementing the impulse–momentum theorem in every language.
Technical questions
How do I compute impulse and change in momentum with this API?
Send a JSON body with force and time to mech.impulse. The response returns force, time, impulse, delta_momentum, formula, and method.
Can force be negative?
Yes. Finite signed force is accepted; it reverses the sense of your chosen axis so impulse and delta_momentum share that sign. Time must still be non-negative.