2 views (last 30 days)

Show older comments

Hi,

I am trying to implement the power formula which is in the attached image.

I have written my code like this:

.

.

syms N; %Power formula

syms fs_sym;

fs_sym=sym(fs);

N=fs_sym*3;

syms x_hsym;

syms n;

syms f1;

syms f;

syms Power;

x_hsym=sym(x_h);

%f= (1/(2*N+1))*symsum((abs(x_h(n))),n,-N,N);

f1=symsum((abs(x_hsym(n))),n,-N,N);

f= (1/(2*N+1))*f1;

Power=limit(f,N,inf);

This code is in continuation with some more code. So x_h along with other variabes were double, so I changed all of them to symbolic variales. But I am getting error:

Error using sym/subsindex (line 814)

Invalid indexing or function definition. Indexing must follow MATLAB indexing. Function arguments must be symbolic variables, and

function body must be sym expression.

Error in sym/subsref (line 859)

R_tilde = builtin('subsref',L_tilde,Idx);

Error in BestAlgorithmDetection (line 97)

f1=symsum((abs(x_hsym(n))),n,-N,N);

I tried a couple of things, but cannot fix it. Can anyone help or provide a better way to implement the avove formula?

Alan Stevens
on 28 Jun 2021

Like this?

% Arbitrary values - replace with your own

fs = 1;

x_h = @(n) 1/(n+10)^2;

%Power formula

syms N fs_sym x_hsym n f Power;

fs_sym=sym(fs);

N=fs_sym*3;

f= (1/(2*N+1))*symsum((abs(x_h(n))),n,[-N,N]);

Power=limit(f,n,inf);

disp(Power)

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

Start Hunting!