represent a function in Matlab
4 views (last 30 days)
Show older comments
Alvaro Mª Zumalacarregui Delgado
on 1 Mar 2021
Commented: Alvaro Mª Zumalacarregui Delgado
on 1 Mar 2021
I don't understand the graph of this exponential function, it is look like a two line instead of an exponential, this is the code and the figure:
xo = 400;
yo = 7000;
x = 260;
y = 6954;
a = 0.5, b =0.4;
K = b*xo-a*yo;
t= 0:0.5:50
y = K./(exp((K*t)-(K*(log(b*xo/yo)/(-(K)))))-a);
figure
plot (t,y)
0 Comments
Accepted Answer
Steven Lord
on 1 Mar 2021
Let's look at your function symbolically.
xo = 400;
yo = 7000;
x = 260;
y = 6954;
a = 0.5; b =0.4;
K = b*xo-a*yo;
% t= 0:0.5:50
syms t
y = K./(exp((K*t)-(K*(log(b*xo/yo)/(-(K)))))-a);
vpa(y, 5)
That exponential term is the exponential of a very large (in magnitude) negative number. It very quickly underflows to 0.
format longg
fun = @(t) exp(-3340*t-3.7785);
t = logspace(-9, 0, 10).';
results = table(t, fun(t), 'VariableNames', ["t", "fun(t)"])
If we evaluated that at a symbolic value of 50, what's the value?
vpa(fun(sym(50)), 10)
When you're talking about numbers that small you're not quite at the probability of a monkey typing Hamlet first try, but maybe one of Shakespeare's shorter plays? For most other intents and purposes, that value is 0.
More Answers (0)
See Also
Categories
Find more on Line Plots 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!