我正在使用下面的代码生成正弦波,它工作正常。然而,当我尝试使用500kHz的大频率并将时间周期改为0.2us时,我希望得到一个时间周期为0.2us的完整正弦波,但我得到的只是一条直线,不知道为什么。< / p>
def sampled_sine_wave(freq):
samples = 1000
time_period = 2e-7
time = linspace(0,time_period,samples)
_ = plot(time,[sin(t*freq*2*np.pi) for t in time], linewidth=2)
Vin1=([np.sin(t*freq*2*np.pi) for t in time])
#print (Vin1)
return Vin1
有人可以告诉我为什么我会这样做,我该如何解决它。 感谢
答案 0 :(得分:1)
正如评论中提到的,你可能实际上并没有直线。如果您在该范围内graph it,它看起来几乎就像一条直线。实际上,在该范围的边缘,x=2e-7
处,正弦函数和5e5*x
具有less than a 7% difference。您可能打算使用time_period = 2e-6
的完整句点,looks more like a sine wave。你似乎知道该函数的周期是2微秒,但是2 microseconds is 2e-6 seconds, not 2e-7 seconds。