Hello,
I'd like to plot a decaying exponential function similar to this plot, while being able to vary the spike time and rate of decay as well as the amplitude.
decaying.gif
I tried to use the following script but it does not produce a similar plot
t=0:100;
spike_time = 20;
spike_peak =0.2;
spike_decay =5;
g = zeros(length(t),1);
for k = 1:length(t)
if t(k) <= spike_time
g = 0;
else
g = spike_peak*exp(-(t-spike_time)/spike_decay);
end
end
plot(t,g)

 採用された回答

gonzalo Mier
gonzalo Mier 2019 年 5 月 6 日

0 投票

Congratulation! You have your algorithm almost working, but you are using vector when you should be using scalars (As you have your code implemented. Try with this:
t=0:100;
spike_time = 20;
spike_peak =0.2;
spike_decay =5;
g = zeros(length(t),1);
for k = 1:length(t)
if t(k) <= spike_time
g(k) = 0;
else
g(k) = spike_peak*exp(-(t(k)-spike_time)/spike_decay);
end
end
plot(t,g)
As I said before, good job

2 件のコメント

Romio
Romio 2019 年 5 月 6 日
Thank you!
gonzalo Mier
gonzalo Mier 2019 年 5 月 6 日
Don't forget to accept the answer if it worked for you ;)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File Exchange で Particle & Nuclear Physics についてさらに検索

製品

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by