Leyendo un manual de supercollider en castellano, me encuentro con lo siguiente
He hecho la prueba y aquí esta el vídeo
Alguien escribió:En teoría, con una onda sinusoidal y las correctas operaciones matemáticas podemos generar cualquier tipo de onda.En los siguientes ejemplos vamos a generar las ondas de los osciladores de sierra (Saw), y cuadradas (Pulse) únicamente usando ondas sinusoidales.
Pulse (onda cuadrada) a partir de ondas sinusoidales
Para generar la onda cuadrada generamos ondas sinusoidales con frecuencias de armónicos impares de una fundamental. Primero declaramos una variable del 1 al 40, y al multiplicar los elementos por dos obtenemos pares del 2 al 80 (1..40)*2. Ahora restamos uno y convertimos los pares en impares del 1 al 79 (1..40)*2 -1.
Usaremos esto para los de armónicos de la frecuencia fundamental 440. Es necesario disminuir la amplitud de cada armónico para que no se sature la señal.
(
{var a=(1..40)*2 -1;
Mix(SinOsc.ar(440*a,0,1/a))}.scope;
)
De esta manera al evaluar el código, obtendremos una onda cuadrada. La opción scope, permite visualizar esta onda mediante un osciloscopio.
Saw (onda de diente de sierra) a partir de ondas sinusoidales
Se puede generar una onda de sierra sumando sinusoidales con las frecuencias de todos los armónicos de una frecuencia fundamental y disminuyendo la amplitud de cada una por el inverso del número de armónico así:
(
{var arm=(1..100);
Mix(SinOsc.ar(440*arm,0,0.5/arm))}.scope;
)
He hecho la prueba y aquí esta el vídeo