1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
|
# -*- coding: utf-8 -*-
# Développement diatonique élémentaire
# Version 1 : Calculer les modulations majeures
# pr0diat zéro
diatoniques = ['C','D','E','F','G','A','B'] # Notes diatoniques
majeures = [1,1,0,1,1,1,0] # Formule majeure
degres = [0,1,2,3,4,5,6] # Degrés modal
dieses = [' ','+','x','^','+^','x^'] # Altérations augmentées
bemols = [' ','°*','-*','*','°','-'] # Altérations diminuées
degre = 0
for degre in degres:
# Une tournée produit une tonalité modale de 7 notes
tonal = degres[degre]
ton_cumule = delta_tonal = maj = 0
for maj in degres:
forme_majeur = majeures[maj]
forme_modale = majeures[tonal]
forme_tonale = diatoniques[tonal]
ton_cumule += delta_tonal
# Calcul tonal PAS/PAS
delta_tonal = forme_modale - forme_majeur
alter = transition = ton_cumule
if transition > 0:
alteration = dieses[alter]
elif transition < 0:
alteration = bemols[alter]
else:
alteration = bemols[alter]
transition += ton_cumule
tonal += 1
if tonal > 6:
tonal = 0
print ("alteration, maj, forme_tonale ",alteration, maj + 1, forme_tonale)
print ("___", degre + 1) |
Partager