Hi guys, help me, please!

3 vues (au cours des 30 derniers jours)
Shadi Al-Ahmad
Shadi Al-Ahmad le 2 Oct 2019
How can I generate this recurrence formula a
(0)=1;a(1)=0;a(2)=3;a(3)=1/6;for n=2:28;a(n+2)=((6/((n+1)*(n+2)))*sum(a(i)*a(n-i);i=0..n));end
  9 commentaires
Walter Roberson
Walter Roberson le 2 Oct 2019
As I wrote, you need to figure out how to rewrite the sum(a(i+1)*a(n-i+1);i=0..n)) part. MATLAB does not offer any syntax for summation that uses variable=lower..upper notation (not unless you get fairly far into how the Symbolic Toolbox actually works.) MATLAB offers a symbolic summation of the form
symsum(SYMBOLIC_EXPRESSION, SYMBOLIC_VARIABLE, LOWER_BOUND, UPPER_BOUND)
however, the SYMBOLIC_VARIABLE cannot be used to index any array. symsum() is not intended for summation of a small finite number of terms: it is intended for creating formulas, such as
symsum(m^2, m, 1, n)
to get out the formula for the sum of squares of the first n numbers.
You need to find a different way to do the summation of indexed variables.
Shadi Al-Ahmad
Shadi Al-Ahmad le 2 Oct 2019
Thank you Mr Walter

Connectez-vous pour commenter.

Réponses (1)

James Tursa
James Tursa le 2 Oct 2019
MATLAB indexing is 1-based, not 0-based. You will need to adjust your indexing:
a(1) = 1;
a(2) = 0;
:
etc
  4 commentaires
Shadi Al-Ahmad
Shadi Al-Ahmad le 2 Oct 2019
Mr John, could you help me and write full MATLAB code for my problem, please?
Walter Roberson
Walter Roberson le 2 Oct 2019
You need to find a different way to do the summation of indexed variables.
Hint: use .* instead of * and vectorize
Hint:
>> A = [1 3 5 7]; A(1:3) .* A(2:4)
ans =
3 15 35

Connectez-vous pour commenter.

Catégories

En savoir plus sur Matrix Indexing dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by