如何在Octave中使用带自定义功能的地图?

时间:2012-07-29 07:21:46

标签: functional-programming octave

假设我有一个集合 A

A = [0:6:100]

我有一个函数 fib(n)

function retval=fib(n)
   g1=(1+5^.5)/2
   g2=(1-5^.5)/2
   retval=(1/5^.5)*(g1^n - g2^n)
endfunction 

我打算能够在 A 上应用 fib(n),并将其存储在B集合中,其中 B [i,j] (i,fib(i)),所以我可以绘制 i vs fib(i)并查看结果图表。

请告知我如何使用地图获取所需的集合 B

1 个答案:

答案 0 :(得分:13)

你可以这样做:

map(@fib, A)

@使fib成为函数句柄。请注意,map已被弃用,您应该使用arrayfun代替:

arrayfun(@fib, A)