Newton Raphson equation trig functions
2 views (last 30 days)
Show older comments
Derek Reitnouer
on 31 Aug 2018
Commented: Muhammad Qasim
on 5 Jul 2021
Trying to calculate root to an equation using newton raphson. also need to tabulate the results. the table isn't showing any info though.
clc
clear all
syms x
T = []; % Define table
x0 = .1; % Define Initial Value
i = 1; % Define Counter
N = 10; % Define max number of iterations
% Define Variables
S = 5281.716;
L = 5280;
f(x) = x - (S/L) * sin(x); % Define Function
df = diff(f); % Differential Function
while i <= N
x = x0 - (f(x0)/df(x0)); % Newton-Raphson Equation
if abs(x-x0) <= 10^-8
return
end
R = S/(2*x0); % Radius
d = R*(1-cos(x0)); % Distance d
T = [T; i x0 R d];
i = i + 1; % Increase Counter
x0 = x; % Update value of x0
vpa(x0) % Decimal
end
T = table(Iteration, Theta, Radius, d);
5 Comments
Accepted Answer
James Tursa
on 31 Aug 2018
Instead of doing all of this as symbolic, it would probably have been simpler to use function handles and work in double. That being said, maybe just convert your stuff to double as you accumulate it:
T = [T; double([i x0 R d])];
Then you can use T to plot stuff directly.
Also, it would make more programming sense to change that "return" statement to a "break" statement.
More Answers (1)
See Also
Categories
Find more on Symbolic Math Toolbox 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!