MATLAB crashed when invoking symsum

1 vue (au cours des 30 derniers jours)
Maristie
Maristie le 4 Mai 2017
Commenté : Maristie le 9 Mai 2017
The minimal example:
symsum(log(nchoosek(100, x)), x, 0, 100)
I've got the sum using `for` statement just in less than 1s.
But when it comes to symsum, MATLAB just crashes.
I've tried this code both on my own machine (Debian 9.0, R2016b) and MATLAB online, but results are just the same.
Could you please help me out?
Thanks!

Réponse acceptée

Wilson A N
Wilson A N le 9 Mai 2017
This is probably because 'symsum' is trying to find some closed expression as an answer and it is unable to do so. If you use 'sum', it will try this out numerically and hence doesn't give an error. You can maybe try out the following command:
>>sum(subs(log(nchoosek(100, x)), x, 0:100))
  2 commentaires
Walter Roberson
Walter Roberson le 9 Mai 2017
Right. symsum() should only be used if you are trying to find a formula for the summation, not if you just want to add a number of terms together. To add terms together, generate the list of terms and sum() them, the way Wilson A N shows.
Maristie
Maristie le 9 Mai 2017
Thanks! It works!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur 光照、透明度和着色 dans Help Center et File Exchange

Produits

Community Treasure Hunt

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

Start Hunting!