how to solve an exponential equation with one unknown in matlab
3 views (last 30 days)
Show older comments
Alice Faisal
on 19 Jul 2018
Answered: Abraham Boayue
on 20 Jul 2018
I have an equation that need to be solved for rs, and I could'nt get the answer in matlab I have values for the other parameters and I need to get rs. But when computing it on MATLAB I dont get a correct answer This is the equation
exp((-pi*ra)/rs)+exp((-pi*rb)/rs)=1
ra=90.82*10^6 rb=90.23*10^6 so only rs in unknown
1 Comment
Accepted Answer
Abraham Boayue
on 20 Jul 2018
Try the following code which uses Newton's method to find the root of the f(x) = 0.
close all;
clc;
N = 50;
ra = 90.82e6;
rb = 90.23e6;
a = pi*ra;
b = pi*rb;
tol = 1e-10;
x0 = 0;
x = x0;
xn = x;
for k = 1:N
f = exp(-a*x) + exp(-b*x)-1;
fd = -(a*exp(-a*x) + b*exp(-b*x));
x = x-f/fd;
err = abs(x-xn);
xn = x ;
if err<tol
break;
end
end
rs = 1/xn;
disp(rs)
0 Comments
More Answers (1)
madhan ravi
on 20 Jul 2018
Edited: madhan ravi
on 20 Jul 2018
%Try this:
syms rs
ra=90.82*10.^6
rb=90.23*10.^6
rs=vpasolve(exp((-pi.*ra)./rs)+exp((-pi.*rb)./rs)-1,rs)
0 Comments
See Also
Categories
Find more on Numerical Integration and Differential Equations 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!