How to plot two exponential functions on Matlab?
Mostrar comentarios más antiguos
I need to plot the two exponential functions on same graph. Please help me to write code. Thanks in advance.
f(x) = exp(-(((x-2)/3)^2)/2)
g(x) = 1-exp(-(((x-2)/3)^2))
Respuesta aceptada
Más respuestas (1)
Hi @Amna Habib
Try this:
x = -10:0.01:12;
f = exp(-(((x-2)/3).^2)/2);
g = 1-exp(-(((x-2)/3).^2));
plot(x, f, x, g)
xlabel('x')
legend('f(x)', 'g(x)')
grid on

6 comentarios
Amna Habib
el 28 de Mzo. de 2022
Sam Chak
el 28 de Mzo. de 2022
Hi @Amna Habib
First, we plot
to see how it looks like.
x = -10:0.01:12;
f = exp(-(((x-2)/3).^2)/2);
g = 1-exp(-(((x-2)/3).^2));
h = f.^2 + g.^2;
plot(x, f, x, g, x, h, 'linewidth', 1.5)

Mathematically speaking, there is only one point where
, and this point is at the center of the function, that is
, because the Gaussian distribution function will never truly reach zero, unless you consider the trivial solutions at
.
To show you this, type this:
index = find(h == 1);
x(index)
and it returns the value of 2.
Hence, when you asked about
, the answer is naturally all real values of x. But I guess this is probably not what you are looking for. If you want to find x when
is approaching 1, then try this:
index = find(h < 0.999);
x_min = x(min(index))
x_max = x(max(index))
x_min = -5.8800
x_max = 9.8800
Compare these values with the plot of
above, and decide if the results are satisfactory.
Amna Habib
el 28 de Mzo. de 2022
Amna Habib
el 29 de Mzo. de 2022
Torsten
el 29 de Mzo. de 2022
X = -12:0.01:12;
f = zeros(size(X));
g = zeros(size(X));
f(X<=0) = exp(-((X(X<=0)/3).^2)/2);
f(X>0) = exp(-((X(X>0)/2).^2)/2);
g(X<=0) = 1 - exp(-((X(X<=0)/3).^2));
g(X>0) = 1 - exp(-((X(X>0)/2).^2));
h = f.^2 + g.^2;
plot(X,[f;g;h],'linewidth',1.5)
Amna Habib
el 30 de Mzo. de 2022
Categorías
Más información sobre Numerical Integration and Differentiation en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




