Capítulo 6: Formulaciones del Problema CAPÍTULO 6: FORMULACIONES DEL PROBLEMA 53 Capítulo 6: Formulaciones del Problema 1.- INTRODUCCIÓN Y OBJETIVOS: La Cinemática y la Dinámica Computacionales se emplean para simular y diseñar sistemas mecánicos empleando métodos numéricos. Se aplica a sistemas multicuerpo, que, como se comentó en el capítulo 1, son los modelos utilizados para vehículos, máquinas o seres vivos y comprenden un conjunto de sólidos (rígidos o deformables) interconectados mediante pares cinemáticos y / o sistemas muelle - amortiguador. Cualquier modelo matemático realista (y, también, cualquiera “artificial” o no realista) de la dinámica de un vehículo debe tener tantos g.d.l. que sea necesario el uso del ordenador para resolver los sistemas de ecuaciones. Los integradores numéricos son desarrollados con numerosos y diferentes propósitos: algunos son rápidos, otros muy estables, otros son muy adecuados para sistemas con matrices “esparcidas” o para trayectorias “caóticas”, etcétera. Para obtener una solución segura y realista de un problema no lineal y / o de una simulación, debe tenerse mucho cuidado a la hora de elegir el integrador (o integradores) y su(s) uso(s). Muchos de los modelos utilizados en la investigación ferroviaria son simples y poseen pocos g.d.l. Los métodos multicuerpo [9] [14] pueden ser empleados para desarrollar modelos más detallados y generales de sistemas vehículo ferroviario - vía. Varias investigaciones han puesto de manifiesto la utilidad de dichos métodos, especialmente cuando se consideran sólidos rígidos. Algunos de los objetivos de tales investigaciones son la localización de los puntos de contacto rueda - carril, el estudio de los efectos de las fuerzas de fricción seca, el análisis de las restricciones cinemáticas o la influencia de las irregularidades de la vía en los diferentes movimientos de los vehículos ferroviarios, por ejemplo. Sin embargo, los métodos multicuerpo más destacados consideran la flexibilidad como un factor fundamental y se llaman métodos multicuerpo flexibles. El programa de simulación de sistemas multicuerpo manejado en el presente proyecto realiza un análisis u otro en virtud del tipo de formulación escogida. Como ya se dijo, existen 7 tipos diferentes: - Formulación 1: método del penalty [9]. - Formulación 2: simulación cinemática [9]. - Formulación 3: método de Dopico [9]. - Formulación 4: método de aceleración constante explícito [9] [15]. - Formulación 5: cálculos modales (estabilidad, equilibrio estático, frecuencias y modos de vibración del sistema) [9]. - Formulación 6: posición estacionaria y estabilidad de vehículos [9]. - Formulación 7: integrador con el método de aceleración constante de BayoLedesma [9]. Para resolver las ecuaciones de movimiento del sistema objeto de estudio, suelen emplearse principalmente la formulación aumentada (o augmented lagrangian) 54 Capítulo 6: Formulaciones del Problema [9] [15] y la técnica “de inclusión”. La primera de ellas combina los multiplicadores de Lagrange con las restricciones de movimiento para obtener un sistema de ecuaciones más grande, pero teóricamente más sencillo de resolver. La segunda aproximación usa las ecuaciones de restricción cinemáticas para eliminar sistemáticamente algunas coordenadas, llegando así a un sistema más pequeño. En adelante, se van a estudiar los métodos numéricos correspondientes a las formulaciones más importantes (métodos del penalty, de multiplicadores de Lagrange y augmented lagrangian). En este capítulo se estudiarán las formulaciones principales del problema planteado en el presente proyecto. En todo el capítulo 6 se tratará de compaginar la explicación de los diferentes métodos numéricos con las formas de implementarlos computacionalmente en el programa de simulación 2.- MULTIPLICADORES DE LAGRANGE: Este epígrafe está dedicado al estudio del problema dinámico directo, en el que el objetivo principal es determinar el movimiento ocasionado por la aplicación de fuerzas externas y / o g.d.l. cinemáticamente controlados o “guiados”. Las simulaciones dinámicas (como también se llama al problema directo) están adquiriendo una importancia creciente en industrias como las del automóvil, robótica, biomecánica, aeronáutica, etcétera, y vienen dadas por la ecuación vectorial siguiente: && + C qT ⋅ λ = Q M ⋅q (6.1) Junto con las restricciones del problema, se forma un conjunto de ecuaciones diferenciales cuya solución son los valores de las n coordenadas generalizadas (q) y los m multiplicadores de Lagrange (agrupados en el vector λ) de que consta. Para evitar el uso de ecuaciones diferenciales, es posible emplear las ecuaciones cinemáticas de la aceleración, que se pueden hallar diferenciando las restricciones respecto al tiempo dos veces: & ⋅ q& ≡ c && = −C t − C Cq ⋅ q q (6.2) Matricialmente, ambos conjuntos de ecuaciones pueden expresarse como: M C q && Q C qT q ⋅ = 0 λ c (6.3) Es un sistema de n + m ecuaciones e incógnitas que puede ser usado para hallar la solución simultánea de aceleración y multiplicadores de Lagrange. Otra forma de resolver el problema consiste en obtener en primer lugar una expresión para la aceleración (despejándola de la ecuación 6.1, lo cual sólo es posible si la matriz de masa no es singular). Sustituyendo dicha expresión en (6.2), se tiene una 55 Capítulo 6: Formulaciones del Problema expresión en términos únicamente de los multiplicadores de Lagrange. Resolviéndola, es fácil calcular a partir de aquí la aceleración usando: && = −M −1 ⋅ (C Tq ⋅ λ − Q) q (6.4) C q ⋅ M −1 ⋅ C qT ⋅ λ = C q ⋅ M −1 ⋅ Q − c (6.5) En la mayoría de los casos, es preferible emplear sólo la ecuación (6.3) al método anterior, que es menos directo. Los multiplicadores de Lagrange serán de especial importancia en la mayoría de las formulaciones dinámicas aquí mostradas. 2.1- Implementación numérica: En general, la solución computacional de este tipo de problemas requiere el empleo de una subrutina de integración numérica para ecuaciones diferenciales de primer orden del tipo r “dada la velocidad en el instante t ( y& t ), calcular la posición en t + ∆t ( y t + ∆t )” r Para llevar a cabo esta subrutina, se requiere usar el algoritmo siguiente: 1. Empezar en un instante de tiempo (t) en el que los vectores de coordenadas y velocidades sean conocidos. 2. Usar el sistema de ecuaciones (6.3) para hallar la aceleración en el instante de tiempo considerado. 3. Agrupar velocidades y aceleraciones en un vector de entrada a la subrutina de integración numérica, de modo que se reduzca a una ecuación vectorial diferencial de primer orden y sea más fácil de resolver &&, q& }t y t ≡ {q& , q}t y& t ≡ {q 4. Cuando converja la subrutina, actualizar la variable tiempo y volver al paso 2. Este algoritmo presenta la ventaja de su simpleza frente a los correspondientes a otros métodos. Su principal problema es que puede no ser muy eficiente y que las restricciones dejan de cumplirse progresivamente hasta alcanzar resultados inaceptables. 3.- MÉTODO DEL PENALTY: La formulación 1 del programa de simulación emplea este método para resolver del sistema de ecuaciones del problema. Su particularidad principal es que se eliminan los multiplicadores de Lagrange en las ecuaciones del movimiento, de modo que se && ) es la única incógnita. tienen n ecuaciones diferenciales ordinarias y la aceleración ( q 56 Capítulo 6: Formulaciones del Problema El método del penalty [9] incorpora las ecuaciones de restricción como un sistema dinámico penalizado con un factor en las ecuaciones del movimiento: cuanto más grande sea el factor de penalización o penalty (α), mejor será el cumplimiento de las restricciones (aunque ello suponga introducir algunas condiciones numéricas perjudiciales). Este método es válido tanto para sistemas holónomos (esto es, cuya respuesta no depende del “camino” recorrido) como no holónomos y sus restricciones pueden expresarse de la siguiente manera: d ∂L ∂L − + C qT ⋅ λ = Q ext dt ∂q& ∂q (6.6) El sistema de ecuaciones (6.6) se refiere a sistemas holónomos, siendo L = T – V la función lagrangiana, Cq el jacobiano y λ los multiplicadores de Lagrange. Las matrices α, µ y Ω, necesarias para implementar las ecuaciones correspondientes, son diagonales, tienen dimensión m y representan, respectivamente, los valores del factor del penalty (que es un número real muy grande), del coeficiente de amortiguamiento y de la frecuencia natural del sistema. Estas dos últimas se obtienen cuando se cumple C = 0 en la restricción k-ésima. Además, estos valores se corresponden con los usados en el vector AlfaForm, como ya se dijo en el capítulo 3. La expresión de la ecuación del movimiento queda de este modo: ( ) && + 2 ⋅ Ω ⋅ µ ⋅ C & + Ω2 ⋅ C = Q && + C qT ⋅ α ⋅ C M ⋅q (6.7) & ⋅ q& es el vector de fuerzas correspondiente al sistema sin Q = Q ext + L ⋅ q − M restricciones. Además, el segundo sumando del primer miembro de la ecuación representa las fuerzas generadas por el sistema cuando las restricciones (en posición, velocidades y aceleraciones) no se cumplen. Operando finalmente, se llega a: (M + C T q ( ) & ⋅ q& + C + 2 ⋅ Ω ⋅ µ ⋅ C & + Ω2 ⋅ C && = Q − CqT ⋅ α ⋅ C ⋅ α ⋅ Cq ⋅ q q tt ) (6.8) El problema del método del penalty es elegir un valor adecuado del factor penalty (α): valores muy elevados aseguran la convergencia de las restricciones necesidad de mucha tolerancia, pero pueden llevar a errores y problemas en problemas numéricos condicionados. En esos casos, puede usarse el método penalty añadiéndole los multiplicadores de Lagrange, cuya ecuación vectorial es: ( ) && + 2 ⋅ Ω ⋅ µ ⋅ C & + Ω 2 ⋅ C + CT ⋅ λ * = Q , && + C Tq ⋅ α ⋅ C M ⋅q q ( del sin los del (6.9) ) && + 2 ⋅ Ω ⋅ µ ⋅ C & + Ω2 ⋅ C . siendo el vector de multiplicadores de Lagrange λ ≈ λ * + α ⋅ C A pesar de la robustez de esta formulación, su gran inconveniente es su tremenda lentitud, lo que la descarta para realizar las simulaciones. 57 Capítulo 6: Formulaciones del Problema 4.- MÉTODO DEL PENALTY AUMENTADO CON MULTIPLICADORES DE LAGRANGE: Constituye la formulación 4 del programa de simulación y en inglés se denomina augmented lagrangian [9] [15], que, debido a su brevedad, será indistintamente utilizado junto con el nombre en castellano. Este método aparece para solucionar algunos de los problemas inherentes a la formulación del penalty. Se desea que converja a la solución correcta sin especificar tolerancias en las restricciones ni atender a los valores del factor del penalty. Las posibles ventajas que esto tendría serían reducir el número de ecuaciones y no necesitar el empleo de valores muy grandes de α para asegurar la convergencia. El objetivo de este epígrafe es integrar del sistema de ecuaciones (6.9) sin necesidad de usar las restricciones del problema. Esto requiere conocer los valores correctos de los multiplicadores λ* (que juegan el papel de términos correctores) para que puedan ser calculados mediante un proceso iterativo al introducirlos en la última ecuación formulada. Así pues: ( && + 2 ⋅ Ω ⋅ µ ⋅ C & + Ω2 ⋅ C λ i +1 ≈ λ i + α ⋅ C ) i +1 ∀i = 0,1,2,... (6.10) Debe cumplirse λ0 = 0 para la primera ecuación. La ecuación físicamente representa la introducción de las fuerzas que tienden a compensar el hecho de que las restricciones no sean exactamente nulas en la iteración i+1-ésima. Es obvio ahora que el factor del penalty no necesita un valor muy grande porque el error resultante en las ecuaciones de restricción será eliminado por los términos de Lagrange durante el proceso iterativo. De hecho, el método general del penalty puede verse como una particularización del augmented lagrangian en el que sólo hay una iteración. Teniendo esto en cuenta, el primer miembro de (6.9) puede escribirse como: (M + C T q ) ( ) & ⋅ q& + C + 2 ⋅ Ω ⋅ µ ⋅ C & + Ω 2 ⋅ C (6.11) && i +1 = M ⋅ q && i − C qT ⋅ α ⋅ C ⋅ α ⋅ Cq ⋅ q q tt && 0 = Q . Esta ecuación se usa para sistemas ∀i = 0,1,2,... La iteración inicial cumple M ⋅ q holónomos. 4.1- Algoritmo iterativo: A priori, puede parecer que el procedimiento iterativo empleado presenta una desventaja por el gasto computacional extra que supone realizar las iteraciones. Sin embargo, éste es prácticamente insignificante porque suele necesitarse un proceso iterativo para resolver un sistema de ecuaciones diferenciales no lineales. Por contra, las ventajas obtenidas son mayores, pues no hay que preocuparse por el valor de α para que éste simultáneamente asegure la convergencia y evite errores de redondeo. La integración numérica de las ecuaciones del movimiento usando la formulación del penalty (o la del penalty aumentada con multiplicadores de Lagrange) puede hacerse por el siguiente procedimiento: 58 Capítulo 6: Formulaciones del Problema 1- Comenzar en un instante t en el que coordenadas (q) y velocidades ( q& ) sean conocidos. && ) en el instante considerado. Si se 2- Usar (6.8) para obtener la aceleración ( q emplea la formulación augmented lagrangian en lugar de la del penalty, las ecuaciones se utilizan las ecuaciones (6.9). 3- Calcular los vectores de coordenadas y velocidades en el instante siguiente al considerado (t + ∆t) mediante integración numérica: &&, q& }t y t ≡ {q& , q}t y& t ≡ {q 4- Una vez asegurada la convergencia, volver al paso 2. Este algoritmo de integración numérica presenta la ventaja de que resuelve un conjunto de n ecuaciones (en lugar de las n + m ecuaciones manejadas en el método de los multiplicadores de Lagrange). El método también se denomina “regla de la aceleración constante” porque considera que la aceleración no varía en las expresiones de las coordenadas de posición y velocidad mediante la regla del trapecio. 5.- MÉTODO DE BAYO-LEDESMA: Ocupa la formulación 7 [9] del programa de simulación y es uno de los más utilizados a la hora de caracterizar el comportamiento dinámico de los diferentes sistemas multicuerpo. Su desarrollo viene motivado por la necesidad de disponer de métodos de simulación dinámica más rápidos que los descritos hasta ahora. Este epígrafe está dedicado al estudio del método de Bayo-Ledesma aplicado al programa de simulación objeto del proyecto. Se trata de la formulación finalmente utilizada. La ecuación del movimiento en que se basa este método es la denotada anteriormente como (6.9), es decir, la del método del penalty aumentado con los multiplicadores de Lagrange: ( ) && + 2 ⋅ Ω ⋅ µ ⋅ C & + Ω 2 ⋅ C + CT ⋅ λ * = Q , && + C Tq ⋅ α ⋅ C M ⋅q q (6.9) El método de integración empleado mantiene las ventajas de la formulación aumentada (como robustez ante restricciones redundantes, presencia de matrices simétricas y definidas positivas incluso en posiciones singulares y fácil implementación) e incorpora una integración más precisa. No se requiere, además, un gran esfuerzo computacional. El problema de posición consiste en encontrar las coordenadas dependientes ( q ), que definen la posición de cada sólido del sistema multicuerpo, de forma recursiva y sin emplear las iteraciones de Newton-Raphson (que son costosas computacionalmente). Por su parte, los problemas de velocidad y aceleración sirven para la obtención de los vectores de velocidad y aceleración dependientes mediante un 59 Capítulo 6: Formulaciones del Problema algoritmo recursivo similar o, incluso, más simple que el del problema de posición. No deben usarse los valores correspondientes a las derivadas primera y segunda del vector de coordenadas dependientes. 5.1- Proyecciones: Las proyecciones [1] constituyen un método de integración de las ecuaciones del movimiento de sistemas multicuerpo con restricciones, especialmente de aquéllos que poseen restricciones redundantes, configuraciones singulares o cambios topológicos. La formulación aquí empleada se basa en el método del penalty aumentado con los multiplicadores de Lagrange, pero puede aplicarse al método “clásico” de Lagrange. Su principal ventaja es el bajo coste computacional, lo que facilita una integración más robusta y precisa. Los métodos del penalty y augmented lagrangian tienen la ventaja de su robustez frente a restricciones redundantes, configuraciones singulares o cambios topológicos, pero no satisfacen plenamente las restricciones y, por consiguiente, su precisión disminuye cuanto más largas sean las simulaciones efectuadas. Sin embargo, hay nuevos métodos de reducción “estables” y formas precisas de proyectar las D.A.E. (siglas de Ecuaciones Diferenciales Algebraicas) en las O.D.E. (Ecs. Diferenciales Ordinarias) para tener soluciones más precisas y estables. GENERALIDADES: La formulación del penalty aumentada con los multiplicadores de Lagrange permite, como ya se ha comentado, elegir entre un amplio rango de valores del factor del penalty (α) asegurando la convergencia y evitando problemas mal condicionados numéricamente. La pregunta clave sería: ¿existe un método computacionalmente && + 2 ⋅ Ω ⋅ µ ⋅ C & + Ω 2 ⋅ C de la ec. (6.9), así como C , C & eficiente para anular el término C ( ) && durante el proceso de integración? En caso afirmativo, la precisión aumentaría. yC Realizar la integración del método augmented lagrangian proporciona q , q& y && sin forzar a que ninguna restricción sea estrictamente nula. Para satisfacer en cada q iteración completamente las restricciones, se propone una proyección de masa & y C && ortogonal que dé la solución al conjunto de restricciones cumpliendo que C , C son nulas. PROYECCIÓN DE POSICIONES: Durante el proceso de integración se va obteniendo una solución q * , que no satisface por completo las restricciones C = 0 . Para que se satisfagan completamente, se ha de resolver el siguiente problema de minimización: Minimizar q V = ( 1 ⋅ q − q* 2 ) T sujeto a: C(q, t ) = 0 , 60 ( ⋅ M ⋅ q − q* ) (6.10) Capítulo 6: Formulaciones del Problema donde se asume que la matriz de masa ( M ) es constante (aunque el procedimiento seguiría siendo válido en caso contrario). Por tanto, es necesario minimizar la función: V* = ( 1 ⋅ q − q* 2 ) T ( ) ⋅ M ⋅ q − q* + 1 T ⋅ Cq ⋅ α ⋅ C + CT ⋅ λ , 2 (6.11) suponiendo que el factor α es igual para todas las restricciones y siendo λ los multiplicadores de Lagrange. Diferenciando respecto al vector de coordenadas e igualando a cero, se tiene que: H(q, t ) = ∂V * T T = M ⋅ q − q* + Cq ⋅ α ⋅ C + Cq ⋅ λ = 0 ∂q ( ) (6.12) H(q,t) es un vector de n funciones no lineales. La ecuación (6.12) es un sistema de ecuaciones algebraicas no lineales resoluble por Newton – Raphson. Puede escribirse: ( ) ( ) H (q + ∆q,t ) = M ⋅ q − q * + C q ⋅ α ⋅ C + C q ⋅ λ + M ⋅ ∆q + C q ⋅ α ⋅ C q + C qq ⋅ α ⋅ C + C qq ⋅ λ ⋅ ∆q (6.13) T T T T T De la ecuación (6.13) puede crearse el siguiente proceso iterativo para calcular el vector de coordenadas q: (M + C T q ) ⋅ α ⋅ Cq ⋅ ∆i +1 = −γ ip (6.14) con q i +1 = q i + ∆i +1 y λ i +1 = λ i + α ⋅ C i +1 . Cqq se desprecian porque son mucho más pequeños que Cq ⋅ α ⋅ Cq . El conjunto de ecuaciones (6.14) y sus condiciones anexas T se puede usar mientras se cumpla ∆q < ε (ε es una tolerancia especificada). Si q es cercano a q* (valores iniciales), el problema de las proyecciones puede resolverse usando un método de Newton – Raphson modificado en el que no hace falta actualizar la matriz “tangente” (la del término C qq de la ecuación (6.13)). Nota: para el método de los multiplicadores de Lagrange, el problema de minimización se expresaría de la siguiente manera M C q C qT ∆q − γ ip = ⋅ 0 ∆λ i +1 0 (6.15) PROYECCIÓN DE VELOCIDADES: El procedimiento seguido para obtenerlas es totalmente análogo al de la posición, con la diferencia de que ahora la solución inicial q& * no satisface todas las & = 0 y de que se busca calcular el vector de velocidades restricciones de la forma C ( q& ). El problema de optimización adopta una forma idéntica al caso anterior, pero colocando en V* vectores velocidad en vez de posiciones y expresando las restricciones & (q& , q, t ) = 0 . El vector H se obtiene ahora al derivar V* con respecto a q& y los como C & i +1 . multiplicadores de Lagrange se denotan como σ, cumpliendo σ i +1 = σ i + α ⋅ C 61 Capítulo 6: Formulaciones del Problema El método recursivo para obtener la proyección de velocidades es: (M + C con q& i = q& * y T q ) ⋅ α ⋅ C q ⋅ q& i + 1 = M ⋅ q& i − C q T ⋅α ⋅ C t , (6.16) & i . Para el método de los multiplicadores de Lagrange, se σ& i = α ⋅ C tendría que: M C q M ⋅ q& − C q T ⋅ α ⋅ C t C qT q& = ⋅ 0 σ i +1 0 (6.17) PROYECCIÓN DE ACELERACIONES: El procedimiento seguido y las expresiones alcanzadas serían totalmente análogas a las proyecciones de posición y velocidad, pero no son expuestos en la presente memoria porque no son usadas por el programa de simulación. ALGORITMO ITERATIVO: La implementación computacional del método de las proyecciones exige seguir los siguientes pasos: 1. Se tienen q y q& en el paso temporal n-ésimo. && , cumpliéndose en la 2. Usar las ecuaciones de (6.11) iterativamente para tener q && 0 = C(q, q& ) . Tras esto, si se desea, puede usarse (6.10) para iteración inicial M ⋅ q hallar los multiplicadores de Lagrange. 3. Usar la subrutina de integración numérica para tener los vectores de posición y velocidad en el paso temporal n+1-ésimo. 4. Usar la expresión (6.14) y su equivalente en velocidades para implementar las proyecciones de posición y velocidad, obteniendo un conjunto “limpio” de q y q& . 5. Una vez haya convergencia y esté actualizado el paso temporal, volver al paso 1 de este proceso iterativo. 5.2- Implementación computacional: Para llevar a cabo el método de Bayo-Ledesma de la formulación 7 del programa de simulación se emplean las siguientes funciones de MATLAB®: - EcMovBayo.m: implementa la ecuación del movimiento (6.9), empleando para ello las matrices necesarias ya descritas, los parámetros del AlfaForm y la variable convergencia, entre otras. Los valores de entrada son instante de tiempo, posición y velocidad, mientras que las salidas son aceleración y multiplicadores de Lagrange - DinBayo.m: realiza el post-procesado del método, calculando las magnitudes requeridas en la simulación y almacenándolas en Tuti. Estos valores, junto con 62 Capítulo 6: Formulaciones del Problema los instantes de tiempo, son obtenidos aportando como datos de entrada los valores iniciales de posición y velocidad. El paso temporal (h) puede variar si se produce algún impacto entre la rueda y el carril Además, el vector AlfaForm es una variable vectorial global dada por: AlfaForm = [α Ω µ 0 0 AbsErr MaxIter], siendo sus tres primeros valores los ya estudiados en la formulación del penalty. Por su parte, AbsErr es el error absoluto aceptable en las ecuaciones para que haya convergencia, mientras que MaxIter es el número máximo de iteraciones para asegurar dicha convergencia del método. Normalmente, estos datos son introducidos por el usuario del programa al elegir el vehículo que va a ser simulado y suelen tomase los mismos valores para cada restricción. En el caso estudiado, se adoptan los siguientes: AlfaForm = [107 100 1 0 0 10-6 20] y pueden ser comprobados atendiendo a la función ManV1.m. El anexo electrónico de esta memoria incluirá las funciones más destacadas de este método. En el capítulo 8 se hará algún comentario respecto a la eficiencia del mismo. 63