odeToVectorField
Reescreve uma EDO de ordem superior como um sistema equivalente de primeira ordem.
Categoria: Mathematics > Equation Solving
Sintaxe
V = odeToVectorField(eqn)
Retorna o lado direito V do sistema de primeira ordem Y' = V.
[V, S] = odeToVectorField(eqn)
Também retorna S, a lista de variáveis de estado.
Descrição
Um solver como ode45 aceita apenas sistemas de primeira ordem. A substituição usada trata y, y', ... como estados separados: para y'' + y = 0 o estado é [y; Dy] e o sistema é [Dy; -y]. A equação precisa poder ser resolvida para a derivada de maior ordem.
Argumentos de entrada
eqn- Equação diferencial com
diffde uma função simbólica.
Argumentos de saída
V- Vetor coluna simbólico; os elementos são escritos com
Y[1],Y[2]etc. S- Variáveis de estado: a função e suas derivadas até uma ordem abaixo da equação.
Exemplo
Oscilador de segunda ordem
syms y(t)
[V, S] = odeToVectorField(diff(y,t,2) + y == 0)
Saída
V =
Y[2]
-Y[1]
S =
y
Dy
Observações
Há suporte a uma única equação; sistemas de várias equações não são aceitos no MatLivre.