How to make a serie ?

5 ビュー (過去 30 日間)
Yamina chbak
Yamina chbak 2020 年 12 月 16 日
編集済み: Yamina chbak 2020 年 12 月 18 日
Hi, i need to write a sum of serie :
with b_k= (k+1)^2-(k)^2 and u^(m-k) is the numerical solution approximation u(x,t_m-k) for k=1,...m-1 and m=1,....,20
for m=1:20
syms k u
b(k)=(k+1)^2-k^2;
F=symsum((b(k)-b(k+1))*u(:,m-k),k,1,m-1)
end
F
but i get error
Necessary I need u(:,m-k)
Please help me

採用された回答

Walter Roberson
Walter Roberson 2020 年 12 月 16 日
It is never possible to use a symbolic variable as an index in MATLAB.
You need to create a definite list of values and sum() the list. Or loop adding on to a total.
Note by the way that and so b(k) - b(k+1) = (2*k+1) - (2*(k+1)+1) = -2
  5 件のコメント
Walter Roberson
Walter Roberson 2020 年 12 月 17 日
Sorry, you are changing equations too much. Your equation here is quite different than your equation in your Question, and it is not really reasonable to answer both at the same time as they are too different. What is the question you need answered?
Note: using U(:,m-k) is not equivalent to as t is obviously a vector of values that as outside observers we need to assume is a real number in or possibly even in and cannot assume that t just happens to be linear indices . At the very least it is likely that t starts from 0, and so is not suitable for indexing. Indeed, since then k can equal m, and then would be 0, and that is not a valid matrix index.
Yamina chbak
Yamina chbak 2020 年 12 月 17 日
編集済み: Yamina chbak 2020 年 12 月 18 日
You are right !, I'm sorry @Walter Roberson. I just asked my first question in a simple formule of b but your answer is not i want. In fact, it's the same problem with different formule, it's all about calculate the sum of series matrix.
I have a matrix U(:,k). My final question : What is the best way to write the code to calculate sum of series matrix :?
This what i did before
alpha=0.2;b(0)=1.0;c(0)=2.^(1-alpha)-1;
S=U(:,1); %initialize of S
for m=2:20
for k=1:m
b(k)=(k+1).^(1-alpha)-k.^(1-alpha); c(k)=(k+2).^(1-alpha)-(k+1).^(1-alpha);
S=(b(k)-c(k))*U(:,m-k);
end
end
S
I'm sorry again, but I learned a lot from you.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMathematics についてさらに検索

製品

Community Treasure Hunt

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

Start Hunting!

Translated by