Python 在循环中使用正弦采样进行每窗体计算
我试图生成一个正弦波并对其进行采样,然后获取每个样本,并使用样本值执行计算,将计算值保存在一个数组中,最后根据正弦波绘制输出数组。然而,我无法做到这一点下面是我的代码Python 在循环中使用正弦采样进行每窗体计算,python,Python,我试图生成一个正弦波并对其进行采样,然后获取每个样本,并使用样本值执行计算,将计算值保存在一个数组中,最后根据正弦波绘制输出数组。然而,我无法做到这一点下面是我的代码 def sampled_sine_wave(freq): samples = 1000 time_period = 1 time = linspace(0,time_period,samples) _ = plot(time,[sin(t*freq*2*np.pi) for t in time])
def sampled_sine_wave(freq):
samples = 1000
time_period = 1
time = linspace(0,time_period,samples)
_ = plot(time,[sin(t*freq*2*np.pi) for t in time])
Vin=sampled_sine_wave
if Vin > 0:
Vpos=Vin
dw = (1 - numpy.exp(-(1-w)/1))*lamda*((eta1)* numpy.sinh(eta2*Vpos) - (w/tau)) * dt
elif Vin < 0:
Vneg=Vin
dw = (1- numpy.exp(-w/0.3))*lamda*((eta1) * numpy.sinh(eta2*Vneg) - (w/tau)) * dt
current=((1-dw) * alpha * (1 - numpy.exp(-beta * Vin)) + (dw * gamma * numpy.sinh(delta * Vin)))
def采样正弦波(频率):
样本=1000
时间周期=1
时间=linspace(0,时间段,样本)
_=绘图(时间,[sin(t*freq*2*np.pi)表示时间为t])
Vin=采样的正弦波
如果Vin>0:
Vpos=Vin
dw=(1-numpy.exp(-1-w)/1))*lamda*((eta1)*numpy.sinh(eta2*Vpos)-(w/tau))*dt
elif Vin<0:
Vneg=Vin
dw=(1-numpy.exp(-w/0.3))*lamda*((eta1)*numpy.sinh(eta2*Vneg)-(w/tau))*dt
电流=((1-dw)*alpha*(1-numpy.exp(-beta*Vin))+(dw*gamma*numpy.sinh(delta*Vin)))
因此,回到我的解释,我试图用0.001s时间步长“dt”对Vin进行采样,在这个特定的时间步长,我将比较大于或小于零的Vin值来计算“dw”,然后使用这个“dw”来计算“current”,并将计算出的电流保存在阵列中,以便根据Vin对应的点/样本绘制
那么,有人能帮我吗。提前感谢您应该先在页面顶部导入numpy,如下所示:
from numpy import *
如果你没有numpy模块,你可以下载它