Double-slit bright fringe position calculator
This double-slit bright fringe position calculator finds the signed distance from the central maximum to a selected bright fringe.
Run — free
Enter the integer fringe order, monochromatic wavelength, centre-to-centre slit separation, and slit-to-screen distance, all lengths in metres. It applies the standard small-angle Young’s double-slit relation and reports the position in metres and millimetres. Positive and negative orders identify opposite sides of the central maximum, while order zero returns the centre itself. The calculation runs deterministically without network access or stored data.
Identify the bright fringe you want to locate
A Young’s double-slit pattern has a central bright maximum labelled order zero, with successive bright bands labelled by integer order on either side. Choose order 1 for the first bright fringe, order 2 for the second, and so on. A negative order represents the corresponding fringe on the opposite side of the centre; it does not mean that a physical distance is negative. The sign simply preserves direction along a chosen screen axis. Enter wavelength, slit separation, and screen distance in metres so that the returned position is directly expressed in metres. For example, visible-light wavelengths are often entered using scientific notation, while slit separation may be a small decimal value. The calculator also provides millimetres for convenient laboratory comparison. Order zero is a useful check because its position must always be zero, regardless of the other valid inputs. This convention makes the result easy to plot, compare with measured screen coordinates, or use in later uncertainty calculations.
Understand the formula and its assumptions
The calculator evaluates y_m = mλL/d, where m is the signed bright-fringe order, λ is wavelength, L is the perpendicular distance from the slits to the screen, and d is the centre-to-centre slit separation. The relation follows from the constructive-interference condition d sin θ = mλ together with the small-angle approximations sin θ ≈ tan θ ≈ y/L. It is therefore most accurate when the screen is far compared with the fringe displacement and when the slit separation is much larger than the wavelength. The light should be effectively monochromatic, the two slits should remain coherent, and the screen should be approximately parallel to the slit plane. This tool reports the paraxial result rather than solving the exact trigonometric geometry. If the selected order produces a large angle, an exact calculation using θ = arcsin(mλ/d) and y = L tan θ may be more appropriate. The output explicitly names the small-angle approximation so the numerical result is not detached from the model that produced it.
Interpret and verify the calculated position
The primary result is the signed fringe position measured from the central maximum. Its magnitude is the distance along the screen, and its sign indicates the selected side. The millimetre value is the same result scaled for common optical benches; it is not an independently rounded measurement. Several proportional checks can reveal entry mistakes quickly. Doubling the order, wavelength, or screen distance should double the position, while doubling the slit separation should halve it. Switching an order from positive to negative should change only the sign and side label. If a result is unexpectedly large, confirm that wavelength was entered in metres rather than nanometres and that slit separation was not entered in millimetres without conversion. The calculator rejects zero or negative physical lengths, non-integer orders, missing values, and non-finite numbers. API automation is available for $0.002 per request, while browser execution can support quick classroom exercises, experiment planning, and comparison of theoretical positions with observed bright-band coordinates.
What you can do with it
Plan an optical bench measurement
Predict where a selected bright band should appear before positioning a ruler, sensor, or camera on the screen.
Check laboratory observations
Compare a measured fringe coordinate with the small-angle theoretical position for the same order and apparatus dimensions.
Explore parameter changes
See how wavelength, slit separation, screen distance, and fringe order independently scale the expected pattern.
FAQ
Which equation does the calculator use?
It uses y_m = mλL/d, the standard small-angle position formula for bright fringes in Young’s double-slit experiment.
What units should I enter?
Enter wavelength, slit separation, and screen distance in metres. The result is returned in both metres and millimetres.
Can the fringe order be negative?
Yes. A negative integer selects the corresponding bright fringe on the negative side of the central maximum.
Why must the order be an integer?
Bright constructive-interference maxima occur at integer orders. Non-integer values do not label bright fringes in this model.
When is the small-angle approximation reliable?
It is reliable when fringe angles and displacements relative to screen distance are small, as in the usual distant-screen arrangement.
How much does an API calculation cost?
Each API request costs $0.002; running the calculator in the browser is free.
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/optics/fringe-position-double-slit \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"order":3,"wavelength":6e-7,"slit_separation":0.00025,"screen_distance":2}'const res = await fetch("https://api.kit.forhosting.com/optics/fringe-position-double-slit", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"order": 3,
"wavelength": 6e-7,
"slit_separation": 0.00025,
"screen_distance": 2
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/fringe-position-double-slit",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"order": 3,
"wavelength": 6e-7,
"slit_separation": 0.00025,
"screen_distance": 2
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/fringe-position-double-slit", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"order":3,"wavelength":6e-7,"slit_separation":0.00025,"screen_distance":2}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"order":3,"wavelength":6e-7,"slit_separation":0.00025,"screen_distance":2}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/fringe-position-double-slit", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"order": 3,
"wavelength": 6e-7,
"slit_separation": 0.00025,
"screen_distance": 2
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.fringe_position_double_slit",
"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. |