Invalid use of operator.

2 views (last 30 days)
Tobenna Uzuegbunam
Tobenna Uzuegbunam on 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 Comment
Tobenna Uzuegbunam
Tobenna Uzuegbunam on 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);

Sign in to comment.

Accepted Answer

Steven Lord
Steven Lord on 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 Comments
Steven Lord
Steven Lord on 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);

Sign in to comment.

More Answers (0)

Categories

Find more on Biological and Health Sciences in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!