Calculate summation with loop or sum

13 vues (au cours des 30 derniers jours)
Raja Ing
Raja Ing le 29 Mar 2018
Commenté : Raja Ing le 30 Mar 2018
Hello,
I have to calculate and plot the attached equation in MatLab using a FOR loop or the sum function. Please Help me !
here is my code:
% code
clc
clear all;
f=(0:10e3:1e6);
a =-48.38 ;
b =0.41 ;
c =-25.32 ;
S1 = a.*f.^b+c;
Amp=[33.37,29.67,10.05,16.38];
Freq = [25.02e-3,34.30e-3,66.64e-3,88.25e-3];
Eca=[3.37,3.46,1.47,0.79];
S2=0;
for i=1:numel(Amp)
ai = Amp(i);
fi =Freq(i);
ei =Eca(i);
S2=S2+ai.*((-1)*exp((f-fi).^2./(2.*ei.^2)));
end
S=S1+S2;
figure(1)
plot(f,S,'*b','linewidth',1),
grid on

Réponse acceptée

Torsten
Torsten le 29 Mar 2018
for i=1:numel(f)
f_actual = f(i);
S(i) = a*f_actual^b+c+sum(Amp.*exp(-(f_actual-Freq).^2./(2*Eca.^2)));
end
plot(f,S)
I don't know the reason for the (-1) in your code.
Best wishes
Torsten.
  1 commentaire
Raja Ing
Raja Ing le 30 Mar 2018
Thanks for your help, it resolve my problem!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur MATLAB dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by