本帖最后由 jaganshi 于 17-2-13 21:08 编辑
这个脚本按着输入的音符(或者字符)以及所需要的变化数量,随机生成几个修饰方式以及相应的全排列。
使用方法:
第一行的变量为音程修饰的总数,改成0则生成无修饰的全排列。
第二行的大括号内为所使用的字符,第一项和最后一项是范围之外的临时变化。中间可以输入任意数量的字符。默认为C大调的1 2 3 4(以及作为临时变化的7和5)
设置好了之后点击上方的Run,就可以在右边的结果栏里显示出来所有的排列。
此脚本可以作为一个学习、检查、或者激发灵感的工具,真正弹奏的话还是建议把这个全排列技术练成本能。
全排列 是一个组合数学概念,简单来说就是因为1+2=2+1,所以1与2之和的组合有两个(组合总数公式为n!)。
在音乐即兴、作曲中,全排列是一个发展主题的好工具。我们可以通过使用全排列技巧来扩展一个简短的音乐动机,避免不断构思新的无关联的动机,这样能让音乐作品更统一,更有逻辑。在我们即兴课上,全排列是最基础的一个练习。每个人被要求背下四位数的全排列,把它变成本能,并有能力随时随地调取这个列表。
四位数的全排列表如下(共4!=24组):
1 2 3 4 2 1 3 4 3 1 2 4 4 1 2 3
1 2 4 3 2 1 4 3 3 1 4 2 4 1 3 2
1 3 2 4 2 3 1 4 3 2 1 4 4 2 1 3
1 3 4 2 2 3 4 1 3 2 4 1 4 2 3 1
1 4 2 3 2 4 1 3 3 4 1 2 4 3 1 2
1 4 3 2 2 4 3 1 3 4 2 1 4 3 2 1
很多人会觉得这个表格很熟悉,毕竟吉他乐手练指法的时候会用到它(每个数字代表一个手指)。在指法之外,如果我们把每个数字代入一个音符、节奏、和弦、乐句、力度或者任何音乐概念的话,我们可以马上生成24种相关的动机可能性任我们挑选。
在此基础上,我们可以对每个排列进行变化。当我们自己观察一下以上的列表,我们会发现两个临近数之差会有1到3三种不同的数值。如果我们按着这三个不同的数值给予其不同的变异,我们则可以生成更多的变化。
例如,我们可以让每三度(1-3、2-4..)之间添加一个过度音(1-2-3,2-3-4):
1 2 3 4
1 23 4 3
12 3 23 4
12 3 43 2
1 43 2 3
1 4 3 2
把上面数字当成简谱试着弹(唱)一下吧?
你可以脑补一下剩下的三组。
这种音乐旋律修饰的变化有以下几种:
Repeat:24 →22 4
Passing Note:24 → 23 4
Anticipation:24 → 24 4
Appoggiatura:24 → 25 4
Echappee:24 → 21 4
Going Pass:24 → 2345 4
Going Away:24 → 2123 4
*Cambiata:24 → 235 4
*Reverse Cambiata:24 → 213 4
Double Change Note:14 → 135 4
*这里的Cambiata与传统对位法的Cambiata稍有不同,少了必须下行的限制。
**以上所有修饰皆可以用半音替换。
当我们把上方修饰方式带入到全排列中后,结果通常会变成更有目的性的旋律。例如:
排列:2 3 1 4
变化:1,Echappee;2,Cambiata;3,Going Pass。
结果:21 327 12345 4
如果我们把原音符换成音阶的其他音,也许能生成更有表达力的乐句。例如:
排列:2 5 7 3
变化:3,Double Change Note;2,Going Away;5,Reverse Cambiata。
结果:246 5456 7i4 3
Now you try.