Hello! I want to implement a formula such F(k)=k*symsum(x(n)*n,n,1,8). There is my code, but i don't know how to put vector x(n) in that sum. It doesn t work.
x=[1 3 5 4]
syms x k n
F(k)=k*symsum(x(n)*n,n,1,4)
That s my code. I want to do>>>>>>>>>>> F(k)=k*[x(1)*1+x(2)*2 +x(3)*3....], but i want the valueof x(1) and x(2)...
So the result may be>>>>>>>>>>>> F(k)=k*[1*1+3*2+5*3+4*4]

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 5 Mär. 2021

0 Stimmen

You are attempting to index x with a symbolic variable. That is not possible with MATLAB, and that is something that is not expected to change any time soon.
Construct the definite terms instead
nx = x(:)*(1:length(x));
F(k) = k*nx;
Note that the first line is algebraic matrix multiplication * operator, column * row giving scalar result

3 Kommentare

Mihai Iustinian
Mihai Iustinian am 5 Mär. 2021
Ok, but if x=sin(2*pi*1/32*(0:127))? It is a sinusoidal signal with 4 period, represented on 128 point.
How do I construct x now?
syms k
n = 1:128;
Pi = sym(pi);
x = sin(2*Pi*1/32*(n-1));
nx = simplify(n * x(:))
nx = 
F(k) = k*nx
F(k) = 
Mihai Iustinian
Mihai Iustinian am 6 Mär. 2021
Thanks!!!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte

Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by