3Dフィールド上の3ネストループを単純化する方法はありますか?コードは次のようになります。
from itertools import product
for kx, ky, kz in product(freq, freq, freq):
k = np.sqrt(kx**2+ky**2+kz**2)
if int(k+0.5) < N/2.0:
yaxes[field][int(k+0.5)] += A[kx][ky][kz]
Aの形状は(N、N、N)であり、freqは長さNの特別な反復です。おそらく、このコードを実行するためのnumpy-toolがあるため、これを長くする必要があります。