Jsem nový ve fyzice obklopující trajektorii kulky a v tom, jak se počítá. Jsem vývojář softwaru a pracuji na balistické kalkulačce pro pušky. Pro výpočet trajektorie používám wiki
V současné době používám rovnici pod „Úhlem θ požadovaným k dosažení souřadnic (x, y) ) „“. To je v pořádku a dobré, ale nebere to v úvahu odpor střely ( balistický koeficient ).
Prohledal jsem všechny nad pokusem zjistit, jak použít koeficient na tuto rovnici. Jsem opravdu v rozpacích a byl bych velmi vděčný za jakýkoli směr v této záležitosti. Možná mám mezeru v chápání, ale našel jsem spoustu dalších kalkulaček a další dokumentace o trajektorii a koeficientu, ale nic, co by se s nimi spojilo.
Odpovědět
Zaprvé, stránka Wikipedia „ Výpočet trajektury “ je docela zklamáním, není příliš vhodná k tomu, jak balistika společnosti smallarms je modelována a řešena. Dobrou knihou na toto téma je nedávná Applied Ballistics for Long Range Shooting společnosti Bryan Litz web s některými prvotřídními online balistickými kalkulačkami a některými dobrými a velmi dobrými zápisy je JBM Ballistics . Možná budete také chtít podívat se na „ GEBC – Gnu Exterior Ballistics Calculator , kde získáte kód C, s nímž můžete hrát.
Výpočty balistiky Smallarms vhodné pro většinu účelů provádějí řešitelé „1 stupně volnosti“. S kulkou zacházejí jako s hmotou bodu ovlivněnou vzdušným odporem a gravitací. Vzduchový odpor je obvykle modelován pomocí „balistického koeficientu“, což je jediný parametr, který víceméně úspěšně kombinuje účinky velikosti střely, hmotnosti a přetažení do jednoho čísla (BTW the Wikipedia „ Stránka Balistický koeficient „je docela slušná).
Tento jednoduchý fyzikální model (volný let ve vakuu plus odpor vzduchu) má počáteční rychlost a polohu a poté je integrován do čas (obvykle Runge-Kutta ).
Větší BC znamená, že střela je méně ovlivněna odporem vzduchu než nižší BC. Existují dva zajímavé body, jeden zřejmý, druhý důležitý, ale méně intuitivní:
- kulka s vyšším BC ztratí rychlost pomaleji, díky čemuž bude střílet plošší (klesat méně se vzdáleností cestoval)
- protože BC měří „stupeň interakce mezi střelou a vzduchem“, ukazuje se také, že množství driftu větru (kolik je střela zatlačena bočním větrem) je přímo ovlivněno BC odrážky
EDIT pro přidání v reakci na komentáře OP:
Když se díváte (řekněme) na GEBC kód, měli byste pravděpodobně vidět, že fyzikální model obsahuje tyto body:
- kulka má počáteční polohu a rychlost. Ty jsou obvykle vyjádřeny v souřadnicovém systému, který je stacionární s střelcem .
- jedna síla působící na kulku je gravitace (vždy dolů)
- volitelně, lze také modelovat Coriolisovy a další pseudo síly, které člověk získá z tohoto referenčního rámce přísně setrvačná
- existuje také tažná síla. V jednoduchém modelu je to vždy přímo naproti rychlosti střely ve vzduchu (což bude rychlost střely v souřadnicovém systému střelce plus rychlost větru). Sofistikovanější modely mohou uvažovat o dalších menších silách ( zdvih na střele, boční síla od Magnusova efektu atd.), ale tyto další síly jsou samostatným modelovacím cvičením. „Bc“, o kterém mluvíte, se týká pouze tažné síly, kterou střela zažívá ve směru relativního větru kulka.
Síla na kulku je její koeficient tahu krát její plocha krát dynamický tlak (což je 0,5 rho v ^ 2). Při řešení polohy kulky jste ve skutečnosti se zajímáte o zrychlení způsobené touto silou, takže máte toto množství vydělené hmotou střely. Znáte rychlost „v“, znáte hustotu atmosféry „rho“, musíte zjistit hodnotu CD * A / M.
Všimněte si, že A je konstantní, M je konstantní, ale CD není. CD závisí na rychlosti (ve skutečnosti Machovo číslo střely) a křivka CD se bude lišit pro kulky různého tvaru.
Zde vstupuje BC. Předpokládá se, že „CD * A / M „křivka vaší kulky, má stejný tvar a liší se pouze parametrem multiplikativní změny měřítka (1 / BC) křivky„ CD * A / M “standardní referenční kulky.
Nejběžnější systém BC se nazývá „G1“ a používá referenční kulku, která je jako dělostřelecká střela z 20. století.(systém „G7“ používá referenční kulku, která je velmi podobná moderní střelecké pušce s dlouhým doletem).
Váš program BC bude muset modelovat tažnou křivku „G1“ jako funkci Machova čísla, obvykle se to provádí pomocí vyhledávacích tabulek.
V každém iteračním kroku, kdy potřebujete zrychlení střely kvůli jejímu tažení, vezmete aktuální Machovo číslo střely, vyhledejte „CD * Hodnota A / M “z tabulky G1, vydělte ji svým BC (velký BC znamená menší odpor, a tedy menší zrychlení kvůli přetažení), a to je součást přetažení, kterou přivádíte do svého letového modelu.
(Přejděte na zápis Balistický koeficient na Wikipedii a podívejte se na výraz „BC_sub_bullets“. V něm nahraďte výraz „i“ výrazem „ CB / CG „, který je definován. Vyřešte tento výraz pro“ CB „(koeficient odporu kulky). Nyní se podívejte na CB * A / M (“ A / M „nakreslí“ M / d ^ 2 „termín z RHS). Tím získáte CD * A / M, které chcete vyjádřit jako funkce přetahovací tabulky G1)
(tato otázka byla také zveřejněna na firearms.stackexchange )
Komentáře
- Podívám se na některé z těchto dalších odkazů, které máte. Na některé jsem se již podíval, na jiné ne. Dnes večer se podívám a uvidím, jestli mi některý z těchto zdrojů pomůže.
- Po procházení odkazy, které jste zveřejnili, nevím, že tam jsou nějaké informace, o kterých jsem s výjimkou nebyl již informován. Runge-kutty. Do značné míry mám vzorec tahu s airdensity / temp / alt / koeficientem a mám vzorec trajektorie uvedený výše z wiki. Nevím, jestli mi prostě něco chybí nebo jsem úplně nedorozuměný, ale nevidím nic, co by si vzalo táhnout s trajektorií. Neustále hledám, ale možná mi chybí něco, co říkáte (snad ano).
- Prohlédl jsem si kód C ++ v Gnu Calculator. Myslím, že mi to hodně pomůže. Pomáhá mi to vyplnit mezery, které mám. Jsem si jistý, že tam svoji odpověď najdu, díky!
- @Etch ' přidám do svého příspěvku trochu re: váš komentář " ..t nevidím nic, co by si vzalo drag s trajektorií. "
- Moc děkuji. Myslím, že lépe rozumím tomu, co jsem se snažil získat. Ušetřil jsi mi dost času.