I'd also like to add that I know there is taylor series functionality right in Matlab, but I'm using this example to get some experience with the symsum command.
Difficulty using "symsum" within a function definition
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I'm trying to define a function "ansin" that takes in an array of test values and outputs the function values of the n-th degree Taylor polynomial for sin(x). I am totally unfamiliar with symsum and just tried to do the best I could to copy the notation in the MatLab documentation . Below is the summation that I'm trying to emulate, the code I used and the error I got.

The only difference between the formula and my code is that I've replaced all the n's with k's so that "n" can stand for the degree of taylor polynomial I want. Also I am not summing to infinity but to "n".
testcases = -2*pi + (4*pi).*rand(2000,1);
pred1 = ansin(testcases,1);
pred2 = ansin(testcases,2);
pred3 = ansin(testcases,3);
pred4 = ansin(testcases,4);
function y = ansin(x,n)
y = symsum(((-1)^(k-1))*((x^(2*k-1))/factorial(2*k-1)), k, 1, n);
end
Undefined function or variable 'k'.
Error in Taylor_Polynomial_Practice>ansin (line 10) y = symsum(((-1)^(k-1))*((x^(2*k-1))/factorial(2*k-1)), k, 1, n);
Error in Taylor_Polynomial_Practice (line 2) pred1 = ansin(testcases,1);
Antworten (1)
Walter Roberson
am 27 Apr. 2018
This is correct. You do not have a definition for k.
syms k
2 Kommentare
Siehe auch
Kategorien
Mehr zu Calculus finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!