Use Non-Frames Version Previous Page Next Page
GEN Routines: Line/Exponential Segment Generators

GEN25, GEN27

  f  #    time    size   25   x1  y1  x2  y2  x3  .  .  .
  f  #    time    size   27   x1  y1  x2  y2  x3  .  .  .

Description

These subroutines are used to construct functions from segments of exponential curves (GEN25) or straight lines (GEN27) in breakpoint fashion.

Initialization

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

x1, x2, x3, etc. – locations in table at which to attain the following y value. Must be in increasing order. If the last value is less than size, then the rest will be set to zero. Should not be negative but can be zero.

y1, y2, y3,, etc. – Breakpoint values attained at the location specified by the preceding x value. For GEN25 these must be non-zero and must be alike in sign. No such restrictions exist for GEN27.

Note

If p4 is positive, functions are post-normalized (rescaled to a maximum absolute value of 1 after generation). A negative p4 will cause rescaling to be skipped.

Example

  f 1 0 257 27 0 0 100 1 200 -1 256 0

This describes a function which begins at 0, rises to 1 at the 100th table location, falls to -1, by the 200th location, and returns to 0 by the end of the table. The interpolation is linear.

Author

John ffitch
University of Bath/Codemist Ltd.
Bath, UK
New in Csound version 3.49


Use Non-Frames Version Previous Page Next Page
GEN Routines: Line/Exponential Segment Generators