【发布时间】:2012-11-19 01:43:29
【问题描述】:
我在 Matlab 中递归地实现自适应辛普森方法。我希望存储进行函数评估的所有点,以在积分后生成直方图。我目前有:
function [S, points] = adsimp(f, a, b, fv, tol, level, points)
...
d = (a+b)*0.25;
e = (a+b)*0.75;
points = [points, d, e];
...
因此,对于每个函数调用,我将points 的长度增加了两倍。我对Matlab的函数输入/输出方案的理解很差。我想知道:
1) 当输入和输出共享一个变量名时,这是使用单个变量,还是制作一个本地副本然后返回?
2)如果是副本,有没有办法通过引用传递points并预先分配足够的内存?
【问题讨论】:
标签: matlab recursion pass-by-reference octave