#N canvas 47 31 1236 676 10;
#X obj 170 397 loadbang;
#X obj 732 417 v pi;
#X obj 170 420 samplerate~;
#X obj 489 348 nbx 5 14 -1e+37 1e+37 0 0 hz empty empty 0 -8 0 10 -261682
-1 -1 9028.35 256;
#X obj 489 407 nbx 8 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-204786 -1 -1 1.28632 256;
#X text 571 406 Radianos por Amostra;
#X text 549 463 Hz;
#X obj 489 463 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-261682 -1 -1 89106.2 256;
#X text 549 346 Hz/cps;
#X obj 898 338 *;
#X obj 913 272 nbx 5 14 -1e+37 1e+37 0 0 empty hz empty 0 -8 0 10 -261682
-1 -1 9028.35 256;
#X text 973 270 Hz;
#X obj 898 237 nbx 5 14 0 1e+37 0 0 empty empty empty 0 -8 0 10 -204786
-1 -1 30 256;
#X obj 898 423 nbx 9 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-192317 -1 -1 0.777407 256;
#X floatatom 913 316 7 0 0 0 - - -;
#X text 958 235 n = Amostra;
#X text 994 422 x[n];
#X floatatom 898 364 7 0 0 0 - - -;
#X text 948 364 radianos;
#X text 929 338 n.w = radianos;
#X text 961 316 w = radianos/amostra;
#X obj 898 393 sin;
#X obj 492 320 hsl 128 15 0 22050 0 0 empty empty empty -2 -8 0 10
-261682 -1 -1 5200 1;
#X text 846 197 Abaixo temos isso implementado explicitamente em um
patch.;
#X text 844 134 Vemos então que \, ao multiplicarmos o número da amostra
pela velocidade angular \, temos um valor em radianos \, que alimenta
uma função como a seno [sin] e dá um valor de amplitude.;
#X obj 1006 597 cnv 15 180 40 empty empty empty 20 12 0 14 -196478
-66577 0;
#X text 841 562 Senóide em função do tempo (número de amostra):;
#X text 435 120 O valor de tempo de uma amostra depende \, claramente
\, do valor da Taxa de Amostragem. Uma taxa de 44100 por segundo nos
dá 1 / 44100 segundo por amostra \, que é um intervalo de tempo minúsculo
\, em torno de 0.227 ms.;
#X obj 170 447 v sr;
#X obj 913 293 expr $f1 * (2 * pi) / sr;
#X text 38 26 A esse ponto já deve estar claro como a Frequência é
dada por uma velocidade angular! Vimos que a velocidade em que a fase
(ou ângulo) corre determina a frequência de oscilação.;
#X obj 90 200 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-261682 -1 -1 0 256;
#X text 150 198 Hz/cps;
#X obj 90 261 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-262130 -1 -1 0 256;
#X obj 90 228 expr 1000 / $f1;
#X obj 241 230 expr 1000 / $f1;
#X obj 241 255 nbx 5 14 -1e+37 1e+37 0 0 hz empty empty 0 -8 0 10 -261682
-1 -1 0 256;
#X text 301 253 Hz/cps;
#X obj 241 203 nbx 5 14 -1e+37 1e+37 0 0 hz empty empty 0 -8 0 10 -262130
-1 -1 0 256;
#X text 303 201 ms;
#X text 38 77 Cada ciclo de oscilação possui um período \, que é o
inverso da frequência. ou seja \, uma frequência de 100 ciclos por
segundo dá um período de 0.01 segundo \, ou 10 ms. Abaixo \, temos
a conversão de frequência em Hz/cps para um período em ms \, que é
o mesmo que a conversão contråria. Basta inverter e multiplicar por
1000 \, ou apenas dividir 1000 pelo valor.;
#X text 151 261 ms;
#X obj 732 390 pi;
#X obj 159 489 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-261682 -1 -1 0 256;
#X text 219 487 Hz/cps;
#X obj 159 550 nbx 5 14 -1e+37 1e+37 0 0 empty empty empty 0 -8 0 10
-262130 -1 -1 0 256;
#X obj 159 517 expr sr / $f1;
#X text 220 550 período em amostras;
#X text 439 253 Abaixo fazemos as conversões de Hz para Radianos por
amostra e vice-versa.;
#X text 449 566 A velocidade angular em radianos por amostra é útil
em computação musical em diferentes momentos \, como para definir a
amplitude em função do número da amostra. Considere a fórmula a seguir:
;
#X text 445 511 Entenda que \, em radianos por amostra \, o registro
de 0 Hz até a frequência de Nyquist equivale ao intervalo entre 0 e
pi (e a taxa de amostragem é 2pi).;
#X text 48 304 Outra forma de definir o tempo do período é em número
de amostras. Para essa conversão \, precisamos do valor da taxa de
Amostragem. Basta então \, igualmente \, dividir a taxa de amostragem
pelo valor dado \, e também tanto faz se convertemos frequência em
período ou vice-versa.;
#X text 54 590 Um ciclo de oscilação compreende a volta inteira de
um ângulo no círculo. Logo \, uma volta por segundo é o mesmo que dizer
360 graus por segundo. Por isso \, Hertz pode ser considerada como
uma medida de velocidade angular.;
#X text 433 32 A velocidade angular é uma medida de ângulo por tempo
mas podemos definir outras medidas de ângulo e de tempo. O ângulo \,
por exemplo \, ser dado em radianos \, já o valor de tempo pela taxa
de amostragem (tempo entre uma amostra e outra). Essa medida de velocidade
angular é chamada de "Radianos por Amostra".;
#X text 438 188 Converter Hz para Radianos por Amostra não é difícil.
Primeiro multiplicamos por 2pi \, que é o valor de ângulo de um ciclo
em radianos. Agora falta apenas ajustar a medida de tempo \, que é
só dividir pela taxa de amostragem.;
#X obj 489 379 expr $f1 * 2*pi / sr;
#X obj 489 437 expr $f1 * sr / 2*pi;
#X text 851 61 onde \; - x[n] é a amplitude em função do número de
amostra \; - n é um número inteiro que representa a amostra \; - w
é a velocidade angular em radianos/amostra \;;
#X text 849 34 x[n] = sin(n*w);
#X text 1024 606 x[n] = a*sin(n*w + ø);
#X text 842 459 A seguir \, temos uma fórmula mais completa \, que
inclui um ajuste final de amplitude/ganho (variável "a") e também considera
a fase inicial em radianos (variável "ø"). Esta fórmula define uma
senóide em função do número de amostra e deve estar claro como ela
é em função de uma medida de tempo \, já que o número de amostra é
uma medida de tempo definida pela Taxa de Amostragem.;
#X connect 0 0 2 0;
#X connect 2 0 28 0;
#X connect 3 0 55 0;
#X connect 4 0 56 0;
#X connect 9 0 17 0;
#X connect 10 0 29 0;
#X connect 12 0 9 0;
#X connect 14 0 9 1;
#X connect 17 0 21 0;
#X connect 21 0 13 0;
#X connect 22 0 3 0;
#X connect 29 0 14 0;
#X connect 31 0 34 0;
#X connect 34 0 33 0;
#X connect 35 0 36 0;
#X connect 38 0 35 0;
#X connect 42 0 1 0;
#X connect 43 0 46 0;
#X connect 46 0 45 0;
#X connect 55 0 4 0;
#X connect 56 0 7 0;
