17 lines
529 B
R
Executable file
17 lines
529 B
R
Executable file
#!/usr/bin/Rscript
|
|
|
|
do=261.63 # do frequency convention
|
|
N=13 # Number de nouvelle notes
|
|
quintes=rep(do,N) # Les nouvelles quintes
|
|
|
|
## Calcule l'ensemble des quintes de la gamme
|
|
facteurs=(3/2)^(0:(N-1)) # Facteurs relatif au do 261.63
|
|
## On divise par 2 jusqu'à retombé dans notre octave
|
|
toOctave=function(x){
|
|
if(x<(2*do+10)) # +10 car la dernière quinte n'est pas parfait et dépasse 2*261.63
|
|
x
|
|
else
|
|
toOctave(x/2)
|
|
}
|
|
notes=sort(sapply(quintes*facteurs,FUN=toOctave)) # Generation des notes de la gamme
|
|
|