どのようにnumpyのを使用してシグマ表記を再作成するのですか?

パメラ:

私は、Python、numpyのとmatplotlibのを使用して、次の関数をプロットする必要があります。

画像内の関数を参照してください。

N = 5、20および60の値について。

私が使用して奇数番号のリストを作成しました:

def odd(n):
nums = []
for i in range(1, 2*n, 2):
    nums.append(i)
return nums

しかし、私は奇数(N)の範囲のための機能上で、私のxの値との和を変更する必要があるため、シグマ機能でこれを使用する方法がわかりません。

ALY Hosny:

このコードは、ループなしであり、XおよびNの任意の値のために働くべきです

xは1つの以上の要素を持つ配列またはリストでなければなりません

import numpy as np
from numpy import matlib
import matplotlib.pyplot as plt

def psi(x,N):
   n=np.arange(0,N,2)+1 
   sigma = matlib.repmat((-1)**((n-1)/2),len(x),1).T*np.sin(matlib.repmat(n,len(x),1).T*x)
   PSI = (2/(N+1))*np.sum(sigma,axis=0)
   return PSI
x=np.linspace(0,2*np.pi,50)
N=5
y = psi(x,N)
plt.plot(y)

ここでは、画像の説明を入力します。

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=14649&siteId=1