Crie um subplot(2,1,n) para esta questão. Utilize a função ode45 e plote na mesma janela, os gráficos das soluções numérica e analítica. Plote o gráfico dos erros absolutos.

Passo 1

Beleza, vamos começar resumindo o que a questão pede. A tarefa é criar um gráfico dividido em duas partes usando subplot(2,1,n) no MATLAB. Vamos usar a função ode45 para resolver uma equação diferencial numericamente e também obter a solução analítica. Depois, vamos plotar ambas as soluções no mesmo gráfico e, na segunda parte do subplot, mostrar o gráfico dos erros absolutos entre as soluções numérica e analítica. Para resolver isso, precisamos entender como usar o ode45, como plotar múltiplas curvas no mesmo gráfico e como calcular e plotar os erros absolutos.

Passo 2

Primeiro, vamos definir a equação diferencial que queremos resolver. Suponha que temos uma equação do tipo:
E uma condição inicial .

Passo 3

Vamos utilizar a função ode45 do MATLAB, que é um método numérico para resolver equações diferenciais ordinárias. Ele utiliza um método adaptativo de Runge-Kutta de quarta e quinta ordem para calcular as soluções.
Para usar o ode45, precisamos definir uma função que represente nossa equação diferencial. Por exemplo:
function dydt = minhaEquacao(t, y)
    dydt = -2 * y + exp(-t);
end

Passo 4

Agora, vamos definir o intervalo de tempo e a condição inicial para a solução numérica:
t0 = 0;          % Tempo inicial
tf = 5;          % Tempo final
y0 = 1;          % Condição inicial

Passo 5

Com a função da equação diferencial e os parâmetros definidos, podemos chamar o ode45 para obter a solução numérica:
[t_num, y_num] = ode45(@minhaEquacao, [t0 tf], y0);
Aqui, t_num contém os pontos de tempo e y_num as soluções numéricas correspondentes.

Passo 6

Vamos agora encontrar a solução analítica da equação diferencial. Supondo que conseguimos resolver a equação, a solução analítica pode ser da forma:

Passo 7

Vamos calcular a solução analítica para os mesmos pontos de tempo usados na solução numérica:
y_analitica = (y0 - 0.5) * exp(-2 * t_num) + 0.5 * exp(-t_num);

Passo 8

Agora, vamos criar o subplot com duas linhas e uma coluna. No primeiro gráfico, vamos plotar as soluções numérica e analítica no mesmo gráfico:
subplot(2,1,1);
plot(t_num, y_num, 'b-', t_num, y_analitica, 'r--');
xlabel('Tempo t');
ylabel('Solução y(t)');
legend('Numérica', 'Analítica');
title('Soluções Numérica e Analítica');

Passo 9

No segundo subplot, vamos calcular e plotar os erros absolutos entre as soluções numérica e analítica:
erro_absoluto = abs(y_num - y_analitica);
subplot(2,1,2);
plot(t_num, erro_absoluto, 'k-');
xlabel('Tempo t');
ylabel('Erro Absoluto');
title('Erro Absoluto entre Soluções');

Resposta

Seguindo esses passos, você conseguirá visualizar as soluções numérica e analítica no mesmo gráfico e também o erro absoluto entre elas, facilitando a comparação e análise da precisão do método numérico ode45.

Exercícios relacionados

Crie um subplot(4,1,n) para plotar os gráficos de (a) e (b)
(a) Plote os gráficos da solução numérica por Euler com , e a solução analítica para os primeiros 5 segundos. Plote, também, os erros absolutos.
Crie um subplot(4,1,n) para plotar os gráficos de (a) e (b)
(b) Plote os gráficos da solução numérica, por Euler Melhorado com , e a solução analítica para os primeiros 5 segundos. Plote, também, os erros absolutos.
Faça um programa para calcular a distância percorrida pelo foguete nos primeiros 40 segundos utilizando a regra do trapézio com . Obs. distância vel. tempo Área do gráfico
Resolva, analiticamente o PVI abaixo, e implemente a sua solução numérica com o comando ode45 para os 5 primeiros segundos.