How can I obtain the right convergence number from what I have done so far??

1 visualización (últimos 30 días)
Hello Everybody, I hope you are doing well.
I was asked to write a script which calculates the number of terms or iterations needed for a taylor series approximation of cos(x) to converge using a while.
The condition requires that the loop should continue as long as abs(Estimate – Previous Estimate) exceeds 0.00001.
Here is my script:
clc
clear
PreviousEstimate = inf;
x = input('Enter the angle in radians: ');
Count = 0;
Estimate = 1;
while abs(Estimate - PreviousEstimate) > 0.00001
Estimate(Count+1) = (-1)^Count*(x.^(2*Count))/factorial(2*Count);
Count = 0 + 1;
PreviousEstimate = Estimate;
end
fprintf('%i terms required for convergence. \n',Count)

Respuesta aceptada

Mathieu NOE
Mathieu NOE el 11 de En. de 2021
hello
this seems to work better - :)
clc
clear
x = input('Enter the angle in radians: ');
Count = 0;
Estimate = inf;
PreviousEstimate = 0;
while abs(Estimate - PreviousEstimate) > 1e-6
PreviousEstimate = Estimate;
Estimate = (-1)^Count*(x.^(2*Count))/factorial(2*Count);
Count = Count + 1;
end
fprintf('%i terms required for convergence. \n',Count)
  4 comentarios
Edivaldo Bartolomeu
Edivaldo Bartolomeu el 12 de En. de 2021
My bad Mathieu you are absolutely right, I made a mistake in the first attempts.
Thanks for your help.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Smoothing en Help Center y File Exchange.

Productos


Versión

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by