Heisenberg uncertainty calculator
Confine a particle to 10^-10 m, an atomic scale, and its momentum spread can be no smaller than about 5 × 10^-25 kg·m/s. Enter the position uncertainty in metres and get the Heisenberg floor from ħ divided by twice that width. Free in your browser.
- Free
- Runs in your browser
- No sign-up
- Your data stays on your device
Run — free
Worked example
- Position uncertainty
- 0.0000000001
- Momentum uncertainty
- 0
- Reduced planck constant
- 0
- Unit position
- m
- Unit momentum
- kg·m/s
The Heisenberg uncertainty principle is the lower bound that quantum mechanics places on how sharply the position and the momentum of the same particle can be known at once. In one dimension the product of those uncertainties satisfies delta-x times delta-p at least ħ over two, where ħ is the reduced Planck constant h divided by two pi. This calculator accepts a strictly positive position uncertainty in metres, inserts the exact SI value of ħ derived from Planck's constant, and returns the corresponding minimum momentum uncertainty in kilogram metres per second.
What Δx Δp ≥ ħ/2 means and how the momentum floor is obtained
The position–momentum form of Heisenberg's relation states that the product of the standard deviation of position and the standard deviation of momentum cannot fall below ħ over two. The constant ħ is Planck's constant h divided by two pi. In the International System, h is the exact defined value 6.62607015 times ten to the minus thirty-four joule-seconds, so ħ is obtained by dividing that figure by two pi and needs no fitted table.
Rearranging the inequality for a given position width produces the minimum momentum uncertainty this capability reports: delta-p minimum equals ħ divided by two times delta-x. The result is a lower bound, not a prediction of a particular measurement: a wave packet that is squeezed more tightly in space must spread more widely in momentum, and the calculator names that floor. Position is taken in metres so the output lives in kilogram metres per second, the SI unit of linear momentum.
Atomic localizations near one ten-billionth of a metre produce momentum floors of order ten to the minus twenty-five kilogram metres per second; a millimetre-scale localization yields a far smaller floor. The calculator does not insert a reduced-mass correction, a two-particle covariance, or a time–energy companion bound: those are different statements. It also does not interpret ħ as h, which would overstate the bound by a factor of two pi.
Supply a positive delta-x, and the arithmetic is a single division against a fixed constant, so identical inputs always produce identical floating-point results.
What you can do with it
Microscopy and spatial-resolution notes
Turn a spatial resolution in metres into the Heisenberg momentum floor before discussing diffraction or de Broglie wavelength in a lab notebook.
Homework generators and packet codes
Pin an SI-exact ħ/(2Δx) oracle in generators and Monte-Carlo packets instead of copying a rounded textbook reduced Planck constant.
FAQ
What units does the Heisenberg uncertainty calculator use?
Position uncertainty is in metres and momentum uncertainty is in kilogram metres per second.
Why is zero or negative position uncertainty rejected?
A position width must be a positive scalar.
Is the result the actual momentum uncertainty of my particle?
No. It is the lowest value quantum mechanics allows for that position width. A real measurement or wave packet can have a larger momentum spread, but never a smaller one.
Why does the formula use ħ and not h?
Because the relation is written with the reduced Planck constant, h divided by 2π, where h is exactly 6.62607015 × 10^-34 joule-seconds. Using h instead would overstate the bound by a factor of 2π.
Does it also cover the energy and time uncertainty relation?
No. It handles only the position and momentum form in one dimension. Energy and time, two-particle correlations and reduced-mass corrections are separate statements that this calculator does not apply.
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/heisenberg-uncertainty \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"position_uncertainty":1e-10}'const res = await fetch("https://api.kit.forhosting.com/phys/heisenberg-uncertainty", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"position_uncertainty": 1e-10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/phys/heisenberg-uncertainty",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"position_uncertainty": 1e-10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/phys/heisenberg-uncertainty", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"position_uncertainty":1e-10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"position_uncertainty":1e-10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/phys/heisenberg-uncertainty", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"position_uncertainty": 1e-10
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "phys.heisenberg_uncertainty",
"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
Zero or negative position widths cannot describe a physical localization, so those inputs fail with invalid_input instead of producing infinity or a signed curiosity.
Input contract, SI units, and how errors are reported
Zero and negative values fail with a message that position uncertainty must be positive, because a non-positive width does not describe a localization and would send the quotient to infinity or through a sign that no laboratory momentum spread can match. POST a JSON body with the required field position_uncertainty, a finite number of metres strictly greater than zero. The field may arrive as a JSON number or as a numeric string; aliases delta_x, dx, sigma_x, and uncertainty_x are accepted and mapped to the same value. Missing position_uncertainty, empty strings, non-numeric text, NaN, and Infinity fail with invalid_input and name the field so a form or a script can highlight the control. On success the body echoes the position uncertainty you sent, returns momentum_uncertainty in kilogram metres per second, restates the formula as delta_p equals hbar over two times delta_x, includes the reduced Planck constant used in the division, and labels the units as metres for position and kilogram metres per second for momentum. Convert nanometres or angstroms yourself: one nanometre is ten to the minus nine metres and one angstrom is ten to the minus ten metres; this endpoint does not guess a non-SI length unit. Mixing a nanometre figure into position_uncertainty without converting to metres will still compute a number, but that number will be the momentum floor of a width many orders of magnitude too large. Keep SI units consistent, pin the floating-point momentum uncertainty in tests, and failed validation never consumes prepaid balance.
Where a Heisenberg uncertainty calculator earns its keep
Undergraduate quantum courses ask for the minimum momentum uncertainty of an electron confined to a box of width L, treating L as delta-x. A live calculator that fails loudly on a zero or negative width is more useful as an oracle than a spreadsheet cell that prints Infinity and lets a grader argue about presentation. Use the result as kilogram metres per second; divide by the particle mass yourself if you need a velocity floor. Pair the bound with your own wave-packet or Fourier code when the problem needs a full distribution rather than the Heisenberg floor. Scanning-probe and electron-microscopy notebooks often start from a spatial resolution and need a momentum or de Broglie-wavelength floor before they discuss diffraction; calling a tiny parse API avoids pulling a computer-algebra system for a one-division bound. Research software that generates homework items or Monte-Carlo packets can pin this endpoint as the reference ħ over two delta-x rather than copy-pasting a rounded textbook ħ that disagrees in the ninth digit. Every successful call costs the published $0.002 base price with no model tokens and no outbound network. Keep requests to a single positive position uncertainty, treat invalid_input as a client fix rather than a retry, and you get a reproducible momentum lower bound for notebooks, LMS plugins, and edge workers without importing a physics library of your own.
Integration use cases
Quantum homework and exam checks
Let students submit a positive position uncertainty in metres and verify Δp_min = ħ/(2Δx), with zero or negative Δx rejected as invalid instead of Infinity.
Technical questions
How do I compute the minimum momentum uncertainty from position uncertainty?
Send a finite positive position_uncertainty in metres. The API returns Δp_min = ħ/(2Δx) in kilogram metres per second using ħ = h/(2π) from the exact SI Planck constant.
Which reduced Planck constant does the calculator use?
ħ = h/(2π) with the exact SI value h = 6.62607015e-34 J·s. The success payload includes reduced_planck_constant so you can reprint the factor.
What does a Heisenberg uncertainty calculation cost?
The browser tool is free. API requests use prepaid KIT balance at $0.002 per successful call; invalid input is not billed.