jueves, 25 de mayo de 2023

Solución de ecuaciones diferenciales

 Métodos de un paso:

Método de Euler, Método de Euler mejorado y Método de Runge-Kutta.

 


En 
matemática y computación, el método de Euler, llamado así en honor de Leonhard Euler, es un procedimiento de integración numérica para resolver ecuaciones diferenciales ordinarias a partir de un valor inicial dado.


El método de Euler es el más simple de los 
métodos numéricos resolver un problema del siguiente tipo:




Consiste en multiplicar los intervalos que va de 
 a  en  subintervalos de ancho ; osea:




de manera que se obtiene un conjunto discreto de 
 puntos:  del intervalo de interes . Para cualquiera de estos puntos se cumlple que:





 .





La condición inicial 
, representa el punto  por donde pasa la curva solución de la ecuación de el planteamiento inicial, la cual se denotará como .


Ya teniendo el punto 
 se puede evaluar la primera derivada de  en ese punto; por lo tanto:

















Grafica A.


Con esta información se traza una recta, aquella que pasa por 
 y de pendiente . Esta recta aproxima  en una vecinidad de . Tómese la recta como reemplazo de  y localícese en ella (la recta) el valor de y correspondiente a . Entonces, podemos deducir segun la Gráfica A:











Se resuelve para 
:








Es evidente que la ordenada 
 calculada de esta manera no es igual a , pues existe un pequeño error. Sin embargo, el valor  sirve para que se aproxime  en el punto  y repetir el procedimiento anterior a fin de generar la sucesión de aproximaciones siguiente:





Método de Euler Mejorado


Este método se basa en la misma idea del método anterior, pero hace un refinamiento en la aproximación, tomando un promedio entre ciertas pendientes.


La fórmula es la siguiente:





Donde





Para entender esta fórmula, analicemos el primer paso de la aproximación, con base en la siguiente gráfica:


En la gráfica, vemos que la pendiente promedio corresponde a la pendiente de la recta bisectriz de la recta tangente a la curva en el punto de la condición inicial y la "recta tangente" a la curva en el punto donde es la aproximación obtenida con la primera fórmula de Euler. Finalmente, esta recta bisectriz se traslada paralelamente hasta el punto de la condición inicial, y se considera el valor de esta recta en el punto como la aproximación de Euler mejorada.
Método de Runge-Kutta


El método de Runge-Kutta es un método genérico de resolución numérica de 
ecuaciones diferenciales. Este conjunto de métodos fue inicialmente desarrollado alrededor del año 1900 por los matemáticos C. Runge y M. W. Kutta.


Los métodos de Runge-Kutta (RK) son un conjuntos de métodos iterativos (implícitos y explícitos) para la aproximación de soluciones de 
ecuaciones diferenciales ordinarias, concretamente, delproblema de valor inicial.


Sea




una ecuación diferencial ordinaria, con 
 donde  es un conjunto abierto, junto con la condición de que el valor inicial de ƒ sea







Entonces el método RK (de orden s) tiene la siguiente expresión, en su forma más general:

,


donde h es el paso por iteración, o lo que es lo mismo, el incremento 
 entre los sucesivos puntos  y . Los coeficientes  son términos de aproximación intermedios, evaluados en ƒ de manera local




con 
 coeficientes propios del esquema numérico elegido, dependiente de la regla de cuadratura utilizada. Los esquemas Runge-Kutta pueden ser explícitos o implícitos dependiendo de las constantes  del esquema. Si esta matriz es triangular inferior con todos los elementos de la diagonal principal iguales a cero; es decir,  para , los esquemas son explícitos.

https://youtu.be/n1yV6PCI8Do

6.2 Métodos de pasos múltiples

Los métodos de un paso descritos en las secciones anteriores utilizan información en un solo punto xi para predecir un valor de la variable dependiente yi+1 en un punto futuro xi+1. Procedimientos alternativos, llamados métodos multipaso, se basan en el conocimiento de que una vez empezado el cálculo, se tiene información valiosa de los puntos anteriores y esta a nuestra disposición. La curvatura de las líneas que conectan esos valores previos proporciona información con respecto a la trayectoria de la solución. Los métodos multipaso que exploraremos aprovechan esta información para resolver las EDO. Antes de describir las versiones de orden superior, presentaremos un método simple de segundo orden que sirve para demostrar las características generales de los procedimientos multipaso.

 

 

Observe la ecuación ec. 2  alcanza ) a expensas de emplear un tamaño de paso mas grande, 2h. Además, observe que la ecuación ec. 1 no es de autoinicio, ya que involucra un valor previo de la variable dependiente yi-1. Tal valor podria no estar disponible en un problema común de valor inicial. A causa de ello, las ecuaciones 26.11 y 26.12 son llamadas método de Heun de no autoinició.

Como se ilustra en la figura 26.4, la derivada estimada de la ecuación 26.12 se localiza ahora en el punto medio mas que al inicio del intervalo sobre el cual se hace la predicción. Como se demostrara después, esta ubicación centrada mejora el error del predictor a  Sin embargo, antes de proceder a una deducción formal del método de Heun de no autoinicio, resumiremos el método y lo expresaremos usando una nomenclatura ligeramente modificada:

 

 

La ecuación se puede aplicar de manera iterativa hasta que Ea esté por debajo de un valor pre especificado de Es. Como fue el caso con el método de Heun, las iteraciones convergen sobre un valor de 6.360865. Sin embargo, como el valor del predictor inicial es más exacto, el método de multipaso converge una razón algo más rápida.
Para el segundo paso, el predictor es:

Que es superior a la predicción de 12.08260 que fue calculada con el método de Heun original. El primer corrector da 15.76693 e iteraciones subsecuentes convergen sobre el mismo resultado como se obtuvo con el método de Heun de autoinicio: 15.30224. Como con el paso anterior, la razón de convergencia del corrector ha sido mejorada debido a la mejor predicción inicial.

Deducción y análisis del error de las formulas del predictor-corrector. Ya empleamos conceptos

 

gráficos para deducir el Heun de no autoinicio. Ahora mostraremos como las mismas ecuaciones se pueden deducir matemáticamente. Esta deducción es en particular interesante porque vincula las ideas del ajuste de curva, de la integración numéricas y de las EDO. El ejercicio también es útil porque proporciona un procedimiento simple para desarrollar métodos de multipaso de orden superior y estima sus errores.
La deducción se basa en resolver la EDO general:

La ecuación representa una solución a la EDO si la integral puede ser evaluada. Es decir, proporciona un medio para calcular un nuevo valor de la variable dependiente  con base en un valor previo de  y la ecuación diferencial.
Las formulas de integración numérica proporcionan una manera de hacer esta evaluación. Por ejemplo, la regla trapezoidal se puede usar para evaluar la integral, como en:

El cual es el predictor para el Heun de no autoinicio. Como con el corrector, el error de truncamiento local se puede tomar directamente:

Donde el subíndice p designa que este es el error dele predictor.
Así, el predictor y el corrector para el método de Heun de no autoinicio tiene errores de truncamiento del mismo orden. Además de actualizar la exactitud del predictor, este hecho tiene beneficios adicionales relacionados con el análisis del error, como se elaborara en la siguiente sección.
Estimación de errores: Si el predictor y el corrector de un método multipaso son del mismo orden, el error de truncamiento local puede estimarse durante el curso de un cálculo. Esto es una tremenda ventaja, ya que establece un criterio para el ajuste del tamaño de paso.
El error de truncamiento local para el predictor se estima con la ecuación ec.9. Dicho error estimado se puede combinar con el estimado de  del paso predictor para dar:

 

 

CODIGO:

tf=input('tiempo final, tf: ');

n=input('número de pasos, n: ');

f=@(t,x) cos(t);

%condiciones iniciales

t0=0;

x0=0;

[t,x]=euler(f,t0,tf,x0,n);

 

hold on

plot(t,x,'b')

y=sin(t);

plot(t,y,'r')

xlabel('t')

ylabel('x')

grid on

legend('aproximada','exacta')

title('dx/dt=cost')

hold off

https://youtu.be/n1yV6PCI8Do

 

6.3 sistemas de ecuaciones diferenciales ordinarias

Ecuaciones diferenciales ordinarias

Un sistema de ecuaciones diferenciales ordinarias

lineales se puede escribir:

De manera abreviada, en forma matricial

Donde A (t) es la matriz de coeficientes del sistema y b

(t) es un valor columna de términos independiente. El

sistema se llama homogéneo si b (t) = 0.

Relación entre un sistema y una ecuación

Se examina brevemente el paso de un sistema de n

ecuaciones de orden 1 a una ecuación de orden n, y

viceversa (abreviaremos uno y otra por “sistema” y

“ecuación”, respectivamente).

De ecuación a sistema

Ecuación diferencial ordinaria de orden lineal

Se dice que son homogéneas cuando b (t) = 0. Se

demuestra que siempre se puede escribir una ecuación

21

diferencial ordinaria de orden n como n ecuaciones

diferenciales ordinarias de primer orden.

En forma matricial se define como:

Existencia y unicidad

Tenemos lo que se llama un problema de Cauchy (ecuación

diferencial + condición inicial)

Teorema

Si A (t) y b (t) son continuas en un cierto intervalo de t, el problema de

Cauchy tiene solución y esta es única.

6.3.1 Sistemas lineales homogéneos

22

Sea:

Los subíndices indican la dimensión de las matrices

involucradas.

Teorema

Las soluciones del problema de Cauchy forman un espacio

vectorial de dimensión n.

Sean x e y dos soluciones del sistema homogéneo.

 

6.4 Aplicaciones

Una ecuación diferencial es una ecuación que involucra derivadas de una función desconocida y posiblemente la función misma, así como las variables independientes.

A diferencia de los conceptos matemáticos elementales de suma, resta, división, multiplicación, porcentaje, etc., que se usan día a día, las ecuaciones diferenciales generalmente no se usan / observan en nuestra vida cotidiana.

Las ecuaciones diferenciales tienen una capacidad notable para predecir el mundo que nos rodea. Se utilizan en una amplia variedad de disciplinas, desde biología, economía, física, química e ingeniería. Pueden describir el crecimiento exponencial y la descomposición, el crecimiento de la población de especies o el cambio en el rendimiento de la inversión a lo largo del tiempo.

Dicho esto, he compilado una lista de aplicaciones de ecuaciones diferenciales. 

Algunos otros usos de las ecuaciones diferenciales incluyen:

  1. En medicina para modelar el crecimiento del cáncer o la propagación de enfermedades
  2. En ingeniería para describir el movimiento de la electricidad.
  3. En química para modelar reacciones químicas y para la vida media radiactiva de la computadora
  4. En economía para encontrar estrategias de inversión óptimas
  5. En física para describir el movimiento de ondas, péndulos o sistemas caóticos. También se usa en física con la Segunda Ley de Movimiento de Newton y la Ley de Enfriamiento.
  6. En la Ley de Hooke para modelar el movimiento de un resorte o para representar modelos para el crecimiento de la población y el flujo / circulación de dinero.

codigo palindromo

 package quesito; import java.util.Scanner; public class PalindromoChecker {     public static void main(String[] args) {         // Variabl...