我有MATLAB代碼以下位:翻譯MATLAB代碼到Python:optmizing數值函數
[email protected](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
美麗,結合lambda函數和fsolve使我的工作非常容易。 – KBriggs 2015-03-16 16:45:56