5

¿Alguien tiene alguna buena referencia para ecuaciones que se pueden implementar con relativa facilidad para saber cómo calcular la transferencia de momento angular entre dos cuerpos rígidos?Angular Momentum Transfer ecuaciones

He estado buscando este tipo de cosas por un tiempo, y no he encontrado ninguna explicación particularmente comprensible del problema.

Para ser precisos, la pregunta es así; dos cuerpos rígidos se mueven en una superficie sin fricción (bueno, casi); pensar en ello como hockey de aire. Los dos cuerpos rígidos entran en contacto y luego se alejan. Ahora, sin considerar el momento angular, las ecuaciones son relativamente simples; el problema es: ¿qué ocurre con la transferencia del momento angular entre los cuerpos?

Como ejemplo, suponga que los dos cuerpos no tienen momento angular alguno; ellos no están girando Cuando interactúan en un ángulo oblicuo (el vector de viaje no se alinea con la línea de sus centros de masa), obviamente una cierta cantidad de su momento se transfiere a momento angular (es decir, cada uno obtiene una cierta cantidad de giro), pero cómo mucho y cuáles son las ecuaciones para tal?

Esto probablemente se puede resolver usando un sistema rígido de muchos cuerpos para calcular, pero quiero obtener un cálculo mucho más optimizado, para que pueda calcular esto en tiempo real. ¿Alguien tiene alguna idea sobre las ecuaciones, o apunta a las implementaciones de código abierto de estos cálculos para su inclusión en un proyecto? Para ser precisos, necesito que este sea un cálculo bastante bien optimizado, debido a la cantidad de interacciones que deben simularse dentro de un solo "tic" de la simulación.

Editar: De acuerdo, parece que no hay mucha información precisa sobre este tema. Y creo que el tipo de libros de "Física para programadores" es un poco ... demasiado tonto como para realmente obtener; No quiero la implementación del código de un algoritmo; Quiero descifrar (o al menos haber esbozado) el algoritmo. Solo de esa manera puedo optimizarlo adecuadamente para mis necesidades. ¿Alguien tiene alguna referencia matemática sobre este tipo de tema?

+1

¿Es esta tarea? – Fattie

Respuesta

4

Si le interesa rotar cuerpos no esféricos, entonces http://www.myphysicslab.com/collision.html muestra cómo hacerlo. La asimetría de los cuerpos significa que la fuerza de contacto normal durante la colisión puede crear un par de torsión alrededor de sus respectivos CG, y así causar que los cuerpos comiencen a girar.

En el caso de una bola de billar o un disco de hockey de aire, las cosas son un poco más sutiles. Dado que el cuerpo es esférico/circular, la fuerza normal siempre es correcta a través del CG, por lo que no hay torque. Sin embargo, la fuerza normal no es la única fuerza. También hay una fuerza de fricción que es tangencial al contacto normal que creará un par sobre el CG. La magnitud de la fuerza de fricción es proporcional a la fuerza normal y al coeficiente de fricción, y opuesto a la dirección del movimiento relativo. Su dirección se opone al movimiento relativo de los objetos en su punto de contacto.

+0

Ah, eso se ve muy útil; en particular, sus comentarios sobre la fuerza de fricción tangencial son muy buenos y muy útiles. –

2

Debe echar un vistazo a Physics for Game Developers - es difícil equivocarse con un libro de O'Reilly.

+0

Completamente de acuerdo con los libros de O'Reilly; en general, esperaba implementar un algoritmo razonablemente simple, pero una buena referencia siempre es buena. –

2

A menos que tenga una excelente razón para reinventar la rueda, yo sugeriría tomar un buen vistazo al código fuente de algunos motores de física de código abierto, como Open Dynamics Engine o Bullet. Los algoritmos eficientes en esta área son una forma de arte, y las mejores implementaciones sin duda se encuentran en la naturaleza, en proyectos cuidadosamente revisados ​​por pares como estos.

+0

Estoy de acuerdo en que no necesariamente quiero reinventar la rueda, aunque este es un tipo de proyecto de aprendizaje para mí, y descubrir cómo convertir las ecuaciones en un algoritmo eficiente es un desafío divertido para mí; Dicho esto, probablemente no podría acercarme a su eficiencia ... –

3

Bueno, mi libro de física favorito es Halliday and Resnick. Nunca siento que ese libro sea estúpido para mí (el tonto está dentro del cráneo, no en la página ...).

Si configura un problema de pensamiento, puede comenzar a tener una idea de cómo se llevaría a cabo.

Imagine que sus dos discos rígidos de hockey de aire no tienen fricción en la parte inferior, pero tienen un coeficiente de fricción máximo alrededor de los bordes. Claramente, si los dos discos se dirigen entre sí con idéntica energía cinética, colisionarán perfectamente elásticamente y retrocederán en direcciones opuestas.

Sin embargo, si sus centros están desplazados por 2 * radios - epsilon, apenas tocarán en un punto del perímetro. Si tuvieran un coeficiente de fricción increíblemente alto alrededor del borde, puedes imaginar que toda su energía se transferiría a la rotación. Tendría que haber una separación después del impacto, por supuesto, o detendrían inmediatamente sus propias rotaciones mientras se mantenían unidas.

Por lo tanto, si buscas algo plausible e interesante (ala física del juego), diría que puedes normalizar el coeficiente de fricción para dar cuenta de la pequeña área de contacto entre los dos cuerpos (elegir algo eso parece interesante) y usa el pecado del ángulo entre el camino de los cuerpos y el punto de impacto. Directamente, obtendría un rebote, 45 grados le daría rebote y giro, la compensación de 90 grados le daría el máximo giro y el menor rebote.

Obviamente, ninguna de las anteriores es una simulación precisa. Sin embargo, debería ser un marco bastante simple para provocar comportamientos interesantes.

EDIT: Bien, se me ocurrió otro ejemplo interesante que quizás sea más revelador.

Imagínese un solo disco (como el anterior) que se mueva hacia una punta de clavija inmóvil, rígida, casi unidimensional que proporciona la alta fricción previa pero baja pegajosidad. Si el disco pasa a una distancia que simplemente besa el borde, puedes imaginar que una fracción de su energía lineal se convertirá en energía rotacional.

Sin embargo, una cosa que usted sabe con certeza es que hay una energía de rotación máxima después de este toque: el disco no puede terminar girando a tal velocidad que su borde exterior se mueve a una velocidad superior a la velocidad lineal original. Por lo tanto, si el disco se mueve a un metro por segundo, no puede terminar en una situación en la que su borde exterior se mueva a más de un metro por segundo.

Así que, ahora que tenemos un largo ensayo, hay algunos conceptos sencillos que debe ayudar a la intuición:

  1. El seno del ángulo del impacto afectará a la rotación resultante.
  2. La energía lineal determinará la energía de rotación máxima posible.
  3. Un solo parámetro puede simular los coeficientes de fricción relevantes hasta el punto de ser interesante de observar en la simulación.
+0

sugerencia interesante, y una muy buena; tienes razón, yo tiendo a suponer que los bordes tienen un coeficiente de fricción máximo; el problema es que incluso con la situación de "contacto apenas borde" a la que se refiere arriba, no toda la energía se transfiere al momento angular; de hecho, dudo que sea más del 50%. Hasta cierto punto, estoy esperando encontrar algo que explique la mecánica de esto de una manera que un tipo de software pueda comprender. Como es, todavía tiendo a pensar que una simulación de cuerpo rígido podría ser el mejor camino a seguir, pero aún quiero evitarlo ... –

+0

@McWafflestix, a la derecha, me estaba imaginando un disco extraño que tenía un coeficiente de fricción muy alto pero no pegajoso en absoluto. Un elemento absurdo, pero sí lo demuestra: si tuviera dos discos envueltos en papel de lija que apenas se besaran al pasar, terminarían girando muy rápido y moviéndose mucho más despacio. Eso es lo que quiero decir con "normalizar" arriba: puedes enrollar todos los coeficientes en un solo parámetro con el que puedes jugar hasta que el comportamiento te resulte interesante. –

+0

@bobcross: es un punto interesante, y ciertamente útil para comprender el problema; asumiendo un coeficiente de fricción de borde infinitamente alto (pero no pegajoso), dos discos que apenas se tocan moviéndose uno al otro tendrían sus velocidades promediadas y reducidas a la mitad, con el resto de la energía de impulso (1/2 del total) entrando en angular impulso (dividido entre los dos). En general, estoy más interesado en la simulación precisa que "lo suficientemente bueno"; sobre todo porque la simulación precisa es sorprendentemente simple, en realidad, una vez que comprendes lo que está sucediendo. –

1

¡Eche un vistazo a estas referencias! Si quieres adentrarte realmente en Mecanics, este es el camino a seguir, ¡y es la manera correcta y matemáticamente correcta!

Glocker Ch., Set-Valued Leyes de fuerza: Dinámica de sistemas no suaves. Lecture Notes en Applied Mechanics 1, Springer Verlag, Berlín, Heidelberg 2001, 222 páginas. PDF (Contenido, 149 kB)

Pfeiffer F., Glocker Ch., Dinámica multicuerpo con contactos unilaterales. JohnWiley & Sons, Nueva York 1996, 317 páginas.PDF (Contenido, 398 kB)

Glocker Ch., Dynamik von Starrkörpersystemen mit Reibung und Stößen. VDI-Fortschrittberichte Mechanik/Bruchmechanik, Reihe 18, nr. 182, VDI-Verlag, Düsseldorf, 1995, 220 páginas. PDF (4094 kB)