How to I create a function handle through recursion?

1 Ansicht (letzte 30 Tage)
Nathan Phelps
Nathan Phelps am 26 Okt. 2020
Kommentiert: Nathan Phelps am 26 Okt. 2020
I want to output a polynomial using values from a vector. Kind of like how you'd add recursively for a running sum, I'm trying to add terms recursively.
If my function is f(t) and A is a matrix of values, I'd want f(t) to be:
f(t) = A(1,1) + A(2,1) * t^1 + A(3,1) * t^2 + ... + A(n,1) * t^(n-1)
Edit: I forgot to add that I'm calculating the A matrix in the function, so the length isn't known, hence why I need to create the function recursively.

Akzeptierte Antwort

Stephen23
Stephen23 am 26 Okt. 2020
Bearbeitet: Stephen23 am 26 Okt. 2020
I don't see any reason why you need any recursion, basic vectorized code works just fine:
V = 0:size(A,1)-1;
F = sum(A(:,1).*t.^V(:))
  3 Kommentare
Stephen23
Stephen23 am 26 Okt. 2020
>> A = randi(9,5,3)
A =
7 8 4
1 7 4
3 3 7
1 9 8
1 1 2
>> V = 0:size(A,1)-1;
>> fun = @(t) sum(A(:,1).*t.^V(:));
>> fun(2)
ans =
45
>> fun(5)
ans =
837
Nathan Phelps
Nathan Phelps am 26 Okt. 2020
I read my initial output wrong, thanks for the help!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Produkte


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by