odextend
Estende a solução de um problema de valor inicial de EDO para um instante posterior.
Categoria: Mathematics > Numerical Integration and Differential Equations
Sintaxe
solext = odextend(sol, odefun, tfinal)
Continua a integração de sol até tfinal.
solext = odextend(sol, odefun, tfinal, yinit)
Reinicia a partir do novo valor inicial yinit no fim de sol.
solext = odextend(sol, odefun, tfinal, yinit, options)
Altera também as opções de integração.
Descrição
Quando se descobre depois que o intervalo de integração foi curto demais, ou se quer mudar a equação ou reiniciar com um salto no estado, odextend continua sem refazer o trabalho já feito. O resultado é uma única estrutura para o intervalo completo.
Argumentos de entrada
sol- Estrutura retornada por um solver de EDO chamado com uma saída.
odefun- Função a integrar na extensão, ou
[]para reutilizar a original. tfinal- Novo instante final, além do fim de
sol. yinit- Novo valor inicial opcional.
Argumentos de saída
solext- Estrutura de solução que cobre o intervalo original e o estendido, utilizável com
deval.
Exemplo
Estendendo de t = 1 até t = 2
f = @(t, y) -y;
sol = ode45(f, [0 1], 1);
solext = odextend(sol, [], 2);
solext.x(end)
y = deval(solext, 1.5);
fprintf('%.4f %.4f\n', y, exp(-1.5))
Saída
ans = 2
0.2231 0.2231