Invalid use of operator.

4 vues (au cours des 30 derniers jours)
Tobenna Uzuegbunam
Tobenna Uzuegbunam le 20 Jan 2021
I'm try to perfom the simple equation:
i.e. the square root of the integral of the square of the signal (averaged av(t)).
But I keep getting the error message "Invalid use of operator.". Please help, I'm very new to MATLAB
Where av(t) = -8.1284e-05
t_full = 1.2726e+04
av(t) = -8.1284e-05
T = 1.2726e+04
int = sqrt(@(t).* (av(t))^2);
MSDV = quadgk(int,0,t_full);
  1 commentaire
Tobenna Uzuegbunam
Tobenna Uzuegbunam le 20 Jan 2021
Just a correction on the code used...
av(t) = -8.1284e-05
T = 1.2726e+04
int = sqrt(@(t).* (av(t))^2);
MSDV = quadgk(int,0,T);

Connectez-vous pour commenter.

Réponse acceptée

Steven Lord
Steven Lord le 20 Jan 2021
int = sqrt(@(t).* (av(t))^2);
That is not valid. You're not multiplying the square of av(t) by anything.
int = sqrt(@(t) (av(t))^2);
  3 commentaires
Steven Lord
Steven Lord le 20 Jan 2021
My mistake, I only focused on the operator. The square root operator needs to be inside the anonymous function.
int = @(t) sqrt(av(t)^2);
And you probably want to vectorize your function.
int = @(t) sqrt(av(t).^2);
Tobenna Uzuegbunam
Tobenna Uzuegbunam le 20 Jan 2021
Thank you!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Biological and Health Sciences 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