GEN10 — Generate composite waveforms made up of weighted sums of simple sinusoids.
These subroutines generate composite waveforms made up of weighted sums of simple sinusoids. The specification of each contributing partial requires 1 pfield using GEN10.
size  number of points in the table. Must be a power of 2 or powerof2 plus 1 (see f statement).
str1, str2, str3, etc.  relative strengths of the fixed harmonic partial numbers 1,2,3, etc., beginning in p5. Partials not required should be given a strength of zero.
Note  


Here is an example of the GEN10 routine. It uses the files gen10.csd.
Example 1069. An example of the GEN10 routine.
<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 Nonrealtime ouput leave only the line below: ; o gen10.wav W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 kamp = .6 kcps = 440 ifn = p4 asig oscil kamp, kcps, ifn outs asig,asig endin </CsInstruments> <CsScore> f1 0 16384 10 1 ; Sine f2 0 16384 10 1 0.5 0.3 0.25 0.2 0.167 0.14 0.125 .111 ; Sawtooth f3 0 16384 10 1 0 0.3 0 0.2 0 0.14 0 .111 ; Square f4 0 16384 10 1 1 1 1 0.7 0.5 0.3 0.1 ; Pulse i 1 0 2 1 i 1 3 2 2 i 1 6 2 3 i 1 9 2 4 e </CsScore> </CsoundSynthesizer>
These are the diagrams of the waveforms of the GEN10 routines, as used in the example: