Solucionador de ecuaciones diferenciales con pasos
Parece que estás en un dispositivo con un ancho de pantalla “estrecho” (es decir, probablemente estás en un teléfono móvil). Debido a la naturaleza de las matemáticas de este sitio, es mejor verlo en modo horizontal. Si su dispositivo no está en modo apaisado, muchas de las ecuaciones se saldrán por el lado de su dispositivo (debería poder desplazarse para verlas) y algunos de los elementos del menú quedarán cortados debido al estrecho ancho de la pantalla.
Antes de pasar a aprender a resolver ecuaciones diferenciales, queremos hacer algunas reflexiones finales. Cualquier curso de ecuaciones diferenciales se ocupará de responder a una o varias de las siguientes preguntas.
En un primer curso de ecuaciones diferenciales (como éste) la tercera pregunta es en la que nos concentraremos. Responderemos a las dos primeras preguntas para casos especiales y bastante sencillos, pero la mayor parte de nuestros esfuerzos se concentrarán en responder a la tercera pregunta para una variedad lo más amplia posible de ecuaciones diferenciales.
Ecuaciones diferenciales ordinarias
DSolve devuelve los resultados como listas de reglas. Esto hace posible devolver múltiples soluciones a una ecuación. Para un sistema de ecuaciones, posiblemente se agrupen múltiples conjuntos de soluciones. Se pueden utilizar las reglas para sustituir las soluciones en otros cálculos.
Una solución general contiene parámetros arbitrarios C[i] que pueden variarse para producir soluciones particulares para la ecuación. Cuando se especifica un número adecuado de condiciones iniciales, DSolve devuelve soluciones particulares a las ecuaciones dadas.
Cuando el segundo argumento de DSolve se especifica como y en lugar de y[x], la solución se devuelve como una función pura. Esta forma es útil para verificar la solución de la EDO y para utilizar la solución en trabajos posteriores. En “Configuración del problema” se ofrecen más detalles.
Mientras que las soluciones generales de las ecuaciones diferenciales ordinarias implican constantes arbitrarias, las soluciones generales de las ecuaciones diferenciales parciales implican funciones arbitrarias. DSolve etiqueta estas funciones arbitrarias como C[i].
El diseño de DSolve es modular: los algoritmos para las diferentes clases de problemas funcionan independientemente unos de otros. Una vez que se ha clasificado un problema (como se describe en “Clasificación de las ecuaciones diferenciales”), los métodos disponibles para esa clase se prueban en una secuencia específica hasta que se obtiene una solución. El código tiene una estructura jerárquica por la que la solución de problemas complejos se reduce a la solución de problemas relativamente más sencillos, para los que se dispone de una mayor variedad de métodos. Por ejemplo, las EDO de orden superior suelen resolverse reduciendo su orden a 1 ó 2.
Resolver una ecuación diferencial en línea
solve(prob,alg)Además, los siguientes algoritmos tienen un interpolante perezoso: Estos métodos requieren unos pasos adicionales para calcular la interpolación de alto orden, pero estos pasos sólo se dan cuando se utiliza la interpolación. Estos métodos, cuando son perezosos, asumen que el vector de parámetros p no cambiará entre el momento de la resolución del intervalo y la interpolación. Si p se cambia en un ContinuousCallback, o en un DiscreteCallback y la solución continua se usa después de la solución completa, entonces establece lazy=false.Ejemplo:solve(prob,Vern7()) # lazy por defecto
sol = solve(prob,Rosenbrock23(autodiff=false,diff_type=Val{:forward})) # Diferenciación numérica con diferenciación hacia adelanteMétodo tableauAdemás, existe el método tableau:Ejemplo de uso:alg = ExplicitRK(tableau=constructDormandPrince())
alg_switch = CompositeAlgorithm((Tsit5(),Vern7()),choice_function)La choice_function toma un integrador y por lo tanto todas las características disponibles en la Interfaz del Integrador se pueden utilizar en la función de elección.Se creó un algoritmo de ayuda para construir la conmutación automática de 2 métodos para los algoritmos de detección de rigidez. Se trata del algoritmo AutoSwitch con las siguientes opciones:AutoSwitch(nonstiffalg::nAlg, stiffalg::sAlg;
Wolframio
Una ecuación diferencial es una ecuación que relaciona una función con una o varias de sus derivadas. En la mayoría de las aplicaciones, las funciones representan cantidades físicas, las derivadas representan sus tasas de cambio y la ecuación define una relación entre ellas.
En este artículo, mostramos las técnicas necesarias para resolver ciertos tipos de ecuaciones diferenciales ordinarias cuyas soluciones pueden escribirse en términos de funciones elementales: polinomios, exponenciales, logaritmos y funciones trigonométricas y sus inversas. Muchas de estas ecuaciones se encuentran en la vida real, pero la mayoría de las demás no pueden resolverse con estas técnicas, sino que requieren que la respuesta se escriba en términos de funciones especiales, series de potencias o se calcule numéricamente.
En este artículo se asume que se tiene un buen conocimiento del cálculo diferencial e integral, así como de las derivadas parciales. También se recomienda tener algunos conocimientos de álgebra lineal para la teoría que hay detrás de las ecuaciones diferenciales, especialmente para la parte relativa a las ecuaciones diferenciales de segundo orden, aunque la resolución real de las mismas sólo requiere conocimientos de cálculo.