ode23s
Solver de passo único para equações diferenciais rígidas, baseado em uma fórmula de Rosenbrock modificada.
Categoria: Mathematics > Numerical Integration and Differential Equations
Sintaxe
[t, y] = ode23s(odefun, tspan, y0)
Integra o sistema rígido y' = odefun(t, y).
[t, y] = ode23s(odefun, tspan, y0, options)
Aplica também opções de odeset; fornecer 'Jacobian' melhora a velocidade.
Descrição
Por ser um método de passo único, não precisa de histórico, recomeça bem depois de uma descontinuidade e pode ser mais eficiente que ode15s em tolerâncias grosseiras. Monta e fatora o Jacobiano a cada passo, então em sistemas grandes importa fornecer um Jacobiano esparso.
Use-o quando ode45 dá passos minúsculos embora a solução pareça suave.
Argumentos de entrada
odefun- Handle
dydt = odefun(t, y). tspan[t0 tf]ou um vetor de instantes de saída.y0- Vetor de valores iniciais.
Argumentos de saída
t, y- Instantes e solução, com o mesmo formato de
ode45.
Exemplo
Decaimento rígido
f = @(t, y) -100*(y - cos(t));
[t, y] = ode23s(f, [0 1], 0);
fprintf('%.3f\n', y(end))
Saída
0.549