【发布时间】:2018-03-27 02:05:14
【问题描述】:
我有以下一些 matlab 代码:
f=@(h)(exp(-2*mun*(h/sigma+1.166))-1+2*mun*(h/sigma+1.166))/(2*mun^2)-ARL0;
参数并不重要,此时它们都只是常量。重要的是,现在我可以通过调用 f(h) 来评估任何 h 值的函数。特别是,我可以在我指定的任何间隔内找到函数的零点、最小值、最大值等。
我正在将这段代码翻译成 python,主要是作为学习 python 的练习,我想知道是否有任何类似的东西(可能在 numpy 中)我可以使用,而不是设置一个带有任意集合的 numpy 数组h 值来处理。
我可以做类似(伪代码)的事情:
f = numpy.array(that function for h in numpy.arange(hmin, hmax,hstep))
但这让我不得不步长。有什么办法可以避免这种情况并像在 matlab 中那样获得完整的精度?
编辑:一天结束时我真正想要的是找到函数 f 的零、最大值和最小值位置(不是值)。看起来 scipy 可能有一些在这里更有用的功能:http://docs.scipy.org/doc/scipy/reference/optimize.html
【问题讨论】:
标签: matlab python-2.7 numpy