SuperCollider CLASSES

LFPulse

pulse oscillator
Source: /Applications/SuperCollider/SuperCollider.app/Contents/Resources/SCClassLibrary/Common/Audio/Osc.sc
Inherits from: UGen : AbstractFunction : Object

Description

A non-band-limited pulse oscillator. Outputs a high value of one and a low value of zero.

Class Methods

*ar (freq = 440, iphase = 0, width = 0.5, mul = 1, add = 0)

*kr (freq = 440, iphase = 0, width = 0.5, mul = 1, add = 0)

Arguments:

freq

frequency in Hertz

iphase

initial phase offset in cycles ( 0..1 )

width

pulse width duty cycle from zero to one.

Inherited class methods

Instance Methods

Inherited instance methods

Undocumented instance methods

-signalRange

Examples

a plot:

{ LFPulse.ar(Line.kr(100, 800, 0.1)) }.plot(0.1);

50 Hz wave:

{ LFPulse.ar(50) * 0.1 }.play;

modulating frequency:

{ LFPulse.ar(XLine.kr(1, 200, 10), 0, 0.2, 0.1) }.play;

amplitude modulation:

{ LFPulse.kr(XLine.kr(1, 200, 10), 0, 0.2) * SinOsc.ar(440) * 0.1 }.play;

used as both Oscillator and LFO:

{ LFPulse.ar(LFPulse.kr(3, 0, 0.3, 200, 200), 0, 0.2, 0.1) }.play;

scope:

Server.internal.boot;
{ LFPulse.ar(500, 0, MouseX.kr, 0.5) }.scope;

compare with band limited Pulse UGen:

(
{
    [
        Pulse.ar(100, 0.3, 0.5),
        LFPulse.ar(100, 0, 0.3, 0.5)
    ] * 0.2
}.scope(bufsize: 44100, zoom: 5)
)