Projektil, Luftwiderstand und Wind

Für mein Schulprojekt arbeite ich also an einem Projektilsimulator und Luftwiderstand. Also ich habe mir das angeschaut.

Gleichungen für ein Objekt, das sich linear bewegt, aber unter Berücksichtigung des Luftwiderstands?

Wie ändert jedoch der Wind (unter der Annahme, dass er in horizontaler Richtung verläuft) die Gleichung für die horizontale Geschwindigkeit?

Vielleicht finden Sie diese Antwort auf eine andere Frage nützlich: physical.stackexchange.com/questions/134147/…
Unter yukterez.net/ballistik/#plot sehen Sie die Gleichung für Wind von vorne oder hinten, wenn Sie den Wind nicht seitlich blasen müssen, kann dies hilfreich sein.

Antworten (3)

Beachten Sie zunächst, dass Sie sich bisher mit der Projektilgeschwindigkeit als zweidimensionales Phänomen befasst haben. Das wird sich ändern müssen.

Um der Standardschreibweise zu entsprechen, müssen Sie sich auf die Höhe (vertikale Bewegung) als Z-Koordinate beziehen, während die Horizontale durch x- und y-Koordinaten behandelt wird. Zur Vereinfachung der Berechnung können Sie davon ausgehen, dass Ihre Anfangsgeschwindigkeit eine Nullkomponente auf einer Achse hat, sagen wir der y-Achse. Jetzt sehen die Gleichungen, mit denen Sie vertraut sind, gleich aus, außer dass sie sich auf x und z und nicht auf x und y beziehen. Sehen wir uns zunächst an, wie die Simulation ohne Seitenwind durchgeführt wird.

An jedem Punkt können Sie die x- und z-Geschwindigkeiten berechnen v X Und v z , und kombinieren Sie sie, um die Geschwindigkeit des Projektils V zu erhalten:

v = ( v X ) 2 + ( v j ) 2

Verwenden Sie dies, um den Widerstand auf das Projektil aus der Antwort zu berechnen, mit der Sie verknüpft sind, und zerlegen Sie dann die Widerstandskraft in ihre x- und z-Komponenten. Wenden Sie die Komponenten an, um die x- und z-Geschwindigkeiten zu ändern, und berechnen Sie den nächsten Schritt.

Nun zum Seitenwind. Der einfachste Ansatz besteht darin, anzunehmen, dass der Seitenwind viel geringer ist als die Projektilgeschwindigkeiten. In diesem Fall können Sie davon ausgehen, dass Geschwindigkeiten in der y-Achse die anderen 2 Achsen nicht beeinflussen.

Beginnen Sie mit der Berechnung des relativen Seitenwinds – das ist die Windgeschwindigkeit minus der tatsächlichen Geschwindigkeit auf der y-Achse. Dazu müssen Sie die Komponente des Seitenwinds berechnen, die tatsächlich senkrecht zur Bewegung des Projektils steht. Wenn der Wind beispielsweise 45 Grad zur Richtung des Projektils beträgt, beträgt der Seitenwind seitlich zum Projektil das 0,707-fache der Windgeschwindigkeit. Beachten Sie, dass der Luftwiderstandsbeiwert für Seitenwind anders ist als für die vorherige Berechnung, da die "normale" Berechnung frontal auf das Projektil blickte, während Seitenwind seitwärts gilt. Wenn Sie den relativen Seitenwind und den Seitenwindwiderstandsbeiwert kennen, verwenden Sie die verknüpfte Antwort, um die seitliche Kraft auf das Projektil zu berechnen, wenden Sie diese dann an, um die neue Geschwindigkeit und dann die neue Position auf der y-Achse zu berechnen.

Aus der Korrektur für die Windrichtung sollte klar sein, dass Sie für die beste Genauigkeit die "frontale" Komponente des Windes in die Gesamtwiderstandsberechnung einbeziehen sollten, aber Sie können immer darauf hinweisen, dass der Seitenwind angenommen wird viel niedriger sein als die Projektilgeschwindigkeit.

Dies ist meine Vermutung für 1D-Bewegung mit Luftwiderstand (Widerstand) + Wind, der in negativer Richtung weht. X Richtung und Projektil bewegen sich in der positiven X Richtung:

X ¨ ( T ) = D ( v + v w ) 2
X ˙ ( T ) = v

Wo v w ist die Windgeschwindigkeit und D ist eine Konstante.

Der Punkt ist, dass man Wind meiner Meinung nach nicht einfach mit einem konstanten Kraftterm berücksichtigen kann. Der Wind ist nur Luftbewegung, in diesem Fall in die entgegengesetzte Richtung der Bewegung des Projektils; also die Relativgeschwindigkeit v R zwischen Luft und Objekt wird höher sein ( v R = v + v w ). Da ist die Widerstandskraft proportional zu v R 2 , wird das Vorhandensein von Wind die Widerstandskraft in der Weise erhöhen, die in der obigen Gleichung ausgedrückt wird.

Dies ist eine nichtlineare Differentialgleichung. Es analytisch zu lösen ist kein leichtes Geschäft, ich schlage Finite-Differenzen-Methoden (eine Simulation) vor.

Ich habe vor einiger Zeit etwas Ähnliches als Lieblingsprojekt gemacht.

Sobald Sie anfangen, mit Wind zu arbeiten, der nicht direkt von hinten oder von vorne kommt, stellen Sie das System auf ein 3D-System um.

Indizes bezeichnen Projektil (p), Wind (w) und ihre Komponenten (x,y,z). Die ODEs erster Ordnung für ein solches System sind:

D X D T = v P X
D j D T = v P j
D z D T = v P z

D v P X D T = A P X

D v P j D T = A P j
D v P z D T = A P z

wobei die Beschleunigung jeder Komponente gegeben ist durch

A P X = 0,5 C D ρ A ( v P X + v w X ) 2 M
A P j = 0,5 C D ρ A ( v P j + v w j ) 2 M
A P z = 0,5 C D ρ A ( v P z + v w z ) 2 M G

Denken Sie daran, die Schwerkraft in z-Richtung zu berücksichtigen

Das hat für mich funktioniert, obwohl ich nicht 100% sicher bin, ob ich mit dem Wind richtig umgehe. Hoffentlich kann sich hier jemand melden, falls ich einen Fehler gemacht habe.

Ich hoffe, Sie haben für Ihr Projekt ein kugelförmiges Projektil. Richtig hässlich wird es, ganz schnell, wenn es so etwas wie eine Kugel ist. In diesem Fall muss auch das Moment des Projektils ins Spiel kommen, wodurch das Problem auf ein 6-DoF-System erweitert wird. Dann ändert sich die Fläche des Projektils in Kontakt mit dem Wind mit der Rotation. Bei einer komplexen Form wie einem Geschoss müssen Sie einige unangenehme Oberflächenberechnungen durchführen, um den Luftwiderstand zu bestimmen.

PS: Wenn Sie dies simulieren, müssen Sie den Löser stoppen, sobald das Projektil "ein Ziel trifft" (z. B. den Boden), sonst verlieren die Integratoren den Verstand. Ich habe dies "überwunden", indem ich eine IF-Then-else-Anweisung verwendet habe, bei der die IF-Bedingung lautete, dass, wenn das Ziel nicht erreicht wurde (mit einer einfachen Entfernungsberechnung), die ODEs wie von mir beschrieben sind. Sonst sind alle ODEs gleich "0" und somit wird nichts weiter berechnet. Es gibt wahrscheinlich einen besseren Weg, einen ode45 in Matlab zu beenden, aber ich bin nicht kompetent genug, um ihn für mein Problem anzupassen.

EDIT1: Der Luftwiderstandsbeiwert ändert sich auch mit der Geschwindigkeit (Beziehung der Reynoldszahl), ist aber zum Glück für eine Kugel recht gut dokumentiert. Eine Kugel ist jedoch nicht so gut dokumentiert.