我已经从python.org安装了python2.7(32位版本,即使我使用的是64位Windows 10),来自sourceforge和matplotlib的numpy运行:pip install matplotlib。现在我想使用以下命令从命令行运行代码:python2.7 fft.py FFT.in n dt
其中fft.py:是在速度分量上应用时间傅里叶变换的代码文件
FFT.in:输入文件,包括时间的速度值
n:是我们要在其中应用转换
的此文件的列和dt:是傅立叶变换的时间步长。
所以,虽然python似乎工作正常,(例如当我在python命令行中键入简单命令时),当我在所有这些文件所在的特定文件夹中的cmd命令行中运行上述命令时,我得到一个关于numpy的错误" ImportError没有名为numpy的模块"。
我还设置了环境变量,因此它们包含了python的路径和python脚本的路径。
你知道问题可能是什么吗?
提前感谢您的帮助。
这是fft.py中包含的代码:
#/usr/bin/python
import numpy as np
import matplotlib.pyplot as plt
import matplotlib
import sys
#matplotlib.rcParams.update({'font.size': 18})
#time,c1,c2,c3=np.loadtxt('stripl01_28.dat',usecols=(0,11,16,21),unpack=True)
#timestep=time[1]-time[0]
inp=sys.argv
fname=inp[1]
col=int(inp[2],10)
print col
a1,a2=np.loadtxt(fname,usecols=(col,0),unpack=True)
timestep=float(inp[3])
#omega=2*np.pi/(180*timestep)
#print omega
#k1=c1**2+c2**2+c3**2
#k11=c11**2+c22**2+c33**2
#fig1 = plt.figure(facecolor='white')
#ax = fig1.add_subplot(1,1,1)
#plt.xlim(0.001,10)
#ax.set_yscale('log')
#ax.set_xscale('log')
#plt.xlabel('f [Hz]',fontsize=20)
#plt.ylabel('S',fontsize=20)
#plt.grid('on')
k1=a1
fft=np.fft.fft(k1)
freq = np.fft.fftfreq(k1.size,d=timestep)
a=np.sqrt(fft.real**2+fft.imag**2)
b=freq>0
plt.plot(freq[b],a[b],label='t=1')
X=np.column_stack((freq[b],a[b]))
np.savetxt("fft.dat",X,fmt='%.18e',delimiter=' ')