Calculating energy and power of a signal
229 views (last 30 days)
Show older comments
geometry geometry
on 18 Mar 2018
Commented: Walter Roberson
on 24 Oct 2021
I tried this code to calculate energy and power of the input function f(x). but I get error. how can I fix it?
syms x y z energy pow t;
f=input('enter function: ','s');
f = symfun(eval(f), x);
f=f*conj(f);
f = str2func(['@(x)' vectorize(f)]);
z(t)=integral(y,-t,t);
energy=limit(z(t),t=infinity);
pow=limit(z/t,t=infinity)
0 Comments
Accepted Answer
Walter Roberson
on 18 Mar 2018
I suggest that instead of using
f = str2func(['@(x)' vectorize(f)]);
that you use
f = matlabFunction(f);
However, you could just comment out all of your handling of f, as you never use f after you make it into a function handle.
You have
z(t)=integral(y,-t,t);
At this point your y is a symbolic variable. integral() cannot be applied to symbolic variables: you would need to use int(y, -t, t) -- which is a value you can easily predict will be 0, since the integral of y with respect to y over y = a to y = b is 1/2 b^2 - 1/2 a^2 and with a = -t and b = -t that is going to be 1/2 t^2 - 1/2 (-t)^2 which is going to be 0.
2 Comments
More Answers (1)
SHREEVARSHINI R
on 24 Oct 2021
write a matlab program to find the energy and power of the signal x(t) = 10sin(10*pi*t).
See Also
Categories
Find more on Symbolic Math Toolbox in Help Center and File Exchange
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!