How can I obtain the right convergence number from what I have done so far??
1 view (last 30 days)
Show older comments
Edivaldo Bartolomeu
on 11 Jan 2021
Commented: Mathieu NOE
on 12 Jan 2021
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)
0 Comments
Accepted Answer
Mathieu NOE
on 11 Jan 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 Comments
More Answers (0)
See Also
Categories
Find more on Smoothing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!