GENexp

"exp" — Generate a table with values on the exp function.

Description

Creates an ftable with values of the exp function.

Syntax

f # time size "exp" start end rescale

Initialization

size -- number of points in the table. Must be a power of 2 or power-of-2 plus 1 (see f statement).

start, end -- first and last value to be stored; the GEN draws a curve that goes from start to end: exp(start) .... exp(end). The points stored are uniformly spaced between these to the table size

rescale -- if not zero the table is not rescaled

Examples

Here is a simple example of the GENexp routine. It uses the file genexp.csd.

Example 1333. Example of the GENexp routine.

See the sections Real-time Audio and Command Line Flags for more information on using command line flags.

<CsoundSynthesizer>
<CsOptions>
; Select audio/midi flags here according to platform
-odac  ;;;realtime audio out
;-iadc    ;;;uncomment -iadc if realtime audio input is needed too
; For Non-realtime ouput leave only the line below:
; -o genexp.wav -W ;;; for file output any platform
</CsOptions>
<CsInstruments>

sr = 44100 
ksmps = 32 
nchnls = 2 
0dbfs  = 1 

instr 1

aswp	linseg	0.01, p3*.5, .49, p3*.5, 0.01		;index sweep function
aindex	poscil	aswp, 110, 1				;sound to waveshape
atable	tablei	aindex, p4, 1, .5			;waveshape index
aenv	linen	0.8, .01, p3, .02			;amplitude envelope
asig	= (atable*aenv)*p5				;impose envelope and scale
asig    dcblock2 asig					;get rid of DC
	outs    asig, asig

endin		
</CsInstruments>
<CsScore>
f 1 0 8192 10 1	;sine wave
f 2 0 8192 "exp" 0 15 0
f 3 0 8192 "exp" 0 3 0

i1 0 3 2 2
i1 + 3 3 3

e
</CsScore>
</CsoundSynthesizer>


These are the diagrams of the waveforms of the GENexp routines, as used in the example:

f 2 0 8192 "exp" 0 15 0

f 2 0 8192 "exp" 0 15 0

f 3 0 8192 "exp" 0 3 0

f 3 0 8192 "exp" 0 3 0

See Also

GENexp and GENsone.

More information on this routine: http://www.csoundjournal.com/issue11/distortionSynthesis.html, written by Victor Lazzarini

Credits

Written by Victor Lazzarini