Escrever um programa no MatLab com o objetivo de calcular aproximações de uma função
, usando o polinômio de Taylor para
na origem.
O valor de
e
e o número de termos do polinômio de Taylor,
, são dados de entrada.
Analisar os resultados obtidos pelos
- Erro absoluto
- Erro relativo
- Fazer reflexões
A partir de qual
o erro é tão pequeno que não compensa aumentar seu valor?
O projeto deve ser feito em grupo de no máximo 5 alunos, cada função só pode ser implementada por um grupo.
Data da entrega até dia 21/08/2025 até às 18:00, pelo drive:
https://drive.google.com/drive/folders/lrBwu02ViFBbwi7BIEeD2iNoHhPwt107C?usp=sharing
Funções:
https://drive.google.com/drive/folders/lrBwu02ViFBbwi7BIEeD2iNoHhPwt107C?usp=sharing
Passo 1
O enunciado pede que a gente escreva um programa em MatLab que, para dados
,
e grau
, compute a aproximação de
por meio do polinômio de Taylor (Maclaurin) em
, e em seguida avalie o erro absoluto e relativo e reflita até que grau
vale a pena usar.
Passo 2
Para montar o polinômio de Taylor precisamos da série de Maclaurin de
. Note que
logo
Passo 3
O polinômio de Taylor de grau total
(ou seja, com todos os termos
tais que
) fica
Passo 4
Implementação em MatLab: crie um arquivo
taylor2D_f.m
com o seguinte conteúdofunction [P, errAbs, errRel] = \(taylor2D_f\)(x,y,n)
% \(taylor2D_f\) aproxima f(x,y)\(=1\)/(1-x-\(y+x\)*y) por polinômio de Maclaurin grau total n
% Entradas:
% x, y : pontos onde avalia
% n : grau total do polinômio
% Saídas:
% P : valor de \(P_n\)(x,y)
% errAbs : erro absoluto |f(x,y)-\(P_n\)(x,y)|
% errRel : erro relativo errAbs/|f(x,y)|
P \(=0\);
for i \(=0\):n
for j \(=0\):(n - i)
P = P + \(x^i\) * \(y^j\);
end
end
fval \(=1\)/(1 - x - y + x*y);
errAbs = abs(fval - P);
errRel = errAbs / abs(fval);
end
Passo 5
Para analisar a convergência e decidir até que
vale a pena:
- Use chamadas em loop para vários
crescentes (por ex. ) e registre errRel
. - Plote
errRel
versuspara ver onde atinge a tolerância desejada (por ex. ). - Assim que
errRel < ε
, aumentartraz ganho desprezível.
Passo 6
Em termos teóricos, se definirmos
a parte da série omitida (resto) pode ser estimada por
Para garantir
basta escolher
Ou seja, quando
atingir esse valor, o erro é tão pequeno que elevar
não compensa.
Resposta
Segue o código MatLab em
taylor2D_f.m
acima, junto com o critério teóricocom
, para determinar a partir de qual
o erro fica suficientemente pequeno.