当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python cusignal.waveforms.waveforms.square用法及代码示例


用法:

cusignal.waveforms.waveforms.square(t, duty=0.5)

返回一个周期性的square-wave 波形。

方波的周期为 2*pi ,从 0 到 2*pi*duty 的值为 +1,从 2*pi*duty2*pi 的值为 -1。 duty 必须在区间 [0,1] 内。

请注意,这不是band-limited。它产生无限数量的谐波,这些谐波在频谱上来回混叠。

参数

tarray_like

输入时间数组。

duty数组,可选

占空比。默认值为 0.5(50% 占空比)。如果是数组,则导致波形随时间变化,并且必须与 t 长度相同。

返回

yndarray

包含方波的输出数组。

例子

以 500 Hz 采样 1 秒的 5 Hz 波形:

>>> import cusignal
>>> import cupy as cp
>>> import matplotlib.pyplot as plt
>>> t = cp.linspace(0, 1, 500, endpoint=False)
>>> plt.plot(t, cp.asnumpy(cusignal.square(2 * cp.pi * 5 * t)))
>>> plt.ylim(-2, 2)

pulse-width 调制正弦波:

>>> plt.figure()
>>> sig = cp.sin(2 * cp.pi * t)
>>> pwm = cusignal.square(2 * cp.pi * 30 * t, duty=(sig + 1)/2)
>>> plt.subplot(2, 1, 1)
>>> plt.plot(cp.asnumpy(t), cp.asnumpy(sig))
>>> plt.subplot(2, 1, 2)
>>> plt.plot(cp.asnumpy(t), cp.asnumpy(pwm))
>>> plt.ylim(-1.5, 1.5)

相关用法


注:本文由纯净天空筛选整理自rapids.ai大神的英文原创作品 cusignal.waveforms.waveforms.square。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。