[Contents] ·
[Home] ·
[Mail]

## SALIERI Language - intvExpand

** Type:**

intvExpand: segment x integer -> segment

intvExpand: sequence x integer -> sequence

** Call syntax:**

intvExpand(*segm*,
*int*)

** Description:**

*intvExpand* returns the segment which is obtained
by augmenting every interval in *segm* by
*int* semitones (additive process); in this process,
rests are being ignored and the first note of *segm*
remains unchanged. Furtheron, primes (pitch repetitions)
are not affected by *intvExpand*.

Positive *int* values cause the intervals to expanded,
negative values correspond to a reduction of the intervals.
However, in the latter case, minor seconds are never
further reduced, so that the interval directions are always
being preserved.
*intvExpand* is a atonal (chromatic) operation;
consequently, all alteration information is discarded and
the resulting segment contains only unaltered notes.

intvExpand can be also applied to sequences
instead of segments.

** Example:**

> seq:=[_/8 g1 h d2 g1 g2]

> intvExpand(seq,2)

*Result= [ _/8 g1/8 cis2/8 fis2/8 a1/8 h2/8 ]*

> intvExpand(seq,-2)

*Result= [ _/8 g1/8 a1/8 ais1/8 f1/8 e&2/8 ]*

> intvExpand(seq,-4)

*Result= [ _/8 g1/8 g#1/8 a1/8 fis1/8 d2/8 ]*

> intvExpand([c1/2 _ c/4 c c#],-1)

*Result= [ c1/2 _/2 c1/4 c1/4 _ cis1/4 ]*

> intvExpand([c1/2 _ c/4 c c#],+1)

*Result= [ c1/2 _/2 c1/4 c1/4 _ d1/4 ]*

** See also:**
invert,
transp.

[Contents] ·
[Home] ·
[Mail]

*© sic!systems, page frame designed by
hh;
this page has been automatically generated from the SALIERI
Documentation Database.
*