forked from wtpc/HOoop
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgenerador.py
34 lines (22 loc) · 857 Bytes
/
generador.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
"""
Un generador de senal es el responsable de generar una senal portadora.
"""
class Generador(object):
def __init__(self, amplitud, fase, frecuencia):
self.amplitud = amplitud
self.fase = fase
self.frecuencia = frecuencia
# muestras por segundo
self.frecuencia_muestreo = frecuencia*3
def generar(self, tiempo_inicial, tiempo_final):
import math
cantidad_muestras = int(((tiempo_final - tiempo_inicial).seconds/\
self.frecuencia_muestreo))
muestras = range(cantidad_muestras)
ret = [self.amplitud*math.sin(2*(1/self.frecuencia)*i+self.fase) \
for i in muestras]
# agrego ruido blanco ruido blanco
mean = 0
std = 0.01
ruido = np.random.normal(mean, std, size=cantidad_muestras)
return ret+ruido