TUTORIAL CALMUS 2000

download TUTORIAL CALMUS 2000

of 69

Transcript of TUTORIAL CALMUS 2000

  • 8/7/2019 TUTORIAL CALMUS 2000

    1/69

    1

    CONTENTS

    About Calmus......................................................................................................................1

    Memory Size.............................................................................................................1

    How to Open CALMUS...........................................................................................1

    Menus.......................................................................................................................1

    Composing With CALMUS...............................................................................................3

    Objects......................................................................................................................3

    Auto-Composer.........................................................................................................3

    Number Boxes..........................................................................................................3

    Curves.......................................................................................................................4Note Mode.....................................................................................................4

    Square Line Mode .........................................................................................5

    Object Graph.................................................................................................5

    Graphical Notation Mode ..............................................................................5

    For All Graphs in Calmus.........................................................................................6

    Musical Objects....................................................................................................................6

    Construction Of A Musical Object............................................................................7

    Object(s) Graph........................................................................................................8

    Graphical Notation ....................................................................................................8

    Form .......................................................................................................................8

    Activity ......................................................................................................................8

    How to Create An Object ..........................................................................................8

    Time and Pitch Range ....................................................................................9

    Copying an Object .........................................................................................9

    Dragging an Object........................................................................................9

    Re-Shaping an Object ....................................................................................9

    Load and Save................................................................................................10

    Total Objects..................................................................................................10

    The Object Editor Window - Harmony ...............................................................10

    Harmony Types.............................................................................................11

    Individual Voices ...........................................................................................12

    Homophonic Voices ......................................................................................12

    Horizontal-Vertical Voices .............................................................................13

    Canon Voices.................................................................................................13

    Melody Construction...........................................................................................................14

    Cell Construction ......................................................................................................14

    Melody Body Construction.................................................................................................16

  • 8/7/2019 TUTORIAL CALMUS 2000

    2/69

    2

    How To Set Controllers For Melody Construction...................................................16

    Pitch...............................................................................................................16

    Melody Shape................................................................................................17

    Ratio of Truth ................................................................................................17

    1st Pitch Of An Object...................................................................................18

    Tests For Pitch...............................................................................................18

    Melodic Restrictions .................................................................................................19Rhythm - Attack........................................................................................................20

    Duration....................................................................................................................20

    Dynamic (Velocity) ...................................................................................................21

    MIDI Channels - Instruments...................................................................................21

    Melody Linear Control..............................................................................................21

    Cell Selection .................................................................................................22

    Activity of Melody .........................................................................................23

    Time Regularity Regularity of Rhythm .......................................................23

    How to draw the time regularity graph ...........................................................23

    Time, Steps and MIDI Channels....................................................................24

    Parallel Processed Polyphonic Construction .............................................................24

    Envelope Construction........................................................................................................24

    How to Construct Tones Envelopes ..........................................................................25

    How To Create Amplitude / Pitch Envelopes.............................................................26

    Amplitude Envelopes .....................................................................................26

    Pitch Envelopes..............................................................................................27

    Harmony .......................................................................................................................28

    The Harmony Controller as Model Chord(s) (method A)........................................28

    The Harmony Controller, a Selection of Acceptable Chords (method B) ..................30

    How to Enter Chords Manually Into The Harmony Controller (B1..........................30

    How to Let CALMUS use Algorithms to Evaluate and Select Chords

    for the Harmony Controller as a Selection of Acceptable Chords (B2) .....................31

    How to Enter a Test Chord into the Harmony Evaluation Program ...........................31

    Basic Tension and Leading values.............................................................................32

    FILTERS..................................................................................................................33TENSION ORDER, COLOUR ORDER, SHAPE ORDER, LEADING

    ORDER and HARMONIC ORDER..........................................................................36

    Modified Orderings..................................................................................................37

    The Elimination of Individual Chords in the HARMONY CONTROLLER

    Chords Selection ......................................................................................................38

    Wave View Window.. ................................................................................................38

    HARMONY CONTROLLER, a flow chart .............................................................39

    How to Enter a Chord into the Harmonic analyzer ....................................................41Harmonic Relation Functions....................................................................................41

    The Wave View window............................................................................................43

  • 8/7/2019 TUTORIAL CALMUS 2000

    3/69

    3

    How to Construct a Harmony Controller as Harmonic (overtone) Relation

    (method C)..................................................................................................................43

    Play-Back for Harmony ............................................................................................45

    Harmony Controlling Chord Selection Connected to an Object ................................47

    Outputs .......................................................................................................................48

    Graphical Notation ....................................................................................................48

    Midi 48Reset..............................................................................................................48

    OMS..............................................................................................................48

    Save ...............................................................................................................48

    Load...............................................................................................................49

    Metronome....................................................................................................49

    MIDI Channels.............................................................................................49

    Changing MIDI Channels .............................................................................50

    Appendix 1 .......................................................................................................................51

    Appendix 2 .......................................................................................................................61

    Index .......................................................................................................................64

  • 8/7/2019 TUTORIAL CALMUS 2000

    4/69

    Kjartan lafsson 2 0 0 01

    ABOUT CALMUS

    CALMUS, Calculated Music, is a computer program designed for musical composition. Theprogram deals with musical problems that occur in 20th century music, providing speciallydesigned tools and options to handle them.

    CALMUS has been under construction since the autumn of 1988. The programming language isMacintosh Common Lisp with the object-oriented support CLOS.

    Installation

    CALMUS must be inside a folder, together with two other folders named MIDI and AUTO-composer. The MIDI folder contains only one file, named MIDI.rsrc. The AUTO-composerfolder can be empty or contain files from a user. If the AUTO-composer folder is not available tothe program, it will create one. (See COMPOSING WITHCALMUS, page 3).

    CALMUS 4.3 runs on all computers in the PowerPC Macintosh series that have a minimum 12-

    inch monitor, a hard disk and at least 30 MB of free internal (virtual) memory.It will speed up all calculations when more memory is available.

    Memory Size

    To change the memory size, select the CALMUS icon on the hard disk(single-click on the icon),select Get Infocommand in file menu, and change the memory.

    How to Open CALMUS

    To open CALMUS double-clickon the CALMUS icon, or use other system opening accessories.

    Menus

    The CALMUS menu bar contains five menus; File, Edit, Lisp, Windows and CalMus.

    The first three menus, File, Edit and Lisp are standard Macintosh MCL menus, providing tools forthe Macintosh environment.

    The next menu, Windows , is inherited from the Lispprogramming language. The fifth menu, CalMus, is forcreating and selecting basic windows (controllingpanels) for CALMUS. It is also possible to use the

    Window menu to select open windows for CALMUS.

    Select All will create all the main windows forCALMUS. (See figure 1).

    Two windows will appear when CALMUS has beenloaded, the CALMUS opening window (figure 2) and awindow for the pass code (figure 3). A certain messagefrom the system is displayed in the LISTENER window(figure 4).

    Fi ure1

  • 8/7/2019 TUTORIAL CALMUS 2000

    5/69

    Kjartan lafsson 2 0 0 02

    Figure 2

    Pass Code

    To be able to compose with CALMUS, a pass code for CALMUS must be entered into the boxmarked Pass-Code. (See figure 3.)Figure 3

    If this pass code is not correct it will not be possible to compose with CALMUS. The program willpartly function however

    The Lisp Listener window is designed for interactive Lisp programming. In CALMUS thiswindow is only used to display messages from the system, Lisp and CALMUS (see figure 4).

    Figure 4

  • 8/7/2019 TUTORIAL CALMUS 2000

    6/69

    Kjartan lafsson 2 0 0 03

    To Create CALMUS Windows

    If the pass code is correct all main windows in CALMUS are opened automatically. If not, themain windows can be opened manually by a clickon the opening window or by selecting all themain windows by using the SELECT ALL command in CalMus menu.

    Appendix 1 shows all windows available in the CALMUS in full size.

    Cancel

    NB. Calculations in CALMUS can be aborted by typing commandperiod (.).

    COMPOSING WITH CALMUS

    In CALMUS a piece of music can be composed in one uninterrupted process. Before thecomposition process starts, however, all arguments and controllers at all levels must be created andadjusted. In this tutorial the instruction of collecting and creating arguments for an eventualcomposition is done in 16 steps. It is assumed that all windows in the procedure are already open(see above).

    Objects

    In CALMUS, every composition is built up of musical objects. Each object can be viewed as asquare box in various colours in the object window (see figure 5). These objects can count fromone up to as many objects as needed for a composition.

    Figure 5

    AUTO-COMPOSER

    When a composition contains more than three or four objects, one way is to create each objectindependently and save it into the AUTO-composer folder. (Use SAVE button in ObjectOrganizer window.) After all objects have been created it is enough to press the AUTOCOMPOSE button that sequentially composes all object inside this folder. The program will quitautomatically after the calculation process.

    Figure 6

    Number BoxesNumber boxes are boxes thatcontain numbers or both forcontrolling and displaying. The boldtypes values inside number boxescan be changed. When a numberbox value is changeable the fonttype of the value is bold but theones with plain text can not.

    (See figure 6.)These changeable number boxes are used in the program to give arguments to some of the

    functions of CALMUS and sometimes also to execute them. The unchangeable (though alsosometimes changeable) number boxes are used to display results functions status or result.

    hangeablenumber box

    nchangeableumberbox

  • 8/7/2019 TUTORIAL CALMUS 2000

    7/69

    Kjartan lafsson 2 0 0 04

    How to change a number box value:

    With mouse dragging:Place the cursor over the number box and press, hold down he mouse button anddrag the mouse up or down.To increase the power ofchanges, press OPTION, CTRL or SHIFT keys on thekeyboard before pushing the mouse button. This will increase the value of changesby 10x, 100x, or 1000x.

    With mouse click:A single clickin the upper or lower half of the number box will increase the value,or decrease respectively.

    With scrolling:To increase or decrease the value constantly, place the cursor over the number boxin the upper or lower half of the box and hold the mouse button down.

    From keyboard:Place the cursor over the number box and press.a) To erase numbers from the boxes, press backspace (DELETE) on the keyboard.b) To enter numbers into the boxes, use the numeric keys along the top of the

    keyboard. (Do not use the numeric key pad on the right side of the keyboard.)

    Curves

    Figure 7 In CALMUS there are several types of graphs. The most ordinarygraph consists of a single line that is drawn with the mouse. A graphof this kind can only be drawn from left to right.

    Ruler

    By using the ruler, it is possible to draw a straight horizontal line. The ruler is activated by pressingthe option key (alt) on the keyboard while drawing. When a previous curve or a line in a graph isnot to be erased, press the command key on the keyboard before drawing again. This makes itpossible to create the curve in steps. Then the line can, for example, be a combination of a curveand a straight horizontal line (see figure 8).

    Figure 8

    Note Mode

    Notes can be drawn in the note mode of the object graph. The information created with suchdrawing are: relative starting points ofnotes, duration and velocity (dynamic) values andpitch (seefigure 9)

    To draw notes press the shift key on the keyboard before drawing the note. The Y co-ordinate valueat the starting time point of the note indicates the pitch. The Y co-ordinate value at the ending pointof the note indicates the dynamic (velocity) of the note. A high Y co-ordinate value at the end givesa strong dynamic (FFFF) and a low Y co-ordinate value at the end gives a soft dynamic (PPPP).

    The difference between the starting point and the ending point of the note gives the duration. (Xco-ordinates.)Figure 9

  • 8/7/2019 TUTORIAL CALMUS 2000

    8/69

    Kjartan lafsson 2 0 0 05

    The velocity value is indicated with different patterns of the graphical note. For example, a blackpattern stands for FFF or a loud dynamic and light gray pattern for soft dynamic or PPP.

    Figure 10 Square Line Mode

    A certain mode of the graph allows the user to draw only straight lines (square line) which canoccasionally by useful when the Y co-ordinates should change in steps rather than gradually.Double-click at the starting position of the graph and press CTRL while drawing. A double-clickon the graph will erase previous drawing.

    Object Graph

    One mode of the graph is called Object Graph. This graph isused in the Object Organizerwindow to create and displaythe topmost level of musical objects. The Object Graph is

    used to set the limits for a musical object, such as position in time and pitch range for each object.

    Figure 11

    Graphical Notation Mode

    The last mode of the graph object is called graphical notation. This graph can not be edited. Oneof the features of this graph is that when the values of the graph have reached the horizontal limitof the graph, it takes all values (notes) and compresses them horizontally (X axes)(see figure 12).

    Figure 12

    Apart from the graphical notation graph, all information and values can be erased from the graphsby a single clickinside. This is possible in all editing modes of a graph.

  • 8/7/2019 TUTORIAL CALMUS 2000

    9/69

    Kjartan lafsson 2 0 0 06

    For All Graphs in CALMUS

    When a graph with a single line is drawn in CALMUS, the starting and the end points values arerelative. This means that it doesn't matter for calculations in CALMUS where the drawing's startpoint (mouse down position) and the end point (mouse release position) for a curve occur in agraph. The program will always make the necessary corrections for calculations based on thegraphs, by converting the first X co-ordinate or the lower limit to zero and the last X value to acommon end value. The common end value is the total time of the object. All values in betweenthese will be transferred to corresponding positions, according to the start and end X co-ordinates

    of the graph.

    It is convenient, however, to begin and end all drawings at the X axis' high and low limits in orderto make it easier for a viewer or user to observe the graphs visually. (See figures 13 and 14.)

    Figure 13 Figure 14

    MUSICAL OBJECTS

    Object Organizer

    Definitions of a musical objects in CALMUS:

    1. An object consists of tones that can be either or both melodically andharmonically connected.

    2. Objects can have a limited horizontal (melody) connection but never adirect vertical connection (harmony.) (See #5.)

    3. An object can contain as many melodies as needed.

    4. A composition can contain as many objects as necessary for a composition.

    5. An object can have either an independent harmony controller or share aharmony controller with other object or objects.

    6. An object can be copied, edited or re-edited as many times as needed. Asingle clickon an object will put the object in editing mode. A doubleclickon an object will put the object in editing mode and select and transferobjects information into the OBJECT EDITOR window for editing or re-editing.

  • 8/7/2019 TUTORIAL CALMUS 2000

    10/69

    Kjartan lafsson 2 0 0 07

    Construction of a Musical Object

    For demonstration, the construction of a musical object is done here in 16 steps.

    STEP 1.Select the OBJECT ORGANISER window.(Use Window or CALMUS menus.)

    STEP 2.Give the total time in minutes (e. g. 2 minutes), inthe TOTAL TIME number box (see figure 15).

    The total time of the Object Window (see figure 15) is always the same as the time value in theTOTAL TIMEnumber box. The value is given in minutes and can be changed at any stage. Thismeans that after construction of an object(s) this value (TOTAL TIME) can be changed for a newcalculation. A composition of 1 minute's duration for example can be expanded by increasingthis value and recalculating the composition. This is because CALMUS begins the composingprocess by correcting the time ratio between the total time value (in the TOTAL TIME numberbox) and the time range of the objects (see figure 15).

    Figure 15

    Object windowotal Time 9 min.

    Ob ects

    otal Time 9 min.

  • 8/7/2019 TUTORIAL CALMUS 2000

    11/69

    Kjartan lafsson 2 0 0 08

    GRAPHS IN THE OBJECT WINDOW

    OBJECT(S) Graph (display)The OBJECT graph in the Object window displays the pitch and timepositions of the objects. The horizontal lines in the graph displays the Cnotes in the tempered scale.

    GRAPHICAL NOTATION (display)The GRAPHICAL NOTATIONgraph in the Object window is an abstract

    notationof the whole composition. The horizontal lines in the graphdisplay the C notes in the tempered scale.

    GRAPHICAL DISPLAY OF FORMCreates the FORM (display) graph from the Object window. The display isan abstract presentationof the form of the whole composition.

    GRAPHICAL DISPLAY OF ACTIVITYCreates theACTIVITY (display) graph from the Object window. Thedisplay isan abstraction of the musical activity of the composition.Points inACTIVITY(display) signify musical activity.

    How To Create an Object

    STEP 3.1. Place the cursor over the OBJECT WINDOW at thedesired starting point and at the higher pitch limit of theobject and press mouse button.

    2. Move towards the end-point and lower pitch limit ofthe object and release the mouse button. (See figure 16.)

    Figure 16

    Start oint

    nd oint

    Mouse drawing direction of an object.

    After an object has been drawn, it looks likethe gray area in figure 16.

  • 8/7/2019 TUTORIAL CALMUS 2000

    12/69

    Kjartan lafsson 2 0 0 09

    Figure 17

    Higher Pitch Limitbject Window

    Startin Point Lower Pitch Limit Endin Point

    Ob ect

    Figure 18

    Time and Pitch Range of an Object

    While drawing the object, the TIME RANGE and PITCHRANGEnumber boxes on the OBJECT ORGANISER panel(see figure 18) will display the starting and ending position ofthe object. The pitch values are given as the names of the notes,including the octave (C6 is middle c). The time is displayed inminutes and seconds.

    The time range shows the real starting and ending time of theobject. It is connected with the TOTAL TIME value and showsthe relative time of the object according to the TOTAL TIMEvalue.NB: A potential object can be previewed by pressing controlkey while drawing the object. The object will then not be visibleor valid after the release of the mouse button.

    Copying an Object

    To copy an object, place the cursor over the object, hold down the option and the command

    buttons and press the mouse button while dragging a copy of the object from the original object.Releasing the mouse button will paste the copy of the object into the object window, where theposition of the mouse indicates.

    Dragging an Object

    To move an object (transposing and transferring in time), place the cursor over the object, hold theoption button down and press the mouse button while moving the object. Releasing the mousebutton will paste the object into the object window, where the position of the mouse indicates.

    Re-shaping an Object

    To re-shape an object, place the cursor over the object in the lower right-hand corner, hold the

    option and control buttons down and press the mouse button while re-shaping the object.

    Mouse and object position.Pitch and Time ranges.

  • 8/7/2019 TUTORIAL CALMUS 2000

    13/69

    Kjartan lafsson 2 0 0 010

    To Delete an Object

    At this stage it is also possible to delete a selected object by clicking the DELETE OBJECTbutton. With this button the program will only delete the selected object.

    To Delete All Objects

    By pressing DELETE ALL OBJECTS, all objects in the Object Window will be deleted, at alllevels.

    LOAD and SAVE

    Another method for entering objects into the OBJECTWINDOW is to load them from the library.Press LOAD button in the OBJECTWINDOW. To save an object or a group of objects presssave button.

    TOTAL OBJECTS

    The number box TOTAL OBJECTS indicates how many objects are inside the OBJECTWINDOW. The number box OBJECT ID#.indicates which object has been selected for editing orre-editing.

    After having drawn an object into the Object window, the next step is to edit it.

    STEP 4Select an object for editing and double- click on it. The programwill now send all information for this object into theOBJECT EDITOR and activate the OBJECT EDITOR windowfor editing.

    OBJECT EDITOR

    Figure 19 shows the main OBJECT EDITOR panel.

    Figure 19

  • 8/7/2019 TUTORIAL CALMUS 2000

    14/69

    Kjartan lafsson 2 0 0 011

    The Object Editor Window - Harmony

    Figure 20

    The Control Harmony window is activated by pressing the HARMONY button in the OBJECT

    EDITOR window. From this window the arguments for a harmony control of an object isconstructed.

    The number boxHarmony Qualitywith the initial value 20, indicates the desired quality of theharmony according to the control chord(s).The value indicates how hard the program will try to get an acceptable result. The higher thevalue is, the harder the program will try to approach the desired quality. This graph sets the higherlimits for theHarmony Quality Graph. (see figure 56).

    Figure 21

    The number-boxSelecting chord size, measured in Intervals is to access the chords controllingbanks for the chord size to be shown and cleared.

    The button SetHarmony is an access to the bankvia MIDI.

    The buttonSelectforbidden chord is enter forbidden chords via MIDI.

    SPACING

    TheAdjust pitch range for each interval creates a window that shows the settings of spacing forchords of an object. It is possible to set the range for each interval within a chord size under 13pitches. (figure 22.)

    In figure 22 all intervals are linked to boxes marked with X. When a box is marked with X , thecorresponding interval to the right is limited by the numbers ofoctaves that are indicated in thenumber boxes to the right. The numbers indicate how many octaves can occur between the pitchesof a chord. For example, the number 2 in the lowest number box means that the lowest intervalwithin a chord can never be bigger than two octaves.

    The eventual examples of the chords can be viewed in the SPACING window. The chord size for

    the displays of spacing can be set by changing the value in the number box INTERVAL SIZEbelow the graph. The chord size is measured in intervals; 2 intervals stand for a chord with threepitches.

  • 8/7/2019 TUTORIAL CALMUS 2000

    15/69

    Kjartan lafsson 2 0 0 012

    Figure 22

    To activate the Spacing controlling window, pressAdjust pitch range for each interval button inObject Editor Window. Figure 23.

    Figure 23

    Harmony TypesFigure 24There are four available harmony types in the program. (See figure 24.)

    INDIVIDUAL VOICESThe first is called INDIVIDUALVOICES. As the name suggests, allvoices are melodically independent

    but they can be harmonicallyconnected.

    HOMOPHONIC VOICESIn the second type, HOMOPHONICVOICES, all voices share the sameattack time points as the first melody.The voices can also have a harmonicconnection, as in the first method.

    A special feature in this mode makes it possible to disconnect voices from the homophonicstructure without losing their interactive harmony control (see figure 25).

    Figure 25

    Figure 25 shows a window displaying how voices are connected to the main voice (1st).

  • 8/7/2019 TUTORIAL CALMUS 2000

    16/69

    Kjartan lafsson 2 0 0 013

    A single clickin boxes at the bottom of the window will disconnect the corresponding voice fromthe main voice, voice number one. Each disconnected voice will have its own individual attacktime

    points (starting time of a note), duration and velocityvalues. The harmonic connection, however,will be unchanged.

    HORIZONTAL-VERTICAL VOICES

    The third one, calledHORIZONTAL-VERTICAL VOICES inherits its name from the syntax of amethod frequently used in Twelve-Tone Music, a method that is called horizontal-verticaldisposition.

    This method in Twelve-Tone Harmony is based on the division of all notes of a row between twoor more voices in a HORIZONTAL-VERTICAL DISPOSITION, so that all twelve notes of theseries regularly recur. In this program, only the attack time points are divided between all existingvoices. The attack time points are constructed out of the melody arguments and settings of the firstvoice, voice no. 1. (See figure 26.)Figure 26

    1st melody attack time points

    1st mel

    3rd mel

    2nd mel

    The appearance ofindividual voice is controlled by theActivity Graph in theMelodicDevelopmentwindow (see later).

    CANON VOICES

    The fourth method is called CANON VOICES. This method gets its name from its polyphonicfunctionality. Using this method CALMUS will create a canon type texture where the voices sharethe same or similar arguments, resembling at a certain level the texture of the traditional canonicpolyphony.

    Figure 27

    The Segment Dispositionwindow contains three controlling graphs. The first one, called TIMEREGULARITY graph, aims at controlling the regularity in the disposition of the canon. The

    second graph, FREQUENCY OFDISPOSITION, controls the speed of the disposition. The lastgraph controls theRatio of Truthbetween the given disposition rhythm and the actual dispositionof the canon.

  • 8/7/2019 TUTORIAL CALMUS 2000

    17/69

    Kjartan lafsson 2 0 0 014

    To control the entrance of each canon, the user must enter into the program the desired dispositionrhythm for the canon. Rhythm here means the duration from one canon to a subsequent one. Byplaying a rhythmic cell (any pitch) on a MIDI instrument in the desired rhythm of the canon,CALMUS will translate these items of information into a time-table for a canon. After havingcompleted the canon arguments in the Segment Dispositionwindow, a potential canon time-tablecan be viewed in the object window before the actual calculation. (See figure 28.)

    Figure 28

    Figure 28 shows time-table s for two melodies, displayed as two lines. Each line is displayed withtwo alternating patterns, black and gray. Each pattern indicates the starting time and duration ofeach canon segment. This example is shown only to give an impression of how the canon can looklike in the actual calculation of the object.

    Step 6Press CONSTRUCT NEW MELODY button on Object Editor windowto start construction process of melodies for the object.

    Step 5If an object contains more than one melody, the Harmony controller forthe object must be set. (See step 12 for harmony construction.)

    MELODY CONSTRUCTION

    In this part a single melody line (voice) is planned and thearguments for it created and adjusted. By pressing theCONSTRUCT NEW MELODY button, a sequence of aconstruction of a melody arguments and controllers is started.To re-edit an individual parts of a construction melody, thebuttons PITCH, RHYTHM (attack), DURATION, DYNAMIC(velocity), MELODIC RESTRICTIONS and ENVELOPES /PITCH - DYNAMIC gives direct access to each of theparameters.

    Every melody in CALMUS is constructed out of a cell or cellsidentical in size. A cell can be ofalmost any size but keeping thecell short rather than long is recommended. A long cell oftenloses its characteristics in the long run.

    CELL CONSTRUCTIONThere are three different ways to construct or enter a cell into theMelody Construction.

    1. Let CALMUS compose the cell

    a) Select the size of the cell (number box: CELL SIZE => (see figure 29) and press theCOMPOSE CELL button

    b) Draw a complexity graph for each component of the cell : Attack, pitch, durationand velocity (dynamic) (See figure 29.)

  • 8/7/2019 TUTORIAL CALMUS 2000

    18/69

    Kjartan lafsson 2 0 0 015

    Figure 29

    A high Y co-ordinate in these graphs indicates a high complexity for the cell at correspondingposition. The size of the cells is indicated in CELL SIZE. (See figure 30.)

    2. Enter the cell(s) into the program through MIDI.This can be done by recording the cell from a MIDI instrumentconnected to the computer. (See figure 30.)

    a) Press theFrom MIDIto CALMUS buttonb) Play the cell on a MIDI instrument.c) Press OK

    NB If this is not the first cell, the program will ask if it shouldadd this cell to a previous cell or replace it.

    d) PressReplace orADD

    3. Draw the cell directly on the CELL GRAPH.a) PressDraw cellwith CALMUS

    While pressing shift on the keyboard, draw with the mouse each note on theCELL GRAPH. The press down positions of the mouse are the relativepitch and the starting time point (attack) of the note. The release positionsof the mouse are the end time point and the dynamic value of the note.(Velocity.) The horizontal value gives the duration and the vertical value givesthe dynamics. High y co-ordinate value represents loud and low value softdynamics. The horizontal value is the end time point for the note. (Start time -end time = duration time.) After releasing the mouse button, the programdraws the note. The pattern of the note indicates the dynamics (velocity). Ablack note pattern is a loud note (fff) and white note pattern means a soft note(ppp). Figure 30

    B) Press againDraw cellwith CALMUS

    Warning: A single click in the CELL GRAPH can erase all notes.

  • 8/7/2019 TUTORIAL CALMUS 2000

    19/69

    Kjartan lafsson 2 0 0 016

    MELODY BODY CONSTRUCTION

    How to set Controllers for Melody Construction

    In this program, the following statements are taken to be true.

    1. A single melody line is constructed out of a cell.2. A cell is constructed of tones.

    3. A tone is constructed from four components:a) pitchb) attacktime pointc) duration timed) dynamics (velocity).

    In CALMUS, each component of a tone (statement 3) can be independently constructed. Eachcomponent has its own.

    Figure 31 shows the components' controlling area, pitch attackduration and dynamics (velocity ).

    Figure 31

    In the following section these components will be discussed and explained separately.

    Pitch

    Figure 32 displays the pitch controlling area on the Pitch Settings Panel with added informationinside the boxes.

  • 8/7/2019 TUTORIAL CALMUS 2000

    20/69

    Kjartan lafsson 2 0 0 017

    Figure 32

    X => the first pitch of this melody is set to the same as the last

    pitch of an existing melody that has an identical MIDI channel.

    Ratio of truth co-ordinates

    est range co-ordinates

    itch co-ordinates

    6 is middle C

    elody shape

    elody range

    overall range for melody

    ange graph =gray dotted lines

    Cell size = test size

    Figure 33

    MELODY SHAPE

    TheMelody Shape graph is for the overall shape ofthe melody. It displays the approximate shape of the

    whole melody line together with the gray dottedrange lines. If more than one melody is within anobject, they can all be viewed at the same time in thisgraph by pushing the SHOWALL Melodiesbutton.

    RATIO OF TRUTH

    The next graph in this part is a graph named after the function that it controls,RATIO OF TRUTH.(See figure 34.)

    Figure 34

    TheRATIO OF TRUTHgraph controls the resemblance between segments within the melody line(which is under construction) and the input cell.

    When the Y co-ordinates of this RATIO OF TRUTHgraph are high, the functions will try toimitate the original cell as much as possible during the construction of pitches. When the Y co-ordinates of thisRATIO OF TRUTHgraph are low, the function will try to imitate the original cell

    less. TheRATIO OF TRUTHgraph is only valid in the "body construction". This is explainedfurther in the theory papers for CALMUS.

  • 8/7/2019 TUTORIAL CALMUS 2000

    21/69

    Kjartan lafsson 2 0 0 018

    1ST PITCH of an ObjectFigure 35

    When the box named SET 1ST PITCH is marked with X (see figure35), it requests the program to give as a first pitch of the melody, thelast pitch of a melody line in the previous object that has an identicalMIDI channel. If a requested pitchwith that MIDI channel does not exist,CALMUS will print the message "Requested Pitch Not found."

    If the requested pitch is found, the last note of the previous melody and the first note of thismelody will have identical pitch and the message from CALMUS is "Requested Pitch found." Thisis a horizontal pitch connection between objects in CALMUS.

    Figure 36 Test Range for Pitch

    The test range of the pitch line can be controlled with the graph marked as Test range. The valuesof this graph are also displayed in the main pitch graph with light gray lines above and below the

    main line. The number boxes (see figure 36) with thevalues 72 and C7 display the pitch value for the melodyline during the drawing of the shape. These numbers

    indicate the pitch c'', an octave abovemiddle c', that has theMIDI value 60 or C6 in CALMUS.

    All mouse position boxes (see figure 37) display valuesconnected with the mouse co-ordinates. The Y values

    depend on the range of each graph but the X values always display the time position of the melodyline. All last X values of each graph are the same as the value in the number box steps, which is thetotal step length of the melody line.This makes it possible to see exactly the time position of the Y values while drawing.

    If a graph is not properly drawn so that the last value of the graph is not the same as the value inthe step box, CALMUS will make necessary corrections for that graph.

    Tests for Pitch

    The following pitch tests affect both cell and body construction.

    Before a new pitch is accepted, it has to pass through three final tests. All of them are combinationtests, i.e., a new test pitch is compared with previously selected pitches. The first of thecombination tests is called in CALMUS tabu broken chords. As the name indicates, this test takes

    the new pitch (test pitch) plus thelast pitches and compares it with aselection of pitch combinations(broken chords). If the test pitchplus the last pitches is among thetabu broken chords the testpitch is not accepted and theprogram makes a new attempt.

    Figure 37

    Test range

    Mouse position box

  • 8/7/2019 TUTORIAL CALMUS 2000

    22/69

    Kjartan lafsson 2 0 0 019

    Melodic Restrictions

    Figure 38 shows the controlling window for melodic restrictions for each melody.

    TABU BROKEN CHORDS

    The TABU BROKEN CHORDS can be entered into the

    program from polyphonic MIDI instrument.

    a) Press Enterbelow the TABU BROKEN CHORDSwindow.(See figure 38)b) Play all forbidden chords in a row , each chord in only onechord position.c) Press OK

    The program will now take each chord, find out all its possible positionsand put them into the TABU BROKEN CHORDS test slot. The chordsare displayed in the TABU BROKEN CHORDS graph denoted inintervals, whereas each black or gray area stands for one interval each,starting with the lowest interval at the bottom (See figure 38.)

    As an example, if a chord containing the pitches: E, G, and C#, is enteredinto CALMUS, the program will add also into the TABU CHORDS thefollowing chords: G, C#, E, and C#, E, G.

    To clear all TABU BROKEN CHORDS, press CLEAR button.

    Figure 39 TABU INTERVALS

    The second of the combination tests is a limitation of certainintervals in the melody line. A test pitch is compared to the lastaccepted pitch. If the interval that occurs between them is among the

    TABU INTERVALS, the new pitch is not accepted and the programwill make a new attempt. (See figure 39.)

    Figure 39 exhibits the TABU interval controller on the MELODYRESTRICTIONpanel. Intervals are given in half steps. An X in abox indicates that the interval size to the right of the box is valid.An empty box means that the interval is forbidden, it is a TABUinterval. In figure 39, only one interval is TABU and that is one1/2 step interval or a minor 2nd.

    Figure 40 OCTAVE AND UNISON LIMITATION

    The third and the last of the combination tests are octave and unisonrelationships. (See figure 40.)

    These tests examine if there is an octave or unison relation between a test pitch and precedingpitches. The numbers in the boxes (see figure 40) indicate how many preceding pitches of themelody during the construction will be tested. This means that if the values in the boxes are forexample four in both cases, as in figure 40, the last four pitches of the melody line will be tested. Ifthe test result is true (i.e. there are unison or octave pitch relations), the program will try again.

    N.B.: The unison and octave test not only includes the previous pitch in thesame melody but also pitches in other melodies. It should be pointed out that

    when the unison value is high it may be difficult for CALMUS to fulfill therequirements as there will be no acceptable notes for the melodyconstruction.

    Figure 38

    Tabu interval

  • 8/7/2019 TUTORIAL CALMUS 2000

    23/69

    Kjartan lafsson 2 0 0 020

    Rhythm - Attack

    An attack value is the time delay (time distance) from a starting time point of a note to thestarting time pointof a subsequent note.

    The attackcontrolling area in theRHYTHM SETTINGS PANEL is similar to PITCH SETTINGSPANEL. In the graph Speed it is possible to control the speed (time distance between notes) of

    the melody. A high Y co-ordinate (see figure 41) denotes a long distance between attack timepoints. A low Y co-ordinate denotes the opposite.

    Figure 41

    =>thestarting point is set to zero, => at the beginningof thebject (attackstarting time point =

    Ratio of truth c o-ordinates

    est ran e co-ordinates

    eed co-ordinates96 isa uarter note

    S eed sha e

    S eed ran e

    verall ran e for s eed

    Ran e ra h = ra dotted lines

    Duration

    The duration controlling area in the DURATION SETTINGS PANEL is shown in figure 42.Figure 42

    => The lastduration timepoint ofthis melody is set equal

    to the last time point ofthe object.

    Ratioof truth co-ordinates

    Test ran eco-ordinates

    Duration co-ordinates96 isa uarter note

    Durationsha e

    Duration range

    verall rangeforduration

    an e ra h = ra dotted lines

    In the graph Duration Shape, Y co-ordinates when high will produce long duration values but

    short duration values when low. But more effective are the duration values of the input cell.

  • 8/7/2019 TUTORIAL CALMUS 2000

    24/69

    Kjartan lafsson 2 0 0 021

    Dynamic (Velocity)

    Velocity is a syntax derived from MIDI vocabulary indicating how hard a note is played on aMIDI instrument. Here these values are connected with dynamics. These values range from 0,which is silence, up to 127, which is the maximum available dynamic value in MIDI. Figure 44exhibits the controlling area for dynamics on VELOCITY SETTINGS PANEL.Figure 44

    melod .

    X=> This will set thedynamic equalto the dynamic of the

    NB.This is onl valid in HOMOPHOIC harmon structure.

    Ratio of truth co-ordinates

    est ran e-

    8 is m

    ynamicco-ordinates

    ha e

    Dynamic

    D namicran e

    verall range

    ordynamic

    Ran e ra h =re dotted lines

    A low Y co-ordinate value in the Velocity graph produces soft dynamics (ppp) but a high Y co-ordinate value strong dynamics (FFF).

    Figure 45

    A MIDI channel in CALMUS corresponds to an instrument line for MIDI playing and as anindividual staff in MIDI files. Programs that can access MIDI files, translates the individual MIDI

    channels into corresponding.(See figure 45.)

    Melody Linear Control

    Finally there are three major subjects to discuss in theMELODIC DEVOLPMENTpart. They areboth connected with the construction of the melody body. (Figure 46)

  • 8/7/2019 TUTORIAL CALMUS 2000

    25/69

    Kjartan lafsson 2 0 0 022

    CELL SELECTION

    A special graphically controllable function named CELL selectioncontrols whichcell or cells arevalid as a model at each time point. (See figure 46.)

    Figure 46

    As mentioned before, a cell always functionsas a model for a melody. For every potentialnew tone for a melody, this functioncompares the new test tone plus thepreviously selected tones and Figure 46

    It is possible to have up to 5 cells (models)for each melody. The CELL selection(figure 46) shows the Cell Selection graphwith 5 horizontal lines. Each horizontal linerepresents a cell, 1st, 2nd, etc. To choose a

    controlling cell (model) for a melody, a single line is drawn on the horizontal line(s),corresponding to the cell (1st, 2nd, 3rd, etc.) If the line is drawn between two cells, the functionwill create a new cell out of the two adjacent cells in conformity with the positions of the Y co-ordinate. (See theCell Selectiongraph, figure 46 and Melody Cell Creation, figure 30.)

    This makes it possible to go gradually from one cell to another during the construction of amelody.

    How to add a new cell to the Cell selection buffer for a melody

    1) Create a new cell in theMelodic CellCreation window..2) Press OK3) Press YES button (Add to previous cell(s).)

    How to replace a cell in the Cell selection buffer for a melody

    1) Select the cell to be replaced by clicking on the correspondingname (1st, 2nd, 3rd, 4th or 5th, left to the Cell selection graph).

    2) Create a new cell.3) Press theREPLACE button.

    When the names, 1st, 2nd, 3rd, 4th or 5th on the left of the Cell selection graph are in bold type itindicates the presence of a corresponding cell in the Cell selection buffer.

    How to delete a cell in the Cell selection buffer for a melody

    1) Select the cell to be replaced, by clicking on the correspondingname (1st, 2nd, 3rd, 4th or 5th, to the left of the Cell selection graph).

    2) Press theDELETE button.

    N.B.: All cells for each melody must be identical in size.

  • 8/7/2019 TUTORIAL CALMUS 2000

    26/69

    Kjartan lafsson 2 0 0 023

    Activity of MelodyThe activity of a melody in this program means that tones from a melody are present. Theopposite, non-activity of a melody, means tones from a melody are not present. The activity of amelody line can be controlled through the Activity graph in the MELODIC DEVELOPMENTwindow. (See figure 47.)Figure 47

    With this graph, it is possible to control the probability for appearance (presence) of tones within amelody line. The activity graph is divided into three areas, each of them marked offwith horizontaldotted lines. When the Y co-ordinates of the graph line are inside the topmost area, marked with

    Melody presence (see figure 47), it is certain that tones of the melody are present at thecorresponding position in the melody. In the next area below, the Potential presence area it is

    possible for tones to appear. The probability is determined from the Y co-ordinate values in thatarea. The higher the line (Y co-ordinate value) appears in this area, the higher the probability is forthe presence of a tone. In the lowest area,Melody absence it is not possible for tones to be

    present.

    Time Regularity Regularity of Rhythm

    Figure 47A

    One of the main problems in computer-aided compositions has been the rhythmic complexity thatcan occur. A computer program for composition seldom takes into account the problems of theplay-backfrom scores of music that has been composed with a program. Computers manipulatevalues with an accuracy of nano-seconds (10-9 of a second) while the musician bases hisperformance on tempo values of around one second. The music that comes out of somecomposition programs can therefore be too complex to be performed. In some notation orsequencer programs this problem has been solved at certain levels with specially designedquantization tools. The problem with these solutions is that all voices of the composition get thesame quantization at the same time point, which is certainly not always appropriate.

    A certain faculty of CALMUS is a graphically controlled function, called Time Regularity, (seefigure 47A), which affects the rhythmic complexity of an individual voice. This means that everyvoice can have its own rhythmic complexity, changeable in time.

    The Time Regularity function affects both the attacktime points and the duration values.This TimeRegularity function has 6 levels, ranging from irregularity to regularity (see figure 47A).At the first level no correction is made to the attack and duration values. It is marked with theinfinity symbol in the graph. Other levels are from five to one, with the greatest simplicity at levelone (the topmost level in the graph, figure 47A).

    How to draw the time regularity graph

    To move the start point: Double-clickat the desired starting point.To draw: Hold down control button on the keyboardwhile drawing.

  • 8/7/2019 TUTORIAL CALMUS 2000

    27/69

    Kjartan lafsson 2 0 0 024

    TIME, STEPS and MIDI channels

    The two buttons in figure 48 are access to the CALMUS MELODY LIBRARY.Figure 48The SAVE MELODY is connected to afunction that creates a library containinginformation and settings for the Melody

    panel. This makes it possible to create alibrary of instruments that can be used inother objects or compositions. TheLOAD

    MELODY gives access to these libraries.

    Instrument (melody) names are displayed in the MIDI channelwindow after the calculation of object(s). It is recommended thatevery melody in all objects be given an appropriate name.

    Parallel Processed Polyphonic Construction

    A CELL is never put directly into the melody body. As mentioned before, cells always function asa model for all pitches that are added into a body.

    The reason for this is that during the construction of a melody only one pitch is added to a body(voice) at each time because when an OBJECT contains more than one voice, pitches for all voicesthat sound together must be selected in parallel. Under the construction process, every active voicegets one test pitch at a time, according to its arguments. When all voices have received their testpitches, the harmony is tested and the program will either accept these pitches or refuse them.

    This is called Parallel ProcessedPolyphonic Construction.

    Step 7Construct and adjust arguments for a melody line.Create a cell, e.g., a cell containing 4 tones and adjust controllersfor the melody construction.

    Envelope Construction

    Every tone in every voice can have its own envelope both for amplitude and pitch. These envelopescan be graphically constructed in CALMUS.

    A complete picture of theNOTEENVELOPEEDITORwindow can be viewed in Appendix 1.

  • 8/7/2019 TUTORIAL CALMUS 2000

    28/69

    Kjartan lafsson 2 0 0 025

    How to Construct Tones Envelopes

    Step 8.

    For a melody containing envelopes for the melody line, constructenvelopes for the melody in the NOTE ENVELOPE EDITORpanel. For a melody without envelopes, click OK button in theNOTE ENVELOPE EDITOR panel and go to step 11.

    N.B. Always use buttons to select windows when it is suggested. In these cases the program doesnot only select the windows, it also transfers information to the windows.

    In the NOTE ENVELOPEEDITOR window there are two graphs. The one above is whereenvelopes for amplitude and pitch are drawn. They are calledNOTEENVELOPEAMPLITUDEorNOTEENVELOPEPITCH, depending on the actual mode of the graph. Figure 49 shows thisgraph in pitch mode.

    Figure 49

    In amplitude mode, the higher limit of the graph is the maximum possible amplitude. The lowerlimit is the minimum possible amplitude.

    In the pitch mode the horizontal line indicates the correct pitch. The higher and lower limits dependon the pitch bend settings of the connected MIDI instrument.

    Figure 50

    The user draws envelopes for the desired amplitude or pitch envelopes and places them where he

    wants them to appear in the melody. It is not necessary for the user to draw envelopes for alltones; CALMUS will create them for tones that have none. These envelopes are constructed withinterpolation from the existing envelopes ofadjacent tones.

  • 8/7/2019 TUTORIAL CALMUS 2000

    29/69

  • 8/7/2019 TUTORIAL CALMUS 2000

    30/69

    Kjartan lafsson 2 0 0 027

    A number box namedWHICHONE? will display the number of each envelope duringthe preview.

    e) To adjust the speed of the preview, change the value in SPEED.f) To re-edit an envelope , select the envelope with the number boxENV nr? according to its position. Draw a new envelope and pressADD ENVELOPE.

    Pitch Envelopes

    To construct envelopes for pitch, press PITCHbutton and repeat the attack envelopes creations

    procedure from A to C. The process for the pitch envelope construction is the same as inAmplitude Mode.

    Figure 52

    Ori inal itch

    P itch envelo e

    The central line in the graph indicates the original pitch as it was created in the MelodyConstruction. All deviation from this line will create changes in pitch.

    N.B. To play examples ofenvelopes, press PLAYbutton.After having constructed all desired envelopes for amplitude and pitch, press OK.

    Step 10

    Press OK in NOTE ENVELOPE EDITOR window.Step 11Press ADD ARGUMENTS FOR A NEW MELODY button in theOBJECT EDITOR WINDOW. Repeat the process from Step 6 forall melodies in the object that contains envelopes.

    The melody arguments are now in the memory buffer for the object. The number ofmelodies inthe object can be viewed in the number boxNUMBER OF MELODIES

    When all arguments for all melodic lines (voices) have been adjusted and created pressHARMONY or, if the object contains only one voice, press OK.If an object contains only one voice, go to Step 13.

    Step 12

    To set the Harmony Controller in the Harmony window, SelectHARMONY from the menu and construct a Harmony Controller foran object. - Methods (B)and (C).- Method(A) is controlled fromthe Object Editor window (HARMONY button). Prepare theHarmony Controller for all chord sizes that can occur in the object,e.g., if an object contains three melodies (voices), prepare theharmony controllers for chords containing two and three pitches.

  • 8/7/2019 TUTORIAL CALMUS 2000

    31/69

    Kjartan lafsson 2 0 0 028

    HARMONY

    A picture of theHARMONYpanels displayed in Appendix 1.

    In this part of the program all harmony and Harmony Controllers are prepared. The functions canbe controlled from the Object Editorwindow and theHARMONYwindow.

    A Harmony Controlleris a tool in CALMUS that controls the harmony of an object. The

    Harmony controllersboth affect the harmony and the harmony flow of an object. There are threemethods, A, B and C, for controlling the harmony. The main method (A) uses chord or chords asmodel for the harmony, calledHarmony Controllers as Model Chord(s). The second method (B)uses a selection of acceptable chords to control the harmony, called Harmony Controller asSelection ofAcceptable Chords. Method C uses the harmonic (overtone) relation to control theharmony, a method that is called hereHarmony Controller as Harmonic (overtone)Relation.

    It is then possible to leave the control of harmony partly or completely out of the object and theobject will be constructed without any harmonic control.

    The Harmony Controlleras Model Chord(s) (method A)

    The easiest way to control the harmony is to use the so-called Harmony Controllers as ModelChord(s). These chords are used as a model in the object construction process. As mentionedbefore, all pitches for melodies are selected in parallel (see Parallel Processed PolyphonicConstruction). When two or more test pitches are present at the same time, they are collected intoa list called test chord. CALMUS will compare these test chords to the chord(s) in the HarmonyControllers as Model Chord(s) buffer. Then the harmonic relation is evaluated on the basis of thevalue in theHARMONYQUALITYGRAPH, and the pitches are accepted or rejected.

    The Harmony Controlling as Model Chord(s) are entered into each object through MIDI, inrelative time from the Object Editor panel.

    Example:

    Let us assume that three chords in Harmony Controllers as Model Chord(s) are to be used tocontrol the harmony of an object of 1 minute duration. The position of the first chord in the

    Harmony Controllers as Model Chord(s) should be at time-point 0, the second at time-point 45and the third at time-point 60. The chord could then be entered into this object with this rhythmcell:

    Figure 53

    q . e e

    The duration of the notes has no value for the harmony control. On the other hand the attack timepoints put the controlling chords into correct time positions. (See figure 54.)

  • 8/7/2019 TUTORIAL CALMUS 2000

    32/69

    Kjartan lafsson 2 0 0 029

    Figure 54

    Harmon flow for anob ect

    Total time of the ob ect

    How to enter the Harmony Controller Model Chord(s) into an object:

    a) Press Set Harmony button on Object Editor panel (see figure 55).

    Figure 55

    b) Play all Model Chord(s) ofidentical size on a MIDI instrument, in relativetime for the overall harmony flow of the object and press OK.

    c) Draw theHarmony Quality graph (see figure 56).

    Figure 56

    After pressing the OK button on Harmony Quality Graph window, CALMUS will display thechord in Harmony graph in the Object Editor window. The chord size is displayed in the numberbox CHORD SIZEas an interval. 2 = chord containing three pitches. See figure 57.

    Figure 57

    d) Repeat this process for all chord sizes.

  • 8/7/2019 TUTORIAL CALMUS 2000

    33/69

    Kjartan lafsson 2 0 0 030

    How to set the Harmony Controller to nil (no control)

    a) Select the chord sizeintended to be without control (see figure 57).b) Press CLEAR button.

    The Harmony Controller,A Selection of Acceptable Chords (method B)

    The Harmony Controlleris a selection of chords in a determined order, used in the objectconstruction to control the harmonic succession of an object.

    There are two methods for creating The Harmony Controller, a Selection ofAcceptable Chordsfor an object.

    One (B1) is to play through MIDI all chords for the Harmony Controller, in the desired orderdirectly into the Harmony Controller buffer.(How To Enter Chords Manually Into The Harmony Controller(B1))

    The other (B2) is to let CALMUS use algorithms to choose the chords for the Harmony

    Controller. (How to Let CALMUS use Algorithms to Evaluate and Select Chords for the Harmony Controller as aSelection ofAcceptable Chords (B2))

    How To Enter Chords Manually Into The Harmony Controller (B1)

    a) Select Harmony panel from the menu.b) To remove previous chords in the memory bank press CLEAR TOT. on

    HARMONY *.c) Press DirectMIDIon Harmony panel.d) Play all chords for the Harmony Controller on a MIDI instrument in the

    desired order.e) Press OK.f) Press ADD TO TOTAL.**g) Repeat this for all chord sizes that useHarmony Controller.

    After having pressedADD TO TOTAL button the chords are in theHARMONY CONTROLLERchord selection and are ready to be used for a composition of an object.

    N.B. Chords and chord sizes are denoted in intervals.

    * CLEAR TOT will erase the INTERNAL MEMORY bank, the size ofwhichis indicated in CHORD SIZE. (See figure 58.)

    CLEAR ALL INT. erases all theINTERNAL MEMORYbanks.

    **ADD TO TOT will write into theINTERNAL MEMORY bank, the size ofwhich is indicated in CHORD SIZE, the new selection displayed in the harmonywindow. (See figure 58.)If theINTERNAL MEMORY bank contains chords which are to be used for theharmony control, the program will add the new selection to the right with the perviousselection.

    SHOWTOT will display chords in the INTERNAL MEMORYbank,the size ofwhich is indicated in CHORD SIZE (See figure 58.)

    TOT. SIZE displays the number of chords in the INTERNAL MEMORY bank, the sizeofwhich is indicated in the number box CHORD SIZE. (See figure 58.)

  • 8/7/2019 TUTORIAL CALMUS 2000

    34/69

    Kjartan lafsson 2 0 0 031

    Figure 58

    Figure 59

    Chord size as number

    of intervals

    Containing chords Empty

    INTERNAL MEMORY (see figure 59) displays the status of the memory banks, i.e., if a bankcontains chords or not.

    How to Let CALMUS use Algorithms to Evaluate and Select Chordsfor the Harmony Controller as a Selection of Acceptable Chords (B2)

    The basic input for the every evaluation of chords is a single chord entered into the Harmonyprogram. This chord is analyzed and evaluated in the Harmony program, mainly for its tension,shape and colour. All calculations and evaluations for the selections and filtering will be based onthis input chord.

    There are no limits to how many selections can be used to create the Harmony Controller as aSelection ofAcceptable Chords,but it is only possible to workwith one selection at a time. The

    Harmony Controllercan be built up ofseveral small selections, each with a different input chord.

    How to Enter a Test Chord into

    the Harmony Evaluation Programa) Select Harmony panelb) PressInputMIDIbutton on Harmony panel.c) Play input chord on a MIDI instrument.d) Press OK.e) Press CLEAR TOT onHARMONY panel, ifthis is a new selection.g) See later...

    CALMUS has now analyzed the input chord:

    The result can be viewed on theHARMONY panel.

    1. Tension,Leading and Colourvalue of the input chord (see figure 60).

  • 8/7/2019 TUTORIAL CALMUS 2000

    35/69

    Kjartan lafsson 2 0 0 032

    Figure 60

    2. The main colour interval is measured in 1/2 steps. The interval 4 is a major 3rd (see figure61).

    Figure 61

    4.

    3. Basic colour analysis of an input chord (see figure 62). *

    Figure 62

    Intervals in 1/2 steps

    Colour values for individual intervals

    * The input chord for the test above contains the intervals in 1/2 steps, from top to bottom: [3 4],

    or 60 64 to 67 in MIDI values, or in traditional notation from middle c', e' to g'.

    Basic Tension and Leading valuesThe TENS. VALUE andLEAD VALUE in figure 63 are the basic tension and leading values forthe corresponding intervals, ranging from 1 to 12.

    Figure 63

    For the interval of a major 2nd (interval number 2), the basic value for tension is 3 and the basiclead value is 2.

    NB. A low tension value here means strong by dissonant.A low lead value indicates a strong tendency to lead.

    This basic lead and tension values can be changed before the main calculation is performed. Thebasic tension order is discussed in more detail elsewhere in the theory papers for CALMUS.

    4. The top note of the chord, displayed in MIDI value for the pitch. (g') (See figure 64.)

    Figure 64

    5. Graphical representation of the input chord and related chords (see figure 65) in theharmony graph. The chords are displayed as intervals (black and gray boxes).

  • 8/7/2019 TUTORIAL CALMUS 2000

    36/69

    Kjartan lafsson 2 0 0 033

    Figure 65

    Octaves

    Input chord

    Intervals

    6. The number boxes TENSION SIZE and COLOUR SIZE display the size of the selections,one for the tension selection and the other the colourselection.

    Figure 66

    FILTERS

    In the main algorithmic evaluation of chords ofidentical sizes, two different filtering selections aremade based on the tension and colour values of the input chord. The first selection is doneaccording to the tension and the latter according to the colour relation.

    The size of the selections can be controlled with the two number boxes TENSION andCOLOUR. The values inside these boxes limit the size of corresponding selections.

    Figure 67

    Example:The number of all possible chords of three pitcheswith intervals less than or equal to an octave is144 available chords. This means that the maximum size of the initial source selection is 144chords. From this selection chords are selected according to the tension relation to the input chord.The size of this selection (less or equal to 144) is set in the number box TENSION. From thisselection chords are selected based on the colour relation to the input chord. The size of this

    selection is set in the number box COLOUR. (See figure 68.)Figure 68 Figure 69

    Source for Tension selction144 chords

    Source forColour selction100 chords

    Source for Other selction56 chords

    During calculation of the basic selection these titles' fonts will change from ORDINARY fonttypes to BOLD. (See figure 69.)

    .

    The size of each selection can be changed inthese two number boxes. To re-order theselection after calculation, click on the titlesabove either of the TENSION SIZE orCOLOUR SIZEnumber boxes.

  • 8/7/2019 TUTORIAL CALMUS 2000

    37/69

    Kjartan lafsson 2 0 0 034

    Figure 70

    Other filtering such as Tension, Shape, Colour, Lead orHarmonic ordering takes its limitations from a number boxnamed OTHER. (See figure 70.)

    These filtering methods (OTHER) use as a source the initial selection (TENSION SIZE,COLOUR SIZEselection.) These methods will not modify the initial selection.

    The "other filtering" such as Tension, Shape, Colour, Lead or Harmonic, are selected from theHarmony Window by clicking appropriate button (see figure 71 and the chapter TENSIONORDER, COLOUR ORDER, SHAPE ORDER, LEADING ORDER and HARMONIC ORDERp. 34).

    Figure 71

    This selection can be used as a basic chord selection for the constructing of the HARMONYCONTROLLER chord selection.

    The program is now prepared to evaluate all possible chords of identical sizes in relation to theinput chord.

    (f) Press COMPUTE CHORDS.

    Before the actual evaluation, the program offers a shortcut in the calculation (see figure 72.)

    Figure 72

    In this panel it is possible to eliminate chords containing certain interval(s). Chords containingintervals marked with X will be excluded.

    There are two kinds ofintervals that can be eliminated, aNormal Interval, measured in 1/2 steps,and Global Intervals also measured in 1/2 steps. The global intervals appear when two or moreintervals are added together.

    To eliminate certain chords press the button FORBIDDEN CHORDS. It is only necessary to playeach chord in one position. CALMUS will take into account all positions of a chord, no matter ifmore than one position of a chord is entered into the buffer.

    (g) Choose a setting for interval elimination and press OK.

    The program selects the chords, taking into account the inputs and restrictions (see above).

    When the computation is completed, the harmony graph can look like this (figure 73).

  • 8/7/2019 TUTORIAL CALMUS 2000

    38/69

    Kjartan lafsson 2 0 0 035

    Figure 73

    At this stage no chord has been selected and put into the HARMONY CONTROLLER chordselection. The selection can at this stage be modified with various tools (see: TENSION ORDER,COLOUR ORDER, SHAPE ORDER LEADING ORDER and HARMONIC ORDER p. 36 andModified Orderings p. 37)before entered into theHARMONY CONTROLLER chord selection.To enter chords into the HARMONY CONTROLLER chord selection, the button ADD TOTOTAL must be pressed. After having pressed ADD TO TOTAL button the chords are in the

    HARMONY CONTROLLER chord selection and are ready to be used for a composition of anobject.

    h) Modify selection if desired. (See also Modified Orderings p 35.)

    i) Press ADD TO TOTAL.

    j) Repeat this for all chord sizes that useHarmony Controller.

    k) Select forbidden chord(s)Fb. Chords button (for the harmony of the object).

    Having completed this process for all chord sizes for the object, theHARMONY

    CONTROLLER chord selection is now ready to be used for a composition of an object.

    N.B. To show aHARMONIC CONTROLLER of a certain chord size, selectthe chord size in CHORD SIZE number box and press SHOWTOT.

    To delete aHARMONIC CONTROLLER of a certain chord size, selectthe chord size in CHORD SIZE number box and press CLEAR TOT button.

    To change the initial selection, adjust values in TENSION SIZEandCOLOUR SIZEand clickon either of the box titles (above the boxes)TENSION SIZEor COLOUR SIZE. This will not affect the HARMONYCONTROLLER.

    Using different input chords can be useful in the TENSION,COLOUR, SHAPE LEADING or HARMONIC ordering /filtering butthey can never affect the initial selection.

  • 8/7/2019 TUTORIAL CALMUS 2000

    39/69

    Kjartan lafsson 2 0 0 036

    TENSION ORDER, COLOUR ORDER, SHAPE ORDERLEADING ORDER and HARMONIC ORDER

    As can be seen below the harmony graph, there are buttons named: TENSION, COLOUR,SHAPE, LEADING and HARMONIC.

    Pushing these buttons will change the ordering of initial selection (before they are put into theHARMONY CONTROLLER ) chord selection and by adjusting the OTHER SIZEnumber box, the

    selection can be further limited. By pressing SHIFT while pushing these buttons the inputselection for this limitation/ ordering is the last selection instead of the initial selection (TENSIONSIZE, COLOUR SIZE). This is called Recursive limitation.

    The TENSION ORDER, COLOUR ORDER, SHAPE ORDER LEADING ORDER andHARMONIC ORDER functions are all connected to the input chord. They are used to change theorder of the selection. All these functions are discussed in detail elsewhere in the Theory Papers.

    TheHarmony Valueswindow displays all values,Leading, Colour, Tension Shape andHarmonic,of all chords ofidentical sizes. The chord size is shown in the number box CHORD SIZE in the

    HARMONY window, as a number ofintervals.

    It is possible to view the values of the chords in theHARMONY CONTROLLER chord selection.To create the Harmony Value window, press VIEW VALUES in the HARMONY window (seefigure 74.)

    Figure 74

    #CHORDS 0 35 35 56 35 35

    In Appendix 2 the chords that these values stand for are displayed in traditionalnotationtogetherwith the input chords.

  • 8/7/2019 TUTORIAL CALMUS 2000

    40/69

    Kjartan lafsson 2 0 0 037

    Modified Orderings

    The order of theHARMONY CONTROLLER chord selection (ordinary order) can be modifiedwith various ordering functions. Each function is connected to buttons, displayed figure 75.

    Figure 75

    Another limitation possible with this selection is to choose the chords according to the values,tension, leador shape and the corresponding value of the input chord. With these functions it ispossible to limit the selection by excluding all chords that have a lower value than the inputchord or exclude chords that have a higher value than the input chord, and finally to cut theextremes from the selection. Figure 76 displays this graphically.

    Figure 76

    Graphical Illustration

    Graphical illustration of the values can be viewed in two graphs in the Harmony window. (Seefigure 77.) The corresponding names for the values will be displayed in the left upper corner ineach graph.

    Figure 77

    or like this

    The dotted horizontal line indicates the value of the input chord.

  • 8/7/2019 TUTORIAL CALMUS 2000

    41/69

    Kjartan lafsson 2 0 0 038

    The Elimination of Individual Chordsin the HARMONY CONTROLLER Chords Selection

    It is possible to eliminate individual chords from theHARMONY CONTROLLER chord selectionby using the CUT nr. button. (See figure 78.)

    Figure 78

    Harmony graph

    The value in the number box below indicates which chord will be eliminated. It is the number ofthe chord counted from left in theHarmony Graph.

    Wave View Window

    In Wave view window (full size, figure 85)it is possible with certain CALMUS tools to examinechords (and intervals) to show the complexity of the wave form of the chord and relatedharmonics. This harmonic relation can be examined between the tones of a chord as well asbetween two or more chords. This is explained in more detail in the theory papers.

    Figure 79 shows what the basic tones and the harmonics look like when they have been convertedinto graphical format.

    Figure 79

    Harmonics

    Basic tones

  • 8/7/2019 TUTORIAL CALMUS 2000

    42/69

    Kjartan lafsson 2 0 0 039

    HARMONY CONTROLLER, a flow chart

    With the tools described above, aHARMONY CONTROLLER chord selection for an object can becreated. To exhibit this graphically, figure 80:

    Figure 80

    TENSION

    HARMONIC

    LEADING

    SHAPE

    COLOUR

    Leading and Harmonic

    values

    Initial Selection

  • 8/7/2019 TUTORIAL CALMUS 2000

    43/69

    Kjartan lafsson 2 0 0 040

    Harmony Test Range

    After construction of the harmony described above, aHARMONY CONTROLLER chord selectionis ready to be used as a controller for the harmony of an object.

    Some of the chords in this selection will never appear in the final result but the chords that are inthe final result are always members of theHARMONY CONTROLLER chord selection.

    The Object Harmony Test program will test whether or not combinations between tones from

    different melodies (chords) in the object are members of this selection. If they are, these tones willbe accepted as new ones for each of the melody lines.

    In CALMUS a certain tool is provided to control the harmony flow of the HARMONYCONTROLLER chord selection, the HARMONY TEST RANGE. This function will limit thenumber of chords available for the object harmony test at each time in the object construction.

    Instead ofhaving the completeHARMONY CONTROLLER chord selection as a test selection forthe object, this HARMONY TEST RANGEtakes only a certain percentage of the selection, theplacement ofwhich is according to the time position during the object construction procedure. Thetest range is adjustable and is given as a percentage, a certain percentage of the wholeHARMONYCONTROLLER chord selection as shown figure 81

    Figure 81

  • 8/7/2019 TUTORIAL CALMUS 2000

    44/69

    Kjartan lafsson 2 0 0 041

    How to Enter a Chord into the Harmonic analyzer(Basic tone + harmonics)

    a) Select WAVE View panel.b) Press Input Chord button.c) Play input chord on a MIDI instrument.d) Press OK.

    How to Enter Chords into Harmonics (overtones) Comparison of chordsChords and harmonics

    a) Select WAVE View panelb) Press Input Chord button.c) Play input chords on a MIDI instrument.d) Press OK.

    Figure 82 shows the harmonic relation among three chords that were entered into the Wave View.

    Figure 82

    The functions in the WAVE VIEWpart of the program are also used in theHARMONICorderingmethods (mentioned before) both to order chords up according to their harmonic relations and toconstruct the so-calledHarmony Controller as Harmonic (overtone)Relation controller.

    Harmonic Relation Functions

    The HARMONIC RELATION FUNCTIONS are used to construct aHarmony Controller as aSelection ofAcceptable Chords, and theHarmony Controller as Harmonic (overtone)Relation.These functions can be examined in the WAVE VIEW window. The functions deal with the

    harmonic (overtones) relation between chords.

    Figure 83 is an example from the Wave View window showing a representation of relatedharmonics and the waveform of an input chord.

  • 8/7/2019 TUTORIAL CALMUS 2000

    45/69

    Kjartan lafsson 2 0 0 042

    Figure 83

    Deviation is 26 cents. 100 cents is a tempered half step,

    e.g, from middle c to middle c sharp. (See later.)

    Wave of two tones that sound simultaneously and have common harmonics.

    The basic tones are represented with a black pattern

    (bottom tone), harmonics are represented with a grey

    pattern and harmonics that have relations to other

    harmonics of other tones are represented with a dark grey

    pattern.

    Harmonics frequency deviation,

    100 cents = 1/2 step

    To activate the Wave View, select Wave view in the CALMUS menu orpress TO WAVE button onHARMONY panel.

    The wave graph can also display waves of the added and the difference tones of the chord.

    Example of a wave of a chord and the difference tone.

    Figure 84

    Example of a wave of a chord and the added tone.

  • 8/7/2019 TUTORIAL CALMUS 2000

    46/69

  • 8/7/2019 TUTORIAL CALMUS 2000

    47/69

    Kjartan lafsson 2 0 0 044

    There are two harmonic relation methods that can be used. One is to compare a test chord to theharmonic spectrum of the input chord (see later) and the other compares the test chord to theharmonic spectrum of the last chord. The buttons Input Chord, Last Chord and Input+LastChordare used to select the testing mode.

    When the controller is in Input Chord mode, it will compare every test chord to the harmonicspectrum of the initial input chord.

    When the controller is in Last Chord mode, it will compare every test chord to the harmonicspectrum of the last accepted chord.

    When the controller is in Input+Last Chord mode, it will compare every test chord to theharmonic spectrums of the last accepted chord and the initial input chord.

    The button Fb.CHORDS is for entering chords into the program that will not be accepted in theharmony. As before, each chord needs only to be played in one position.

    The graphHarmonic Relation For Harmony Controllerdisplays the threshold for the number oftests for the Harmonic Relation Controller. The maximum value for the graph can be changed inthe number boxMax. Rel.above the graph.

    During the drawing of this graph this number box and the number box below (with initial value311) display the value of the co-ordinates of the graph.

    To set theHarmony Controller as Harmonic (overtone)Relation:

    a) SelectHARMONYpanel.e) Select the number of harmonics for the tests in #Harmonics.f) Choose the deviation for the tests in CommonHarmDeviation, 1 / 2 step =

    100 cents.g) Draw the graph for the thresholds in Harmonic Relation For Harmony

    Controller.h) Choose the type of controller, e.g.,Input Chord mode,Last Chord mode or

    Input+Last Chordmode.h) Press the button Harmony Controller.c) Play the input chord on a MIDI instrument.d) Press OK.

    Now the Harmony Controllerfor this chord size is set for harmonic relations and is ready forcomposing.

    N.B. It is possible to have different kinds of Harmonic controllers for a

    different chord size of the same object but it is only possible to have onetype of Harmony Controller for each chord size at a time.

    Figure 87 How To Set The Harmony Controller to NIL

    With this setting, there will be noHarmony Controller for an object.This can be done both from theObject edit panel and the Harmonypanel.

    In the Object Editor panel: (figure 87).a) Select chord size.b) Press CLEAR button.

  • 8/7/2019 TUTORIAL CALMUS 2000

    48/69

    Kjartan lafsson 2 0 0 045

    In theHarmony panel:

    a) Select chord size in the number box CHORD SIZE.b) Press CLEAR TOTAL on the HARMONY panel. *c) Press TENSIONORDER on the HARMONY panel.d) PressADD TO TOTAL.

    Figure 88

    a)

    b)

    d)

    c)

    Play-Back For Harmony

    In the Object editor Window:

    Select the chord size with Chord Sizenumber box.Press Play button.

    In Harmony Window

    To play back a chord selection which is displayed inthe Harmony Graph, press PLAY.

    To play back a chord selection that is already in aharmony bank, put the selection first in the Harmony

    Graph by first choosing the chord size in CHORD SIZE, then press SHOWTOT and PLAY.

    The program will play all chords in that buffer.

    The number box PLAY nr. indicates which chord is being played.

    The play-backcan be stopped by pressing STOP button or by a mouse click.

    To control the play-backspeed alter the number box Metronome. A low value in this box is forfast play-backand high value for slow play-back. During the play-backthe topmost pitch is thesame. To have the same lowest pitch, press SHIFTkey and clickthe PLAYbutton.

    N.B. The play-back MIDI channel for harmony is 1.

  • 8/7/2019 TUTORIAL CALMUS 2000

    49/69

    Kjartan lafsson 2 0 0 046

    Global Variables

    In the harmonic evaluation functions several constants are used to give the initial values for thevarious evaluation. The basic tension and leading values are examples of initial values (see figure89).

    Figure 89

    As mentioned before, these values can be changed from theHARMONY window. Other constantsfor harmonic evaluation can also be altered in a window named GLOBAL VARIABLES. (Seefigure 90.)

    Figure 90

    Increasing and decreasing the values in the number boxes will affect the harmony evaluation.

    For example, the constant named *Octave, Interval* has 640 as the initial value. This constantaffects the tension value of a chord, depending on the presence or absence of the octave interval.By decreasing this constant, the effectiveness of the presence of an octave in a chord is alsodecreased.

    To activate the Global Variables window press the SET VAR button in the Harmony panel.

  • 8/7/2019 TUTORIAL CALMUS 2000

    50/69

    Kjartan lafsson 2 0 0 047

    N.B. CALMUS provides several options to save a Harmony Controlling Chord Selection.

    1. Saving the Harmony Controlling Chord Selection as aMIDI FILE

    makes it possible to transfer the chords into traditional notationor into other MIDI FILE programs. (MIDI FILEon Harmony panel.)

    2. Saving the Harmony Controlling Chord Selection asMIDI LISTS,

    only for CALMUS format. (MIDI LISTon Harmony panel.)

    3. Saving the Harmony Controlling Chord Selection as an individual

    harmony object, which can be loaded directly into the Harmony

    Construction again. (SAVE andLOAD on Harmony panel.)

    4. Saving the Harmony Controlling Chord Selection with other arguments for an object

    (SAVE on OBJECT ORGANIZER panel.)

    Harmony Controlling Chord SelectionConnected To An Object

    When theHarmony Controllerhas been completed, the next step is to connect this HarmonyControllerto an object.

    Step 13.Select the OBJECT ORGANIZER window by pressing TO OBJECTin

    the HARMONY window or press OK button in the OBJECT EDITORWINDOW.

    Now all arguments and information for an object should have been constructed.

    Step 14.PressADDARGUMENTS TO AN OBJECT in OBJECT ORGANIZER

    window.

    At this stage, CALMUS is ready to compose the object.

    It is wise to test every object arguments file before an object is put into the AUTO-composer.

    To test the composition of an object, press the COMPOSE button in the OBJECT window.

    Step 15.Create all desired objects for a composition, one by one, asdescribed above. If necessary, save each as anobjectarguments fileintothe AUTO composer folder.

    Step 16.Press the COMPOSE or AUTO-compose button on the OBJECTORGANIZER panel to start the composition process

  • 8/7/2019 TUTORIAL CALMUS 2000

    51/69

  • 8/7/2019 TUTORIAL CALMUS 2000

    52/69

    Kjartan lafsson 2 0 0 049

    SAVE

    To save a composition, press SAVE MIDI FILE, t o save it as a MIDI FILE. MIDI files can beopened in most of the traditional notation programs.

    LOAD

    To load aMIDI FILE, press theLOADMIDI FILEbutton.

    METRONOME

    The metronome is only for play-back. It will not affect the actual attack time points or duration.

    MIDI CHANNELS

    To view the MIDI channels settings press SET MIDI CHANNELS onMIDI panel.

    A window appears, showing the number of melodies within the object(s) and to which MIDIchannels these melodies are connected. (See figure 93 ofMIDI channelswindow.)

    The topmost number row on theMIDI channels panel marked with the symbolMel.#., displaysthe number of melody lines within an object, displayed in the number row below, marked withObj.nr. The arrows point to the MIDI channels from the melodies of the object that they (themelodies) are assigned to.

    Figure 93

  • 8/7/2019 TUTORIAL CALMUS 2000

    53/69

    Kjartan lafsson 2 0 0 050

    Step 17.When the composition is completed, listen to the new composition

    through MIDI and/or save it as a MIDI file to export it into MIDI programsor notation programs.

    CHANGING MIDI CHANNELS

    To change the channel, click in the corresponding MIDI channel box (marked with an X) andselect a new MIDI channel. For example, to change from MIDI channel 3 to MIDI channel 6 inthe object number 1 (see figure 94), click on the desired MIDI channel box (marked with an X)and change the value (3) to (6) in the number box labeled "to MIDI channel", in the CHANGE

    MIDI CHANNELS window.

    Figure 94

    CALMUS: THE THEORY

    In other documents about CALMUS musical problems that are just mentioned here, are discussedin more detail.

  • 8/7/2019 TUTORIAL CALMUS 2000

    54/69

    Kjartan lafsson 2 0 0 051

    APPENDIX 1

    CALMUS Interface Windows

    1. Object Organizer Window........................52

    2. Object Editor Windows............................53

    3. Melody Construction Windows...................54

    4. Harmony Values Window / Wave View.......55

    5. Wave View..........................................61

    6. Note Envelopes / Harmony window.....................56

    7. Harmony Settings Window.................................57

    8. Melodic Development / MIDI Channels.................58

    9. Complexity Graphs