Open Source en Do majeur
Programme écrit en python, qui démontre comment calculer le développement des modulations diatoniques. S’il ne calcule qu’une seule gamme, c’est pour montrer le processus moteur du mécanisme diatonique. Il est bien de savoir, que toutes les définitions diatoniques se comparent à la gamme naturelle de Do { CDEFGAB }
# Développement diatonique élémentaire
# Version 1 : Calculer les modulations majeures
# pr0diat zéro
gnat = [‘C’,’D’,’E’,’F’,’G’,’A’,’B’] # Notes diatoniques
gmaj = [1,1,0,1,1,1,0] # Formule majeure
gdeg = [0,1,2,3,4,5,6] # Degrés modal
nordiese = [‘ ‘,’+’,’x’,’^’,’+^’,’x^’] # Altérations augmentées
subemol = [‘ ‘,’°*’,’-*’,’*’,’°’,’-‘] # Altérations diminuées
deg = 0
while deg < 7 : # Lecture diatonique tonale de « gdeg »
# Une tournée produit une tonalité modale de 7 notes
nat = gdeg[deg] # Degré tonal en question
cri = gimj = gmod = maj = 0
#
while maj < 7 : # Tonalité modale du degré
#
gmj = gmaj[maj] # Forme majeure
imaj = gmaj[nat] # Forme modale
gnt = gnat[nat] # Forme tonale
#print (« gmj,imaj,gnt « ,gmj,imaj,gnt)
cri = cri + gimj # Tonalité cumulée
gimj = imaj – gmj # Calcul tonal PAS/PAS
#print (« gimj,cri,gnt « ,gimj,cri,gnt)
cmod = gmod = cri
#print (« gmod « ,gmod,gnt)
if gmod > 0 :
imod = nordiese[cmod]
#print (« imod+cmod »,imod,cmod,gnt)
if gmod < 0 :
imod = subemol[cmod]
#print (« imod-cmod »,imod,cmod,gnt)
if gmod == 0 :
imod = subemol[cmod]
#print (« imod,cmod « ,imod,cmod,gnt)
gmod = gmod + cri # Transition tonale
nat = nat + 1
if nat > 6 : nat = 0
maj = maj + 1
print (« imod,maj,gnt « ,imod,maj,gnt)
#
print (« ___ »,deg)
deg = deg + 1
#