Skip to content
View in the app

A better way to browse. Learn more.

Opusmodus

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Modelling Tonality (1) Diatonic Transposition (some intuitions)

Featured Replies

I'm thinking about the formal conditions of the diatonic transposition.

It may seem trivial, but actually is much more difficult than it appears.

I think that modelling tonality and diatonic stuff is far more difficult

 than  the 12-tone operations.

One of the things I think is that in diatonic transposition you need to

 inform more to the machine, a kind of axis point or map, because the transposition

 of each degree is going to be different.

In the case of the diatonic set, the MyHill property assures that each diatonic distance

 will be in exactly 2 sizes. Seconds: major and minor; Thirds: major and minor;

Fourths: perfect and augmented; Fifths: perfect and diminished and so on...

 

The Morris pitch spaces are also part of the problem...

 

Do you have any hint in relation to this intuitions to share ?

Maybe the way that OM make this operations ?

 

Best,

 

Julio

Here's my way for diatonic transposition.

It is very simple but do exactly what i want when composing

 

I use this system extensively in all my compositions now, not always in diatonic context but also with synthetic modes, row, algorithmic pitch material etc...

I love the concept of degree and transpositions inside a scale and use that technique very often.

(setf motiv '((q c4 e4 g4)(q c4 e4 g4)(q c4 e4 g4)(q c4 e4 g4)(q c4 e4 g4)))


(setf degree '(1 4 2 5 1))
(setf harmonic-path (harmonic-progression
                     degree
                     '(c4 major)
                     :step 1
                     :size 7
                     :base 1
                     ))
(setf p1 (tonality-map (mclist harmonic-path)  motiv))

 

S.

 

  • Author

Thanks a lot, Stephane !

It's a kind of mapping.

Best !

Julio

You already know how to translate a MIDI pitch number into a representation consisting of two pieces of information, a pitch class integer and an octave integer. The conversion can be applied in both directions.

 

Now, you can apply a similar conversion to a pitch class integers, converting them into a scale degree (integer) and an accidental (another integer), depending on a scale (a set of pitch classes). Again, this conversion can be done in both ways (there are multiple solutions if you allow for enharmonic equivalence).

 

Once you have such a representation, you can then do diatonic transpositions (depending on whatever scale) within the scale degree domain, and finally translate your  results back into pitch classes, or MIDI pitch numbers.

 

I have a draft of a paper discussing this formally. A preliminary version of this paper has been published at SMC, http://uobrep.openrepository.com/uobrep/handle/10547/622264 Don't get scared away by the constraint programming aspect. Such conversions can also be implemented as plain deterministic functions.

 

This can be seen as a kind of mapping, if you want, if you also see the relation between MIDI pitch numbers and pitch classes as a mapping :)

 

Best,

Torsten

 

  • Author

Thank you, Torsten. You are digging a lot into the realm of modelling tonality. I think that this is really something more interesting than brownian motions, stochastic stuff,  because there are many constraints in the tonality and also idiomatisms. Models like the xenakian one are amazing but the are in the realm of math. I'd like to find something more idiomatic.

Best,

Julio 

Create an account or sign in to comment


Copyright © 2014-2026 Opusmodus™ Ltd. All rights reserved.
Product features, specifications, system requirements and availability are subject to change without notice.
Opusmodus, the Opusmodus logo, and other Opusmodus trademarks are either registered trademarks or trademarks of Opusmodus Ltd.
All other trademarks contained herein are the property of their respective owners.

Powered by Invision Community

Important Information

Terms of Use Privacy Policy

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.