Bright Newton's ring radius
This Newton's rings bright radius calculator finds the radial position of a bright interference fringe in reflected light.
Run — free
Enter a non-negative ring order, the wavelength in nanometres, and the plano-convex lens radius of curvature in metres. The calculator applies the thin-film phase-reversal condition, returns the radius in metres and millimetres, and also reports the ring diameter. It uses order zero for the first bright ring, making the convention explicit so laboratory calculations and measured ring labels can be compared consistently.
Choose the bright-ring order consistently
Newton's rings appear when light reflects from the two boundaries of the thin air film between a gently curved lens and a flat glass surface. For reflected light, one of those reflections introduces a half-cycle phase reversal. The contact point is therefore dark in the ideal arrangement, while bright rings occur between successive dark rings. This calculator labels the first bright ring as order zero and uses the factor m plus one half. Enter 0 for that innermost bright fringe, 1 for the next bright fringe, and so on. This convention matters because some laboratory notes describe the first visible bright ring as ring 1 while still using a formula whose algebraic index begins at zero. If your source numbers bright rings from one, subtract one before entering the order here. Confirm that you are measuring a bright reflected ring rather than a dark reflected ring or a transmitted ring, since those cases use different conditions. A consistent order definition prevents a systematic half-order error that cannot be corrected by changing units or rounding the final radius.
Enter wavelength and lens curvature in the stated units
Provide the wavelength in nanometres and the lens radius of curvature in metres. A typical monochromatic visible-light wavelength might be around several hundred nanometres, while a laboratory plano-convex lens may have a curvature radius from a fraction of a metre to several metres. The calculator converts the wavelength to metres before applying the formula, so the computed radius is dimensionally consistent. Use the vacuum wavelength unless your experiment specifically defines a wavelength in another medium. The standard equation here assumes an air film with refractive index approximately one, normal or near-normal incidence, a spherical lens surface, and a film thickness much smaller than the curvature radius. The lens radius is not the physical radius of the circular lens aperture; it is the radius of the sphere from which the curved optical surface is formed. It is commonly supplied by the lens manufacturer or determined independently with a spherometer. Positive finite inputs are required because a zero or negative wavelength or curvature radius has no physical meaning in this model.
Interpret the calculated radius and diameter
The calculation uses r_m squared equals open parenthesis m plus one half close parenthesis times wavelength times R, where r_m is the bright-ring radius, m is the zero-based bright order, and R is the lens radius of curvature. The returned radius is the distance from the contact centre to the selected bright fringe, not the distance across the complete ring. For comparison with microscope or camera measurements, the calculator also returns the diameter, which is twice the radius. Values are provided in both metres and millimetres without imposing display rounding, allowing downstream software to choose precision appropriate to the experiment. Real rings can differ from the ideal prediction because of dust, imperfect contact, non-spherical surfaces, oblique illumination, broadband light, or a liquid filling the gap. When estimating an unknown curvature radius or wavelength, measuring several rings and fitting radius squared against order is generally more robust than relying on a single fringe. This tool performs the forward ideal-model calculation and does not fit experimental observations or estimate uncertainty.
What you can do with it
Plan a Newton's rings experiment
Estimate where a chosen bright fringe should appear before selecting a microscope scale, camera field of view, or lens aperture.
Check laboratory calculations
Verify a student's bright-ring radius while making the reflected-light order convention and unit conversion explicit.
Compare an ideal model with an image
Calculate the expected radius and diameter for comparison with ring positions measured from a calibrated photograph.
FAQ
What formula does the calculator use?
It uses r_m = sqrt((m + 1/2) lambda R) for bright Newton's rings observed in reflected light with an air film.
Does ring order start at zero or one?
It starts at zero: m = 0 denotes the first bright ring. If your notes call the first bright ring number 1, subtract one before entering it.
Is the centre counted as a bright ring?
No. In the ideal reflected-light arrangement the contact centre is dark because one reflected ray undergoes a phase reversal.
Which radius should I enter for the lens?
Enter the radius of curvature of the spherical lens surface, not the lens aperture radius or diameter.
Can this formula be used when liquid fills the gap?
Not directly. The implemented equation assumes an air film with refractive index approximately one; a liquid-film model must include its refractive index.
What does an API request cost?
Each API request costs $0.002. The same deterministic calculation is also available free in the browser.
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/newtons-rings-bright-radius \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"ring_order":3,"wavelength_nm":589,"lens_radius_m":1}'const res = await fetch("https://api.kit.forhosting.com/optics/newtons-rings-bright-radius", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"ring_order": 3,
"wavelength_nm": 589,
"lens_radius_m": 1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/newtons-rings-bright-radius",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"ring_order": 3,
"wavelength_nm": 589,
"lens_radius_m": 1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/newtons-rings-bright-radius", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"ring_order":3,"wavelength_nm":589,"lens_radius_m":1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"ring_order":3,"wavelength_nm":589,"lens_radius_m":1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/newtons-rings-bright-radius", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"ring_order": 3,
"wavelength_nm": 589,
"lens_radius_m": 1
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.newtons_rings_bright_radius",
"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. |