Calculadora de colisão elástica
Um corpo de 2 kg a 3 m/s que atinge outro de 1 kg parado sai a 1 m/s, e o segundo dispara a 4 m/s. O momento continua em 6 kg·m/s e a energia cinética em 9 J; a ferramenta mostra as duas conferências. Grátis no seu navegador.
- Grátis
- Funciona no seu navegador
- Sem cadastro
- Seus dados não saem do seu aparelho
Executar grátis
Exemplo resolvido
- Massa do corpo 1
- 2
- Massa do corpo 2
- 1
- V1
- 3
- V2
- 0
- V1 após a colisão
- 1
- V2 após a colisão
- 4
Uma colisão elástica unidimensional é um impacto entre dois corpos que se movem ao longo de uma única linha e trocam momento sem perder energia cinética para calor, deformação ou som. No modelo clássico você conhece cada massa e cada velocidade inicial e resolve simultaneamente as duas velocidades finais a partir da conservação do momento linear e da conservação da energia cinética. A solução em forma fechada é padrão em todo curso introdutório de mecânica: o corpo um sai com uma mistura ponderada das duas velocidades iniciais, e o corpo dois sai com a mistura complementar. Massas iguais simplesmente trocam velocidades; uma bola leve que atinge uma parede pesada quase se inverte; um caminhão pesado que atinge um seixo em repouso quase não freia enquanto o seixo voa à frente. Esta calculadora implementa esse par analítico de fórmulas com aritmética de ponto flutuante determinística, devolve velocidades finais mais tabelas de checagem de momento e energia, e rejeita massa negativa com erro de validação claro.
Como se resolve uma colisão elástica unidimensional
Comece com duas massas pontuais m1 e m2 que interagem apenas ao longo de um eixo escolhido durante um breve intervalo de contato. Sejam v1 e v2 suas velocidades logo antes do contato, com sinal de modo que a direção positiva seja a mesma para ambas. Isolamento significa que impulsos externos ao longo da linha de impacto são desprezíveis diante do impulso mútuo, de modo que o momento linear total m1 v1 mais m2 v2 é o mesmo antes e depois.
Elasticidade perfeita significa que a energia cinética total metade m1 v1 ao quadrado mais metade m2 v2 ao quadrado também é a mesma antes e depois, ou de forma equivalente a velocidade relativa inverte o sinal mantendo a magnitude.
Resolver essas duas equações escalares para as duas incógnitas produz as formas fechadas de livro: a velocidade final do corpo um é igual a parênteses m1 menos m2 fecha parênteses sobre parênteses m1 mais m2 fecha parênteses vezes v1 mais dois m2 sobre parênteses m1 mais m2 fecha parênteses vezes v2; a velocidade final do corpo dois é igual a dois m1 sobre parênteses m1 mais m2 fecha parênteses vezes v1 mais parênteses m2 menos m1 fecha parênteses sobre parênteses m1 mais m2 fecha parênteses vezes v2.
Casos especiais saem sozinhos: massas iguais trocam velocidades; se m2 tende ao infinito e v2 é zero, o corpo um inverte quase para menos v1; se m1 é muito maior que m2 e v2 é zero, o corpo um conserva quase v1 enquanto o corpo dois sai perto de dois v1. Massa negativa é rejeitada porque a massa clássica é não negativa; ambas as massas zero são rejeitadas porque a forma fechada divide pela massa total.
O que você envia e o que volta
Envie quatro números finitos obrigatórios nos campos m1, m2, v1 e v2. Massas tipicamente em quilogramas e velocidades em metros por segundo; qualquer sistema de unidades coerente funciona desde que ambas as massas compartilhem uma unidade de massa e ambas as velocidades uma unidade de rapidez. Quando ambas as massas são zero a requisição falha porque a fórmula dividiria por zero.
Checagens clássicas de livro incluem dois quilogramas atingindo um quilograma a três metros por segundo com o segundo corpo em repouso, massas iguais trocando cinco e menos dois metros por segundo, e uma massa leve ricocheteando em um bloco pesado parado. Mantenha a convenção de sinais fixa ao longo de um relatório de laboratório para que positivo signifique sempre a mesma direção no seu diagrama.
Onde calculadoras de colisão elástica aparecem no trabalho real
Cursos de física do ensino médio e da universidade introdutória atribuem drills de colisão elástica unidimensional, provas de troca de velocidade de massas iguais e limites de ricochete em parede antes de generalizações multidimensionais ou inelásticas; um único oráculo confiável acelera correção e montagem de demos. Motores de jogos e simulações didáticas interativas frequentemente precisam de um stub elástico em forma fechada para contatos estilo bilhar invíscidos onde um solucionador completo de corpo rígido é excessivo.
Laboratórios de robótica e transportadores estimam velocidades pós-impacto de dois carrinhos em trilha de baixo atrito a partir de velocidades pré-impacto medidas e massas conhecidas. Equipes de ciências do esporte convertem razões de massa bola-raquete ou disco-taco em velocidades de ricochete esperadas sob idealização elástica como primeiro limite antes de coeficientes de restituição medidos.
Se mais tarde precisar de colisões inelásticas com coeficiente de restituição, impactos oblíquos bidimensionais, colisões relativísticas ou só o produto de momento linear sem modelo de colisão, trate-os como intenções de busca e landings separados em vez de sobrecarregar esta página de calculadora de colisão elástica unidimensional.
Casos de uso
Gabaritos de lição de casa e laboratório
Gere velocidades finais, tabelas de momento e checagens de energia cinética para pares elásticos 1D de livro para que professores e auto-corretores compartilhem uma única verdade de referência.
Stubs de física para simulação e jogos
Insira resultados elásticos em forma fechada em demos de bilhar, carrinhos ou ensino sem integrar um solucionador de contato completo a cada quadro.
Estimativas de impacto em trilhos e transportadores
Estime velocidades pós-impacto de carrinhos em trilho de baixo atrito a partir de velocidades pré-impacto medidas e massas conhecidas sob idealização elástica.
Perguntas frequentes
Que fórmulas esta calculadora de colisão elástica usa?
Resultados unidimensionais perfeitamente elásticos em forma fechada a partir da conservação de momento e energia cinética: v1f = ((m1−m2)/(m1+m2))·v1 + (2·m2/(m1+m2))·v2 e v2f = (2·m1/(m1+m2))·v1 + ((m2−m1)/(m1+m2))·v2.
O que acontece se uma massa for negativa?
Massa clássica não pode ser negativa; a mensagem de erro nomeia o campo (m1 ou m2) para você corrigir a entrada.
Massas iguais trocam velocidades?
Sim. Quando m1 é igual a m2, as fórmulas reduzem-se a v1f = v2 e v2f = v1, o resultado clássico de troca de velocidades para colisão elástica frontal de massas iguais.
A energia cinética permanece a mesma?
Sim para um modelo perfeitamente elástico. A resposta inclui energias cinéticas inicial e final com uma bandeira de conservação para você verificar a conservação em ponto flutuante a cada chamada.
Quanto custa?
A ferramenta do navegador é gratuita e roda localmente.
Ferramentas relacionadas
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/mech/elastic-collision \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"m1":2,"m2":1,"v1":3,"v2":0}'const res = await fetch("https://api.kit.forhosting.com/mech/elastic-collision", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"m1": 2,
"m2": 1,
"v1": 3,
"v2": 0
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/mech/elastic-collision",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"m1": 2,
"m2": 1,
"v1": 3,
"v2": 0
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/mech/elastic-collision", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"m1":2,"m2":1,"v1":3,"v2":0}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"m1":2,"m2":1,"v1":3,"v2":0}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/mech/elastic-collision", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"m1": 2,
"m2": 1,
"v1": 3,
"v2": 0
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "mech.elastic_collision",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |
Notas técnicas
Como se resolve uma colisão elástica unidimensional
Todo o pipeline é aritmética de ponto flutuante determinística sem sementes aleatórias, sem carimbos de relógio, sem chamadas de rede e sem deriva de modelo, de modo que insumos idênticos sempre produzem JSON idêntico. Números não finitos como NaN e Infinity falham com invalid_input para que clientes corrijam unidades em vez de adivinhar.
O que você envia e o que volta
Campos ausentes, strings não numéricas, NaN e Infinity falham com invalid_input e não são cobrados. m1 negativo ou m2 negativo falha com mensagem de que a massa não pode ser negativa em colisão elástica clássica. Em sucesso a resposta devolve insumos limpos, v1_final e v2_final como respostas primárias, um bloco momentum com momentos parciais e totais iniciais e finais mais uma bandeira de conservação, um bloco kinetic_energy com a mesma estrutura para energias, um bloco relative_velocity que verifica que a taxa de aproximação iguala a de separação com inversão de sinal, method definido como elastic_1d_closed_form, uma string de fórmula imprimível e uma dica de unidades. O preço de chamadas API bem-sucedidas é a base publicada de US$ 0,002 por item; falhas de validação não consomem saldo pré-pago.
Onde calculadoras de colisão elástica aparecem no trabalho real
Como esta capacidade é um motor de parse puro, o preço de API é a base publicada de US$ 0,002 por item bem-sucedido e validação falha não consome saldo.