Como modificar a trajetória do projétil com base no coeficiente balístico?

Sou novo na física que cerca a trajetória dos marcadores e como ela é calculada. Sou um desenvolvedor de software e estou trabalhando em uma calculadora balística para rifles. Estou usando o wiki para o cálculo da trajetória

No momento, estou usando a equação em “Ângulo θ necessário para atingir a coordenada (x, y )” seção. Isso tudo é muito bom, mas não leva em consideração o arrasto da bala ( coeficiente balístico ).

Eu pesquisei todos ao invés de tentar descobrir como aplicar o coeficiente a esta equação. Estou realmente perplexo e ficaria muito grato por qualquer orientação neste assunto. Talvez eu tenha uma lacuna no meu entendimento, mas encontrei muitas outras calculadoras e outras documentações sobre a trajetória e o coeficiente, mas nada que combine com os dois.

Resposta

Em primeiro lugar, a página da Wikipedia “ Cálculo de trajetória ” é muito decepcionante, não é um ajuste muito bom para como balística smallarms é modelada e resolvida. Um bom livro sobre o assunto é o recente Applied Ballistics for Long Range Shooting de Bryan Litz e um site com algumas calculadoras balísticas on-line de primeira linha, bem como alguns bons e muito bons artigos, é JBM Ballistics . Você também pode querer dar uma olhada em “ GEBC – Calculadora de balística externa Gnu ” para obter algum código C para brincar.

Cálculos balísticos de pequenos braços adequados para a maioria dos propósitos são feitos por solucionadores de “1 grau de liberdade”. Eles tratam a bala como uma massa pontual, afetada pela resistência do ar e pela gravidade. A resistência do ar é geralmente modelada por um “coeficiente balístico”, que é um parâmetro único que combina mais ou menos com sucesso os efeitos do tamanho, peso e resistência do projétil em um único número (BTW, a Wikipedia “ Coeficiente balístico “página é bastante decente).

Este modelo de física simples (vôo livre no vácuo, mais resistência do ar) recebe uma velocidade e posição iniciais e, em seguida, é integrado tempo (normalmente Runge-Kutta ).

Um BC maior indica que a bala é menos afetada pela resistência do ar do que um BC inferior. Existem dois pontos interessantes para isso, um óbvio, o outro importante, mas menos intuitivo:

  1. uma bala com um BC mais alto perderá velocidade mais lentamente, o que tornará seu tiro mais plano (cair menos com a distância viajou)
  2. uma vez que o BC mede o “grau de interação entre a bala e o ar”, também verifica-se que a quantidade de deriva do vento (quanto a bala é empurrada lateralmente por um vento cruzado) é diretamente afetado pelo BC do marcador

EDITAR para adicionar em resposta aos comentários do OP:

Quando você está olhando para (digamos) o GEBC código, você provavelmente deve ser capaz de ver que o modelo físico contém estes pontos:

  • o projétil tem uma posição e velocidade iniciais. Estes são geralmente expressos em um sistema de coordenadas que é estacionário em relação ao atirador .
  • uma força agindo sobre a bala é a gravidade (sempre para baixo)
  • opcionalmente, pode-se também modelar Coriolis e outras pseudo-forças obtidas a partir deste referencial não sendo estritamente inercial
  • há também a força de arrasto. Em um modelo simples, isso é sempre diretamente oposto à velocidade da bala no ar (que será a velocidade da bala através do sistema de coordenadas do atirador mais a velocidade do vento). Modelos mais sofisticados podem considerar outras forças menores ( levantamento da bala, força lateral do efeito Magnus etc.), mas essas outras forças são um exercício de modelagem separado. O “bc” de que você está falando diz respeito apenas à força de arrasto que uma bala experimenta na direção do vento relativo sobre a bala.

A força na bala é seu coeficiente de arrasto vezes sua área vezes a pressão dinâmica (que é 0,5 rho v ^ 2). Ao resolver a posição da bala, você está realmente interessado na aceleração devido a essa força, então você tem essa quantidade dividida pela massa da bala. Você conhece a velocidade “v”, você conhece a densidade atmosférica “rho”, você precisa descobrir o valor de CD * A / M.

Observe que A é constante, M é constante, mas CD não. O CD depende da velocidade (na verdade, o número Mach do marcador), e a curva do CD será diferente para os marcadores de diferentes formatos.

É aqui que o BC entra. Presume-se que o “CD * A / M “curva de seu marcador, tem o mesmo formato e difere apenas por um parâmetro de escala multiplicativo (1 / BC) da curva” CD * A / M “de um marcador de referência padrão.

O sistema BC mais comum é chamado de “G1” e usa uma bala de referência que é como um projétil de artilharia dos anos 1900.(o sistema “G7” usa um marcador de referência que é muito semelhante a um projétil de rifle de longo alcance moderno).

Seu programa BC precisará modelar a curva de arrasto “G1” como uma função do número de Mach, normalmente isso é feito com tabelas de pesquisa.

A cada etapa de iteração onde você precisa da aceleração do marcador devido ao seu arrasto, você pega o número Mach atual do marcador, procure o “CD * Valor A / M “da tabela G1, divida-o pelo seu BC (BC grande significa menos arrasto e, portanto, uma menor aceleração devido ao arrasto), e esse é o componente de arrasto que você alimenta para seu modelo de voo.

(Vá para o artigo Coeficiente balístico da Wikipedia e dê uma olhada na expressão para “BC_sub_bullets”. Nela, substitua o termo “i” pelo ” CB / CG “que está definido para ser. Resolva essa expressão para” CB “(o coeficiente de arrasto do marcador). Agora dê uma olhada em CB * A / M (o” A / M “desenhará o” M / d ^ 2 “termo do RHS). Isso fornecerá o CD * A / M que você deseja, expresso como função da mesa de arrastar G1)

(esta questão também foi postada em firearms.stackexchange )

Comentários

  • Vou dar uma olhada em alguns desses outros links que você tem. Alguns eu já olhei, outros não. Vou dar uma olhada hoje à noite e ver se algum desses recursos me ajuda.
  • Depois de passar pelos links que você postou, não sei se há alguma informação que eu já não conhecia com a exceção do Runge-kutta. Eu praticamente tenho a fórmula de arrasto com densidade do ar / temp / alt / coeficiente e tenho a fórmula de trajetória anotada acima no wiki. Não sei se estou simplesmente perdendo alguma coisa ou estou totalmente mal-entendido, mas não vejo nada que se case com a trajetória. Continuarei procurando, mas talvez esteja faltando algo do que você está dizendo (espero que esteja).
  • Procurei no código C ++ na Calculadora Gnu. Eu acho que isso vai me ajudar muito. Está me ajudando a preencher as lacunas que tenho. Tenho certeza de que encontrarei minha resposta lá, obrigado!
  • @Etch, ' adicionarei um pouco à postagem: seu comentário " ..t eu não vejo nada que case arrasto com trajetória. "
  • Muito obrigado. Acho que entendi melhor o que estava tentando obter. Você me poupou muito tempo.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *