Out of these two methods, which one is computationally intensive and why?

10 vues (au cours des 30 derniers jours)
I have a signal, let's say A6. It has 300 sample points. There are two different methods to estimate the magnitude of the signal. I want to know which method is computationally intensive.
The steps of the first method are as followed,
Step1: A = A6 - mean(A6);
Step2: B = A .* A;
Step3: C = cumsum(B);
Step4: D = trapz(C);
D represents the magnitude of the signal in terms of area under the curve.
The steps of the second method are as followed,
Step1: A = A6 .* A6;
Step2: B = cumsum(A);
Step3: Mean Square Error (MSE) between B and fitted straight line.
The value of the MSE represents the magnitude of the signal.
Thanks,
Irtaza
  2 commentaires
James Tursa
James Tursa le 25 Déc 2017
Why don't you code both of them up and then run the profiler?
Syed Haider
Syed Haider le 25 Déc 2017
Thanks for the suggestion but I am looking for the theoretical explanation. Step4 of the first method vs. Step3 of the second method.

Connectez-vous pour commenter.

Réponse acceptée

Walter Roberson
Walter Roberson le 25 Déc 2017
trapz should have a lower constant of proportion because it is sum(C) - (C(1)+C(end)) /2 whereas mse requires sqrt(sum((C-B).^2)). Both are linear in size but one requires squaring as well as sum.
  2 commentaires
Syed Haider
Syed Haider le 26 Déc 2017
Thanks Walter for the explanation. Is there a method faster than trapz to calculate the area under the curve.
Walter Roberson
Walter Roberson le 26 Déc 2017
Unless you have a formula for the curve, there would be no way to calculate the area without examining each value at least once, which is all that trapz requires.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Numerical Integration and Differentiation dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by