Siz ushbu va boshqalarning hujjatlarini http:// greenteapress.com/thinkdsp.html manzilida
o'qishingiz mumkin.
•
Ammo Wave ko'plab umumiy operatsiyalarni bajaradigan usullarni taqdim etadi. Masalan,
bir xil ikkita transformatsiya yozilishi mumkin: wave.scale(2) wave.shift(1)
• chastota: soniyada sikldagi chastota yoki Gts.
amplituda: amplituda. Amplituda birliklari o'zboshimchalik bilan tanlanadi,
odatda
1,0 mikrofondan maksimal kirishga yoki karnayga maksimal maksimal chiqishga
mos keladi.
Birinchi qator to'lqinni 2 marta o'lchaydi, bu esa uni balandroq qiladi. Ikkinchi chiziq
to'lqinni o'z
vaqtida siljitadi, bu esa 1 soniyadan keyin boshlanadi.
__init__ parametrlari:
To'lqinni o'zgartirish uchun siz to'g'ridan-to'g'ri ts va ys ga kirishingiz mumkin.
Masalan: wave.ys *= 2 wave.ts += 1
To'lqin shuningdek, faqat o'qish uchun uchta xususiyatni taqdim etadi: boshlanish,
tugatish va
davomiylik. Agar siz ts ni o'zgartirsangiz, bu xususiyatlar mos ravishda o'zgaradi.
self.func = func
9
def __init__(self, freq=440, amp=1.0, offset=0, func=np.sin): Signal.__init__(self)
self.freq = freq self.amp = amp self.offset = offset
1.7. Signal ob'ektlari
Misol uchun, Sinusoid Signalning asosiy sinfidir, bu ta'rif bilan: Sinusoid (Signal)
sinfi:
Signal - bu make_wave kabi barcha turdagi signallar
uchun umumiy funktsiyalarni
ta'minlovchi asosiy sinf. Bolalar sinflari ushbu usullarni meros qilib oladi va signalni
ma'lum bir ketma-ketlikda baholaydigan baholashni ta'minlaydi.
• ofset: signal o'z davrining qayerdan boshlanishini ko'rsatadi; ofset radian birliklarida,
men quyida tushuntirib beradigan sabablarga ko'ra.
1.7 Signal ob'ektlari
Machine Translated by Google
2. PI2
2p ni saqlaydigan doimiydir . PI2 ga ko'paytirish
davrlardan fazaga o'tadi. Fazani
radyanlarda ifodalangan "boshlanish vaqtidan boshlab davrlar" deb o'ylashingiz
mumkin. Har bir tsikl
2p radianga teng.
def make_wave (o'z-o'zidan, davomiylik = 1, boshlanish = 0, kadr tezligi = 11025):
1. self.freq - sekundiga aylanish chastotasi va ts ning har bir elementi soniyalardagi
vaqt, shuning uchun ularning mahsuloti boshlanish vaqtidan boshlab davrlar soni.
Signal make_wave beradi, bu quyidagicha ko'rinadi:
fazalar = PI2 * self.freq * ts + self.offset ys = self.amp *
self.func(fazalar)
qaytish ys
Keling, ushbu funktsiyani bir vaqtning o'zida bo'shatamiz:
+self.amp uchun.
foydalanish.
def evaluate (self, ts):
5. Self.amp ga ko'paytirilsa, -self.amp oralig'idagi signal hosil bo'ladi
Ko'pgina boshlang'ich usullari singari, bu faqat kelajak uchun parametrlarni o'chirib qo'yadi
• func: Python funksiyasi signalni vaqtning ma'lum bir nuqtasida baholash uchun
ishlatiladi. Odatda u np.sin yoki np.cos bo'lib, sinus yoki kosinus signalini beradi.
Sinusoid:
+1.
10
Ysni hisoblash uchun make_wave
evaluate ni chaqiradi, bu tomonidan taqdim etiladi
o'z vaqtida chapga yoki o'ngga signal bering.
4. Agar self.func np.sin yoki np.cos bo'lsa, natija -1 va orasidagi qiymat bo'ladi.
Do'stlaringiz bilan baham: