Transverse wave maximum particle acceleration calculator
This transverse wave maximum particle acceleration calculator finds the greatest acceleration experienced by a point in an oscillating medium.
Run — free
Enter the displacement amplitude and angular frequency of a sinusoidal wave, and it evaluates the standard relation a_max = A omega squared. The result uses the length unit of the amplitude per second squared, so an amplitude in metres produces acceleration in metres per second squared. It is useful for checking wave motion, vibration exercises, and laboratory predictions without stepping through the differentiation manually.
What maximum particle acceleration means
A transverse wave travels through a medium while its particles move perpendicular to the direction in which the wave propagates. For a sinusoidal displacement, an individual particle repeatedly speeds up, slows down, stops at an extreme displacement, and reverses direction. Its acceleration is not constant. The acceleration magnitude is greatest at the two displacement extremes, where the restoring tendency is strongest, and it is zero as the particle crosses equilibrium. This calculator reports that greatest magnitude rather than the instantaneous acceleration at a selected phase. The distinction matters because wave speed describes how the pattern moves through space, whereas particle acceleration describes the local motion of the material itself. A wave can propagate rapidly while particles move through small distances, and their peak acceleration still depends strongly on frequency. Use a non-negative amplitude magnitude and an angular frequency in radians per second. The output is a magnitude, so it is also non-negative; direction changes throughout the oscillation and is not represented by this maximum value.
How to apply the formula and units
For displacement written as a sinusoidal function of time, differentiating twice gives an acceleration with the same angular dependence and a factor of angular frequency squared. The maximum magnitude is therefore a_max = A times omega squared, where A is displacement amplitude and omega is angular frequency. Enter A in a length unit and omega in radians per second. Because radians are dimensionless, squaring omega contributes inverse seconds squared, and the result carries the amplitude unit per second squared. An amplitude entered in metres gives metres per second squared; centimetres give centimetres per second squared. Keep the unit system consistent when comparing the answer with another acceleration. If the available frequency is ordinary frequency f in hertz, first calculate omega = 2 pi f. Do not enter hertz directly as though it were angular frequency, because omitting the 2 pi conversion makes the acceleration too small by a factor of four pi squared. The calculator echoes both inputs and shows the formula used so the substitution remains easy to audit.
Interpreting and checking the result
The squared frequency term makes maximum acceleration especially sensitive to how rapidly the medium oscillates. Doubling amplitude doubles the maximum acceleration, but doubling angular frequency multiplies it by four. That relationship provides a quick reasonableness check before accepting a result. A zero amplitude or zero angular frequency produces zero maximum acceleration, which matches the absence of oscillatory motion. For experimental work, remember that the formula assumes an ideal sinusoidal displacement at a point in the medium. Damping, nonlinear restoring forces, multiple superposed frequencies, changing amplitude, or a waveform that is not sinusoidal can produce a different peak acceleration. Measurement uncertainty also grows through the squared frequency term, so uncertainty in angular frequency may dominate even when amplitude is measured less precisely in absolute terms. The returned number is a magnitude and does not identify the time, phase, or transverse direction at which it occurs. For automated calculations, each API request costs $0.002; the same deterministic arithmetic is suitable for repeated worksheet checks, simulations, and validation pipelines where identical numeric inputs must always return identical results.
What you can do with it
Check a wave mechanics exercise
Verify the peak particle acceleration after deriving or receiving a sinusoidal wave amplitude and angular frequency.
Estimate vibration severity
Convert a measured displacement amplitude and angular frequency into the corresponding ideal peak acceleration for comparison.
Validate simulation output
Compare a numerical model's transverse acceleration peak with the analytic sinusoidal-wave result.
FAQ
What formula does the calculator use?
It uses a_max = A times omega squared, where A is displacement amplitude and omega is angular frequency.
What units does the result use?
The result uses the amplitude's length unit per second squared. Metres produce metres per second squared, while centimetres produce centimetres per second squared.
Can I enter frequency in hertz?
Not directly. Convert ordinary frequency with omega = 2 pi f, then enter the resulting angular frequency in radians per second.
Why is angular frequency squared?
Acceleration is the second time derivative of sinusoidal displacement, and each differentiation contributes one factor of angular frequency.
Does the result include direction?
No. It is the maximum acceleration magnitude. The transverse direction and sign vary with the particle's phase.
What does API use cost?
Each API request costs $0.002.
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/transverse-max-particle-acceleration \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"amplitude":0.02,"angular_frequency":10}'const res = await fetch("https://api.kit.forhosting.com/optics/transverse-max-particle-acceleration", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"amplitude": 0.02,
"angular_frequency": 10
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/optics/transverse-max-particle-acceleration",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"amplitude": 0.02,
"angular_frequency": 10
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/optics/transverse-max-particle-acceleration", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"amplitude":0.02,"angular_frequency":10}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"amplitude":0.02,"angular_frequency":10}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/optics/transverse-max-particle-acceleration", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Example request
{
"amplitude": 0.02,
"angular_frequency": 10
}Example response
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "optics.transverse_max_particle_acceleration",
"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. |