IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Vote des utilisateurs
0 
0 
Détails
Éditeur : cabviva
Licence : Non renseignée
Mise en ligne le 1er juillet 2016
Plate-forme : Windows
Langue : Français
Référencé dans
Navigation

progamv6encore


Est la suite évoluée de progamv1alpha, qui développait la gamme relative à la position des notes cursives. Les plus sont :
1 Large espace de transposition limité à trois octaves ayant chacune un propre système altératif
2 Une combinaison fonctionnelle, qui par relâchement automatise le développement de la gamme
3 Une forme d'onde acoustique de fréquence égale à la coordonnée graphique de la note diatonique
4 Une forme d'onde pour chaque accord 1357
5 Une définition chromatique qui réagit à deux règles différentes
6 Une tablature sous les touches répandues sur les trois octaves, du piano
7 Une sélection diatonique sur le clavier pour trouver la gamme sélectionnée
8 Conversion de l'octave intermédiaire vers l'octave majeur
9 Premier pas commatique en mesure chromatique
Le polymorphisme chromatique pour une vision simplifiée
Découverte d'un système de valeurs de fréquences acoustiques liées à des paramètres graphiques
Il est important de savoir que ce programme est libre, et que son unité est juste
Assez simple comme support gammique...
Avatar de
https://www.developpez.com
Le 25/12/2015 à 9:42
Les fréquences hertziennes calculées ne sont pas vraiment justes ?

Oui et non :
Le tempérament harmonique a une définition au 1/16ème, ce qui signifie que la précision au 1/12ème est donc imparfaitement justifiée.
La solution harmonique du tempérament "1/12ème" équivaut à la fréquence fondamentale*2**(harmonique/12), et sa définition harmonique est partielle.
Et, le code qui est ajouté dans ce corps de message contribue à développer l'évolution harmonique de la fréquence "1". Et, de ranger cette harmonisation dans des espaces d'octaves (doubles). Aussi, de comprendre LE POURQUOI du "1/16ème" de la justesse harmonique. Et enfin, cerner avec exactitude les points "harmoniques" de l'harmonie des notes de musique, toutes fondamentales confondues.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
12345678910111213141516171819202122232425262728293031323334353637
Code : Sélectionner tout
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
 
import tkinter as tk
 
root = tk.Tk()
root.title('tempéraments')
root.geometry('650x250')
 
octaves = {}
o0 = h2 = 0 ; h1 = 1
# Table des unités harmoniques classées par octave
for h in range(64):
        h2 += 1
        if h2 < h1*2:
                octaves[o0] = h1,h2
        if h2 == h1*2:
                h1 = h2
                o0 +=1
#(octaves)
tab_notes = ['A','#A','B','C','#C','D','#D','E','F','#F','G','#G','A']
tab_freqs12 = [] ; tab_freqs16 = [] ; con_freqs = []
f01 = 220
for ai in range(20):        # Construction tableau TM
        freq=f01*2**(ai/16)
        tab_freqs16.append(freq)  # Tableau en écriture TM
for ai in range(20):        # Construction tableau TM
        freq=f01*2**(ai/12)
        tab_freqs12.append(freq)  # Tableau en écriture TM
        for co in tab_freqs16:
                if co == freq:
                        con = tab_notes[ai], co
                        con_freqs.append(con)
print('12ème',tab_freqs12)
print('*')
print ('16ème',tab_freqs16)
print('*')
print ('clone',con_freqs)
tk.mainloop()
Rien de tel qu'une écoute pianistique des notes harmoniques, rendu possible à l'aide du site développez.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
Code : Sélectionner tout
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
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
  
import tkinter as tk
import winsound
 
root = tk.Tk()
root.title('petit piano')
root.geometry('650x250')
 
gen_b = [3,5,7,8,10,12,14,15,17,19,20,22,24,26,27,29,31,32,34,36,38]
gen_n = [4,6,0,9,11,13,0,16,18,0,21,23,25,0,28,30,0,33,35,37]
 
tab_freqs = []
def ancien():
    del(tab_freqs[:])
    root.title('petit piano ancien')
    f0 = 220 ; freq = f12 = 0
    for ai in range(39):        # Construction tableau TM
        if 0 <= ai < 12: la = f0
        elif 24 > ai > 11: la = f0
        elif 36 > ai > 23: la = f0
        elif ai > 35: la = f0
        f1 = la/2 ; f2 = f1/12
        freq=f12*f2+f1          # Calcul fréquence
        tab_freqs.append(freq)  # Tableau en écriture TM
        f12+=1
        if f12 > 11:
            f12 = 0
            f0 *= 2
def nouveau():
    del(tab_freqs[:])
    root.title('petit piano nouveau')
    f01 = 110
    for ai in range(39):        # Construction tableau TM
        freq=f01*2**(ai/12)
        tab_freqs.append(freq)  # Tableau en écriture TM
 
def piano_b(m):
    duration=200
    freqhtz = int(tab_freqs[gen_b[m]])
    print(m,freqhtz,tab_freqs[gen_b[m]])
    winsound.Beep(freqhtz, duration)
def piano_n(m):
    duration=200
    freqhtz = int(tab_freqs[gen_n[m]])
    print(m,freqhtz,tab_freqs[gen_n[m]])
    winsound.Beep(freqhtz, duration)
 
btbs = []
for x in range(21):
    btb = tk.Button(text='', height=10, width=3, bg='ivory', command=lambda m=x: piano_b(m), relief="groove")
    btb.place(x = 30*x, y = 30, anchor='nw')
    btbs.append(btb)
 
o = 0
btns = []
for x in range(21):
    if o == 2 or o == 6:
        pass
    else:
        btn = tk.Button(text='', height=5, width=2, bg='black',command=lambda m=x: piano_n(m), relief="groove")
        btn.place(x = 30*x+15, y = 30, anchor='nw')
        btns.append(btn)
    o += 1
    if o > 6:
        o = 0
btchoix1 = tk.Button(text='ancien',height=1,width=10,bg='ivory',command=ancien)
btchoix1.place(x = 200, y = 200, anchor='nw')
btchoix2 = tk.Button(text='nouveau',height=1,width=10,bg='ivory',command=nouveau)
btchoix2.place(x = 300, y = 200, anchor='nw')
btchoix1.invoke()
tk.mainloop()
Le résultat de l'accord diminué de septième n'est pas exact, les opérations sont à revoir
Avatar de
https://www.developpez.com
Le 26/12/2015 à 13:46
Le résultat de l'accord diminué de septième n'est pas exact, les opérations ne sont plus à revoir

Une erreur corrigée avec ce bout de code manquant :
Code : Sélectionner tout
1
2
3
4
5
                                                if zone == 1:                   # Zone de droite
                                                        txdr += txsg
                                                        caaacc.create_text(xdd,ydd,text=txsg,font=fofin,fill='blue')
                                                        xdd += 20
Developpez.com décline toute responsabilité quant à l'utilisation des différents éléments téléchargés.