基本的に一般化された高調波数を返す関数があります。
def harmonic(limit, z):
return numpy.sum(1.0/numpy.arange(1, limit+1)**z)
現在の関数定義の 2 つの例を次に示します。
>>> harmonic(1, 1)
1.0
>>> harmonic(2, 1)
1.5
お察しのとおり、 がスカラーの場合limit
は問題なく機能しますが、この関数を 1D および 2D 配列でも機能させるにはどうすればよいでしょうか?
以下は、達成したい関数の出力例を示しています
>>> limit = np.array([[1, 2], [3, 4]])
>>> harmonic(limit, 1)
array([[1.0, 1.5], [1.833, 2.083]])