├── .gitignore ├── ChangeLog.md ├── LICENSE ├── README.md ├── Setup.hs ├── _stack.yaml ├── analysis └── pentatonic_experiment.txt ├── app └── Main.hs ├── data └── jsbach_chorals_harmony.data ├── docker-compose.yml ├── documents ├── Data_Science_In_The_Creative_Process_2018.pdf ├── EADG.pdf ├── EAeGC.pdf ├── EAeGb.pdf ├── Harmonic_Algorithm_Reflections_2016.pdf └── The_Harmonic_Algorithm_2016.pdf ├── graphdb ├── dev.cql └── test.cql ├── img ├── choicefour.gif ├── choiceone.gif ├── choicethree.gif ├── choicetwo.gif ├── enharm.gif ├── filterbass.gif ├── filterkey.gif ├── filternone.gif ├── header.png ├── loading.png ├── loadingtitle.gif ├── openfilters.gif ├── resolve.gif ├── selections.gif ├── sequence.gif └── title.png ├── livecode └── test.tidal ├── output ├── 0ecbc_patternsALL.txt ├── analysis_1.txt ├── analysis_10.txt ├── analysis_11.txt ├── analysis_12.txt ├── analysis_13.txt ├── analysis_14.txt ├── analysis_15.txt ├── analysis_16.txt ├── analysis_17.txt ├── analysis_18.txt ├── analysis_19.txt ├── analysis_2.txt ├── analysis_20.txt ├── analysis_21.txt ├── analysis_22.txt ├── analysis_23.txt ├── analysis_24.txt ├── analysis_25.txt ├── analysis_26.txt ├── analysis_27.txt ├── analysis_28.txt ├── analysis_29.txt ├── analysis_3.txt ├── analysis_30.txt ├── analysis_31.txt ├── analysis_32.txt ├── analysis_33.txt ├── analysis_34.txt ├── analysis_35.txt ├── analysis_36.txt ├── analysis_37.txt ├── analysis_38.txt ├── analysis_39.txt ├── analysis_4.txt ├── analysis_40.txt ├── analysis_41.txt ├── analysis_42.txt ├── analysis_43.txt ├── analysis_44.txt ├── analysis_45.txt ├── analysis_46.txt ├── analysis_47.txt ├── analysis_48.txt ├── analysis_49.txt ├── analysis_5.txt ├── analysis_50.txt ├── analysis_6.txt ├── analysis_7.txt ├── analysis_8.txt └── analysis_9.txt ├── package.yaml ├── scripts └── import.R ├── src ├── Analysis.hs ├── Arranger.hs ├── GraphDB.hs ├── Lib.hs ├── Markov.hs ├── MusicData.hs ├── Overtone.hs └── Utility.hs ├── stack.yaml ├── stack.yaml.lock ├── temp ├── test_1.txt ├── test_2.txt └── test_3.txt ├── test └── Spec.hs └── theHarmonicAlgorithm.cabal /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | .stack-work 3 | .vscode 4 | out/ 5 | data/ 6 | theHarmonicAlgorithm.iml -------------------------------------------------------------------------------- /ChangeLog.md: -------------------------------------------------------------------------------- 1 | # Changelog for theHarmonicAlgorithm 2 | 3 | ## Version 1.0.1.1 4 | 5 | More intelligent naming logic with regard to slash chord notation. 6 | Removed some system specific path dependencies 7 | 8 | ## Version 1.0.1.0 9 | 10 | Version 1.0.1.0 makes a few refinements to the codebase as well as introducing 11 | a new feature -- Random Sequences! 12 | 13 | Random sequences allow the performer/composer to traverse deterministic space 14 | (move through musical cadences!) at a much faster rate and give a 'higher up' 15 | viewpoint to the character and nature of harmonic motion in a given musical 16 | context. The performer/composer can then 'jump in' to any point of the 17 | generated sequence and move through musical space in 'blocks' of harmony. 18 | 19 | ## Version 1.0.0.0 is complete! 20 | 21 | The Harmonic Algorithm 1.0.0.0 implements a generation, filtering and 22 | exploration algorithm for triadic musical data, with a focus on composing 23 | with the overtones of an instrument and scope for use in traditional 24 | composition, instrumental study or even live performance. 25 | 26 | This functionality is augmented by a conceptually complete Markov Chain 27 | Machine Learning implementation, trained on Bach Chorale harmonisation data 28 | retrieved from the UCI Machine Learning Repository (Dua, D., Karra Taniskidou, 29 | E., 2017 http://archive.ics.uci.edu/ml). 30 | 31 | In version 1.0.0.0 of The Harmonic Algorithm, a command line interface is 32 | provided for interaction with the underlying musical and numerical algorithms. -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright Oscar South (c) 2018 2 | 3 | All rights reserved. 4 | 5 | Redistribution and use in source and binary forms, with or without 6 | modification, are permitted provided that the following conditions are met: 7 | 8 | * Redistributions of source code must retain the above copyright 9 | notice, this list of conditions and the following disclaimer. 10 | 11 | * Redistributions in binary form must reproduce the above 12 | copyright notice, this list of conditions and the following 13 | disclaimer in the documentation and/or other materials provided 14 | with the distribution. 15 | 16 | * Neither the name of Oscar South nor the names of other 17 | contributors may be used to endorse or promote products derived 18 | from this software without specific prior written permission. 19 | 20 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 21 | "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 22 | LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 23 | A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 24 | OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 25 | SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 26 | LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 27 | DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 28 | THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 30 | OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 | -------------------------------------------------------------------------------- /Setup.hs: -------------------------------------------------------------------------------- 1 | import Distribution.Simple 2 | main = defaultMain 3 | -------------------------------------------------------------------------------- /_stack.yaml: -------------------------------------------------------------------------------- 1 | # This file was automatically generated by 'stack init' 2 | # 3 | # Some commonly used options have been documented as comments in this file. 4 | # For advanced use and comprehensive documentation of the format, please see: 5 | # https://docs.haskellstack.org/en/stable/yaml_configuration/ 6 | 7 | # Resolver to choose a 'specific' stackage snapshot or a compiler version. 8 | # A snapshot resolver dictates the compiler version and the set of packages 9 | # to be used for project dependencies. For example: 10 | # 11 | # resolver: lts-3.5 12 | # resolver: nightly-2015-09-21 13 | # resolver: ghc-7.10.2 14 | # resolver: ghcjs-0.1.0_ghc-7.10.2 15 | # 16 | # The location of a snapshot can be provided as a file or url. Stack assumes 17 | # a snapshot provided as a file might change, whereas a url resource does not. 18 | # 19 | # resolver: ./custom-snapshot.yaml 20 | # resolver: https://example.com/snapshots/2018-01-01.yaml 21 | 22 | # resolver: lts-12.26 23 | # resolver: lts-14.0 24 | # resolver: lts-14.11 25 | resolver: lts-16.5 26 | # resolver: lts-18.13 27 | 28 | # User packages to be built. 29 | # Various formats can be used as shown in the example below. 30 | # 31 | # packages: 32 | # - some-directory 33 | # - https://example.com/foo/bar/baz-0.0.2.tar.gz 34 | # - location: 35 | # git: https://github.com/commercialhaskell/stack.git 36 | # commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a 37 | # - location: https://github.com/commercialhaskell/stack/commit/e7b331f14bcffb8367cd58fbfc8b40ec7642100a 38 | # subdirs: 39 | # - auto-update 40 | # - wai 41 | 42 | packages: 43 | - . 44 | 45 | # Dependency packages to be pulled from upstream that are not in the resolver 46 | # using the same syntax as the packages field. 47 | # (e.g., acme-missiles-0.3) 48 | extra-deps: 49 | # - archive: https://github.com/tidalcycles/Tidal/archive/master.zip` 50 | # - tidal-1.5.2 51 | - tidal-1.6.1 52 | # - tidal-1.8.0 53 | - inline-r-0.10.4 54 | #- vector-0.12.0.1 55 | #- hosc-0.17 56 | 57 | # - Cabal-3.6.3.0@sha256:ff97c442b0c679c1c9876acd15f73ac4f602b973c45bde42b43ec28265ee48f4,12459 58 | # - ghc-lib-parser-9.2.2.20220307@sha256:384755a514a42fe1615862ff6ef5c995a9ed71904360b4b212f9526f80fb214c,12705 59 | # - ghc-lib-parser-ex-9.2.0.3@sha256:a90c3a6aa85f59848d9f8c3928ab7203299a4b560db6f300976d9b1f7da127ee,3655 60 | 61 | # Override default flag values for local packages and extra-deps 62 | # flags: {} 63 | 64 | # Extra package databases containing global packages 65 | # extra-package-dbs: [] 66 | 67 | # Control whether we use the GHC we find on the path 68 | system-ghc: true 69 | # 70 | # Require a specific version of stack, using version ranges 71 | # require-stack-version: -any # Default 72 | # require-stack-version: ">=1.7" 73 | # 74 | # Override the architecture used by stack, especially useful on Windows 75 | # arch: i386 76 | # arch: x86_64 77 | # 78 | # Extra directories used by stack for building 79 | # extra-include-dirs: [/path/to/dir] 80 | # extra-lib-dirs: [/path/to/dir] 81 | # 82 | # Allow a newer minor version of GHC than the snapshot specifies 83 | # compiler-check: newer-minor 84 | -------------------------------------------------------------------------------- /analysis/pentatonic_experiment.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- ommitted tones 1+2+3 9 | [D,Gb,A,B] 10 | [2,6,9,11] 11 | 12 | -- included tones 1+2+3 13 | [C,Db,Eb,E,F,G,Ab,Bb] 14 | [0,1,3,4,5,7,8,10] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 24 | [C,Eb,G,Ab,Bb] 25 | [0,3,7,8,10] 26 | 27 | -- dissonance level 28 | 46 29 | 30 | -- interval vector 31 | [1,2,2,2,3,0] 32 | 33 | -- available triads (pitches, name, dissonance level, interval vector) 34 | ([C,Eb,G],C_min,(6,[0,0,1,1,1,0])) 35 | ([C,Eb,Ab],Ab_maj_1stInv,(7,[0,0,1,1,1,0])) 36 | ([C,Eb,Bb],C_min7no5,(13,[0,1,1,0,1,0])) 37 | ([C,G,Ab],C_b13no3,(18,[1,0,0,1,1,0])) 38 | ([C,G,Bb],C_7no3,(12,[0,1,1,0,1,0])) 39 | ([C,Ab,Bb],C_7#5no3,(18,[0,2,0,1,0,0])) 40 | ([Eb,C,G],C_min_1stInv,(7,[0,0,1,1,1,0])) 41 | ([Eb,C,Ab],Ab_maj_2ndInv,(7,[0,0,1,1,1,0])) 42 | ([Eb,C,Bb],Eb_6no3,(12,[0,1,1,0,1,0])) 43 | ([Eb,G,Ab],Eb_majadd11no5,(19,[1,0,0,1,1,0])) 44 | ([Eb,G,Bb],Eb_maj,(6,[0,0,1,1,1,0])) 45 | ([Eb,Ab,Bb],Eb_sus4,(9,[0,1,0,0,2,0])) 46 | ([G,C,Eb],C_min_2ndInv,(7,[0,0,1,1,1,0])) 47 | ([G,C,Ab],G_sus4b9no5,(19,[1,0,0,1,1,0])) 48 | ([G,C,Bb],G_minadd11no5,(13,[0,1,1,0,1,0])) 49 | ([G,Eb,Ab],G_b9#5no3,(19,[1,0,0,1,1,0])) 50 | ([G,Eb,Bb],Bb_maj_1stInv,(7,[0,0,1,1,1,0])) 51 | ([G,Ab,Bb],G_minb9no5,(28,[1,1,1,0,0,0])) 52 | ([Ab,C,Eb],Ab_maj,(6,[0,0,1,1,1,0])) 53 | ([Ab,C,G],Ab_maj7no5,(19,[1,0,0,1,1,0])) 54 | ([Ab,C,Bb],Ab_majadd9no5,(18,[0,2,0,1,0,0])) 55 | ([Ab,Eb,G],Ab_maj7no3,(18,[1,0,0,1,1,0])) 56 | ([Ab,Eb,Bb],Bb_sus4_1stInv,(9,[0,1,0,0,2,0])) 57 | ([Ab,G,Bb],Ab_maj7sus2no5,(28,[1,1,1,0,0,0])) 58 | ([Bb,C,Eb],Bb_sus2/4no5,(13,[0,1,1,0,1,0])) 59 | ([Bb,C,G],Bb_6sus2no5,(13,[0,1,1,0,1,0])) 60 | ([Bb,C,Ab],Bb_7sus2no5,(18,[0,2,0,1,0,0])) 61 | ([Bb,Eb,G],G_maj_2ndInv,(7,[0,0,1,1,1,0])) 62 | ([Bb,Eb,Ab],Ab_sus4_2ndInv,(10,[0,1,0,0,2,0])) 63 | ([Bb,G,Ab],Bb_67no3no5,(28,[1,1,1,0,0,0])) 64 | 65 | -- available 4 notes chords (pitches, name, dissonance level, interval vector) 66 | ([C,Eb,G,Ab],C_mb13,(25,[1,0,1,2,2,0])) 67 | ([C,Eb,G,Bb],C_-,(19,[0,1,2,1,2,0])) 68 | ([C,Eb,Ab,Bb],C_-#5,(24,[0,2,1,1,2,0])) 69 | ([C,G,Ab,Bb],C_7b13no3,(38,[1,2,1,1,1,0])) 70 | ([Eb,C,G,Ab],Eb_6add11no5,(26,[1,0,1,2,2,0])) 71 | ([Eb,C,G,Bb],Eb_6,(19,[0,1,2,1,2,0])) 72 | ([Eb,C,Ab,Bb],Eb_6sus4,(23,[0,2,1,1,2,0])) 73 | ([Eb,G,Ab,Bb],Eb_add11,(31,[1,1,1,1,2,0])) 74 | ([G,C,Eb,Ab],G_sus4#5b9,(26,[1,0,1,2,2,0])) 75 | ([G,C,Eb,Bb],G_m#5add11,(20,[0,1,2,1,2,0])) 76 | ([G,C,Ab,Bb],G_madd11b9no5,(39,[1,2,1,1,1,0])) 77 | ([G,Eb,Ab,Bb],G_m#5b9,(32,[1,1,1,1,2,0])) 78 | ([Ab,C,Eb,G],Ab_maj7,(25,[1,0,1,2,2,0])) 79 | ([Ab,C,Eb,Bb],Ab_add9,(23,[0,2,1,1,2,0])) 80 | ([Ab,C,G,Bb],Ab_maj7add9no5,(39,[1,2,1,1,1,0])) 81 | ([Ab,Eb,G,Bb],Ab_maj7sus2,(31,[1,1,1,1,2,0])) 82 | ([Bb,C,Eb,G],Bb_6sus2/4no5,(20,[0,1,2,1,2,0])) 83 | ([Bb,C,Eb,Ab],Bb_7sus2/4no5,(24,[0,2,1,1,2,0])) 84 | ([Bb,C,G,Ab],Bb_67sus2no5,(39,[1,2,1,1,1,0])) 85 | ([Bb,Eb,G,Ab],Bb_67sus4no5,(32,[1,1,1,1,2,0])) 86 | 87 | ------------------ 88 | -- DIATONIC 1+2 -- 89 | ------------------ 90 | 91 | -- diatonic set 92 | C Phrygian (suggested Ab Major) 93 | [C,Db,Eb,F,G,Ab,Bb] 94 | [0,1,3,5,7,8,10] 95 | 96 | -- interval vector 97 | [2,5,4,3,6,1] 98 | 99 | ------------------ 100 | -- PENTATONIC 2 -- 101 | ------------------ 102 | 103 | -- pentatonic set 104 | [C,Db,F,Ab,Bb] 105 | [0,1,5,8,10] 106 | 107 | -- dissonance level 108 | 47 109 | 110 | -- interval vector 111 | [1,2,2,2,3,0] 112 | 113 | -- available triads (pitches, name, dissonance level, interval vector) 114 | ([C,Db,F],C_sus4b9no5,(19,[1,0,0,1,1,0])) 115 | ([C,Db,Ab],C_b9#5no3,(19,[1,0,0,1,1,0])) 116 | ([C,Db,Bb],C_7b9no3no5,(28,[1,1,1,0,0,0])) 117 | ([C,F,Ab],F_min_2ndInv,(7,[0,0,1,1,1,0])) 118 | ([C,F,Bb],Bb_sus4_2ndInv,(10,[0,1,0,0,2,0])) 119 | ([C,Ab,Bb],C_7#5no3,(18,[0,2,0,1,0,0])) 120 | ([Db,C,F],Db_maj7no5,(19,[1,0,0,1,1,0])) 121 | ([Db,C,Ab],Db_maj7no3,(18,[1,0,0,1,1,0])) 122 | ([Db,C,Bb],Db_6maj7no3no5,(28,[1,1,1,0,0,0])) 123 | ([Db,F,Ab],Db_maj,(6,[0,0,1,1,1,0])) 124 | ([Db,F,Bb],F_min_1stInv,(7,[0,0,1,1,1,0])) 125 | ([Db,Ab,Bb],Db_6no3,(12,[0,1,1,0,1,0])) 126 | ([F,C,Db],F_b13no3,(18,[1,0,0,1,1,0])) 127 | ([F,C,Ab],F_min,(6,[0,0,1,1,1,0])) 128 | ([F,C,Bb],F_sus4,(9,[0,1,0,0,2,0])) 129 | ([F,Db,Ab],Ab_maj_1stInv,(7,[0,0,1,1,1,0])) 130 | ([F,Db,Bb],Db_min_2ndInv,(7,[0,0,1,1,1,0])) 131 | ([F,Ab,Bb],F_minadd11no5,(13,[0,1,1,0,1,0])) 132 | ([Ab,C,Db],Ab_majadd11no5,(19,[1,0,0,1,1,0])) 133 | ([Ab,C,F],C_min_1stInv,(7,[0,0,1,1,1,0])) 134 | ([Ab,C,Bb],Ab_majadd9no5,(18,[0,2,0,1,0,0])) 135 | ([Ab,Db,F],F_maj_2ndInv,(7,[0,0,1,1,1,0])) 136 | ([Ab,Db,Bb],Ab_sus2/4no5,(13,[0,1,1,0,1,0])) 137 | ([Ab,F,Bb],Ab_6sus2no5,(13,[0,1,1,0,1,0])) 138 | ([Bb,C,Db],Bb_minadd9no5,(28,[1,1,1,0,0,0])) 139 | ([Bb,C,F],F_sus4_1stInv,(9,[0,1,0,0,2,0])) 140 | ([Bb,C,Ab],Bb_7sus2no5,(18,[0,2,0,1,0,0])) 141 | ([Bb,Db,F],Bb_min,(6,[0,0,1,1,1,0])) 142 | ([Bb,Db,Ab],Bb_min7no5,(13,[0,1,1,0,1,0])) 143 | ([Bb,F,Ab],Bb_7no3,(12,[0,1,1,0,1,0])) 144 | 145 | -- available 4 notes chords (pitches, name, dissonance level, interval vector) 146 | ([C,Db,F,Ab],C_sus4#5b9,(26,[1,0,1,2,2,0])) 147 | ([C,Db,F,Bb],C_7sus4b9no5,(32,[1,1,1,1,2,0])) 148 | ([C,Db,Ab,Bb],C_7#5b9no3,(39,[1,2,1,1,1,0])) 149 | ([C,F,Ab,Bb],C_7sus4#5,(24,[0,2,1,1,2,0])) 150 | ([Db,C,F,Ab],Db_maj7,(25,[1,0,1,2,2,0])) 151 | ([Db,C,F,Bb],Db_6maj7no5,(32,[1,1,1,1,2,0])) 152 | ([Db,C,Ab,Bb],Db_6maj7no3,(38,[1,2,1,1,1,0])) 153 | ([Db,F,Ab,Bb],Db_6,(19,[0,1,2,1,2,0])) 154 | ([F,C,Db,Ab],F_mb13,(25,[1,0,1,2,2,0])) 155 | ([F,C,Db,Bb],F_sus4b13,(31,[1,1,1,1,2,0])) 156 | ([F,C,Ab,Bb],F_madd11,(23,[0,2,1,1,2,0])) 157 | ([F,Db,Ab,Bb],F_m#5add11,(20,[0,1,2,1,2,0])) 158 | ([Ab,C,Db,F],Ab_6add11no5,(26,[1,0,1,2,2,0])) 159 | ([Ab,C,Db,Bb],Ab_add9/11no5,(39,[1,2,1,1,1,0])) 160 | ([Ab,C,F,Bb],Ab_6add9no5,(24,[0,2,1,1,2,0])) 161 | ([Ab,Db,F,Bb],Ab_6sus2/4no5,(20,[0,1,2,1,2,0])) 162 | ([Bb,C,Db,F],Bb_madd9,(31,[1,1,1,1,2,0])) 163 | ([Bb,C,Db,Ab],Bb_-add9no5,(39,[1,2,1,1,1,0])) 164 | ([Bb,C,F,Ab],Bb_7sus2,(23,[0,2,1,1,2,0])) 165 | ([Bb,Db,F,Ab],Bb_-,(19,[0,1,2,1,2,0])) 166 | 167 | 168 | ------------------ 169 | -- DIATONIC 2+3 -- 170 | ------------------ 171 | 172 | -- diatonic set 173 | C Phrygian nat.3 (suggested F Harmonic Minor) 174 | [C,Db,E,F,G,Ab,Bb] 175 | [0,1,4,5,7,8,10] 176 | 177 | -- interval vector 178 | [3,3,5,4,4,2] 179 | 180 | ------------------ 181 | -- PENTATONIC 3 -- 182 | ------------------ 183 | 184 | -- pentatonic set 185 | [C,Db,E,G,Ab] 186 | [0,1,4,7,8] 187 | 188 | -- dissonance level 189 | 71 190 | 191 | -- interval vector 192 | [2,0,2,3,2,1] 193 | 194 | -- available triads (pitches, name, dissonance level, interval vector) 195 | ([C,Db,E],C_majb9no5,(22,[1,0,1,1,0,0])) 196 | ([C,Db,G],C_b9no3,(40,[1,0,0,0,1,1])) 197 | ([C,Db,Ab],C_b9#5no3,(19,[1,0,0,1,1,0])) 198 | ([C,E,G],C_maj,(6,[0,0,1,1,1,0])) 199 | ([C,E,Ab],C_aug,(27,[0,0,0,3,0,0])) 200 | ([C,G,Ab],C_b13no3,(18,[1,0,0,1,1,0])) 201 | ([Db,C,E],Db_minmaj7no5,(22,[1,0,1,1,0,0])) 202 | ([Db,C,G],Db_maj7b5no3,(41,[1,0,0,0,1,1])) 203 | ([Db,C,Ab],Db_maj7no3,(18,[1,0,0,1,1,0])) 204 | ([Db,E,G],Db_dim,(32,[0,0,2,0,0,1])) 205 | ([Db,E,Ab],Db_min,(6,[0,0,1,1,1,0])) 206 | ([Db,G,Ab],Db_#11no3,(40,[1,0,0,0,1,1])) 207 | ([E,C,Db],E_6#5no3,(22,[1,0,1,1,0,0])) 208 | ([E,C,G],G_maj_1stInv,(7,[0,0,1,1,1,0])) 209 | ([E,C,Ab],E_aug,(27,[0,0,0,3,0,0])) 210 | ([E,Db,G],G_dim_1stInv,(32,[0,0,2,0,0,1])) 211 | ([E,Db,Ab],Db_min_1stInv,(7,[0,0,1,1,1,0])) 212 | ([E,G,Ab],E_#9no5,(22,[1,0,1,1,0,0])) 213 | ([G,C,Db],G_sus4b5,(41,[1,0,0,0,1,1])) 214 | ([G,C,E],E_maj_2ndInv,(7,[0,0,1,1,1,0])) 215 | ([G,C,Ab],G_sus4b9no5,(19,[1,0,0,1,1,0])) 216 | ([G,Db,E],Db_dim_2ndInv,(32,[0,0,2,0,0,1])) 217 | ([G,Db,Ab],G_b9b5no3,(41,[1,0,0,0,1,1])) 218 | ([G,E,Ab],G_6b9no3no5,(22,[1,0,1,1,0,0])) 219 | ([Ab,C,Db],Ab_majadd11no5,(19,[1,0,0,1,1,0])) 220 | ([Ab,C,E],Ab_aug,(27,[0,0,0,3,0,0])) 221 | ([Ab,C,G],Ab_maj7no5,(19,[1,0,0,1,1,0])) 222 | ([Ab,Db,E],Db_min_2ndInv,(7,[0,0,1,1,1,0])) 223 | ([Ab,Db,G],Ab_maj7sus4no5,(41,[1,0,0,0,1,1])) 224 | ([Ab,E,G],Ab_maj7#5no3,(22,[1,0,1,1,0,0])) 225 | 226 | -- available 4 notes chords (pitches, name, dissonance level, interval vector) 227 | ([C,Db,E,G],C_b9,(50,[1,0,2,1,1,1])) 228 | ([C,Db,E,Ab],C_#5b9,(27,[1,0,1,3,1,0])) 229 | ([C,Db,G,Ab],C_b9b13no3,(59,[2,0,0,1,2,1])) 230 | ([C,E,G,Ab],C_b13,(26,[1,0,1,3,1,0])) 231 | ([Db,C,E,G],Db_mmaj7b5,(51,[1,0,2,1,1,1])) 232 | ([Db,C,E,Ab],Db_mmaj7,(26,[1,0,1,3,1,0])) 233 | ([Db,C,G,Ab],Db_maj7#11no3,(59,[2,0,0,1,2,1])) 234 | ([Db,E,G,Ab],Db_m#11,(50,[1,0,2,1,1,1])) 235 | ([E,C,Db,G],E_m6#5,(51,[1,0,2,1,1,1])) 236 | ([E,C,Db,Ab],E_6#5,(27,[1,0,1,3,1,0])) 237 | ([E,C,G,Ab],E_#5#9,(27,[1,0,1,3,1,0])) 238 | ([E,Db,G,Ab],E_6#9no5,(51,[1,0,2,1,1,1])) 239 | ([G,C,Db,E],G_6sus4b5,(51,[1,0,2,1,1,1])) 240 | ([G,C,Db,Ab],G_sus4b5b9,(60,[2,0,0,1,2,1])) 241 | ([G,C,E,Ab],G_6sus4b9no5,(27,[1,0,1,3,1,0])) 242 | ([G,Db,E,Ab],G_6b5b9no3,(51,[1,0,2,1,1,1])) 243 | ([Ab,C,Db,E],Ab_#5add11,(27,[1,0,1,3,1,0])) 244 | ([Ab,C,Db,G],Ab_maj7add11no5,(60,[2,0,0,1,2,1])) 245 | ([Ab,C,E,G],Ab_maj7#5,(27,[1,0,1,3,1,0])) 246 | ([Ab,Db,E,G],Ab_maj7sus4#5,(51,[1,0,2,1,1,1])) 247 | 248 | ------------------ 249 | -- DIATONIC 3+1 -- 250 | ------------------ 251 | 252 | -- diatonic set 253 | C Phrygian b4 (suggested Eb Mixolydian b2 -- mode V of Ab Harmonic Major) 254 | [C,Db,Eb,E,G,Ab,Bb] 255 | [0,1,3,4,7,8,10] 256 | 257 | -- interval vector 258 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /docker-compose.yml: -------------------------------------------------------------------------------- 1 | version: '3.8' 2 | services: 3 | neo4j: 4 | container_name: neo4j 5 | image: neo4j:4.4.13 6 | restart: unless-stopped 7 | ports: 8 | - 7474:7474 9 | - 7687:7687 10 | volumes: 11 | - $HOME/neo4j/conf:/conf 12 | - $HOME/neo4j/data:/data 13 | - $HOME/neo4j/logs:/logs 14 | - $HOME/neo4j/plugins:/plugins 15 | environment: 16 | - NEO4J_dbms_security_procedures_allowlist=apoc.coll.*,apoc.load.*,apoc.* 17 | - NEO4J_dbms_security_procedures_unrestricted=apoc.coll.*,apoc.load.*,apoc.* 18 | - NEO4J_AUTH=none 19 | # - NEO4J_AUTH=neo4j/password 20 | - NEO4J_dbms_memory_pagecache_size=1G 21 | - NEO4J_dbms_memory_heap_initial__size=1G 22 | - NEO4J_dbms_memory_heap_max__size=1G -------------------------------------------------------------------------------- /documents/Data_Science_In_The_Creative_Process_2018.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/documents/Data_Science_In_The_Creative_Process_2018.pdf -------------------------------------------------------------------------------- /documents/EADG.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/documents/EADG.pdf -------------------------------------------------------------------------------- /documents/EAeGC.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/documents/EAeGC.pdf -------------------------------------------------------------------------------- /documents/EAeGb.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/documents/EAeGb.pdf -------------------------------------------------------------------------------- /documents/Harmonic_Algorithm_Reflections_2016.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/documents/Harmonic_Algorithm_Reflections_2016.pdf -------------------------------------------------------------------------------- /documents/The_Harmonic_Algorithm_2016.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/documents/The_Harmonic_Algorithm_2016.pdf -------------------------------------------------------------------------------- /graphdb/dev.cql: -------------------------------------------------------------------------------- 1 | match (n:Cadence{show:"( pedal -> min )"}) 2 | with n 3 | match (n)-[r]->(to) 4 | return r, to 5 | order by r.confidence desc 6 | limit 10; 7 | 8 | 9 | MATCH (n:Cadence{show:"( pedal -> min )"}) 10 | WITH n 11 | MATCH (n)-[r]->(to) 12 | RETURN to.chord, to.movement, r.confidence 13 | ORDER BY r.confidence DESC 14 | LIMIT 30; 15 | 16 | 17 | match (n:Cadence{show:"( pedal -> min )"}) 18 | call { 19 | with n 20 | match (n)-[r]->(to) 21 | return r, to 22 | order by (r.confidence*rand()) desc 23 | limit 3 24 | union all 25 | with n 26 | match (n)-[r]->(to) 27 | return r, to 28 | order by r.confidence desc 29 | limit 1 30 | } 31 | return to.functionality, to.movement, to.chord 32 | order by rand() 33 | limit 1; 34 | 35 | 36 | 37 | 38 | MATCH (n:Cadence{show:'( asc 2 -> maj )'}) WITH n MATCH (n)-[r]->(to) RETURN to.movement, to.chord, r.confidence ORDER BY r.confidence DESC ; -------------------------------------------------------------------------------- /graphdb/test.cql: -------------------------------------------------------------------------------- 1 | match (n:Cadence{show:"( asc 2 -> maj )"}) 2 | call { 3 | with n 4 | match (n)-[r]->(to) 5 | return r, to 6 | order by (r.confidence*rand()) desc 7 | limit 3 8 | union all 9 | with n 10 | match (n)-[r]->(to) 11 | return r, to 12 | order by r.confidence desc 13 | limit 1 14 | } 15 | return to.functionality, to.movement, to.chord 16 | order by rand() 17 | limit 1; 18 | 19 | 20 | match (n_0:Cadence{show:"( asc 2 -> maj )"}) 21 | call { 22 | with n_0 23 | call { 24 | with n_0 25 | match (n_0)-[r]->(n_1) 26 | return r, n_1 27 | order by (r.confidence*rand()) desc 28 | limit 3 29 | union all 30 | with n_0 31 | match (n_0)-[r]->(n_1) 32 | return r, n_1 33 | order by r.confidence desc 34 | limit 1 35 | } 36 | return n_1 37 | order by rand() 38 | limit 1 39 | } 40 | call { 41 | with n_1 42 | call { 43 | with n_1 44 | match (n_1)-[r]->(n_2) 45 | return r, n_2 46 | order by (r.confidence*rand()) desc 47 | limit 3 48 | union all 49 | with n_1 50 | match (n_1)-[r]->(n_2) 51 | return r, n_2 52 | order by r.confidence desc 53 | limit 1 54 | } 55 | return n_2 56 | order by rand() 57 | limit 1 58 | } 59 | call { 60 | with n_2 61 | call { 62 | with n_2 63 | match (n_2)-[r]->(n_3)-->(n0) 64 | return r, n_3 65 | order by (r.confidence*rand()) desc 66 | limit 3 67 | union all 68 | with n_2 69 | match (n_2)-[r]->(n_3)-->(n0) 70 | return r, n_3 71 | order by r.confidence desc 72 | limit 1 73 | } 74 | return n_3 75 | order by rand() 76 | limit 1 77 | } 78 | return n_0, n_1, n_2, n_3; 79 | 80 | match (n:Cadence) 81 | with apoc.coll.randomItem(COLLECT(n)) AS n_0 82 | call { 83 | with n_0 84 | call { 85 | with n_0 86 | match (n_0)-[r]->(n_1) 87 | return r, n_1 88 | order by (r.confidence*rand()) desc 89 | limit 3 90 | union all 91 | with n_0 92 | match (n_0)-[r]->(n_1) 93 | return r, n_1 94 | order by r.confidence desc 95 | limit 1 96 | } 97 | return n_1 98 | order by rand() 99 | limit 3 100 | } 101 | return 102 | n_1.chord, n_1.movement; 103 | -------------------------------------------------------------------------------- /img/choicefour.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/choicefour.gif -------------------------------------------------------------------------------- /img/choiceone.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/choiceone.gif -------------------------------------------------------------------------------- /img/choicethree.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/choicethree.gif -------------------------------------------------------------------------------- /img/choicetwo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/choicetwo.gif -------------------------------------------------------------------------------- /img/enharm.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/enharm.gif -------------------------------------------------------------------------------- /img/filterbass.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/filterbass.gif -------------------------------------------------------------------------------- /img/filterkey.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/filterkey.gif -------------------------------------------------------------------------------- /img/filternone.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/filternone.gif -------------------------------------------------------------------------------- /img/header.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/header.png -------------------------------------------------------------------------------- /img/loading.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/loading.png -------------------------------------------------------------------------------- /img/loadingtitle.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/loadingtitle.gif -------------------------------------------------------------------------------- /img/openfilters.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/openfilters.gif -------------------------------------------------------------------------------- /img/resolve.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/resolve.gif -------------------------------------------------------------------------------- /img/selections.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/selections.gif -------------------------------------------------------------------------------- /img/sequence.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/sequence.gif -------------------------------------------------------------------------------- /img/title.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/OscarSouth/theHarmonicAlgorithm/c672ad4b6b91ecd1fe158b9c8fde05ec430d777d/img/title.png -------------------------------------------------------------------------------- /livecode/test.tidal: -------------------------------------------------------------------------------- 1 | putStrLn "Hello, World!" 2 | 3 | d01 $ 4 | id $ 5 | slow 4 $ 6 | stack[silence 7 | ,note "[~!3 16]" #ch 8 #vel 0.2 -- vl1 8 | ,note "[~ 7]" #ch 8 #vel 0.2 -- vl2 9 | ,note "[~ -2@3]" #ch 8 #vel 0.25 -- vla 10 | ,note "[-14]" #ch 8 #vel 0.3 -- clo 11 | ,note ("[-10 -7 -3 2 -3 -7] [-2 5 -2 -7 -2 5] [7 2 -2 2 7 2] [4 7 10 7 4 7]" ) #ch 15 12 | ] 13 | 14 | hush -------------------------------------------------------------------------------- /output/0ecbc_patternsALL.txt: -------------------------------------------------------------------------------- 1 | (1,((47,68,72),([0,2,4,5,9],[0,2,5,7,11],[0,4,5,8,11]),([1,2,2,2,3,0],[1,2,2,1,3,1],[2,0,2,3,2,1]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,9,11],[0,2,4,5,7,8,11],[0,2,4,5,8,9,11]))) 2 | (2,((46,72,72),([0,2,4,7,11],[0,2,5,9,11],[0,4,5,8,11]),([1,2,2,2,3,0],[1,2,3,1,2,1],[2,0,2,3,2,1]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,9,11],[0,2,4,5,8,9,11],[0,2,4,5,7,8,11]))) 3 | (3,((53,68,71),([0,2,4,9,11],[0,2,5,7,11],[0,2,4,5,8]),([1,3,2,1,3,0],[1,2,2,1,3,1],[1,2,2,3,1,1]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,9,11],[0,2,4,5,7,8,11],[0,2,4,5,8,9,11]))) 4 | (4,((53,68,72),([0,2,4,9,11],[0,2,5,7,11],[0,4,5,8,11]),([1,3,2,1,3,0],[1,2,2,1,3,1],[2,0,2,3,2,1]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,9,11],[0,2,4,5,7,8,11],[0,2,4,5,8,9,11]))) 5 | (5,((52,72,72),([0,2,4,5,7],[0,2,5,9,11],[0,4,5,8,11]),([1,3,2,1,3,0],[1,2,3,1,2,1],[2,0,2,3,2,1]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,9,11],[0,2,4,5,8,9,11],[0,2,4,5,7,8,11]))) 6 | (6,((47,68,91),([0,2,4,5,9],[0,2,5,7,11],[2,4,5,8,11]),([1,2,2,2,3,0],[1,2,2,1,3,1],[1,1,4,1,1,2]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,9,11],[0,2,4,5,7,8,11],[0,2,4,5,8,9,11]))) 7 | (7,((46,72,91),([0,2,4,7,11],[0,2,5,9,11],[2,4,5,8,11]),([1,2,2,2,3,0],[1,2,3,1,2,1],[1,1,4,1,1,2]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,9,11],[0,2,4,5,8,9,11],[0,2,4,5,7,8,11]))) 8 | (8,((53,68,91),([0,2,4,9,11],[0,2,5,7,11],[2,4,5,8,11]),([1,3,2,1,3,0],[1,2,2,1,3,1],[1,1,4,1,1,2]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,9,11],[0,2,4,5,7,8,11],[0,2,4,5,8,9,11]))) 9 | (9,((68,71,75),([0,2,5,7,11],[0,2,4,5,8],[0,4,5,9,11]),([1,2,2,1,3,1],[1,2,2,3,1,1],[2,1,1,2,3,1]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,8,11],[0,2,4,5,8,9,11],[0,2,4,5,7,9,11]))) 10 | (10,((52,72,91),([0,2,4,5,7],[0,2,5,9,11],[2,4,5,8,11]),([1,3,2,1,3,0],[1,2,3,1,2,1],[1,1,4,1,1,2]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,9,11],[0,2,4,5,8,9,11],[0,2,4,5,7,8,11]))) 11 | (11,((68,75,91),([0,2,5,7,11],[0,4,5,9,11],[2,4,5,8,11]),([1,2,2,1,3,1],[2,1,1,2,3,1],[1,1,4,1,1,2]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,9,11],[0,2,4,5,8,9,11],[0,2,4,5,7,8,11]))) 12 | (12,((72,74,91),([0,2,5,9,11],[0,4,5,7,11],[2,4,5,8,11]),([1,2,3,1,2,1],[2,1,1,2,3,1],[1,1,4,1,1,2]),(8,[1,3,6,10]),((191,[0,2,4,5,7,8,9,11]),[4,5,6,5,6,2]),([0,2,4,5,7,9,11],[0,2,4,5,7,8,11],[0,2,4,5,8,9,11]))) 13 | -------------------------------------------------------------------------------- /output/analysis_11.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,5,7,11] 25 | [C,D,F,G,B] 26 | 27 | -- dissonance level 1 28 | 68 29 | 30 | -- tunings 1 31 | ("DGDGA","DGDABb") 32 | 33 | -- interval vector 1 34 | [1,2,2,1,3,1] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | F_major,[F,G,A,C,D] 38 | Bb_major,[Bb,C,D,F,G] 39 | F_kumoi,[F,G,Ab,C,D] 40 | G_okina,[G,B,C,D,Gb] 41 | C_okina,[C,E,F,G,B] 42 | 43 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 44 | G_maj,[G,D,B],7,[7,2,11],[0,0,1,1,1,0] 45 | C_sus4,[C,F,G],9,[0,5,7],[0,1,0,0,2,0] 46 | G_sus4,[G,C,D],10,[7,0,2],[0,1,0,0,2,0] 47 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 48 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 49 | D_minadd11no5,[D,F,G],13,[2,5,7],[0,1,1,0,1,0] 50 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 51 | F_6sus2no5,[F,D,G],13,[5,2,7],[0,1,1,0,1,0] 52 | G_7no3,[G,D,F],13,[7,2,5],[0,1,1,0,1,0] 53 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 54 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 55 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 56 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 57 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 58 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 59 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 60 | F_sus2b5,[F,G,B],34,[5,7,11],[0,1,0,1,0,1] 61 | G_7no5,[G,F,B],34,[7,5,11],[0,1,0,1,0,1] 62 | B_#11#5no3,[B,F,G],34,[11,5,7],[0,1,0,1,0,1] 63 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 64 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 65 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 66 | 67 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 68 | C_sus2/4,[C,D,F,G],22,[0,2,5,7],[0,2,1,0,3,0] 69 | D_m7add11no5,[D,C,F,G],23,[2,0,5,7],[0,2,1,0,3,0] 70 | F_6sus2,[F,C,D,G],23,[5,0,2,7],[0,2,1,0,3,0] 71 | G_7sus4,[G,C,D,F],23,[7,0,2,5],[0,2,1,0,3,0] 72 | C_maj7sus2,[C,D,G,B],31,[0,2,7,11],[1,1,1,1,2,0] 73 | D_67sus4no5,[D,C,G,B],32,[2,0,7,11],[1,1,1,1,2,0] 74 | G_add11,[G,C,D,B],32,[7,0,2,11],[1,1,1,1,2,0] 75 | B_m#5b9,[B,C,D,G],32,[11,0,2,7],[1,1,1,1,2,0] 76 | D_m6add11no5,[D,F,G,B],43,[2,5,7,11],[0,1,2,1,1,1] 77 | F_6sus2b5,[F,D,G,B],43,[5,2,7,11],[0,1,2,1,1,1] 78 | G_7,[G,D,F,B],43,[7,2,5,11],[0,1,2,1,1,1] 79 | B_mb5#5,[B,D,F,G],43,[11,2,5,7],[0,1,2,1,1,1] 80 | C_maj7sus4,[C,F,G,B],51,[0,5,7,11],[1,1,0,1,2,1] 81 | F_sus2#11,[F,C,G,B],52,[5,0,7,11],[1,1,0,1,2,1] 82 | G_7add11no5,[G,C,F,B],52,[7,0,5,11],[1,1,0,1,2,1] 83 | B_b5#5b9no3,[B,C,F,G],52,[11,0,5,7],[1,1,0,1,2,1] 84 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 85 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 86 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 87 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 88 | 89 | ------------------ 90 | -- DIATONIC 1+2 -- 91 | ------------------ 92 | 93 | -- diatonic modes 1+2 94 | C_Ionian,[C,D,E,F,G,A,B] 95 | D_Dorian,[D,C,E,F,G,A,B] 96 | E_Phrygian,[E,C,D,F,G,A,B] 97 | F_Lydian,[F,C,D,E,G,A,B] 98 | G_Mixolydian,[G,C,D,E,F,A,B] 99 | A_Aeolian,[A,C,D,E,F,G,B] 100 | B_Locrian,[B,C,D,E,F,G,A] 101 | 102 | -- interval vector 1 103 | [2,5,4,3,6,1] 104 | 105 | ------------------ 106 | -- PENTATONIC 2 -- 107 | ------------------ 108 | 109 | -- pentatonic set 2 110 | [0,4,5,9,11] 111 | [C,E,F,A,B] 112 | 113 | -- dissonance level 2 114 | 75 115 | 116 | -- tunings 2 117 | ("DGDGA","n/a") 118 | 119 | -- interval vector 2 120 | [2,1,1,2,3,1] 121 | 122 | -- related pentatonic scales (through substitution of one note) 123 | F_okina,[F,A,Bb,C,E] 124 | B_iwato,[B,C,E,F,A] 125 | C_okina,[C,E,F,G,B] 126 | A_kumoi,[A,B,C,E,Gb] 127 | D_kumoi,[D,E,F,A,B] 128 | 129 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 130 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 131 | A_min,[A,C,E],7,[9,0,4],[0,0,1,1,1,0] 132 | E_sus4,[E,A,B],9,[4,9,11],[0,1,0,0,2,0] 133 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 134 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 135 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 136 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 137 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 138 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 139 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 140 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 141 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 142 | C_6maj7no3no5,[C,A,B],28,[0,9,11],[1,1,1,0,0,0] 143 | A_minadd9no5,[A,C,B],28,[9,0,11],[1,1,1,0,0,0] 144 | B_7b9no3no5,[B,C,A],28,[11,0,9],[1,1,1,0,0,0] 145 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 146 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 147 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 148 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 149 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 150 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 151 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 152 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 153 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 154 | 155 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 156 | C_6add11no5,[C,E,F,A],26,[0,4,5,9],[1,0,1,2,2,0] 157 | E_sus4#5b9,[E,C,F,A],26,[4,0,5,9],[1,0,1,2,2,0] 158 | F_maj7,[F,C,E,A],26,[5,0,4,9],[1,0,1,2,2,0] 159 | A_mb13,[A,C,E,F],26,[9,0,4,5],[1,0,1,2,2,0] 160 | E_sus4b13,[E,C,A,B],31,[4,0,9,11],[1,1,1,1,2,0] 161 | C_6maj7no5,[C,E,A,B],32,[0,4,9,11],[1,1,1,1,2,0] 162 | A_madd9,[A,C,E,B],32,[9,0,4,11],[1,1,1,1,2,0] 163 | B_7sus4b9no5,[B,C,E,A],32,[11,0,4,9],[1,1,1,1,2,0] 164 | E_sus4b9,[E,F,A,B],51,[4,5,9,11],[1,1,0,1,2,1] 165 | F_maj7b5,[F,E,A,B],52,[5,4,9,11],[1,1,0,1,2,1] 166 | A_sus2b13,[A,E,F,B],52,[9,4,5,11],[1,1,0,1,2,1] 167 | B_7sus4b5,[B,E,F,A],52,[11,4,5,9],[1,1,0,1,2,1] 168 | C_6maj7sus4no5,[C,F,A,B],55,[0,5,9,11],[1,1,1,1,1,1] 169 | F_#11,[F,C,A,B],55,[5,0,9,11],[1,1,1,1,1,1] 170 | A_m#5add9,[A,C,F,B],55,[9,0,5,11],[1,1,1,1,1,1] 171 | B_7b5b9no3,[B,C,F,A],55,[11,0,5,9],[1,1,1,1,1,1] 172 | E_b9b13no3,[E,C,F,B],59,[4,0,5,11],[2,0,0,1,2,1] 173 | C_maj7add11no5,[C,E,F,B],60,[0,4,5,11],[2,0,0,1,2,1] 174 | F_maj7#11no3,[F,C,E,B],60,[5,0,4,11],[2,0,0,1,2,1] 175 | B_sus4b5b9,[B,C,E,F],60,[11,0,4,5],[2,0,0,1,2,1] 176 | 177 | ------------------ 178 | -- DIATONIC 2+3 -- 179 | ------------------ 180 | 181 | -- diatonic modes 2+3 182 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 183 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 184 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 185 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 186 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 187 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 188 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 189 | 190 | -- interval vector 2 191 | [3,3,5,4,4,2] 192 | 193 | ------------------ 194 | -- PENTATONIC 3 -- 195 | ------------------ 196 | 197 | -- pentatonic set 3 198 | [2,4,5,8,11] 199 | [D,E,F,Ab,B] 200 | 201 | -- dissonance level 3 202 | 91 203 | 204 | -- tunings 3 205 | ("N/A","n/a") 206 | 207 | -- interval vector 3 208 | [1,1,4,1,1,2] 209 | 210 | -- related pentatonic scales (through substitution of one note) 211 | D_kumoi,[D,E,F,A,B] 212 | 213 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 214 | E_maj,[E,Ab,B],6,[4,8,11],[0,0,1,1,1,0] 215 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 216 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 217 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 218 | E_majb9no5,[E,F,Ab],22,[4,5,8],[1,0,1,1,0,0] 219 | F_minmaj7no5,[F,E,Ab],22,[5,4,8],[1,0,1,1,0,0] 220 | Ab_6#5no3,[Ab,E,F],22,[8,4,5],[1,0,1,1,0,0] 221 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 222 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 223 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 224 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 225 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 226 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 227 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 228 | D_sus2b5,[D,E,Ab],34,[2,4,8],[0,1,0,1,0,1] 229 | E_7no5,[E,D,Ab],34,[4,2,8],[0,1,0,1,0,1] 230 | Ab_#11#5no3,[Ab,D,E],34,[8,2,4],[0,1,0,1,0,1] 231 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 232 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 233 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 234 | 235 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 236 | E_7,[E,D,Ab,B],42,[4,2,8,11],[0,1,2,1,1,1] 237 | D_6sus2b5,[D,E,Ab,B],43,[2,4,8,11],[0,1,2,1,1,1] 238 | Ab_mb5#5,[Ab,D,E,B],43,[8,2,4,11],[0,1,2,1,1,1] 239 | B_m6add11no5,[B,D,E,Ab],43,[11,2,4,8],[0,1,2,1,1,1] 240 | E_b9,[E,F,Ab,B],50,[4,5,8,11],[1,0,2,1,1,1] 241 | F_mmaj7b5,[F,E,Ab,B],51,[5,4,8,11],[1,0,2,1,1,1] 242 | Ab_m6#5,[Ab,E,F,B],51,[8,4,5,11],[1,0,2,1,1,1] 243 | B_6sus4b5,[B,E,F,Ab],51,[11,4,5,8],[1,0,2,1,1,1] 244 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 245 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 246 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 247 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 248 | D_mb5add9,[D,E,F,Ab],58,[2,4,5,8],[1,1,2,1,0,1] 249 | E_7b9no5,[E,D,F,Ab],58,[4,2,5,8],[1,1,2,1,0,1] 250 | F_m6maj7no5,[F,D,E,Ab],58,[5,2,4,8],[1,1,2,1,0,1] 251 | Ab_6b5#5no3,[Ab,D,E,F],58,[8,2,4,5],[1,1,2,1,0,1] 252 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 253 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 254 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 255 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 256 | 257 | ------------------ 258 | -- DIATONIC 3+1 -- 259 | ------------------ 260 | 261 | -- diatonic modes 3+1 262 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 263 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 264 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 265 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 266 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 267 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 268 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 269 | 270 | -- interval vector 3+1 271 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_12.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,5,9,11] 25 | [C,D,F,A,B] 26 | 27 | -- dissonance level 1 28 | 72 29 | 30 | -- tunings 1 31 | ("DGDGA","DGDABb") 32 | 33 | -- interval vector 1 34 | [1,2,3,1,2,1] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | F_major,[F,G,A,C,D] 38 | B_iwato,[B,C,E,F,A] 39 | D_kumoi,[D,E,F,A,B] 40 | 41 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 42 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 43 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 44 | D_7no3,[D,C,A],12,[2,0,9],[0,1,1,0,1,0] 45 | D_6no3,[D,A,B],12,[2,9,11],[0,1,1,0,1,0] 46 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 47 | C_6sus2no5,[C,D,A],13,[0,2,9],[0,1,1,0,1,0] 48 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 49 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 50 | A_minadd11no5,[A,C,D],13,[9,0,2],[0,1,1,0,1,0] 51 | A_sus2/4no5,[A,D,B],13,[9,2,11],[0,1,1,0,1,0] 52 | B_min7no5,[B,D,A],13,[11,2,9],[0,1,1,0,1,0] 53 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 54 | C_6maj7no3no5,[C,A,B],28,[0,9,11],[1,1,1,0,0,0] 55 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 56 | A_minadd9no5,[A,C,B],28,[9,0,11],[1,1,1,0,0,0] 57 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 58 | B_7b9no3no5,[B,C,A],28,[11,0,9],[1,1,1,0,0,0] 59 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 60 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 61 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 62 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 63 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 64 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 65 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 66 | 67 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 68 | D_m7,[D,C,F,A],19,[2,0,5,9],[0,1,2,1,2,0] 69 | C_6sus2/4no5,[C,D,F,A],20,[0,2,5,9],[0,1,2,1,2,0] 70 | F_6,[F,C,D,A],20,[5,0,2,9],[0,1,2,1,2,0] 71 | A_m#5add11,[A,C,D,F],20,[9,0,2,5],[0,1,2,1,2,0] 72 | D_67no3,[D,C,A,B],40,[2,0,9,11],[1,2,2,0,1,0] 73 | C_6maj7sus2no5,[C,D,A,B],41,[0,2,9,11],[1,2,2,0,1,0] 74 | A_madd9/11no5,[A,C,D,B],41,[9,0,2,11],[1,2,2,0,1,0] 75 | B_m7b9no5,[B,C,D,A],41,[11,0,2,9],[1,2,2,0,1,0] 76 | D_m6,[D,F,A,B],42,[2,5,9,11],[0,1,2,1,1,1] 77 | F_6b5,[F,D,A,B],43,[5,2,9,11],[0,1,2,1,1,1] 78 | A_sus2/4#5,[A,D,F,B],43,[9,2,5,11],[0,1,2,1,1,1] 79 | B_m7b5,[B,D,F,A],43,[11,2,5,9],[0,1,2,1,1,1] 80 | C_6maj7sus4no5,[C,F,A,B],55,[0,5,9,11],[1,1,1,1,1,1] 81 | F_#11,[F,C,A,B],55,[5,0,9,11],[1,1,1,1,1,1] 82 | A_m#5add9,[A,C,F,B],55,[9,0,5,11],[1,1,1,1,1,1] 83 | B_7b5b9no3,[B,C,F,A],55,[11,0,5,9],[1,1,1,1,1,1] 84 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 85 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 86 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 87 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 88 | 89 | ------------------ 90 | -- DIATONIC 1+2 -- 91 | ------------------ 92 | 93 | -- diatonic modes 1+2 94 | C_Ionian,[C,D,E,F,G,A,B] 95 | D_Dorian,[D,C,E,F,G,A,B] 96 | E_Phrygian,[E,C,D,F,G,A,B] 97 | F_Lydian,[F,C,D,E,G,A,B] 98 | G_Mixolydian,[G,C,D,E,F,A,B] 99 | A_Aeolian,[A,C,D,E,F,G,B] 100 | B_Locrian,[B,C,D,E,F,G,A] 101 | 102 | -- interval vector 1 103 | [2,5,4,3,6,1] 104 | 105 | ------------------ 106 | -- PENTATONIC 2 -- 107 | ------------------ 108 | 109 | -- pentatonic set 2 110 | [0,4,5,7,11] 111 | [C,E,F,G,B] 112 | 113 | -- dissonance level 2 114 | 74 115 | 116 | -- tunings 2 117 | ("DGDGA","n/a") 118 | 119 | -- interval vector 2 120 | [2,1,1,2,3,1] 121 | 122 | -- related pentatonic scales (through substitution of one note) 123 | C_okina,[C,E,F,G,B] 124 | B_iwato,[B,C,E,F,A] 125 | Gb_iwato,[Gb,G,B,C,E] 126 | 127 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 128 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 129 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 130 | C_sus4,[C,F,G],9,[0,5,7],[0,1,0,0,2,0] 131 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 132 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 133 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 134 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 135 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 136 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 137 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 138 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 139 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 140 | E_minb9no5,[E,F,G],28,[4,5,7],[1,1,1,0,0,0] 141 | F_maj7sus2no5,[F,E,G],28,[5,4,7],[1,1,1,0,0,0] 142 | G_67no3no5,[G,E,F],28,[7,4,5],[1,1,1,0,0,0] 143 | F_sus2b5,[F,G,B],34,[5,7,11],[0,1,0,1,0,1] 144 | G_7no5,[G,F,B],34,[7,5,11],[0,1,0,1,0,1] 145 | B_#11#5no3,[B,F,G],34,[11,5,7],[0,1,0,1,0,1] 146 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 147 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 148 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 149 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 150 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 151 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 152 | 153 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 154 | C_maj7,[C,E,G,B],25,[0,4,7,11],[1,0,1,2,2,0] 155 | E_mb13,[E,C,G,B],25,[4,0,7,11],[1,0,1,2,2,0] 156 | G_6add11no5,[G,C,E,B],26,[7,0,4,11],[1,0,1,2,2,0] 157 | B_sus4#5b9,[B,C,E,G],26,[11,0,4,7],[1,0,1,2,2,0] 158 | C_add11,[C,E,F,G],31,[0,4,5,7],[1,1,1,1,2,0] 159 | E_m#5b9,[E,C,F,G],32,[4,0,5,7],[1,1,1,1,2,0] 160 | F_maj7sus2,[F,C,E,G],32,[5,0,4,7],[1,1,1,1,2,0] 161 | G_67sus4no5,[G,C,E,F],32,[7,0,4,5],[1,1,1,1,2,0] 162 | C_maj7sus4,[C,F,G,B],51,[0,5,7,11],[1,1,0,1,2,1] 163 | F_sus2#11,[F,C,G,B],52,[5,0,7,11],[1,1,0,1,2,1] 164 | G_7add11no5,[G,C,F,B],52,[7,0,5,11],[1,1,0,1,2,1] 165 | B_b5#5b9no3,[B,C,F,G],52,[11,0,5,7],[1,1,0,1,2,1] 166 | E_mb9,[E,F,G,B],54,[4,5,7,11],[1,1,1,1,1,1] 167 | F_maj7sus2b5,[F,E,G,B],55,[5,4,7,11],[1,1,1,1,1,1] 168 | G_67no5,[G,E,F,B],55,[7,4,5,11],[1,1,1,1,1,1] 169 | B_sus4b5#5,[B,E,F,G],55,[11,4,5,7],[1,1,1,1,1,1] 170 | E_b9b13no3,[E,C,F,B],59,[4,0,5,11],[2,0,0,1,2,1] 171 | C_maj7add11no5,[C,E,F,B],60,[0,4,5,11],[2,0,0,1,2,1] 172 | F_maj7#11no3,[F,C,E,B],60,[5,0,4,11],[2,0,0,1,2,1] 173 | B_sus4b5b9,[B,C,E,F],60,[11,0,4,5],[2,0,0,1,2,1] 174 | 175 | ------------------ 176 | -- DIATONIC 2+3 -- 177 | ------------------ 178 | 179 | -- diatonic modes 2+3 180 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 181 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 182 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 183 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 184 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 185 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 186 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 187 | 188 | -- interval vector 2 189 | [3,3,5,4,4,2] 190 | 191 | ------------------ 192 | -- PENTATONIC 3 -- 193 | ------------------ 194 | 195 | -- pentatonic set 3 196 | [2,4,5,8,11] 197 | [D,E,F,Ab,B] 198 | 199 | -- dissonance level 3 200 | 91 201 | 202 | -- tunings 3 203 | ("N/A","n/a") 204 | 205 | -- interval vector 3 206 | [1,1,4,1,1,2] 207 | 208 | -- related pentatonic scales (through substitution of one note) 209 | D_kumoi,[D,E,F,A,B] 210 | 211 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 212 | E_maj,[E,Ab,B],6,[4,8,11],[0,0,1,1,1,0] 213 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 214 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 215 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 216 | E_majb9no5,[E,F,Ab],22,[4,5,8],[1,0,1,1,0,0] 217 | F_minmaj7no5,[F,E,Ab],22,[5,4,8],[1,0,1,1,0,0] 218 | Ab_6#5no3,[Ab,E,F],22,[8,4,5],[1,0,1,1,0,0] 219 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 220 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 221 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 222 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 223 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 224 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 225 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 226 | D_sus2b5,[D,E,Ab],34,[2,4,8],[0,1,0,1,0,1] 227 | E_7no5,[E,D,Ab],34,[4,2,8],[0,1,0,1,0,1] 228 | Ab_#11#5no3,[Ab,D,E],34,[8,2,4],[0,1,0,1,0,1] 229 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 230 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 231 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 232 | 233 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 234 | E_7,[E,D,Ab,B],42,[4,2,8,11],[0,1,2,1,1,1] 235 | D_6sus2b5,[D,E,Ab,B],43,[2,4,8,11],[0,1,2,1,1,1] 236 | Ab_mb5#5,[Ab,D,E,B],43,[8,2,4,11],[0,1,2,1,1,1] 237 | B_m6add11no5,[B,D,E,Ab],43,[11,2,4,8],[0,1,2,1,1,1] 238 | E_b9,[E,F,Ab,B],50,[4,5,8,11],[1,0,2,1,1,1] 239 | F_mmaj7b5,[F,E,Ab,B],51,[5,4,8,11],[1,0,2,1,1,1] 240 | Ab_m6#5,[Ab,E,F,B],51,[8,4,5,11],[1,0,2,1,1,1] 241 | B_6sus4b5,[B,E,F,Ab],51,[11,4,5,8],[1,0,2,1,1,1] 242 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 243 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 244 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 245 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 246 | D_mb5add9,[D,E,F,Ab],58,[2,4,5,8],[1,1,2,1,0,1] 247 | E_7b9no5,[E,D,F,Ab],58,[4,2,5,8],[1,1,2,1,0,1] 248 | F_m6maj7no5,[F,D,E,Ab],58,[5,2,4,8],[1,1,2,1,0,1] 249 | Ab_6b5#5no3,[Ab,D,E,F],58,[8,2,4,5],[1,1,2,1,0,1] 250 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 251 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 252 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 253 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 254 | 255 | ------------------ 256 | -- DIATONIC 3+1 -- 257 | ------------------ 258 | 259 | -- diatonic modes 3+1 260 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 261 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 262 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 263 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 264 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 265 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 266 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 267 | 268 | -- interval vector 3+1 269 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_17.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,4,7,11] 25 | [C,D,E,G,B] 26 | 27 | -- dissonance level 1 28 | 46 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,2,2,2,3,0] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | C_major,[C,D,E,G,A] 38 | G_okina,[G,B,C,D,Gb] 39 | C_okina,[C,E,F,G,B] 40 | Gb_iwato,[Gb,G,B,C,E] 41 | G_major,[G,A,B,D,E] 42 | 43 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 44 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 45 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 46 | G_maj,[G,D,B],7,[7,2,11],[0,0,1,1,1,0] 47 | G_sus4,[G,C,D],10,[7,0,2],[0,1,0,0,2,0] 48 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 49 | D_sus2/4no5,[D,E,G],13,[2,4,7],[0,1,1,0,1,0] 50 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 51 | E_min7no5,[E,D,G],13,[4,2,7],[0,1,1,0,1,0] 52 | G_6no3,[G,D,E],13,[7,2,4],[0,1,1,0,1,0] 53 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 54 | C_majadd9no5,[C,D,E],18,[0,2,4],[0,2,0,1,0,0] 55 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 56 | D_7sus2no5,[D,C,E],18,[2,0,4],[0,2,0,1,0,0] 57 | E_7#5no3,[E,C,D],18,[4,0,2],[0,2,0,1,0,0] 58 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 59 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 60 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 61 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 62 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 63 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 64 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 65 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 66 | 67 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 68 | E_m7,[E,D,G,B],19,[4,2,7,11],[0,1,2,1,2,0] 69 | D_6sus2/4no5,[D,E,G,B],20,[2,4,7,11],[0,1,2,1,2,0] 70 | G_6,[G,D,E,B],20,[7,2,4,11],[0,1,2,1,2,0] 71 | B_m#5add11,[B,D,E,G],20,[11,2,4,7],[0,1,2,1,2,0] 72 | C_add9,[C,D,E,G],23,[0,2,4,7],[0,2,1,1,2,0] 73 | D_7sus2/4no5,[D,C,E,G],24,[2,0,4,7],[0,2,1,1,2,0] 74 | E_m7#5,[E,C,D,G],24,[4,0,2,7],[0,2,1,1,2,0] 75 | G_6sus4,[G,C,D,E],24,[7,0,2,4],[0,2,1,1,2,0] 76 | C_maj7,[C,E,G,B],25,[0,4,7,11],[1,0,1,2,2,0] 77 | E_mb13,[E,C,G,B],25,[4,0,7,11],[1,0,1,2,2,0] 78 | G_6add11no5,[G,C,E,B],26,[7,0,4,11],[1,0,1,2,2,0] 79 | B_sus4#5b9,[B,C,E,G],26,[11,0,4,7],[1,0,1,2,2,0] 80 | C_maj7sus2,[C,D,G,B],31,[0,2,7,11],[1,1,1,1,2,0] 81 | D_67sus4no5,[D,C,G,B],32,[2,0,7,11],[1,1,1,1,2,0] 82 | G_add11,[G,C,D,B],32,[7,0,2,11],[1,1,1,1,2,0] 83 | B_m#5b9,[B,C,D,G],32,[11,0,2,7],[1,1,1,1,2,0] 84 | E_7b13no3,[E,C,D,B],38,[4,0,2,11],[1,2,1,1,1,0] 85 | C_maj7add9no5,[C,D,E,B],39,[0,2,4,11],[1,2,1,1,1,0] 86 | D_67sus2no5,[D,C,E,B],39,[2,0,4,11],[1,2,1,1,1,0] 87 | B_madd11b9no5,[B,C,D,E],39,[11,0,2,4],[1,2,1,1,1,0] 88 | 89 | ------------------ 90 | -- DIATONIC 1+2 -- 91 | ------------------ 92 | 93 | -- diatonic modes 1+2 94 | C_Ionian,[C,D,E,F,G,A,B] 95 | D_Dorian,[D,C,E,F,G,A,B] 96 | E_Phrygian,[E,C,D,F,G,A,B] 97 | F_Lydian,[F,C,D,E,G,A,B] 98 | G_Mixolydian,[G,C,D,E,F,A,B] 99 | A_Aeolian,[A,C,D,E,F,G,B] 100 | B_Locrian,[B,C,D,E,F,G,A] 101 | 102 | -- interval vector 1 103 | [2,5,4,3,6,1] 104 | 105 | ------------------ 106 | -- PENTATONIC 2 -- 107 | ------------------ 108 | 109 | -- pentatonic set 2 110 | [2,4,5,9,11] 111 | [D,E,F,A,B] 112 | 113 | -- dissonance level 2 114 | 68 115 | 116 | -- tunings 2 117 | ("DGDGA","n/a") 118 | 119 | -- interval vector 2 120 | [1,2,2,1,3,1] 121 | 122 | -- related pentatonic scales (through substitution of one note) 123 | E_iwato,[E,F,A,Bb,D] 124 | D_kumoi,[D,E,F,A,B] 125 | D_major,[D,E,Gb,A,B] 126 | G_major,[G,A,B,D,E] 127 | B_iwato,[B,C,E,F,A] 128 | 129 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 130 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 131 | E_sus4,[E,A,B],9,[4,9,11],[0,1,0,0,2,0] 132 | A_sus4,[A,D,E],10,[9,2,4],[0,1,0,0,2,0] 133 | D_6no3,[D,A,B],12,[2,9,11],[0,1,1,0,1,0] 134 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 135 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 136 | A_sus2/4no5,[A,D,B],13,[9,2,11],[0,1,1,0,1,0] 137 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 138 | B_min7no5,[B,D,A],13,[11,2,9],[0,1,1,0,1,0] 139 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 140 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 141 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 142 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 143 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 144 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 145 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 146 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 147 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 148 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 149 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 150 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 151 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 152 | 153 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 154 | D_6sus2,[D,E,A,B],22,[2,4,9,11],[0,2,1,0,3,0] 155 | E_7sus4,[E,D,A,B],22,[4,2,9,11],[0,2,1,0,3,0] 156 | A_sus2/4,[A,D,E,B],23,[9,2,4,11],[0,2,1,0,3,0] 157 | B_m7add11no5,[B,D,E,A],23,[11,2,4,9],[0,2,1,0,3,0] 158 | D_madd9,[D,E,F,A],31,[2,4,5,9],[1,1,1,1,2,0] 159 | E_7sus4b9no5,[E,D,F,A],32,[4,2,5,9],[1,1,1,1,2,0] 160 | F_6maj7no5,[F,D,E,A],32,[5,2,4,9],[1,1,1,1,2,0] 161 | A_sus4b13,[A,D,E,F],32,[9,2,4,5],[1,1,1,1,2,0] 162 | D_m6,[D,F,A,B],42,[2,5,9,11],[0,1,2,1,1,1] 163 | F_6b5,[F,D,A,B],43,[5,2,9,11],[0,1,2,1,1,1] 164 | A_sus2/4#5,[A,D,F,B],43,[9,2,5,11],[0,1,2,1,1,1] 165 | B_m7b5,[B,D,F,A],43,[11,2,5,9],[0,1,2,1,1,1] 166 | E_sus4b9,[E,F,A,B],51,[4,5,9,11],[1,1,0,1,2,1] 167 | F_maj7b5,[F,E,A,B],52,[5,4,9,11],[1,1,0,1,2,1] 168 | A_sus2b13,[A,E,F,B],52,[9,4,5,11],[1,1,0,1,2,1] 169 | B_7sus4b5,[B,E,F,A],52,[11,4,5,9],[1,1,0,1,2,1] 170 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 171 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 172 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 173 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 174 | 175 | ------------------ 176 | -- DIATONIC 2+3 -- 177 | ------------------ 178 | 179 | -- diatonic modes 2+3 180 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 181 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 182 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 183 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 184 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 185 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 186 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 187 | 188 | -- interval vector 2 189 | [3,3,5,4,4,2] 190 | 191 | ------------------ 192 | -- PENTATONIC 3 -- 193 | ------------------ 194 | 195 | -- pentatonic set 3 196 | [0,2,5,8,11] 197 | [C,D,F,Ab,B] 198 | 199 | -- dissonance level 3 200 | 91 201 | 202 | -- tunings 3 203 | ("N/A","n/a") 204 | 205 | -- interval vector 3 206 | [1,1,4,1,1,2] 207 | 208 | -- related pentatonic scales (through substitution of one note) 209 | F_kumoi,[F,G,Ab,C,D] 210 | 211 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 212 | F_min,[F,C,Ab],7,[5,0,8],[0,0,1,1,1,0] 213 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 214 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 215 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 216 | C_maj7#5no3,[C,Ab,B],22,[0,8,11],[1,0,1,1,0,0] 217 | Ab_#9no5,[Ab,C,B],22,[8,0,11],[1,0,1,1,0,0] 218 | B_6b9no3no5,[B,C,Ab],22,[11,0,8],[1,0,1,1,0,0] 219 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 220 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 221 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 222 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 223 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 224 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 225 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 226 | C_sus2#5,[C,D,Ab],34,[0,2,8],[0,1,0,1,0,1] 227 | D_7b5no3,[D,C,Ab],34,[2,0,8],[0,1,0,1,0,1] 228 | Ab_majb5,[Ab,C,D],34,[8,0,2],[0,1,0,1,0,1] 229 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 230 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 231 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 232 | 233 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 234 | C_sus2/4#5,[C,D,F,Ab],43,[0,2,5,8],[0,1,2,1,1,1] 235 | D_m7b5,[D,C,F,Ab],43,[2,0,5,8],[0,1,2,1,1,1] 236 | F_m6,[F,C,D,Ab],43,[5,0,2,8],[0,1,2,1,1,1] 237 | Ab_6b5,[Ab,C,D,F],43,[8,0,2,5],[0,1,2,1,1,1] 238 | C_maj7sus4#5,[C,F,Ab,B],51,[0,5,8,11],[1,0,2,1,1,1] 239 | F_m#11,[F,C,Ab,B],51,[5,0,8,11],[1,0,2,1,1,1] 240 | Ab_6#9no5,[Ab,C,F,B],51,[8,0,5,11],[1,0,2,1,1,1] 241 | B_6b5b9no3,[B,C,F,Ab],51,[11,0,5,8],[1,0,2,1,1,1] 242 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 243 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 244 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 245 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 246 | C_maj7sus2#5,[C,D,Ab,B],58,[0,2,8,11],[1,1,2,1,0,1] 247 | D_67b5no3,[D,C,Ab,B],58,[2,0,8,11],[1,1,2,1,0,1] 248 | Ab_b5#9,[Ab,C,D,B],58,[8,0,2,11],[1,1,2,1,0,1] 249 | B_m6b9no5,[B,C,D,Ab],58,[11,0,2,8],[1,1,2,1,0,1] 250 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 251 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 252 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 253 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 254 | 255 | ------------------ 256 | -- DIATONIC 3+1 -- 257 | ------------------ 258 | 259 | -- diatonic modes 3+1 260 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 261 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 262 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 263 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 264 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 265 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 266 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 267 | 268 | -- interval vector 3+1 269 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_18.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,4,5,9] 25 | [C,D,E,F,A] 26 | 27 | -- dissonance level 1 28 | 47 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,2,2,2,3,0] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | C_major,[C,D,E,G,A] 38 | F_major,[F,G,A,C,D] 39 | F_okina,[F,A,Bb,C,E] 40 | B_iwato,[B,C,E,F,A] 41 | E_iwato,[E,F,A,Bb,D] 42 | D_kumoi,[D,E,F,A,B] 43 | 44 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 45 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 46 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 47 | A_min,[A,C,E],7,[9,0,4],[0,0,1,1,1,0] 48 | A_sus4,[A,D,E],10,[9,2,4],[0,1,0,0,2,0] 49 | D_7no3,[D,C,A],12,[2,0,9],[0,1,1,0,1,0] 50 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 51 | C_6sus2no5,[C,D,A],13,[0,2,9],[0,1,1,0,1,0] 52 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 53 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 54 | A_minadd11no5,[A,C,D],13,[9,0,2],[0,1,1,0,1,0] 55 | C_majadd9no5,[C,D,E],18,[0,2,4],[0,2,0,1,0,0] 56 | D_7sus2no5,[D,C,E],18,[2,0,4],[0,2,0,1,0,0] 57 | E_7#5no3,[E,C,D],18,[4,0,2],[0,2,0,1,0,0] 58 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 59 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 60 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 61 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 62 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 63 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 64 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 65 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 66 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 67 | 68 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 69 | D_m7,[D,C,F,A],19,[2,0,5,9],[0,1,2,1,2,0] 70 | C_6sus2/4no5,[C,D,F,A],20,[0,2,5,9],[0,1,2,1,2,0] 71 | F_6,[F,C,D,A],20,[5,0,2,9],[0,1,2,1,2,0] 72 | A_m#5add11,[A,C,D,F],20,[9,0,2,5],[0,1,2,1,2,0] 73 | D_7sus2,[D,C,E,A],23,[2,0,4,9],[0,2,1,1,2,0] 74 | C_6add9no5,[C,D,E,A],24,[0,2,4,9],[0,2,1,1,2,0] 75 | E_7sus4#5,[E,C,D,A],24,[4,0,2,9],[0,2,1,1,2,0] 76 | A_madd11,[A,C,D,E],24,[9,0,2,4],[0,2,1,1,2,0] 77 | C_6add11no5,[C,E,F,A],26,[0,4,5,9],[1,0,1,2,2,0] 78 | E_sus4#5b9,[E,C,F,A],26,[4,0,5,9],[1,0,1,2,2,0] 79 | F_maj7,[F,C,E,A],26,[5,0,4,9],[1,0,1,2,2,0] 80 | A_mb13,[A,C,E,F],26,[9,0,4,5],[1,0,1,2,2,0] 81 | D_madd9,[D,E,F,A],31,[2,4,5,9],[1,1,1,1,2,0] 82 | E_7sus4b9no5,[E,D,F,A],32,[4,2,5,9],[1,1,1,1,2,0] 83 | F_6maj7no5,[F,D,E,A],32,[5,2,4,9],[1,1,1,1,2,0] 84 | A_sus4b13,[A,D,E,F],32,[9,2,4,5],[1,1,1,1,2,0] 85 | C_add9/11no5,[C,D,E,F],39,[0,2,4,5],[1,2,1,1,1,0] 86 | D_m7add9no5,[D,C,E,F],39,[2,0,4,5],[1,2,1,1,1,0] 87 | E_7#5b9no3,[E,C,D,F],39,[4,0,2,5],[1,2,1,1,1,0] 88 | F_6maj7no3,[F,C,D,E],39,[5,0,2,4],[1,2,1,1,1,0] 89 | 90 | ------------------ 91 | -- DIATONIC 1+2 -- 92 | ------------------ 93 | 94 | -- diatonic modes 1+2 95 | C_Ionian,[C,D,E,F,G,A,B] 96 | D_Dorian,[D,C,E,F,G,A,B] 97 | E_Phrygian,[E,C,D,F,G,A,B] 98 | F_Lydian,[F,C,D,E,G,A,B] 99 | G_Mixolydian,[G,C,D,E,F,A,B] 100 | A_Aeolian,[A,C,D,E,F,G,B] 101 | B_Locrian,[B,C,D,E,F,G,A] 102 | 103 | -- interval vector 1 104 | [2,5,4,3,6,1] 105 | 106 | ------------------ 107 | -- PENTATONIC 2 -- 108 | ------------------ 109 | 110 | -- pentatonic set 2 111 | [0,2,5,7,11] 112 | [C,D,F,G,B] 113 | 114 | -- dissonance level 2 115 | 68 116 | 117 | -- tunings 2 118 | ("DGDGA","DGDABb") 119 | 120 | -- interval vector 2 121 | [1,2,2,1,3,1] 122 | 123 | -- related pentatonic scales (through substitution of one note) 124 | F_major,[F,G,A,C,D] 125 | Bb_major,[Bb,C,D,F,G] 126 | F_kumoi,[F,G,Ab,C,D] 127 | G_okina,[G,B,C,D,Gb] 128 | C_okina,[C,E,F,G,B] 129 | 130 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 131 | G_maj,[G,D,B],7,[7,2,11],[0,0,1,1,1,0] 132 | C_sus4,[C,F,G],9,[0,5,7],[0,1,0,0,2,0] 133 | G_sus4,[G,C,D],10,[7,0,2],[0,1,0,0,2,0] 134 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 135 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 136 | D_minadd11no5,[D,F,G],13,[2,5,7],[0,1,1,0,1,0] 137 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 138 | F_6sus2no5,[F,D,G],13,[5,2,7],[0,1,1,0,1,0] 139 | G_7no3,[G,D,F],13,[7,2,5],[0,1,1,0,1,0] 140 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 141 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 142 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 143 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 144 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 145 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 146 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 147 | F_sus2b5,[F,G,B],34,[5,7,11],[0,1,0,1,0,1] 148 | G_7no5,[G,F,B],34,[7,5,11],[0,1,0,1,0,1] 149 | B_#11#5no3,[B,F,G],34,[11,5,7],[0,1,0,1,0,1] 150 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 151 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 152 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 153 | 154 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 155 | C_sus2/4,[C,D,F,G],22,[0,2,5,7],[0,2,1,0,3,0] 156 | D_m7add11no5,[D,C,F,G],23,[2,0,5,7],[0,2,1,0,3,0] 157 | F_6sus2,[F,C,D,G],23,[5,0,2,7],[0,2,1,0,3,0] 158 | G_7sus4,[G,C,D,F],23,[7,0,2,5],[0,2,1,0,3,0] 159 | C_maj7sus2,[C,D,G,B],31,[0,2,7,11],[1,1,1,1,2,0] 160 | D_67sus4no5,[D,C,G,B],32,[2,0,7,11],[1,1,1,1,2,0] 161 | G_add11,[G,C,D,B],32,[7,0,2,11],[1,1,1,1,2,0] 162 | B_m#5b9,[B,C,D,G],32,[11,0,2,7],[1,1,1,1,2,0] 163 | D_m6add11no5,[D,F,G,B],43,[2,5,7,11],[0,1,2,1,1,1] 164 | F_6sus2b5,[F,D,G,B],43,[5,2,7,11],[0,1,2,1,1,1] 165 | G_7,[G,D,F,B],43,[7,2,5,11],[0,1,2,1,1,1] 166 | B_mb5#5,[B,D,F,G],43,[11,2,5,7],[0,1,2,1,1,1] 167 | C_maj7sus4,[C,F,G,B],51,[0,5,7,11],[1,1,0,1,2,1] 168 | F_sus2#11,[F,C,G,B],52,[5,0,7,11],[1,1,0,1,2,1] 169 | G_7add11no5,[G,C,F,B],52,[7,0,5,11],[1,1,0,1,2,1] 170 | B_b5#5b9no3,[B,C,F,G],52,[11,0,5,7],[1,1,0,1,2,1] 171 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 172 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 173 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 174 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 175 | 176 | ------------------ 177 | -- DIATONIC 2+3 -- 178 | ------------------ 179 | 180 | -- diatonic modes 2+3 181 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 182 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 183 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 184 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 185 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 186 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 187 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 188 | 189 | -- interval vector 2 190 | [3,3,5,4,4,2] 191 | 192 | ------------------ 193 | -- PENTATONIC 3 -- 194 | ------------------ 195 | 196 | -- pentatonic set 3 197 | [2,4,5,8,11] 198 | [D,E,F,Ab,B] 199 | 200 | -- dissonance level 3 201 | 91 202 | 203 | -- tunings 3 204 | ("N/A","n/a") 205 | 206 | -- interval vector 3 207 | [1,1,4,1,1,2] 208 | 209 | -- related pentatonic scales (through substitution of one note) 210 | D_kumoi,[D,E,F,A,B] 211 | 212 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 213 | E_maj,[E,Ab,B],6,[4,8,11],[0,0,1,1,1,0] 214 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 215 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 216 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 217 | E_majb9no5,[E,F,Ab],22,[4,5,8],[1,0,1,1,0,0] 218 | F_minmaj7no5,[F,E,Ab],22,[5,4,8],[1,0,1,1,0,0] 219 | Ab_6#5no3,[Ab,E,F],22,[8,4,5],[1,0,1,1,0,0] 220 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 221 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 222 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 223 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 224 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 225 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 226 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 227 | D_sus2b5,[D,E,Ab],34,[2,4,8],[0,1,0,1,0,1] 228 | E_7no5,[E,D,Ab],34,[4,2,8],[0,1,0,1,0,1] 229 | Ab_#11#5no3,[Ab,D,E],34,[8,2,4],[0,1,0,1,0,1] 230 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 231 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 232 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 233 | 234 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 235 | E_7,[E,D,Ab,B],42,[4,2,8,11],[0,1,2,1,1,1] 236 | D_6sus2b5,[D,E,Ab,B],43,[2,4,8,11],[0,1,2,1,1,1] 237 | Ab_mb5#5,[Ab,D,E,B],43,[8,2,4,11],[0,1,2,1,1,1] 238 | B_m6add11no5,[B,D,E,Ab],43,[11,2,4,8],[0,1,2,1,1,1] 239 | E_b9,[E,F,Ab,B],50,[4,5,8,11],[1,0,2,1,1,1] 240 | F_mmaj7b5,[F,E,Ab,B],51,[5,4,8,11],[1,0,2,1,1,1] 241 | Ab_m6#5,[Ab,E,F,B],51,[8,4,5,11],[1,0,2,1,1,1] 242 | B_6sus4b5,[B,E,F,Ab],51,[11,4,5,8],[1,0,2,1,1,1] 243 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 244 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 245 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 246 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 247 | D_mb5add9,[D,E,F,Ab],58,[2,4,5,8],[1,1,2,1,0,1] 248 | E_7b9no5,[E,D,F,Ab],58,[4,2,5,8],[1,1,2,1,0,1] 249 | F_m6maj7no5,[F,D,E,Ab],58,[5,2,4,8],[1,1,2,1,0,1] 250 | Ab_6b5#5no3,[Ab,D,E,F],58,[8,2,4,5],[1,1,2,1,0,1] 251 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 252 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 253 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 254 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 255 | 256 | ------------------ 257 | -- DIATONIC 3+1 -- 258 | ------------------ 259 | 260 | -- diatonic modes 3+1 261 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 262 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 263 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 264 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 265 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 266 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 267 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 268 | 269 | -- interval vector 3+1 270 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_19.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,4,7,11] 25 | [C,D,E,G,B] 26 | 27 | -- dissonance level 1 28 | 46 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,2,2,2,3,0] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | C_major,[C,D,E,G,A] 38 | G_okina,[G,B,C,D,Gb] 39 | C_okina,[C,E,F,G,B] 40 | Gb_iwato,[Gb,G,B,C,E] 41 | G_major,[G,A,B,D,E] 42 | 43 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 44 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 45 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 46 | G_maj,[G,D,B],7,[7,2,11],[0,0,1,1,1,0] 47 | G_sus4,[G,C,D],10,[7,0,2],[0,1,0,0,2,0] 48 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 49 | D_sus2/4no5,[D,E,G],13,[2,4,7],[0,1,1,0,1,0] 50 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 51 | E_min7no5,[E,D,G],13,[4,2,7],[0,1,1,0,1,0] 52 | G_6no3,[G,D,E],13,[7,2,4],[0,1,1,0,1,0] 53 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 54 | C_majadd9no5,[C,D,E],18,[0,2,4],[0,2,0,1,0,0] 55 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 56 | D_7sus2no5,[D,C,E],18,[2,0,4],[0,2,0,1,0,0] 57 | E_7#5no3,[E,C,D],18,[4,0,2],[0,2,0,1,0,0] 58 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 59 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 60 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 61 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 62 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 63 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 64 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 65 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 66 | 67 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 68 | E_m7,[E,D,G,B],19,[4,2,7,11],[0,1,2,1,2,0] 69 | D_6sus2/4no5,[D,E,G,B],20,[2,4,7,11],[0,1,2,1,2,0] 70 | G_6,[G,D,E,B],20,[7,2,4,11],[0,1,2,1,2,0] 71 | B_m#5add11,[B,D,E,G],20,[11,2,4,7],[0,1,2,1,2,0] 72 | C_add9,[C,D,E,G],23,[0,2,4,7],[0,2,1,1,2,0] 73 | D_7sus2/4no5,[D,C,E,G],24,[2,0,4,7],[0,2,1,1,2,0] 74 | E_m7#5,[E,C,D,G],24,[4,0,2,7],[0,2,1,1,2,0] 75 | G_6sus4,[G,C,D,E],24,[7,0,2,4],[0,2,1,1,2,0] 76 | C_maj7,[C,E,G,B],25,[0,4,7,11],[1,0,1,2,2,0] 77 | E_mb13,[E,C,G,B],25,[4,0,7,11],[1,0,1,2,2,0] 78 | G_6add11no5,[G,C,E,B],26,[7,0,4,11],[1,0,1,2,2,0] 79 | B_sus4#5b9,[B,C,E,G],26,[11,0,4,7],[1,0,1,2,2,0] 80 | C_maj7sus2,[C,D,G,B],31,[0,2,7,11],[1,1,1,1,2,0] 81 | D_67sus4no5,[D,C,G,B],32,[2,0,7,11],[1,1,1,1,2,0] 82 | G_add11,[G,C,D,B],32,[7,0,2,11],[1,1,1,1,2,0] 83 | B_m#5b9,[B,C,D,G],32,[11,0,2,7],[1,1,1,1,2,0] 84 | E_7b13no3,[E,C,D,B],38,[4,0,2,11],[1,2,1,1,1,0] 85 | C_maj7add9no5,[C,D,E,B],39,[0,2,4,11],[1,2,1,1,1,0] 86 | D_67sus2no5,[D,C,E,B],39,[2,0,4,11],[1,2,1,1,1,0] 87 | B_madd11b9no5,[B,C,D,E],39,[11,0,2,4],[1,2,1,1,1,0] 88 | 89 | ------------------ 90 | -- DIATONIC 1+2 -- 91 | ------------------ 92 | 93 | -- diatonic modes 1+2 94 | C_Ionian,[C,D,E,F,G,A,B] 95 | D_Dorian,[D,C,E,F,G,A,B] 96 | E_Phrygian,[E,C,D,F,G,A,B] 97 | F_Lydian,[F,C,D,E,G,A,B] 98 | G_Mixolydian,[G,C,D,E,F,A,B] 99 | A_Aeolian,[A,C,D,E,F,G,B] 100 | B_Locrian,[B,C,D,E,F,G,A] 101 | 102 | -- interval vector 1 103 | [2,5,4,3,6,1] 104 | 105 | ------------------ 106 | -- PENTATONIC 2 -- 107 | ------------------ 108 | 109 | -- pentatonic set 2 110 | [0,2,5,9,11] 111 | [C,D,F,A,B] 112 | 113 | -- dissonance level 2 114 | 72 115 | 116 | -- tunings 2 117 | ("DGDGA","DGDABb") 118 | 119 | -- interval vector 2 120 | [1,2,3,1,2,1] 121 | 122 | -- related pentatonic scales (through substitution of one note) 123 | F_major,[F,G,A,C,D] 124 | B_iwato,[B,C,E,F,A] 125 | D_kumoi,[D,E,F,A,B] 126 | 127 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 128 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 129 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 130 | D_7no3,[D,C,A],12,[2,0,9],[0,1,1,0,1,0] 131 | D_6no3,[D,A,B],12,[2,9,11],[0,1,1,0,1,0] 132 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 133 | C_6sus2no5,[C,D,A],13,[0,2,9],[0,1,1,0,1,0] 134 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 135 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 136 | A_minadd11no5,[A,C,D],13,[9,0,2],[0,1,1,0,1,0] 137 | A_sus2/4no5,[A,D,B],13,[9,2,11],[0,1,1,0,1,0] 138 | B_min7no5,[B,D,A],13,[11,2,9],[0,1,1,0,1,0] 139 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 140 | C_6maj7no3no5,[C,A,B],28,[0,9,11],[1,1,1,0,0,0] 141 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 142 | A_minadd9no5,[A,C,B],28,[9,0,11],[1,1,1,0,0,0] 143 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 144 | B_7b9no3no5,[B,C,A],28,[11,0,9],[1,1,1,0,0,0] 145 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 146 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 147 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 148 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 149 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 150 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 151 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 152 | 153 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 154 | D_m7,[D,C,F,A],19,[2,0,5,9],[0,1,2,1,2,0] 155 | C_6sus2/4no5,[C,D,F,A],20,[0,2,5,9],[0,1,2,1,2,0] 156 | F_6,[F,C,D,A],20,[5,0,2,9],[0,1,2,1,2,0] 157 | A_m#5add11,[A,C,D,F],20,[9,0,2,5],[0,1,2,1,2,0] 158 | D_67no3,[D,C,A,B],40,[2,0,9,11],[1,2,2,0,1,0] 159 | C_6maj7sus2no5,[C,D,A,B],41,[0,2,9,11],[1,2,2,0,1,0] 160 | A_madd9/11no5,[A,C,D,B],41,[9,0,2,11],[1,2,2,0,1,0] 161 | B_m7b9no5,[B,C,D,A],41,[11,0,2,9],[1,2,2,0,1,0] 162 | D_m6,[D,F,A,B],42,[2,5,9,11],[0,1,2,1,1,1] 163 | F_6b5,[F,D,A,B],43,[5,2,9,11],[0,1,2,1,1,1] 164 | A_sus2/4#5,[A,D,F,B],43,[9,2,5,11],[0,1,2,1,1,1] 165 | B_m7b5,[B,D,F,A],43,[11,2,5,9],[0,1,2,1,1,1] 166 | C_6maj7sus4no5,[C,F,A,B],55,[0,5,9,11],[1,1,1,1,1,1] 167 | F_#11,[F,C,A,B],55,[5,0,9,11],[1,1,1,1,1,1] 168 | A_m#5add9,[A,C,F,B],55,[9,0,5,11],[1,1,1,1,1,1] 169 | B_7b5b9no3,[B,C,F,A],55,[11,0,5,9],[1,1,1,1,1,1] 170 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 171 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 172 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 173 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 174 | 175 | ------------------ 176 | -- DIATONIC 2+3 -- 177 | ------------------ 178 | 179 | -- diatonic modes 2+3 180 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 181 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 182 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 183 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 184 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 185 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 186 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 187 | 188 | -- interval vector 2 189 | [3,3,5,4,4,2] 190 | 191 | ------------------ 192 | -- PENTATONIC 3 -- 193 | ------------------ 194 | 195 | -- pentatonic set 3 196 | [2,4,5,8,11] 197 | [D,E,F,Ab,B] 198 | 199 | -- dissonance level 3 200 | 91 201 | 202 | -- tunings 3 203 | ("N/A","n/a") 204 | 205 | -- interval vector 3 206 | [1,1,4,1,1,2] 207 | 208 | -- related pentatonic scales (through substitution of one note) 209 | D_kumoi,[D,E,F,A,B] 210 | 211 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 212 | E_maj,[E,Ab,B],6,[4,8,11],[0,0,1,1,1,0] 213 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 214 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 215 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 216 | E_majb9no5,[E,F,Ab],22,[4,5,8],[1,0,1,1,0,0] 217 | F_minmaj7no5,[F,E,Ab],22,[5,4,8],[1,0,1,1,0,0] 218 | Ab_6#5no3,[Ab,E,F],22,[8,4,5],[1,0,1,1,0,0] 219 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 220 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 221 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 222 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 223 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 224 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 225 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 226 | D_sus2b5,[D,E,Ab],34,[2,4,8],[0,1,0,1,0,1] 227 | E_7no5,[E,D,Ab],34,[4,2,8],[0,1,0,1,0,1] 228 | Ab_#11#5no3,[Ab,D,E],34,[8,2,4],[0,1,0,1,0,1] 229 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 230 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 231 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 232 | 233 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 234 | E_7,[E,D,Ab,B],42,[4,2,8,11],[0,1,2,1,1,1] 235 | D_6sus2b5,[D,E,Ab,B],43,[2,4,8,11],[0,1,2,1,1,1] 236 | Ab_mb5#5,[Ab,D,E,B],43,[8,2,4,11],[0,1,2,1,1,1] 237 | B_m6add11no5,[B,D,E,Ab],43,[11,2,4,8],[0,1,2,1,1,1] 238 | E_b9,[E,F,Ab,B],50,[4,5,8,11],[1,0,2,1,1,1] 239 | F_mmaj7b5,[F,E,Ab,B],51,[5,4,8,11],[1,0,2,1,1,1] 240 | Ab_m6#5,[Ab,E,F,B],51,[8,4,5,11],[1,0,2,1,1,1] 241 | B_6sus4b5,[B,E,F,Ab],51,[11,4,5,8],[1,0,2,1,1,1] 242 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 243 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 244 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 245 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 246 | D_mb5add9,[D,E,F,Ab],58,[2,4,5,8],[1,1,2,1,0,1] 247 | E_7b9no5,[E,D,F,Ab],58,[4,2,5,8],[1,1,2,1,0,1] 248 | F_m6maj7no5,[F,D,E,Ab],58,[5,2,4,8],[1,1,2,1,0,1] 249 | Ab_6b5#5no3,[Ab,D,E,F],58,[8,2,4,5],[1,1,2,1,0,1] 250 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 251 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 252 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 253 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 254 | 255 | ------------------ 256 | -- DIATONIC 3+1 -- 257 | ------------------ 258 | 259 | -- diatonic modes 3+1 260 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 261 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 262 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 263 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 264 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 265 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 266 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 267 | 268 | -- interval vector 3+1 269 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_20.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,4,5,9] 25 | [C,D,E,F,A] 26 | 27 | -- dissonance level 1 28 | 47 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,2,2,2,3,0] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | C_major,[C,D,E,G,A] 38 | F_major,[F,G,A,C,D] 39 | F_okina,[F,A,Bb,C,E] 40 | B_iwato,[B,C,E,F,A] 41 | E_iwato,[E,F,A,Bb,D] 42 | D_kumoi,[D,E,F,A,B] 43 | 44 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 45 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 46 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 47 | A_min,[A,C,E],7,[9,0,4],[0,0,1,1,1,0] 48 | A_sus4,[A,D,E],10,[9,2,4],[0,1,0,0,2,0] 49 | D_7no3,[D,C,A],12,[2,0,9],[0,1,1,0,1,0] 50 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 51 | C_6sus2no5,[C,D,A],13,[0,2,9],[0,1,1,0,1,0] 52 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 53 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 54 | A_minadd11no5,[A,C,D],13,[9,0,2],[0,1,1,0,1,0] 55 | C_majadd9no5,[C,D,E],18,[0,2,4],[0,2,0,1,0,0] 56 | D_7sus2no5,[D,C,E],18,[2,0,4],[0,2,0,1,0,0] 57 | E_7#5no3,[E,C,D],18,[4,0,2],[0,2,0,1,0,0] 58 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 59 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 60 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 61 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 62 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 63 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 64 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 65 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 66 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 67 | 68 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 69 | D_m7,[D,C,F,A],19,[2,0,5,9],[0,1,2,1,2,0] 70 | C_6sus2/4no5,[C,D,F,A],20,[0,2,5,9],[0,1,2,1,2,0] 71 | F_6,[F,C,D,A],20,[5,0,2,9],[0,1,2,1,2,0] 72 | A_m#5add11,[A,C,D,F],20,[9,0,2,5],[0,1,2,1,2,0] 73 | D_7sus2,[D,C,E,A],23,[2,0,4,9],[0,2,1,1,2,0] 74 | C_6add9no5,[C,D,E,A],24,[0,2,4,9],[0,2,1,1,2,0] 75 | E_7sus4#5,[E,C,D,A],24,[4,0,2,9],[0,2,1,1,2,0] 76 | A_madd11,[A,C,D,E],24,[9,0,2,4],[0,2,1,1,2,0] 77 | C_6add11no5,[C,E,F,A],26,[0,4,5,9],[1,0,1,2,2,0] 78 | E_sus4#5b9,[E,C,F,A],26,[4,0,5,9],[1,0,1,2,2,0] 79 | F_maj7,[F,C,E,A],26,[5,0,4,9],[1,0,1,2,2,0] 80 | A_mb13,[A,C,E,F],26,[9,0,4,5],[1,0,1,2,2,0] 81 | D_madd9,[D,E,F,A],31,[2,4,5,9],[1,1,1,1,2,0] 82 | E_7sus4b9no5,[E,D,F,A],32,[4,2,5,9],[1,1,1,1,2,0] 83 | F_6maj7no5,[F,D,E,A],32,[5,2,4,9],[1,1,1,1,2,0] 84 | A_sus4b13,[A,D,E,F],32,[9,2,4,5],[1,1,1,1,2,0] 85 | C_add9/11no5,[C,D,E,F],39,[0,2,4,5],[1,2,1,1,1,0] 86 | D_m7add9no5,[D,C,E,F],39,[2,0,4,5],[1,2,1,1,1,0] 87 | E_7#5b9no3,[E,C,D,F],39,[4,0,2,5],[1,2,1,1,1,0] 88 | F_6maj7no3,[F,C,D,E],39,[5,0,2,4],[1,2,1,1,1,0] 89 | 90 | ------------------ 91 | -- DIATONIC 1+2 -- 92 | ------------------ 93 | 94 | -- diatonic modes 1+2 95 | C_Ionian,[C,D,E,F,G,A,B] 96 | D_Dorian,[D,C,E,F,G,A,B] 97 | E_Phrygian,[E,C,D,F,G,A,B] 98 | F_Lydian,[F,C,D,E,G,A,B] 99 | G_Mixolydian,[G,C,D,E,F,A,B] 100 | A_Aeolian,[A,C,D,E,F,G,B] 101 | B_Locrian,[B,C,D,E,F,G,A] 102 | 103 | -- interval vector 1 104 | [2,5,4,3,6,1] 105 | 106 | ------------------ 107 | -- PENTATONIC 2 -- 108 | ------------------ 109 | 110 | -- pentatonic set 2 111 | [2,4,5,7,11] 112 | [D,E,F,G,B] 113 | 114 | -- dissonance level 2 115 | 72 116 | 117 | -- tunings 2 118 | ("DGDGA","n/a") 119 | 120 | -- interval vector 2 121 | [1,2,3,1,2,1] 122 | 123 | -- related pentatonic scales (through substitution of one note) 124 | D_kumoi,[D,E,F,A,B] 125 | G_major,[G,A,B,D,E] 126 | C_okina,[C,E,F,G,B] 127 | 128 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 129 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 130 | G_maj,[G,D,B],7,[7,2,11],[0,0,1,1,1,0] 131 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 132 | D_sus2/4no5,[D,E,G],13,[2,4,7],[0,1,1,0,1,0] 133 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 134 | D_minadd11no5,[D,F,G],13,[2,5,7],[0,1,1,0,1,0] 135 | E_min7no5,[E,D,G],13,[4,2,7],[0,1,1,0,1,0] 136 | F_6sus2no5,[F,D,G],13,[5,2,7],[0,1,1,0,1,0] 137 | G_6no3,[G,D,E],13,[7,2,4],[0,1,1,0,1,0] 138 | G_7no3,[G,D,F],13,[7,2,5],[0,1,1,0,1,0] 139 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 140 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 141 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 142 | E_minb9no5,[E,F,G],28,[4,5,7],[1,1,1,0,0,0] 143 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 144 | F_maj7sus2no5,[F,E,G],28,[5,4,7],[1,1,1,0,0,0] 145 | G_67no3no5,[G,E,F],28,[7,4,5],[1,1,1,0,0,0] 146 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 147 | F_sus2b5,[F,G,B],34,[5,7,11],[0,1,0,1,0,1] 148 | G_7no5,[G,F,B],34,[7,5,11],[0,1,0,1,0,1] 149 | B_#11#5no3,[B,F,G],34,[11,5,7],[0,1,0,1,0,1] 150 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 151 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 152 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 153 | 154 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 155 | E_m7,[E,D,G,B],19,[4,2,7,11],[0,1,2,1,2,0] 156 | D_6sus2/4no5,[D,E,G,B],20,[2,4,7,11],[0,1,2,1,2,0] 157 | G_6,[G,D,E,B],20,[7,2,4,11],[0,1,2,1,2,0] 158 | B_m#5add11,[B,D,E,G],20,[11,2,4,7],[0,1,2,1,2,0] 159 | D_madd9/11no5,[D,E,F,G],41,[2,4,5,7],[1,2,2,0,1,0] 160 | E_m7b9no5,[E,D,F,G],41,[4,2,5,7],[1,2,2,0,1,0] 161 | F_6maj7sus2no5,[F,D,E,G],41,[5,2,4,7],[1,2,2,0,1,0] 162 | G_67no3,[G,D,E,F],41,[7,2,4,5],[1,2,2,0,1,0] 163 | D_m6add11no5,[D,F,G,B],43,[2,5,7,11],[0,1,2,1,1,1] 164 | F_6sus2b5,[F,D,G,B],43,[5,2,7,11],[0,1,2,1,1,1] 165 | G_7,[G,D,F,B],43,[7,2,5,11],[0,1,2,1,1,1] 166 | B_mb5#5,[B,D,F,G],43,[11,2,5,7],[0,1,2,1,1,1] 167 | E_mb9,[E,F,G,B],54,[4,5,7,11],[1,1,1,1,1,1] 168 | F_maj7sus2b5,[F,E,G,B],55,[5,4,7,11],[1,1,1,1,1,1] 169 | G_67no5,[G,E,F,B],55,[7,4,5,11],[1,1,1,1,1,1] 170 | B_sus4b5#5,[B,E,F,G],55,[11,4,5,7],[1,1,1,1,1,1] 171 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 172 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 173 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 174 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 175 | 176 | ------------------ 177 | -- DIATONIC 2+3 -- 178 | ------------------ 179 | 180 | -- diatonic modes 2+3 181 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 182 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 183 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 184 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 185 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 186 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 187 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 188 | 189 | -- interval vector 2 190 | [3,3,5,4,4,2] 191 | 192 | ------------------ 193 | -- PENTATONIC 3 -- 194 | ------------------ 195 | 196 | -- pentatonic set 3 197 | [0,2,5,8,11] 198 | [C,D,F,Ab,B] 199 | 200 | -- dissonance level 3 201 | 91 202 | 203 | -- tunings 3 204 | ("N/A","n/a") 205 | 206 | -- interval vector 3 207 | [1,1,4,1,1,2] 208 | 209 | -- related pentatonic scales (through substitution of one note) 210 | F_kumoi,[F,G,Ab,C,D] 211 | 212 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 213 | F_min,[F,C,Ab],7,[5,0,8],[0,0,1,1,1,0] 214 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 215 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 216 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 217 | C_maj7#5no3,[C,Ab,B],22,[0,8,11],[1,0,1,1,0,0] 218 | Ab_#9no5,[Ab,C,B],22,[8,0,11],[1,0,1,1,0,0] 219 | B_6b9no3no5,[B,C,Ab],22,[11,0,8],[1,0,1,1,0,0] 220 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 221 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 222 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 223 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 224 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 225 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 226 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 227 | C_sus2#5,[C,D,Ab],34,[0,2,8],[0,1,0,1,0,1] 228 | D_7b5no3,[D,C,Ab],34,[2,0,8],[0,1,0,1,0,1] 229 | Ab_majb5,[Ab,C,D],34,[8,0,2],[0,1,0,1,0,1] 230 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 231 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 232 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 233 | 234 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 235 | C_sus2/4#5,[C,D,F,Ab],43,[0,2,5,8],[0,1,2,1,1,1] 236 | D_m7b5,[D,C,F,Ab],43,[2,0,5,8],[0,1,2,1,1,1] 237 | F_m6,[F,C,D,Ab],43,[5,0,2,8],[0,1,2,1,1,1] 238 | Ab_6b5,[Ab,C,D,F],43,[8,0,2,5],[0,1,2,1,1,1] 239 | C_maj7sus4#5,[C,F,Ab,B],51,[0,5,8,11],[1,0,2,1,1,1] 240 | F_m#11,[F,C,Ab,B],51,[5,0,8,11],[1,0,2,1,1,1] 241 | Ab_6#9no5,[Ab,C,F,B],51,[8,0,5,11],[1,0,2,1,1,1] 242 | B_6b5b9no3,[B,C,F,Ab],51,[11,0,5,8],[1,0,2,1,1,1] 243 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 244 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 245 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 246 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 247 | C_maj7sus2#5,[C,D,Ab,B],58,[0,2,8,11],[1,1,2,1,0,1] 248 | D_67b5no3,[D,C,Ab,B],58,[2,0,8,11],[1,1,2,1,0,1] 249 | Ab_b5#9,[Ab,C,D,B],58,[8,0,2,11],[1,1,2,1,0,1] 250 | B_m6b9no5,[B,C,D,Ab],58,[11,0,2,8],[1,1,2,1,0,1] 251 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 252 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 253 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 254 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 255 | 256 | ------------------ 257 | -- DIATONIC 3+1 -- 258 | ------------------ 259 | 260 | -- diatonic modes 3+1 261 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 262 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 263 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 264 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 265 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 266 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 267 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 268 | 269 | -- interval vector 3+1 270 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_21.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,4,5,7] 25 | [C,D,E,F,G] 26 | 27 | -- dissonance level 1 28 | 52 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,3,2,1,3,0] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | C_major,[C,D,E,G,A] 38 | F_major,[F,G,A,C,D] 39 | Bb_major,[Bb,C,D,F,G] 40 | F_kumoi,[F,G,Ab,C,D] 41 | C_okina,[C,E,F,G,B] 42 | 43 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 44 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 45 | C_sus4,[C,F,G],9,[0,5,7],[0,1,0,0,2,0] 46 | G_sus4,[G,C,D],10,[7,0,2],[0,1,0,0,2,0] 47 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 48 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 49 | D_sus2/4no5,[D,E,G],13,[2,4,7],[0,1,1,0,1,0] 50 | D_minadd11no5,[D,F,G],13,[2,5,7],[0,1,1,0,1,0] 51 | E_min7no5,[E,D,G],13,[4,2,7],[0,1,1,0,1,0] 52 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 53 | F_6sus2no5,[F,D,G],13,[5,2,7],[0,1,1,0,1,0] 54 | G_6no3,[G,D,E],13,[7,2,4],[0,1,1,0,1,0] 55 | G_7no3,[G,D,F],13,[7,2,5],[0,1,1,0,1,0] 56 | C_majadd9no5,[C,D,E],18,[0,2,4],[0,2,0,1,0,0] 57 | D_7sus2no5,[D,C,E],18,[2,0,4],[0,2,0,1,0,0] 58 | E_7#5no3,[E,C,D],18,[4,0,2],[0,2,0,1,0,0] 59 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 60 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 61 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 62 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 63 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 64 | E_minb9no5,[E,F,G],28,[4,5,7],[1,1,1,0,0,0] 65 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 66 | F_maj7sus2no5,[F,E,G],28,[5,4,7],[1,1,1,0,0,0] 67 | G_67no3no5,[G,E,F],28,[7,4,5],[1,1,1,0,0,0] 68 | 69 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 70 | C_sus2/4,[C,D,F,G],22,[0,2,5,7],[0,2,1,0,3,0] 71 | C_add9,[C,D,E,G],23,[0,2,4,7],[0,2,1,1,2,0] 72 | D_m7add11no5,[D,C,F,G],23,[2,0,5,7],[0,2,1,0,3,0] 73 | F_6sus2,[F,C,D,G],23,[5,0,2,7],[0,2,1,0,3,0] 74 | G_7sus4,[G,C,D,F],23,[7,0,2,5],[0,2,1,0,3,0] 75 | D_7sus2/4no5,[D,C,E,G],24,[2,0,4,7],[0,2,1,1,2,0] 76 | E_m7#5,[E,C,D,G],24,[4,0,2,7],[0,2,1,1,2,0] 77 | G_6sus4,[G,C,D,E],24,[7,0,2,4],[0,2,1,1,2,0] 78 | C_add11,[C,E,F,G],31,[0,4,5,7],[1,1,1,1,2,0] 79 | E_m#5b9,[E,C,F,G],32,[4,0,5,7],[1,1,1,1,2,0] 80 | F_maj7sus2,[F,C,E,G],32,[5,0,4,7],[1,1,1,1,2,0] 81 | G_67sus4no5,[G,C,E,F],32,[7,0,4,5],[1,1,1,1,2,0] 82 | C_add9/11no5,[C,D,E,F],39,[0,2,4,5],[1,2,1,1,1,0] 83 | D_m7add9no5,[D,C,E,F],39,[2,0,4,5],[1,2,1,1,1,0] 84 | E_7#5b9no3,[E,C,D,F],39,[4,0,2,5],[1,2,1,1,1,0] 85 | F_6maj7no3,[F,C,D,E],39,[5,0,2,4],[1,2,1,1,1,0] 86 | D_madd9/11no5,[D,E,F,G],41,[2,4,5,7],[1,2,2,0,1,0] 87 | E_m7b9no5,[E,D,F,G],41,[4,2,5,7],[1,2,2,0,1,0] 88 | F_6maj7sus2no5,[F,D,E,G],41,[5,2,4,7],[1,2,2,0,1,0] 89 | G_67no3,[G,D,E,F],41,[7,2,4,5],[1,2,2,0,1,0] 90 | 91 | ------------------ 92 | -- DIATONIC 1+2 -- 93 | ------------------ 94 | 95 | -- diatonic modes 1+2 96 | C_Ionian,[C,D,E,F,G,A,B] 97 | D_Dorian,[D,C,E,F,G,A,B] 98 | E_Phrygian,[E,C,D,F,G,A,B] 99 | F_Lydian,[F,C,D,E,G,A,B] 100 | G_Mixolydian,[G,C,D,E,F,A,B] 101 | A_Aeolian,[A,C,D,E,F,G,B] 102 | B_Locrian,[B,C,D,E,F,G,A] 103 | 104 | -- interval vector 1 105 | [2,5,4,3,6,1] 106 | 107 | ------------------ 108 | -- PENTATONIC 2 -- 109 | ------------------ 110 | 111 | -- pentatonic set 2 112 | [2,4,5,9,11] 113 | [D,E,F,A,B] 114 | 115 | -- dissonance level 2 116 | 68 117 | 118 | -- tunings 2 119 | ("DGDGA","n/a") 120 | 121 | -- interval vector 2 122 | [1,2,2,1,3,1] 123 | 124 | -- related pentatonic scales (through substitution of one note) 125 | E_iwato,[E,F,A,Bb,D] 126 | D_kumoi,[D,E,F,A,B] 127 | D_major,[D,E,Gb,A,B] 128 | G_major,[G,A,B,D,E] 129 | B_iwato,[B,C,E,F,A] 130 | 131 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 132 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 133 | E_sus4,[E,A,B],9,[4,9,11],[0,1,0,0,2,0] 134 | A_sus4,[A,D,E],10,[9,2,4],[0,1,0,0,2,0] 135 | D_6no3,[D,A,B],12,[2,9,11],[0,1,1,0,1,0] 136 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 137 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 138 | A_sus2/4no5,[A,D,B],13,[9,2,11],[0,1,1,0,1,0] 139 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 140 | B_min7no5,[B,D,A],13,[11,2,9],[0,1,1,0,1,0] 141 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 142 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 143 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 144 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 145 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 146 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 147 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 148 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 149 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 150 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 151 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 152 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 153 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 154 | 155 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 156 | D_6sus2,[D,E,A,B],22,[2,4,9,11],[0,2,1,0,3,0] 157 | E_7sus4,[E,D,A,B],22,[4,2,9,11],[0,2,1,0,3,0] 158 | A_sus2/4,[A,D,E,B],23,[9,2,4,11],[0,2,1,0,3,0] 159 | B_m7add11no5,[B,D,E,A],23,[11,2,4,9],[0,2,1,0,3,0] 160 | D_madd9,[D,E,F,A],31,[2,4,5,9],[1,1,1,1,2,0] 161 | E_7sus4b9no5,[E,D,F,A],32,[4,2,5,9],[1,1,1,1,2,0] 162 | F_6maj7no5,[F,D,E,A],32,[5,2,4,9],[1,1,1,1,2,0] 163 | A_sus4b13,[A,D,E,F],32,[9,2,4,5],[1,1,1,1,2,0] 164 | D_m6,[D,F,A,B],42,[2,5,9,11],[0,1,2,1,1,1] 165 | F_6b5,[F,D,A,B],43,[5,2,9,11],[0,1,2,1,1,1] 166 | A_sus2/4#5,[A,D,F,B],43,[9,2,5,11],[0,1,2,1,1,1] 167 | B_m7b5,[B,D,F,A],43,[11,2,5,9],[0,1,2,1,1,1] 168 | E_sus4b9,[E,F,A,B],51,[4,5,9,11],[1,1,0,1,2,1] 169 | F_maj7b5,[F,E,A,B],52,[5,4,9,11],[1,1,0,1,2,1] 170 | A_sus2b13,[A,E,F,B],52,[9,4,5,11],[1,1,0,1,2,1] 171 | B_7sus4b5,[B,E,F,A],52,[11,4,5,9],[1,1,0,1,2,1] 172 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 173 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 174 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 175 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 176 | 177 | ------------------ 178 | -- DIATONIC 2+3 -- 179 | ------------------ 180 | 181 | -- diatonic modes 2+3 182 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 183 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 184 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 185 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 186 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 187 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 188 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 189 | 190 | -- interval vector 2 191 | [3,3,5,4,4,2] 192 | 193 | ------------------ 194 | -- PENTATONIC 3 -- 195 | ------------------ 196 | 197 | -- pentatonic set 3 198 | [0,2,5,8,11] 199 | [C,D,F,Ab,B] 200 | 201 | -- dissonance level 3 202 | 91 203 | 204 | -- tunings 3 205 | ("N/A","n/a") 206 | 207 | -- interval vector 3 208 | [1,1,4,1,1,2] 209 | 210 | -- related pentatonic scales (through substitution of one note) 211 | F_kumoi,[F,G,Ab,C,D] 212 | 213 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 214 | F_min,[F,C,Ab],7,[5,0,8],[0,0,1,1,1,0] 215 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 216 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 217 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 218 | C_maj7#5no3,[C,Ab,B],22,[0,8,11],[1,0,1,1,0,0] 219 | Ab_#9no5,[Ab,C,B],22,[8,0,11],[1,0,1,1,0,0] 220 | B_6b9no3no5,[B,C,Ab],22,[11,0,8],[1,0,1,1,0,0] 221 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 222 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 223 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 224 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 225 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 226 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 227 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 228 | C_sus2#5,[C,D,Ab],34,[0,2,8],[0,1,0,1,0,1] 229 | D_7b5no3,[D,C,Ab],34,[2,0,8],[0,1,0,1,0,1] 230 | Ab_majb5,[Ab,C,D],34,[8,0,2],[0,1,0,1,0,1] 231 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 232 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 233 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 234 | 235 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 236 | C_sus2/4#5,[C,D,F,Ab],43,[0,2,5,8],[0,1,2,1,1,1] 237 | D_m7b5,[D,C,F,Ab],43,[2,0,5,8],[0,1,2,1,1,1] 238 | F_m6,[F,C,D,Ab],43,[5,0,2,8],[0,1,2,1,1,1] 239 | Ab_6b5,[Ab,C,D,F],43,[8,0,2,5],[0,1,2,1,1,1] 240 | C_maj7sus4#5,[C,F,Ab,B],51,[0,5,8,11],[1,0,2,1,1,1] 241 | F_m#11,[F,C,Ab,B],51,[5,0,8,11],[1,0,2,1,1,1] 242 | Ab_6#9no5,[Ab,C,F,B],51,[8,0,5,11],[1,0,2,1,1,1] 243 | B_6b5b9no3,[B,C,F,Ab],51,[11,0,5,8],[1,0,2,1,1,1] 244 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 245 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 246 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 247 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 248 | C_maj7sus2#5,[C,D,Ab,B],58,[0,2,8,11],[1,1,2,1,0,1] 249 | D_67b5no3,[D,C,Ab,B],58,[2,0,8,11],[1,1,2,1,0,1] 250 | Ab_b5#9,[Ab,C,D,B],58,[8,0,2,11],[1,1,2,1,0,1] 251 | B_m6b9no5,[B,C,D,Ab],58,[11,0,2,8],[1,1,2,1,0,1] 252 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 253 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 254 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 255 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 256 | 257 | ------------------ 258 | -- DIATONIC 3+1 -- 259 | ------------------ 260 | 261 | -- diatonic modes 3+1 262 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 263 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 264 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 265 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 266 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 267 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 268 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 269 | 270 | -- interval vector 3+1 271 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_22.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,4,7,11] 25 | [C,D,E,G,B] 26 | 27 | -- dissonance level 1 28 | 46 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,2,2,2,3,0] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | C_major,[C,D,E,G,A] 38 | G_okina,[G,B,C,D,Gb] 39 | C_okina,[C,E,F,G,B] 40 | Gb_iwato,[Gb,G,B,C,E] 41 | G_major,[G,A,B,D,E] 42 | 43 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 44 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 45 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 46 | G_maj,[G,D,B],7,[7,2,11],[0,0,1,1,1,0] 47 | G_sus4,[G,C,D],10,[7,0,2],[0,1,0,0,2,0] 48 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 49 | D_sus2/4no5,[D,E,G],13,[2,4,7],[0,1,1,0,1,0] 50 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 51 | E_min7no5,[E,D,G],13,[4,2,7],[0,1,1,0,1,0] 52 | G_6no3,[G,D,E],13,[7,2,4],[0,1,1,0,1,0] 53 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 54 | C_majadd9no5,[C,D,E],18,[0,2,4],[0,2,0,1,0,0] 55 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 56 | D_7sus2no5,[D,C,E],18,[2,0,4],[0,2,0,1,0,0] 57 | E_7#5no3,[E,C,D],18,[4,0,2],[0,2,0,1,0,0] 58 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 59 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 60 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 61 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 62 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 63 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 64 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 65 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 66 | 67 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 68 | E_m7,[E,D,G,B],19,[4,2,7,11],[0,1,2,1,2,0] 69 | D_6sus2/4no5,[D,E,G,B],20,[2,4,7,11],[0,1,2,1,2,0] 70 | G_6,[G,D,E,B],20,[7,2,4,11],[0,1,2,1,2,0] 71 | B_m#5add11,[B,D,E,G],20,[11,2,4,7],[0,1,2,1,2,0] 72 | C_add9,[C,D,E,G],23,[0,2,4,7],[0,2,1,1,2,0] 73 | D_7sus2/4no5,[D,C,E,G],24,[2,0,4,7],[0,2,1,1,2,0] 74 | E_m7#5,[E,C,D,G],24,[4,0,2,7],[0,2,1,1,2,0] 75 | G_6sus4,[G,C,D,E],24,[7,0,2,4],[0,2,1,1,2,0] 76 | C_maj7,[C,E,G,B],25,[0,4,7,11],[1,0,1,2,2,0] 77 | E_mb13,[E,C,G,B],25,[4,0,7,11],[1,0,1,2,2,0] 78 | G_6add11no5,[G,C,E,B],26,[7,0,4,11],[1,0,1,2,2,0] 79 | B_sus4#5b9,[B,C,E,G],26,[11,0,4,7],[1,0,1,2,2,0] 80 | C_maj7sus2,[C,D,G,B],31,[0,2,7,11],[1,1,1,1,2,0] 81 | D_67sus4no5,[D,C,G,B],32,[2,0,7,11],[1,1,1,1,2,0] 82 | G_add11,[G,C,D,B],32,[7,0,2,11],[1,1,1,1,2,0] 83 | B_m#5b9,[B,C,D,G],32,[11,0,2,7],[1,1,1,1,2,0] 84 | E_7b13no3,[E,C,D,B],38,[4,0,2,11],[1,2,1,1,1,0] 85 | C_maj7add9no5,[C,D,E,B],39,[0,2,4,11],[1,2,1,1,1,0] 86 | D_67sus2no5,[D,C,E,B],39,[2,0,4,11],[1,2,1,1,1,0] 87 | B_madd11b9no5,[B,C,D,E],39,[11,0,2,4],[1,2,1,1,1,0] 88 | 89 | ------------------ 90 | -- DIATONIC 1+2 -- 91 | ------------------ 92 | 93 | -- diatonic modes 1+2 94 | C_Ionian,[C,D,E,F,G,A,B] 95 | D_Dorian,[D,C,E,F,G,A,B] 96 | E_Phrygian,[E,C,D,F,G,A,B] 97 | F_Lydian,[F,C,D,E,G,A,B] 98 | G_Mixolydian,[G,C,D,E,F,A,B] 99 | A_Aeolian,[A,C,D,E,F,G,B] 100 | B_Locrian,[B,C,D,E,F,G,A] 101 | 102 | -- interval vector 1 103 | [2,5,4,3,6,1] 104 | 105 | ------------------ 106 | -- PENTATONIC 2 -- 107 | ------------------ 108 | 109 | -- pentatonic set 2 110 | [0,4,5,9,11] 111 | [C,E,F,A,B] 112 | 113 | -- dissonance level 2 114 | 75 115 | 116 | -- tunings 2 117 | ("DGDGA","n/a") 118 | 119 | -- interval vector 2 120 | [2,1,1,2,3,1] 121 | 122 | -- related pentatonic scales (through substitution of one note) 123 | F_okina,[F,A,Bb,C,E] 124 | B_iwato,[B,C,E,F,A] 125 | C_okina,[C,E,F,G,B] 126 | A_kumoi,[A,B,C,E,Gb] 127 | D_kumoi,[D,E,F,A,B] 128 | 129 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 130 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 131 | A_min,[A,C,E],7,[9,0,4],[0,0,1,1,1,0] 132 | E_sus4,[E,A,B],9,[4,9,11],[0,1,0,0,2,0] 133 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 134 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 135 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 136 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 137 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 138 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 139 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 140 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 141 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 142 | C_6maj7no3no5,[C,A,B],28,[0,9,11],[1,1,1,0,0,0] 143 | A_minadd9no5,[A,C,B],28,[9,0,11],[1,1,1,0,0,0] 144 | B_7b9no3no5,[B,C,A],28,[11,0,9],[1,1,1,0,0,0] 145 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 146 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 147 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 148 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 149 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 150 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 151 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 152 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 153 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 154 | 155 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 156 | C_6add11no5,[C,E,F,A],26,[0,4,5,9],[1,0,1,2,2,0] 157 | E_sus4#5b9,[E,C,F,A],26,[4,0,5,9],[1,0,1,2,2,0] 158 | F_maj7,[F,C,E,A],26,[5,0,4,9],[1,0,1,2,2,0] 159 | A_mb13,[A,C,E,F],26,[9,0,4,5],[1,0,1,2,2,0] 160 | E_sus4b13,[E,C,A,B],31,[4,0,9,11],[1,1,1,1,2,0] 161 | C_6maj7no5,[C,E,A,B],32,[0,4,9,11],[1,1,1,1,2,0] 162 | A_madd9,[A,C,E,B],32,[9,0,4,11],[1,1,1,1,2,0] 163 | B_7sus4b9no5,[B,C,E,A],32,[11,0,4,9],[1,1,1,1,2,0] 164 | E_sus4b9,[E,F,A,B],51,[4,5,9,11],[1,1,0,1,2,1] 165 | F_maj7b5,[F,E,A,B],52,[5,4,9,11],[1,1,0,1,2,1] 166 | A_sus2b13,[A,E,F,B],52,[9,4,5,11],[1,1,0,1,2,1] 167 | B_7sus4b5,[B,E,F,A],52,[11,4,5,9],[1,1,0,1,2,1] 168 | C_6maj7sus4no5,[C,F,A,B],55,[0,5,9,11],[1,1,1,1,1,1] 169 | F_#11,[F,C,A,B],55,[5,0,9,11],[1,1,1,1,1,1] 170 | A_m#5add9,[A,C,F,B],55,[9,0,5,11],[1,1,1,1,1,1] 171 | B_7b5b9no3,[B,C,F,A],55,[11,0,5,9],[1,1,1,1,1,1] 172 | E_b9b13no3,[E,C,F,B],59,[4,0,5,11],[2,0,0,1,2,1] 173 | C_maj7add11no5,[C,E,F,B],60,[0,4,5,11],[2,0,0,1,2,1] 174 | F_maj7#11no3,[F,C,E,B],60,[5,0,4,11],[2,0,0,1,2,1] 175 | B_sus4b5b9,[B,C,E,F],60,[11,0,4,5],[2,0,0,1,2,1] 176 | 177 | ------------------ 178 | -- DIATONIC 2+3 -- 179 | ------------------ 180 | 181 | -- diatonic modes 2+3 182 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 183 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 184 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 185 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 186 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 187 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 188 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 189 | 190 | -- interval vector 2 191 | [3,3,5,4,4,2] 192 | 193 | ------------------ 194 | -- PENTATONIC 3 -- 195 | ------------------ 196 | 197 | -- pentatonic set 3 198 | [0,2,5,8,11] 199 | [C,D,F,Ab,B] 200 | 201 | -- dissonance level 3 202 | 91 203 | 204 | -- tunings 3 205 | ("N/A","n/a") 206 | 207 | -- interval vector 3 208 | [1,1,4,1,1,2] 209 | 210 | -- related pentatonic scales (through substitution of one note) 211 | F_kumoi,[F,G,Ab,C,D] 212 | 213 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 214 | F_min,[F,C,Ab],7,[5,0,8],[0,0,1,1,1,0] 215 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 216 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 217 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 218 | C_maj7#5no3,[C,Ab,B],22,[0,8,11],[1,0,1,1,0,0] 219 | Ab_#9no5,[Ab,C,B],22,[8,0,11],[1,0,1,1,0,0] 220 | B_6b9no3no5,[B,C,Ab],22,[11,0,8],[1,0,1,1,0,0] 221 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 222 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 223 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 224 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 225 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 226 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 227 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 228 | C_sus2#5,[C,D,Ab],34,[0,2,8],[0,1,0,1,0,1] 229 | D_7b5no3,[D,C,Ab],34,[2,0,8],[0,1,0,1,0,1] 230 | Ab_majb5,[Ab,C,D],34,[8,0,2],[0,1,0,1,0,1] 231 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 232 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 233 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 234 | 235 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 236 | C_sus2/4#5,[C,D,F,Ab],43,[0,2,5,8],[0,1,2,1,1,1] 237 | D_m7b5,[D,C,F,Ab],43,[2,0,5,8],[0,1,2,1,1,1] 238 | F_m6,[F,C,D,Ab],43,[5,0,2,8],[0,1,2,1,1,1] 239 | Ab_6b5,[Ab,C,D,F],43,[8,0,2,5],[0,1,2,1,1,1] 240 | C_maj7sus4#5,[C,F,Ab,B],51,[0,5,8,11],[1,0,2,1,1,1] 241 | F_m#11,[F,C,Ab,B],51,[5,0,8,11],[1,0,2,1,1,1] 242 | Ab_6#9no5,[Ab,C,F,B],51,[8,0,5,11],[1,0,2,1,1,1] 243 | B_6b5b9no3,[B,C,F,Ab],51,[11,0,5,8],[1,0,2,1,1,1] 244 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 245 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 246 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 247 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 248 | C_maj7sus2#5,[C,D,Ab,B],58,[0,2,8,11],[1,1,2,1,0,1] 249 | D_67b5no3,[D,C,Ab,B],58,[2,0,8,11],[1,1,2,1,0,1] 250 | Ab_b5#9,[Ab,C,D,B],58,[8,0,2,11],[1,1,2,1,0,1] 251 | B_m6b9no5,[B,C,D,Ab],58,[11,0,2,8],[1,1,2,1,0,1] 252 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 253 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 254 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 255 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 256 | 257 | ------------------ 258 | -- DIATONIC 3+1 -- 259 | ------------------ 260 | 261 | -- diatonic modes 3+1 262 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 263 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 264 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 265 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 266 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 267 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 268 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 269 | 270 | -- interval vector 3+1 271 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_23.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,4,7,11] 25 | [C,D,E,G,B] 26 | 27 | -- dissonance level 1 28 | 46 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,2,2,2,3,0] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | C_major,[C,D,E,G,A] 38 | G_okina,[G,B,C,D,Gb] 39 | C_okina,[C,E,F,G,B] 40 | Gb_iwato,[Gb,G,B,C,E] 41 | G_major,[G,A,B,D,E] 42 | 43 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 44 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 45 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 46 | G_maj,[G,D,B],7,[7,2,11],[0,0,1,1,1,0] 47 | G_sus4,[G,C,D],10,[7,0,2],[0,1,0,0,2,0] 48 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 49 | D_sus2/4no5,[D,E,G],13,[2,4,7],[0,1,1,0,1,0] 50 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 51 | E_min7no5,[E,D,G],13,[4,2,7],[0,1,1,0,1,0] 52 | G_6no3,[G,D,E],13,[7,2,4],[0,1,1,0,1,0] 53 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 54 | C_majadd9no5,[C,D,E],18,[0,2,4],[0,2,0,1,0,0] 55 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 56 | D_7sus2no5,[D,C,E],18,[2,0,4],[0,2,0,1,0,0] 57 | E_7#5no3,[E,C,D],18,[4,0,2],[0,2,0,1,0,0] 58 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 59 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 60 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 61 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 62 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 63 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 64 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 65 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 66 | 67 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 68 | E_m7,[E,D,G,B],19,[4,2,7,11],[0,1,2,1,2,0] 69 | D_6sus2/4no5,[D,E,G,B],20,[2,4,7,11],[0,1,2,1,2,0] 70 | G_6,[G,D,E,B],20,[7,2,4,11],[0,1,2,1,2,0] 71 | B_m#5add11,[B,D,E,G],20,[11,2,4,7],[0,1,2,1,2,0] 72 | C_add9,[C,D,E,G],23,[0,2,4,7],[0,2,1,1,2,0] 73 | D_7sus2/4no5,[D,C,E,G],24,[2,0,4,7],[0,2,1,1,2,0] 74 | E_m7#5,[E,C,D,G],24,[4,0,2,7],[0,2,1,1,2,0] 75 | G_6sus4,[G,C,D,E],24,[7,0,2,4],[0,2,1,1,2,0] 76 | C_maj7,[C,E,G,B],25,[0,4,7,11],[1,0,1,2,2,0] 77 | E_mb13,[E,C,G,B],25,[4,0,7,11],[1,0,1,2,2,0] 78 | G_6add11no5,[G,C,E,B],26,[7,0,4,11],[1,0,1,2,2,0] 79 | B_sus4#5b9,[B,C,E,G],26,[11,0,4,7],[1,0,1,2,2,0] 80 | C_maj7sus2,[C,D,G,B],31,[0,2,7,11],[1,1,1,1,2,0] 81 | D_67sus4no5,[D,C,G,B],32,[2,0,7,11],[1,1,1,1,2,0] 82 | G_add11,[G,C,D,B],32,[7,0,2,11],[1,1,1,1,2,0] 83 | B_m#5b9,[B,C,D,G],32,[11,0,2,7],[1,1,1,1,2,0] 84 | E_7b13no3,[E,C,D,B],38,[4,0,2,11],[1,2,1,1,1,0] 85 | C_maj7add9no5,[C,D,E,B],39,[0,2,4,11],[1,2,1,1,1,0] 86 | D_67sus2no5,[D,C,E,B],39,[2,0,4,11],[1,2,1,1,1,0] 87 | B_madd11b9no5,[B,C,D,E],39,[11,0,2,4],[1,2,1,1,1,0] 88 | 89 | ------------------ 90 | -- DIATONIC 1+2 -- 91 | ------------------ 92 | 93 | -- diatonic modes 1+2 94 | C_Ionian,[C,D,E,F,G,A,B] 95 | D_Dorian,[D,C,E,F,G,A,B] 96 | E_Phrygian,[E,C,D,F,G,A,B] 97 | F_Lydian,[F,C,D,E,G,A,B] 98 | G_Mixolydian,[G,C,D,E,F,A,B] 99 | A_Aeolian,[A,C,D,E,F,G,B] 100 | B_Locrian,[B,C,D,E,F,G,A] 101 | 102 | -- interval vector 1 103 | [2,5,4,3,6,1] 104 | 105 | ------------------ 106 | -- PENTATONIC 2 -- 107 | ------------------ 108 | 109 | -- pentatonic set 2 110 | [0,4,5,9,11] 111 | [C,E,F,A,B] 112 | 113 | -- dissonance level 2 114 | 75 115 | 116 | -- tunings 2 117 | ("DGDGA","n/a") 118 | 119 | -- interval vector 2 120 | [2,1,1,2,3,1] 121 | 122 | -- related pentatonic scales (through substitution of one note) 123 | F_okina,[F,A,Bb,C,E] 124 | B_iwato,[B,C,E,F,A] 125 | C_okina,[C,E,F,G,B] 126 | A_kumoi,[A,B,C,E,Gb] 127 | D_kumoi,[D,E,F,A,B] 128 | 129 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 130 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 131 | A_min,[A,C,E],7,[9,0,4],[0,0,1,1,1,0] 132 | E_sus4,[E,A,B],9,[4,9,11],[0,1,0,0,2,0] 133 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 134 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 135 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 136 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 137 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 138 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 139 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 140 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 141 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 142 | C_6maj7no3no5,[C,A,B],28,[0,9,11],[1,1,1,0,0,0] 143 | A_minadd9no5,[A,C,B],28,[9,0,11],[1,1,1,0,0,0] 144 | B_7b9no3no5,[B,C,A],28,[11,0,9],[1,1,1,0,0,0] 145 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 146 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 147 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 148 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 149 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 150 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 151 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 152 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 153 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 154 | 155 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 156 | C_6add11no5,[C,E,F,A],26,[0,4,5,9],[1,0,1,2,2,0] 157 | E_sus4#5b9,[E,C,F,A],26,[4,0,5,9],[1,0,1,2,2,0] 158 | F_maj7,[F,C,E,A],26,[5,0,4,9],[1,0,1,2,2,0] 159 | A_mb13,[A,C,E,F],26,[9,0,4,5],[1,0,1,2,2,0] 160 | E_sus4b13,[E,C,A,B],31,[4,0,9,11],[1,1,1,1,2,0] 161 | C_6maj7no5,[C,E,A,B],32,[0,4,9,11],[1,1,1,1,2,0] 162 | A_madd9,[A,C,E,B],32,[9,0,4,11],[1,1,1,1,2,0] 163 | B_7sus4b9no5,[B,C,E,A],32,[11,0,4,9],[1,1,1,1,2,0] 164 | E_sus4b9,[E,F,A,B],51,[4,5,9,11],[1,1,0,1,2,1] 165 | F_maj7b5,[F,E,A,B],52,[5,4,9,11],[1,1,0,1,2,1] 166 | A_sus2b13,[A,E,F,B],52,[9,4,5,11],[1,1,0,1,2,1] 167 | B_7sus4b5,[B,E,F,A],52,[11,4,5,9],[1,1,0,1,2,1] 168 | C_6maj7sus4no5,[C,F,A,B],55,[0,5,9,11],[1,1,1,1,1,1] 169 | F_#11,[F,C,A,B],55,[5,0,9,11],[1,1,1,1,1,1] 170 | A_m#5add9,[A,C,F,B],55,[9,0,5,11],[1,1,1,1,1,1] 171 | B_7b5b9no3,[B,C,F,A],55,[11,0,5,9],[1,1,1,1,1,1] 172 | E_b9b13no3,[E,C,F,B],59,[4,0,5,11],[2,0,0,1,2,1] 173 | C_maj7add11no5,[C,E,F,B],60,[0,4,5,11],[2,0,0,1,2,1] 174 | F_maj7#11no3,[F,C,E,B],60,[5,0,4,11],[2,0,0,1,2,1] 175 | B_sus4b5b9,[B,C,E,F],60,[11,0,4,5],[2,0,0,1,2,1] 176 | 177 | ------------------ 178 | -- DIATONIC 2+3 -- 179 | ------------------ 180 | 181 | -- diatonic modes 2+3 182 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 183 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 184 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 185 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 186 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 187 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 188 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 189 | 190 | -- interval vector 2 191 | [3,3,5,4,4,2] 192 | 193 | ------------------ 194 | -- PENTATONIC 3 -- 195 | ------------------ 196 | 197 | -- pentatonic set 3 198 | [2,4,5,8,11] 199 | [D,E,F,Ab,B] 200 | 201 | -- dissonance level 3 202 | 91 203 | 204 | -- tunings 3 205 | ("N/A","n/a") 206 | 207 | -- interval vector 3 208 | [1,1,4,1,1,2] 209 | 210 | -- related pentatonic scales (through substitution of one note) 211 | D_kumoi,[D,E,F,A,B] 212 | 213 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 214 | E_maj,[E,Ab,B],6,[4,8,11],[0,0,1,1,1,0] 215 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 216 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 217 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 218 | E_majb9no5,[E,F,Ab],22,[4,5,8],[1,0,1,1,0,0] 219 | F_minmaj7no5,[F,E,Ab],22,[5,4,8],[1,0,1,1,0,0] 220 | Ab_6#5no3,[Ab,E,F],22,[8,4,5],[1,0,1,1,0,0] 221 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 222 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 223 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 224 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 225 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 226 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 227 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 228 | D_sus2b5,[D,E,Ab],34,[2,4,8],[0,1,0,1,0,1] 229 | E_7no5,[E,D,Ab],34,[4,2,8],[0,1,0,1,0,1] 230 | Ab_#11#5no3,[Ab,D,E],34,[8,2,4],[0,1,0,1,0,1] 231 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 232 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 233 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 234 | 235 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 236 | E_7,[E,D,Ab,B],42,[4,2,8,11],[0,1,2,1,1,1] 237 | D_6sus2b5,[D,E,Ab,B],43,[2,4,8,11],[0,1,2,1,1,1] 238 | Ab_mb5#5,[Ab,D,E,B],43,[8,2,4,11],[0,1,2,1,1,1] 239 | B_m6add11no5,[B,D,E,Ab],43,[11,2,4,8],[0,1,2,1,1,1] 240 | E_b9,[E,F,Ab,B],50,[4,5,8,11],[1,0,2,1,1,1] 241 | F_mmaj7b5,[F,E,Ab,B],51,[5,4,8,11],[1,0,2,1,1,1] 242 | Ab_m6#5,[Ab,E,F,B],51,[8,4,5,11],[1,0,2,1,1,1] 243 | B_6sus4b5,[B,E,F,Ab],51,[11,4,5,8],[1,0,2,1,1,1] 244 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 245 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 246 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 247 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 248 | D_mb5add9,[D,E,F,Ab],58,[2,4,5,8],[1,1,2,1,0,1] 249 | E_7b9no5,[E,D,F,Ab],58,[4,2,5,8],[1,1,2,1,0,1] 250 | F_m6maj7no5,[F,D,E,Ab],58,[5,2,4,8],[1,1,2,1,0,1] 251 | Ab_6b5#5no3,[Ab,D,E,F],58,[8,2,4,5],[1,1,2,1,0,1] 252 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 253 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 254 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 255 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 256 | 257 | ------------------ 258 | -- DIATONIC 3+1 -- 259 | ------------------ 260 | 261 | -- diatonic modes 3+1 262 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 263 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 264 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 265 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 266 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 267 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 268 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 269 | 270 | -- interval vector 3+1 271 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_25.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,4,5,9] 25 | [C,D,E,F,A] 26 | 27 | -- dissonance level 1 28 | 47 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,2,2,2,3,0] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | C_major,[C,D,E,G,A] 38 | F_major,[F,G,A,C,D] 39 | F_okina,[F,A,Bb,C,E] 40 | B_iwato,[B,C,E,F,A] 41 | E_iwato,[E,F,A,Bb,D] 42 | D_kumoi,[D,E,F,A,B] 43 | 44 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 45 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 46 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 47 | A_min,[A,C,E],7,[9,0,4],[0,0,1,1,1,0] 48 | A_sus4,[A,D,E],10,[9,2,4],[0,1,0,0,2,0] 49 | D_7no3,[D,C,A],12,[2,0,9],[0,1,1,0,1,0] 50 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 51 | C_6sus2no5,[C,D,A],13,[0,2,9],[0,1,1,0,1,0] 52 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 53 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 54 | A_minadd11no5,[A,C,D],13,[9,0,2],[0,1,1,0,1,0] 55 | C_majadd9no5,[C,D,E],18,[0,2,4],[0,2,0,1,0,0] 56 | D_7sus2no5,[D,C,E],18,[2,0,4],[0,2,0,1,0,0] 57 | E_7#5no3,[E,C,D],18,[4,0,2],[0,2,0,1,0,0] 58 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 59 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 60 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 61 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 62 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 63 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 64 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 65 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 66 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 67 | 68 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 69 | D_m7,[D,C,F,A],19,[2,0,5,9],[0,1,2,1,2,0] 70 | C_6sus2/4no5,[C,D,F,A],20,[0,2,5,9],[0,1,2,1,2,0] 71 | F_6,[F,C,D,A],20,[5,0,2,9],[0,1,2,1,2,0] 72 | A_m#5add11,[A,C,D,F],20,[9,0,2,5],[0,1,2,1,2,0] 73 | D_7sus2,[D,C,E,A],23,[2,0,4,9],[0,2,1,1,2,0] 74 | C_6add9no5,[C,D,E,A],24,[0,2,4,9],[0,2,1,1,2,0] 75 | E_7sus4#5,[E,C,D,A],24,[4,0,2,9],[0,2,1,1,2,0] 76 | A_madd11,[A,C,D,E],24,[9,0,2,4],[0,2,1,1,2,0] 77 | C_6add11no5,[C,E,F,A],26,[0,4,5,9],[1,0,1,2,2,0] 78 | E_sus4#5b9,[E,C,F,A],26,[4,0,5,9],[1,0,1,2,2,0] 79 | F_maj7,[F,C,E,A],26,[5,0,4,9],[1,0,1,2,2,0] 80 | A_mb13,[A,C,E,F],26,[9,0,4,5],[1,0,1,2,2,0] 81 | D_madd9,[D,E,F,A],31,[2,4,5,9],[1,1,1,1,2,0] 82 | E_7sus4b9no5,[E,D,F,A],32,[4,2,5,9],[1,1,1,1,2,0] 83 | F_6maj7no5,[F,D,E,A],32,[5,2,4,9],[1,1,1,1,2,0] 84 | A_sus4b13,[A,D,E,F],32,[9,2,4,5],[1,1,1,1,2,0] 85 | C_add9/11no5,[C,D,E,F],39,[0,2,4,5],[1,2,1,1,1,0] 86 | D_m7add9no5,[D,C,E,F],39,[2,0,4,5],[1,2,1,1,1,0] 87 | E_7#5b9no3,[E,C,D,F],39,[4,0,2,5],[1,2,1,1,1,0] 88 | F_6maj7no3,[F,C,D,E],39,[5,0,2,4],[1,2,1,1,1,0] 89 | 90 | ------------------ 91 | -- DIATONIC 1+2 -- 92 | ------------------ 93 | 94 | -- diatonic modes 1+2 95 | C_Ionian,[C,D,E,F,G,A,B] 96 | D_Dorian,[D,C,E,F,G,A,B] 97 | E_Phrygian,[E,C,D,F,G,A,B] 98 | F_Lydian,[F,C,D,E,G,A,B] 99 | G_Mixolydian,[G,C,D,E,F,A,B] 100 | A_Aeolian,[A,C,D,E,F,G,B] 101 | B_Locrian,[B,C,D,E,F,G,A] 102 | 103 | -- interval vector 1 104 | [2,5,4,3,6,1] 105 | 106 | ------------------ 107 | -- PENTATONIC 2 -- 108 | ------------------ 109 | 110 | -- pentatonic set 2 111 | [0,4,5,7,11] 112 | [C,E,F,G,B] 113 | 114 | -- dissonance level 2 115 | 74 116 | 117 | -- tunings 2 118 | ("DGDGA","n/a") 119 | 120 | -- interval vector 2 121 | [2,1,1,2,3,1] 122 | 123 | -- related pentatonic scales (through substitution of one note) 124 | C_okina,[C,E,F,G,B] 125 | B_iwato,[B,C,E,F,A] 126 | Gb_iwato,[Gb,G,B,C,E] 127 | 128 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 129 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 130 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 131 | C_sus4,[C,F,G],9,[0,5,7],[0,1,0,0,2,0] 132 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 133 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 134 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 135 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 136 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 137 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 138 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 139 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 140 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 141 | E_minb9no5,[E,F,G],28,[4,5,7],[1,1,1,0,0,0] 142 | F_maj7sus2no5,[F,E,G],28,[5,4,7],[1,1,1,0,0,0] 143 | G_67no3no5,[G,E,F],28,[7,4,5],[1,1,1,0,0,0] 144 | F_sus2b5,[F,G,B],34,[5,7,11],[0,1,0,1,0,1] 145 | G_7no5,[G,F,B],34,[7,5,11],[0,1,0,1,0,1] 146 | B_#11#5no3,[B,F,G],34,[11,5,7],[0,1,0,1,0,1] 147 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 148 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 149 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 150 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 151 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 152 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 153 | 154 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 155 | C_maj7,[C,E,G,B],25,[0,4,7,11],[1,0,1,2,2,0] 156 | E_mb13,[E,C,G,B],25,[4,0,7,11],[1,0,1,2,2,0] 157 | G_6add11no5,[G,C,E,B],26,[7,0,4,11],[1,0,1,2,2,0] 158 | B_sus4#5b9,[B,C,E,G],26,[11,0,4,7],[1,0,1,2,2,0] 159 | C_add11,[C,E,F,G],31,[0,4,5,7],[1,1,1,1,2,0] 160 | E_m#5b9,[E,C,F,G],32,[4,0,5,7],[1,1,1,1,2,0] 161 | F_maj7sus2,[F,C,E,G],32,[5,0,4,7],[1,1,1,1,2,0] 162 | G_67sus4no5,[G,C,E,F],32,[7,0,4,5],[1,1,1,1,2,0] 163 | C_maj7sus4,[C,F,G,B],51,[0,5,7,11],[1,1,0,1,2,1] 164 | F_sus2#11,[F,C,G,B],52,[5,0,7,11],[1,1,0,1,2,1] 165 | G_7add11no5,[G,C,F,B],52,[7,0,5,11],[1,1,0,1,2,1] 166 | B_b5#5b9no3,[B,C,F,G],52,[11,0,5,7],[1,1,0,1,2,1] 167 | E_mb9,[E,F,G,B],54,[4,5,7,11],[1,1,1,1,1,1] 168 | F_maj7sus2b5,[F,E,G,B],55,[5,4,7,11],[1,1,1,1,1,1] 169 | G_67no5,[G,E,F,B],55,[7,4,5,11],[1,1,1,1,1,1] 170 | B_sus4b5#5,[B,E,F,G],55,[11,4,5,7],[1,1,1,1,1,1] 171 | E_b9b13no3,[E,C,F,B],59,[4,0,5,11],[2,0,0,1,2,1] 172 | C_maj7add11no5,[C,E,F,B],60,[0,4,5,11],[2,0,0,1,2,1] 173 | F_maj7#11no3,[F,C,E,B],60,[5,0,4,11],[2,0,0,1,2,1] 174 | B_sus4b5b9,[B,C,E,F],60,[11,0,4,5],[2,0,0,1,2,1] 175 | 176 | ------------------ 177 | -- DIATONIC 2+3 -- 178 | ------------------ 179 | 180 | -- diatonic modes 2+3 181 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 182 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 183 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 184 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 185 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 186 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 187 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 188 | 189 | -- interval vector 2 190 | [3,3,5,4,4,2] 191 | 192 | ------------------ 193 | -- PENTATONIC 3 -- 194 | ------------------ 195 | 196 | -- pentatonic set 3 197 | [0,2,5,8,11] 198 | [C,D,F,Ab,B] 199 | 200 | -- dissonance level 3 201 | 91 202 | 203 | -- tunings 3 204 | ("N/A","n/a") 205 | 206 | -- interval vector 3 207 | [1,1,4,1,1,2] 208 | 209 | -- related pentatonic scales (through substitution of one note) 210 | F_kumoi,[F,G,Ab,C,D] 211 | 212 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 213 | F_min,[F,C,Ab],7,[5,0,8],[0,0,1,1,1,0] 214 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 215 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 216 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 217 | C_maj7#5no3,[C,Ab,B],22,[0,8,11],[1,0,1,1,0,0] 218 | Ab_#9no5,[Ab,C,B],22,[8,0,11],[1,0,1,1,0,0] 219 | B_6b9no3no5,[B,C,Ab],22,[11,0,8],[1,0,1,1,0,0] 220 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 221 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 222 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 223 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 224 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 225 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 226 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 227 | C_sus2#5,[C,D,Ab],34,[0,2,8],[0,1,0,1,0,1] 228 | D_7b5no3,[D,C,Ab],34,[2,0,8],[0,1,0,1,0,1] 229 | Ab_majb5,[Ab,C,D],34,[8,0,2],[0,1,0,1,0,1] 230 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 231 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 232 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 233 | 234 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 235 | C_sus2/4#5,[C,D,F,Ab],43,[0,2,5,8],[0,1,2,1,1,1] 236 | D_m7b5,[D,C,F,Ab],43,[2,0,5,8],[0,1,2,1,1,1] 237 | F_m6,[F,C,D,Ab],43,[5,0,2,8],[0,1,2,1,1,1] 238 | Ab_6b5,[Ab,C,D,F],43,[8,0,2,5],[0,1,2,1,1,1] 239 | C_maj7sus4#5,[C,F,Ab,B],51,[0,5,8,11],[1,0,2,1,1,1] 240 | F_m#11,[F,C,Ab,B],51,[5,0,8,11],[1,0,2,1,1,1] 241 | Ab_6#9no5,[Ab,C,F,B],51,[8,0,5,11],[1,0,2,1,1,1] 242 | B_6b5b9no3,[B,C,F,Ab],51,[11,0,5,8],[1,0,2,1,1,1] 243 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 244 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 245 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 246 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 247 | C_maj7sus2#5,[C,D,Ab,B],58,[0,2,8,11],[1,1,2,1,0,1] 248 | D_67b5no3,[D,C,Ab,B],58,[2,0,8,11],[1,1,2,1,0,1] 249 | Ab_b5#9,[Ab,C,D,B],58,[8,0,2,11],[1,1,2,1,0,1] 250 | B_m6b9no5,[B,C,D,Ab],58,[11,0,2,8],[1,1,2,1,0,1] 251 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 252 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 253 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 254 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 255 | 256 | ------------------ 257 | -- DIATONIC 3+1 -- 258 | ------------------ 259 | 260 | -- diatonic modes 3+1 261 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 262 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 263 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 264 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 265 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 266 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 267 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 268 | 269 | -- interval vector 3+1 270 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_26.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,4,5,9] 25 | [C,D,E,F,A] 26 | 27 | -- dissonance level 1 28 | 47 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,2,2,2,3,0] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | C_major,[C,D,E,G,A] 38 | F_major,[F,G,A,C,D] 39 | F_okina,[F,A,Bb,C,E] 40 | B_iwato,[B,C,E,F,A] 41 | E_iwato,[E,F,A,Bb,D] 42 | D_kumoi,[D,E,F,A,B] 43 | 44 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 45 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 46 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 47 | A_min,[A,C,E],7,[9,0,4],[0,0,1,1,1,0] 48 | A_sus4,[A,D,E],10,[9,2,4],[0,1,0,0,2,0] 49 | D_7no3,[D,C,A],12,[2,0,9],[0,1,1,0,1,0] 50 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 51 | C_6sus2no5,[C,D,A],13,[0,2,9],[0,1,1,0,1,0] 52 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 53 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 54 | A_minadd11no5,[A,C,D],13,[9,0,2],[0,1,1,0,1,0] 55 | C_majadd9no5,[C,D,E],18,[0,2,4],[0,2,0,1,0,0] 56 | D_7sus2no5,[D,C,E],18,[2,0,4],[0,2,0,1,0,0] 57 | E_7#5no3,[E,C,D],18,[4,0,2],[0,2,0,1,0,0] 58 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 59 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 60 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 61 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 62 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 63 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 64 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 65 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 66 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 67 | 68 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 69 | D_m7,[D,C,F,A],19,[2,0,5,9],[0,1,2,1,2,0] 70 | C_6sus2/4no5,[C,D,F,A],20,[0,2,5,9],[0,1,2,1,2,0] 71 | F_6,[F,C,D,A],20,[5,0,2,9],[0,1,2,1,2,0] 72 | A_m#5add11,[A,C,D,F],20,[9,0,2,5],[0,1,2,1,2,0] 73 | D_7sus2,[D,C,E,A],23,[2,0,4,9],[0,2,1,1,2,0] 74 | C_6add9no5,[C,D,E,A],24,[0,2,4,9],[0,2,1,1,2,0] 75 | E_7sus4#5,[E,C,D,A],24,[4,0,2,9],[0,2,1,1,2,0] 76 | A_madd11,[A,C,D,E],24,[9,0,2,4],[0,2,1,1,2,0] 77 | C_6add11no5,[C,E,F,A],26,[0,4,5,9],[1,0,1,2,2,0] 78 | E_sus4#5b9,[E,C,F,A],26,[4,0,5,9],[1,0,1,2,2,0] 79 | F_maj7,[F,C,E,A],26,[5,0,4,9],[1,0,1,2,2,0] 80 | A_mb13,[A,C,E,F],26,[9,0,4,5],[1,0,1,2,2,0] 81 | D_madd9,[D,E,F,A],31,[2,4,5,9],[1,1,1,1,2,0] 82 | E_7sus4b9no5,[E,D,F,A],32,[4,2,5,9],[1,1,1,1,2,0] 83 | F_6maj7no5,[F,D,E,A],32,[5,2,4,9],[1,1,1,1,2,0] 84 | A_sus4b13,[A,D,E,F],32,[9,2,4,5],[1,1,1,1,2,0] 85 | C_add9/11no5,[C,D,E,F],39,[0,2,4,5],[1,2,1,1,1,0] 86 | D_m7add9no5,[D,C,E,F],39,[2,0,4,5],[1,2,1,1,1,0] 87 | E_7#5b9no3,[E,C,D,F],39,[4,0,2,5],[1,2,1,1,1,0] 88 | F_6maj7no3,[F,C,D,E],39,[5,0,2,4],[1,2,1,1,1,0] 89 | 90 | ------------------ 91 | -- DIATONIC 1+2 -- 92 | ------------------ 93 | 94 | -- diatonic modes 1+2 95 | C_Ionian,[C,D,E,F,G,A,B] 96 | D_Dorian,[D,C,E,F,G,A,B] 97 | E_Phrygian,[E,C,D,F,G,A,B] 98 | F_Lydian,[F,C,D,E,G,A,B] 99 | G_Mixolydian,[G,C,D,E,F,A,B] 100 | A_Aeolian,[A,C,D,E,F,G,B] 101 | B_Locrian,[B,C,D,E,F,G,A] 102 | 103 | -- interval vector 1 104 | [2,5,4,3,6,1] 105 | 106 | ------------------ 107 | -- PENTATONIC 2 -- 108 | ------------------ 109 | 110 | -- pentatonic set 2 111 | [0,4,5,7,11] 112 | [C,E,F,G,B] 113 | 114 | -- dissonance level 2 115 | 74 116 | 117 | -- tunings 2 118 | ("DGDGA","n/a") 119 | 120 | -- interval vector 2 121 | [2,1,1,2,3,1] 122 | 123 | -- related pentatonic scales (through substitution of one note) 124 | C_okina,[C,E,F,G,B] 125 | B_iwato,[B,C,E,F,A] 126 | Gb_iwato,[Gb,G,B,C,E] 127 | 128 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 129 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 130 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 131 | C_sus4,[C,F,G],9,[0,5,7],[0,1,0,0,2,0] 132 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 133 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 134 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 135 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 136 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 137 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 138 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 139 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 140 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 141 | E_minb9no5,[E,F,G],28,[4,5,7],[1,1,1,0,0,0] 142 | F_maj7sus2no5,[F,E,G],28,[5,4,7],[1,1,1,0,0,0] 143 | G_67no3no5,[G,E,F],28,[7,4,5],[1,1,1,0,0,0] 144 | F_sus2b5,[F,G,B],34,[5,7,11],[0,1,0,1,0,1] 145 | G_7no5,[G,F,B],34,[7,5,11],[0,1,0,1,0,1] 146 | B_#11#5no3,[B,F,G],34,[11,5,7],[0,1,0,1,0,1] 147 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 148 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 149 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 150 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 151 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 152 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 153 | 154 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 155 | C_maj7,[C,E,G,B],25,[0,4,7,11],[1,0,1,2,2,0] 156 | E_mb13,[E,C,G,B],25,[4,0,7,11],[1,0,1,2,2,0] 157 | G_6add11no5,[G,C,E,B],26,[7,0,4,11],[1,0,1,2,2,0] 158 | B_sus4#5b9,[B,C,E,G],26,[11,0,4,7],[1,0,1,2,2,0] 159 | C_add11,[C,E,F,G],31,[0,4,5,7],[1,1,1,1,2,0] 160 | E_m#5b9,[E,C,F,G],32,[4,0,5,7],[1,1,1,1,2,0] 161 | F_maj7sus2,[F,C,E,G],32,[5,0,4,7],[1,1,1,1,2,0] 162 | G_67sus4no5,[G,C,E,F],32,[7,0,4,5],[1,1,1,1,2,0] 163 | C_maj7sus4,[C,F,G,B],51,[0,5,7,11],[1,1,0,1,2,1] 164 | F_sus2#11,[F,C,G,B],52,[5,0,7,11],[1,1,0,1,2,1] 165 | G_7add11no5,[G,C,F,B],52,[7,0,5,11],[1,1,0,1,2,1] 166 | B_b5#5b9no3,[B,C,F,G],52,[11,0,5,7],[1,1,0,1,2,1] 167 | E_mb9,[E,F,G,B],54,[4,5,7,11],[1,1,1,1,1,1] 168 | F_maj7sus2b5,[F,E,G,B],55,[5,4,7,11],[1,1,1,1,1,1] 169 | G_67no5,[G,E,F,B],55,[7,4,5,11],[1,1,1,1,1,1] 170 | B_sus4b5#5,[B,E,F,G],55,[11,4,5,7],[1,1,1,1,1,1] 171 | E_b9b13no3,[E,C,F,B],59,[4,0,5,11],[2,0,0,1,2,1] 172 | C_maj7add11no5,[C,E,F,B],60,[0,4,5,11],[2,0,0,1,2,1] 173 | F_maj7#11no3,[F,C,E,B],60,[5,0,4,11],[2,0,0,1,2,1] 174 | B_sus4b5b9,[B,C,E,F],60,[11,0,4,5],[2,0,0,1,2,1] 175 | 176 | ------------------ 177 | -- DIATONIC 2+3 -- 178 | ------------------ 179 | 180 | -- diatonic modes 2+3 181 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 182 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 183 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 184 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 185 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 186 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 187 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 188 | 189 | -- interval vector 2 190 | [3,3,5,4,4,2] 191 | 192 | ------------------ 193 | -- PENTATONIC 3 -- 194 | ------------------ 195 | 196 | -- pentatonic set 3 197 | [2,4,5,8,11] 198 | [D,E,F,Ab,B] 199 | 200 | -- dissonance level 3 201 | 91 202 | 203 | -- tunings 3 204 | ("N/A","n/a") 205 | 206 | -- interval vector 3 207 | [1,1,4,1,1,2] 208 | 209 | -- related pentatonic scales (through substitution of one note) 210 | D_kumoi,[D,E,F,A,B] 211 | 212 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 213 | E_maj,[E,Ab,B],6,[4,8,11],[0,0,1,1,1,0] 214 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 215 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 216 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 217 | E_majb9no5,[E,F,Ab],22,[4,5,8],[1,0,1,1,0,0] 218 | F_minmaj7no5,[F,E,Ab],22,[5,4,8],[1,0,1,1,0,0] 219 | Ab_6#5no3,[Ab,E,F],22,[8,4,5],[1,0,1,1,0,0] 220 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 221 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 222 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 223 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 224 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 225 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 226 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 227 | D_sus2b5,[D,E,Ab],34,[2,4,8],[0,1,0,1,0,1] 228 | E_7no5,[E,D,Ab],34,[4,2,8],[0,1,0,1,0,1] 229 | Ab_#11#5no3,[Ab,D,E],34,[8,2,4],[0,1,0,1,0,1] 230 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 231 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 232 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 233 | 234 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 235 | E_7,[E,D,Ab,B],42,[4,2,8,11],[0,1,2,1,1,1] 236 | D_6sus2b5,[D,E,Ab,B],43,[2,4,8,11],[0,1,2,1,1,1] 237 | Ab_mb5#5,[Ab,D,E,B],43,[8,2,4,11],[0,1,2,1,1,1] 238 | B_m6add11no5,[B,D,E,Ab],43,[11,2,4,8],[0,1,2,1,1,1] 239 | E_b9,[E,F,Ab,B],50,[4,5,8,11],[1,0,2,1,1,1] 240 | F_mmaj7b5,[F,E,Ab,B],51,[5,4,8,11],[1,0,2,1,1,1] 241 | Ab_m6#5,[Ab,E,F,B],51,[8,4,5,11],[1,0,2,1,1,1] 242 | B_6sus4b5,[B,E,F,Ab],51,[11,4,5,8],[1,0,2,1,1,1] 243 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 244 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 245 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 246 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 247 | D_mb5add9,[D,E,F,Ab],58,[2,4,5,8],[1,1,2,1,0,1] 248 | E_7b9no5,[E,D,F,Ab],58,[4,2,5,8],[1,1,2,1,0,1] 249 | F_m6maj7no5,[F,D,E,Ab],58,[5,2,4,8],[1,1,2,1,0,1] 250 | Ab_6b5#5no3,[Ab,D,E,F],58,[8,2,4,5],[1,1,2,1,0,1] 251 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 252 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 253 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 254 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 255 | 256 | ------------------ 257 | -- DIATONIC 3+1 -- 258 | ------------------ 259 | 260 | -- diatonic modes 3+1 261 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 262 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 263 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 264 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 265 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 266 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 267 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 268 | 269 | -- interval vector 3+1 270 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_35.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [2,4,5,9,11] 25 | [D,E,F,A,B] 26 | 27 | -- dissonance level 1 28 | 68 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,2,2,1,3,1] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | E_iwato,[E,F,A,Bb,D] 38 | D_kumoi,[D,E,F,A,B] 39 | D_major,[D,E,Gb,A,B] 40 | G_major,[G,A,B,D,E] 41 | B_iwato,[B,C,E,F,A] 42 | 43 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 44 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 45 | E_sus4,[E,A,B],9,[4,9,11],[0,1,0,0,2,0] 46 | A_sus4,[A,D,E],10,[9,2,4],[0,1,0,0,2,0] 47 | D_6no3,[D,A,B],12,[2,9,11],[0,1,1,0,1,0] 48 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 49 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 50 | A_sus2/4no5,[A,D,B],13,[9,2,11],[0,1,1,0,1,0] 51 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 52 | B_min7no5,[B,D,A],13,[11,2,9],[0,1,1,0,1,0] 53 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 54 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 55 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 56 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 57 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 58 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 59 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 60 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 61 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 62 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 63 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 64 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 65 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 66 | 67 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 68 | D_6sus2,[D,E,A,B],22,[2,4,9,11],[0,2,1,0,3,0] 69 | E_7sus4,[E,D,A,B],22,[4,2,9,11],[0,2,1,0,3,0] 70 | A_sus2/4,[A,D,E,B],23,[9,2,4,11],[0,2,1,0,3,0] 71 | B_m7add11no5,[B,D,E,A],23,[11,2,4,9],[0,2,1,0,3,0] 72 | D_madd9,[D,E,F,A],31,[2,4,5,9],[1,1,1,1,2,0] 73 | E_7sus4b9no5,[E,D,F,A],32,[4,2,5,9],[1,1,1,1,2,0] 74 | F_6maj7no5,[F,D,E,A],32,[5,2,4,9],[1,1,1,1,2,0] 75 | A_sus4b13,[A,D,E,F],32,[9,2,4,5],[1,1,1,1,2,0] 76 | D_m6,[D,F,A,B],42,[2,5,9,11],[0,1,2,1,1,1] 77 | F_6b5,[F,D,A,B],43,[5,2,9,11],[0,1,2,1,1,1] 78 | A_sus2/4#5,[A,D,F,B],43,[9,2,5,11],[0,1,2,1,1,1] 79 | B_m7b5,[B,D,F,A],43,[11,2,5,9],[0,1,2,1,1,1] 80 | E_sus4b9,[E,F,A,B],51,[4,5,9,11],[1,1,0,1,2,1] 81 | F_maj7b5,[F,E,A,B],52,[5,4,9,11],[1,1,0,1,2,1] 82 | A_sus2b13,[A,E,F,B],52,[9,4,5,11],[1,1,0,1,2,1] 83 | B_7sus4b5,[B,E,F,A],52,[11,4,5,9],[1,1,0,1,2,1] 84 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 85 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 86 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 87 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 88 | 89 | ------------------ 90 | -- DIATONIC 1+2 -- 91 | ------------------ 92 | 93 | -- diatonic modes 1+2 94 | C_Ionian,[C,D,E,F,G,A,B] 95 | D_Dorian,[D,C,E,F,G,A,B] 96 | E_Phrygian,[E,C,D,F,G,A,B] 97 | F_Lydian,[F,C,D,E,G,A,B] 98 | G_Mixolydian,[G,C,D,E,F,A,B] 99 | A_Aeolian,[A,C,D,E,F,G,B] 100 | B_Locrian,[B,C,D,E,F,G,A] 101 | 102 | -- interval vector 1 103 | [2,5,4,3,6,1] 104 | 105 | ------------------ 106 | -- PENTATONIC 2 -- 107 | ------------------ 108 | 109 | -- pentatonic set 2 110 | [0,4,5,7,11] 111 | [C,E,F,G,B] 112 | 113 | -- dissonance level 2 114 | 74 115 | 116 | -- tunings 2 117 | ("DGDGA","n/a") 118 | 119 | -- interval vector 2 120 | [2,1,1,2,3,1] 121 | 122 | -- related pentatonic scales (through substitution of one note) 123 | C_okina,[C,E,F,G,B] 124 | B_iwato,[B,C,E,F,A] 125 | Gb_iwato,[Gb,G,B,C,E] 126 | 127 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 128 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 129 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 130 | C_sus4,[C,F,G],9,[0,5,7],[0,1,0,0,2,0] 131 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 132 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 133 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 134 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 135 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 136 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 137 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 138 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 139 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 140 | E_minb9no5,[E,F,G],28,[4,5,7],[1,1,1,0,0,0] 141 | F_maj7sus2no5,[F,E,G],28,[5,4,7],[1,1,1,0,0,0] 142 | G_67no3no5,[G,E,F],28,[7,4,5],[1,1,1,0,0,0] 143 | F_sus2b5,[F,G,B],34,[5,7,11],[0,1,0,1,0,1] 144 | G_7no5,[G,F,B],34,[7,5,11],[0,1,0,1,0,1] 145 | B_#11#5no3,[B,F,G],34,[11,5,7],[0,1,0,1,0,1] 146 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 147 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 148 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 149 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 150 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 151 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 152 | 153 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 154 | C_maj7,[C,E,G,B],25,[0,4,7,11],[1,0,1,2,2,0] 155 | E_mb13,[E,C,G,B],25,[4,0,7,11],[1,0,1,2,2,0] 156 | G_6add11no5,[G,C,E,B],26,[7,0,4,11],[1,0,1,2,2,0] 157 | B_sus4#5b9,[B,C,E,G],26,[11,0,4,7],[1,0,1,2,2,0] 158 | C_add11,[C,E,F,G],31,[0,4,5,7],[1,1,1,1,2,0] 159 | E_m#5b9,[E,C,F,G],32,[4,0,5,7],[1,1,1,1,2,0] 160 | F_maj7sus2,[F,C,E,G],32,[5,0,4,7],[1,1,1,1,2,0] 161 | G_67sus4no5,[G,C,E,F],32,[7,0,4,5],[1,1,1,1,2,0] 162 | C_maj7sus4,[C,F,G,B],51,[0,5,7,11],[1,1,0,1,2,1] 163 | F_sus2#11,[F,C,G,B],52,[5,0,7,11],[1,1,0,1,2,1] 164 | G_7add11no5,[G,C,F,B],52,[7,0,5,11],[1,1,0,1,2,1] 165 | B_b5#5b9no3,[B,C,F,G],52,[11,0,5,7],[1,1,0,1,2,1] 166 | E_mb9,[E,F,G,B],54,[4,5,7,11],[1,1,1,1,1,1] 167 | F_maj7sus2b5,[F,E,G,B],55,[5,4,7,11],[1,1,1,1,1,1] 168 | G_67no5,[G,E,F,B],55,[7,4,5,11],[1,1,1,1,1,1] 169 | B_sus4b5#5,[B,E,F,G],55,[11,4,5,7],[1,1,1,1,1,1] 170 | E_b9b13no3,[E,C,F,B],59,[4,0,5,11],[2,0,0,1,2,1] 171 | C_maj7add11no5,[C,E,F,B],60,[0,4,5,11],[2,0,0,1,2,1] 172 | F_maj7#11no3,[F,C,E,B],60,[5,0,4,11],[2,0,0,1,2,1] 173 | B_sus4b5b9,[B,C,E,F],60,[11,0,4,5],[2,0,0,1,2,1] 174 | 175 | ------------------ 176 | -- DIATONIC 2+3 -- 177 | ------------------ 178 | 179 | -- diatonic modes 2+3 180 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 181 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 182 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 183 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 184 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 185 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 186 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 187 | 188 | -- interval vector 2 189 | [3,3,5,4,4,2] 190 | 191 | ------------------ 192 | -- PENTATONIC 3 -- 193 | ------------------ 194 | 195 | -- pentatonic set 3 196 | [0,2,5,8,11] 197 | [C,D,F,Ab,B] 198 | 199 | -- dissonance level 3 200 | 91 201 | 202 | -- tunings 3 203 | ("N/A","n/a") 204 | 205 | -- interval vector 3 206 | [1,1,4,1,1,2] 207 | 208 | -- related pentatonic scales (through substitution of one note) 209 | F_kumoi,[F,G,Ab,C,D] 210 | 211 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 212 | F_min,[F,C,Ab],7,[5,0,8],[0,0,1,1,1,0] 213 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 214 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 215 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 216 | C_maj7#5no3,[C,Ab,B],22,[0,8,11],[1,0,1,1,0,0] 217 | Ab_#9no5,[Ab,C,B],22,[8,0,11],[1,0,1,1,0,0] 218 | B_6b9no3no5,[B,C,Ab],22,[11,0,8],[1,0,1,1,0,0] 219 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 220 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 221 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 222 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 223 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 224 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 225 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 226 | C_sus2#5,[C,D,Ab],34,[0,2,8],[0,1,0,1,0,1] 227 | D_7b5no3,[D,C,Ab],34,[2,0,8],[0,1,0,1,0,1] 228 | Ab_majb5,[Ab,C,D],34,[8,0,2],[0,1,0,1,0,1] 229 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 230 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 231 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 232 | 233 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 234 | C_sus2/4#5,[C,D,F,Ab],43,[0,2,5,8],[0,1,2,1,1,1] 235 | D_m7b5,[D,C,F,Ab],43,[2,0,5,8],[0,1,2,1,1,1] 236 | F_m6,[F,C,D,Ab],43,[5,0,2,8],[0,1,2,1,1,1] 237 | Ab_6b5,[Ab,C,D,F],43,[8,0,2,5],[0,1,2,1,1,1] 238 | C_maj7sus4#5,[C,F,Ab,B],51,[0,5,8,11],[1,0,2,1,1,1] 239 | F_m#11,[F,C,Ab,B],51,[5,0,8,11],[1,0,2,1,1,1] 240 | Ab_6#9no5,[Ab,C,F,B],51,[8,0,5,11],[1,0,2,1,1,1] 241 | B_6b5b9no3,[B,C,F,Ab],51,[11,0,5,8],[1,0,2,1,1,1] 242 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 243 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 244 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 245 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 246 | C_maj7sus2#5,[C,D,Ab,B],58,[0,2,8,11],[1,1,2,1,0,1] 247 | D_67b5no3,[D,C,Ab,B],58,[2,0,8,11],[1,1,2,1,0,1] 248 | Ab_b5#9,[Ab,C,D,B],58,[8,0,2,11],[1,1,2,1,0,1] 249 | B_m6b9no5,[B,C,D,Ab],58,[11,0,2,8],[1,1,2,1,0,1] 250 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 251 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 252 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 253 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 254 | 255 | ------------------ 256 | -- DIATONIC 3+1 -- 257 | ------------------ 258 | 259 | -- diatonic modes 3+1 260 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 261 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 262 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 263 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 264 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 265 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 266 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 267 | 268 | -- interval vector 3+1 269 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_36.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,5,7,11] 25 | [C,D,F,G,B] 26 | 27 | -- dissonance level 1 28 | 68 29 | 30 | -- tunings 1 31 | ("DGDGA","DGDABb") 32 | 33 | -- interval vector 1 34 | [1,2,2,1,3,1] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | F_major,[F,G,A,C,D] 38 | Bb_major,[Bb,C,D,F,G] 39 | F_kumoi,[F,G,Ab,C,D] 40 | G_okina,[G,B,C,D,Gb] 41 | C_okina,[C,E,F,G,B] 42 | 43 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 44 | G_maj,[G,D,B],7,[7,2,11],[0,0,1,1,1,0] 45 | C_sus4,[C,F,G],9,[0,5,7],[0,1,0,0,2,0] 46 | G_sus4,[G,C,D],10,[7,0,2],[0,1,0,0,2,0] 47 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 48 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 49 | D_minadd11no5,[D,F,G],13,[2,5,7],[0,1,1,0,1,0] 50 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 51 | F_6sus2no5,[F,D,G],13,[5,2,7],[0,1,1,0,1,0] 52 | G_7no3,[G,D,F],13,[7,2,5],[0,1,1,0,1,0] 53 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 54 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 55 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 56 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 57 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 58 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 59 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 60 | F_sus2b5,[F,G,B],34,[5,7,11],[0,1,0,1,0,1] 61 | G_7no5,[G,F,B],34,[7,5,11],[0,1,0,1,0,1] 62 | B_#11#5no3,[B,F,G],34,[11,5,7],[0,1,0,1,0,1] 63 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 64 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 65 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 66 | 67 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 68 | C_sus2/4,[C,D,F,G],22,[0,2,5,7],[0,2,1,0,3,0] 69 | D_m7add11no5,[D,C,F,G],23,[2,0,5,7],[0,2,1,0,3,0] 70 | F_6sus2,[F,C,D,G],23,[5,0,2,7],[0,2,1,0,3,0] 71 | G_7sus4,[G,C,D,F],23,[7,0,2,5],[0,2,1,0,3,0] 72 | C_maj7sus2,[C,D,G,B],31,[0,2,7,11],[1,1,1,1,2,0] 73 | D_67sus4no5,[D,C,G,B],32,[2,0,7,11],[1,1,1,1,2,0] 74 | G_add11,[G,C,D,B],32,[7,0,2,11],[1,1,1,1,2,0] 75 | B_m#5b9,[B,C,D,G],32,[11,0,2,7],[1,1,1,1,2,0] 76 | D_m6add11no5,[D,F,G,B],43,[2,5,7,11],[0,1,2,1,1,1] 77 | F_6sus2b5,[F,D,G,B],43,[5,2,7,11],[0,1,2,1,1,1] 78 | G_7,[G,D,F,B],43,[7,2,5,11],[0,1,2,1,1,1] 79 | B_mb5#5,[B,D,F,G],43,[11,2,5,7],[0,1,2,1,1,1] 80 | C_maj7sus4,[C,F,G,B],51,[0,5,7,11],[1,1,0,1,2,1] 81 | F_sus2#11,[F,C,G,B],52,[5,0,7,11],[1,1,0,1,2,1] 82 | G_7add11no5,[G,C,F,B],52,[7,0,5,11],[1,1,0,1,2,1] 83 | B_b5#5b9no3,[B,C,F,G],52,[11,0,5,7],[1,1,0,1,2,1] 84 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 85 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 86 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 87 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 88 | 89 | ------------------ 90 | -- DIATONIC 1+2 -- 91 | ------------------ 92 | 93 | -- diatonic modes 1+2 94 | C_Ionian,[C,D,E,F,G,A,B] 95 | D_Dorian,[D,C,E,F,G,A,B] 96 | E_Phrygian,[E,C,D,F,G,A,B] 97 | F_Lydian,[F,C,D,E,G,A,B] 98 | G_Mixolydian,[G,C,D,E,F,A,B] 99 | A_Aeolian,[A,C,D,E,F,G,B] 100 | B_Locrian,[B,C,D,E,F,G,A] 101 | 102 | -- interval vector 1 103 | [2,5,4,3,6,1] 104 | 105 | ------------------ 106 | -- PENTATONIC 2 -- 107 | ------------------ 108 | 109 | -- pentatonic set 2 110 | [0,4,5,9,11] 111 | [C,E,F,A,B] 112 | 113 | -- dissonance level 2 114 | 75 115 | 116 | -- tunings 2 117 | ("DGDGA","n/a") 118 | 119 | -- interval vector 2 120 | [2,1,1,2,3,1] 121 | 122 | -- related pentatonic scales (through substitution of one note) 123 | F_okina,[F,A,Bb,C,E] 124 | B_iwato,[B,C,E,F,A] 125 | C_okina,[C,E,F,G,B] 126 | A_kumoi,[A,B,C,E,Gb] 127 | D_kumoi,[D,E,F,A,B] 128 | 129 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 130 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 131 | A_min,[A,C,E],7,[9,0,4],[0,0,1,1,1,0] 132 | E_sus4,[E,A,B],9,[4,9,11],[0,1,0,0,2,0] 133 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 134 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 135 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 136 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 137 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 138 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 139 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 140 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 141 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 142 | C_6maj7no3no5,[C,A,B],28,[0,9,11],[1,1,1,0,0,0] 143 | A_minadd9no5,[A,C,B],28,[9,0,11],[1,1,1,0,0,0] 144 | B_7b9no3no5,[B,C,A],28,[11,0,9],[1,1,1,0,0,0] 145 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 146 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 147 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 148 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 149 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 150 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 151 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 152 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 153 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 154 | 155 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 156 | C_6add11no5,[C,E,F,A],26,[0,4,5,9],[1,0,1,2,2,0] 157 | E_sus4#5b9,[E,C,F,A],26,[4,0,5,9],[1,0,1,2,2,0] 158 | F_maj7,[F,C,E,A],26,[5,0,4,9],[1,0,1,2,2,0] 159 | A_mb13,[A,C,E,F],26,[9,0,4,5],[1,0,1,2,2,0] 160 | E_sus4b13,[E,C,A,B],31,[4,0,9,11],[1,1,1,1,2,0] 161 | C_6maj7no5,[C,E,A,B],32,[0,4,9,11],[1,1,1,1,2,0] 162 | A_madd9,[A,C,E,B],32,[9,0,4,11],[1,1,1,1,2,0] 163 | B_7sus4b9no5,[B,C,E,A],32,[11,0,4,9],[1,1,1,1,2,0] 164 | E_sus4b9,[E,F,A,B],51,[4,5,9,11],[1,1,0,1,2,1] 165 | F_maj7b5,[F,E,A,B],52,[5,4,9,11],[1,1,0,1,2,1] 166 | A_sus2b13,[A,E,F,B],52,[9,4,5,11],[1,1,0,1,2,1] 167 | B_7sus4b5,[B,E,F,A],52,[11,4,5,9],[1,1,0,1,2,1] 168 | C_6maj7sus4no5,[C,F,A,B],55,[0,5,9,11],[1,1,1,1,1,1] 169 | F_#11,[F,C,A,B],55,[5,0,9,11],[1,1,1,1,1,1] 170 | A_m#5add9,[A,C,F,B],55,[9,0,5,11],[1,1,1,1,1,1] 171 | B_7b5b9no3,[B,C,F,A],55,[11,0,5,9],[1,1,1,1,1,1] 172 | E_b9b13no3,[E,C,F,B],59,[4,0,5,11],[2,0,0,1,2,1] 173 | C_maj7add11no5,[C,E,F,B],60,[0,4,5,11],[2,0,0,1,2,1] 174 | F_maj7#11no3,[F,C,E,B],60,[5,0,4,11],[2,0,0,1,2,1] 175 | B_sus4b5b9,[B,C,E,F],60,[11,0,4,5],[2,0,0,1,2,1] 176 | 177 | ------------------ 178 | -- DIATONIC 2+3 -- 179 | ------------------ 180 | 181 | -- diatonic modes 2+3 182 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 183 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 184 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 185 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 186 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 187 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 188 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 189 | 190 | -- interval vector 2 191 | [3,3,5,4,4,2] 192 | 193 | ------------------ 194 | -- PENTATONIC 3 -- 195 | ------------------ 196 | 197 | -- pentatonic set 3 198 | [2,4,5,8,11] 199 | [D,E,F,Ab,B] 200 | 201 | -- dissonance level 3 202 | 91 203 | 204 | -- tunings 3 205 | ("N/A","n/a") 206 | 207 | -- interval vector 3 208 | [1,1,4,1,1,2] 209 | 210 | -- related pentatonic scales (through substitution of one note) 211 | D_kumoi,[D,E,F,A,B] 212 | 213 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 214 | E_maj,[E,Ab,B],6,[4,8,11],[0,0,1,1,1,0] 215 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 216 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 217 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 218 | E_majb9no5,[E,F,Ab],22,[4,5,8],[1,0,1,1,0,0] 219 | F_minmaj7no5,[F,E,Ab],22,[5,4,8],[1,0,1,1,0,0] 220 | Ab_6#5no3,[Ab,E,F],22,[8,4,5],[1,0,1,1,0,0] 221 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 222 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 223 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 224 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 225 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 226 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 227 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 228 | D_sus2b5,[D,E,Ab],34,[2,4,8],[0,1,0,1,0,1] 229 | E_7no5,[E,D,Ab],34,[4,2,8],[0,1,0,1,0,1] 230 | Ab_#11#5no3,[Ab,D,E],34,[8,2,4],[0,1,0,1,0,1] 231 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 232 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 233 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 234 | 235 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 236 | E_7,[E,D,Ab,B],42,[4,2,8,11],[0,1,2,1,1,1] 237 | D_6sus2b5,[D,E,Ab,B],43,[2,4,8,11],[0,1,2,1,1,1] 238 | Ab_mb5#5,[Ab,D,E,B],43,[8,2,4,11],[0,1,2,1,1,1] 239 | B_m6add11no5,[B,D,E,Ab],43,[11,2,4,8],[0,1,2,1,1,1] 240 | E_b9,[E,F,Ab,B],50,[4,5,8,11],[1,0,2,1,1,1] 241 | F_mmaj7b5,[F,E,Ab,B],51,[5,4,8,11],[1,0,2,1,1,1] 242 | Ab_m6#5,[Ab,E,F,B],51,[8,4,5,11],[1,0,2,1,1,1] 243 | B_6sus4b5,[B,E,F,Ab],51,[11,4,5,8],[1,0,2,1,1,1] 244 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 245 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 246 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 247 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 248 | D_mb5add9,[D,E,F,Ab],58,[2,4,5,8],[1,1,2,1,0,1] 249 | E_7b9no5,[E,D,F,Ab],58,[4,2,5,8],[1,1,2,1,0,1] 250 | F_m6maj7no5,[F,D,E,Ab],58,[5,2,4,8],[1,1,2,1,0,1] 251 | Ab_6b5#5no3,[Ab,D,E,F],58,[8,2,4,5],[1,1,2,1,0,1] 252 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 253 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 254 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 255 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 256 | 257 | ------------------ 258 | -- DIATONIC 3+1 -- 259 | ------------------ 260 | 261 | -- diatonic modes 3+1 262 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 263 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 264 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 265 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 266 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 267 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 268 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 269 | 270 | -- interval vector 3+1 271 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_37.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,5,9,11] 25 | [C,D,F,A,B] 26 | 27 | -- dissonance level 1 28 | 72 29 | 30 | -- tunings 1 31 | ("DGDGA","DGDABb") 32 | 33 | -- interval vector 1 34 | [1,2,3,1,2,1] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | F_major,[F,G,A,C,D] 38 | B_iwato,[B,C,E,F,A] 39 | D_kumoi,[D,E,F,A,B] 40 | 41 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 42 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 43 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 44 | D_7no3,[D,C,A],12,[2,0,9],[0,1,1,0,1,0] 45 | D_6no3,[D,A,B],12,[2,9,11],[0,1,1,0,1,0] 46 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 47 | C_6sus2no5,[C,D,A],13,[0,2,9],[0,1,1,0,1,0] 48 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 49 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 50 | A_minadd11no5,[A,C,D],13,[9,0,2],[0,1,1,0,1,0] 51 | A_sus2/4no5,[A,D,B],13,[9,2,11],[0,1,1,0,1,0] 52 | B_min7no5,[B,D,A],13,[11,2,9],[0,1,1,0,1,0] 53 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 54 | C_6maj7no3no5,[C,A,B],28,[0,9,11],[1,1,1,0,0,0] 55 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 56 | A_minadd9no5,[A,C,B],28,[9,0,11],[1,1,1,0,0,0] 57 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 58 | B_7b9no3no5,[B,C,A],28,[11,0,9],[1,1,1,0,0,0] 59 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 60 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 61 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 62 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 63 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 64 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 65 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 66 | 67 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 68 | D_m7,[D,C,F,A],19,[2,0,5,9],[0,1,2,1,2,0] 69 | C_6sus2/4no5,[C,D,F,A],20,[0,2,5,9],[0,1,2,1,2,0] 70 | F_6,[F,C,D,A],20,[5,0,2,9],[0,1,2,1,2,0] 71 | A_m#5add11,[A,C,D,F],20,[9,0,2,5],[0,1,2,1,2,0] 72 | D_67no3,[D,C,A,B],40,[2,0,9,11],[1,2,2,0,1,0] 73 | C_6maj7sus2no5,[C,D,A,B],41,[0,2,9,11],[1,2,2,0,1,0] 74 | A_madd9/11no5,[A,C,D,B],41,[9,0,2,11],[1,2,2,0,1,0] 75 | B_m7b9no5,[B,C,D,A],41,[11,0,2,9],[1,2,2,0,1,0] 76 | D_m6,[D,F,A,B],42,[2,5,9,11],[0,1,2,1,1,1] 77 | F_6b5,[F,D,A,B],43,[5,2,9,11],[0,1,2,1,1,1] 78 | A_sus2/4#5,[A,D,F,B],43,[9,2,5,11],[0,1,2,1,1,1] 79 | B_m7b5,[B,D,F,A],43,[11,2,5,9],[0,1,2,1,1,1] 80 | C_6maj7sus4no5,[C,F,A,B],55,[0,5,9,11],[1,1,1,1,1,1] 81 | F_#11,[F,C,A,B],55,[5,0,9,11],[1,1,1,1,1,1] 82 | A_m#5add9,[A,C,F,B],55,[9,0,5,11],[1,1,1,1,1,1] 83 | B_7b5b9no3,[B,C,F,A],55,[11,0,5,9],[1,1,1,1,1,1] 84 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 85 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 86 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 87 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 88 | 89 | ------------------ 90 | -- DIATONIC 1+2 -- 91 | ------------------ 92 | 93 | -- diatonic modes 1+2 94 | C_Ionian,[C,D,E,F,G,A,B] 95 | D_Dorian,[D,C,E,F,G,A,B] 96 | E_Phrygian,[E,C,D,F,G,A,B] 97 | F_Lydian,[F,C,D,E,G,A,B] 98 | G_Mixolydian,[G,C,D,E,F,A,B] 99 | A_Aeolian,[A,C,D,E,F,G,B] 100 | B_Locrian,[B,C,D,E,F,G,A] 101 | 102 | -- interval vector 1 103 | [2,5,4,3,6,1] 104 | 105 | ------------------ 106 | -- PENTATONIC 2 -- 107 | ------------------ 108 | 109 | -- pentatonic set 2 110 | [0,4,5,7,11] 111 | [C,E,F,G,B] 112 | 113 | -- dissonance level 2 114 | 74 115 | 116 | -- tunings 2 117 | ("DGDGA","n/a") 118 | 119 | -- interval vector 2 120 | [2,1,1,2,3,1] 121 | 122 | -- related pentatonic scales (through substitution of one note) 123 | C_okina,[C,E,F,G,B] 124 | B_iwato,[B,C,E,F,A] 125 | Gb_iwato,[Gb,G,B,C,E] 126 | 127 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 128 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 129 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 130 | C_sus4,[C,F,G],9,[0,5,7],[0,1,0,0,2,0] 131 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 132 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 133 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 134 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 135 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 136 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 137 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 138 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 139 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 140 | E_minb9no5,[E,F,G],28,[4,5,7],[1,1,1,0,0,0] 141 | F_maj7sus2no5,[F,E,G],28,[5,4,7],[1,1,1,0,0,0] 142 | G_67no3no5,[G,E,F],28,[7,4,5],[1,1,1,0,0,0] 143 | F_sus2b5,[F,G,B],34,[5,7,11],[0,1,0,1,0,1] 144 | G_7no5,[G,F,B],34,[7,5,11],[0,1,0,1,0,1] 145 | B_#11#5no3,[B,F,G],34,[11,5,7],[0,1,0,1,0,1] 146 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 147 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 148 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 149 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 150 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 151 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 152 | 153 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 154 | C_maj7,[C,E,G,B],25,[0,4,7,11],[1,0,1,2,2,0] 155 | E_mb13,[E,C,G,B],25,[4,0,7,11],[1,0,1,2,2,0] 156 | G_6add11no5,[G,C,E,B],26,[7,0,4,11],[1,0,1,2,2,0] 157 | B_sus4#5b9,[B,C,E,G],26,[11,0,4,7],[1,0,1,2,2,0] 158 | C_add11,[C,E,F,G],31,[0,4,5,7],[1,1,1,1,2,0] 159 | E_m#5b9,[E,C,F,G],32,[4,0,5,7],[1,1,1,1,2,0] 160 | F_maj7sus2,[F,C,E,G],32,[5,0,4,7],[1,1,1,1,2,0] 161 | G_67sus4no5,[G,C,E,F],32,[7,0,4,5],[1,1,1,1,2,0] 162 | C_maj7sus4,[C,F,G,B],51,[0,5,7,11],[1,1,0,1,2,1] 163 | F_sus2#11,[F,C,G,B],52,[5,0,7,11],[1,1,0,1,2,1] 164 | G_7add11no5,[G,C,F,B],52,[7,0,5,11],[1,1,0,1,2,1] 165 | B_b5#5b9no3,[B,C,F,G],52,[11,0,5,7],[1,1,0,1,2,1] 166 | E_mb9,[E,F,G,B],54,[4,5,7,11],[1,1,1,1,1,1] 167 | F_maj7sus2b5,[F,E,G,B],55,[5,4,7,11],[1,1,1,1,1,1] 168 | G_67no5,[G,E,F,B],55,[7,4,5,11],[1,1,1,1,1,1] 169 | B_sus4b5#5,[B,E,F,G],55,[11,4,5,7],[1,1,1,1,1,1] 170 | E_b9b13no3,[E,C,F,B],59,[4,0,5,11],[2,0,0,1,2,1] 171 | C_maj7add11no5,[C,E,F,B],60,[0,4,5,11],[2,0,0,1,2,1] 172 | F_maj7#11no3,[F,C,E,B],60,[5,0,4,11],[2,0,0,1,2,1] 173 | B_sus4b5b9,[B,C,E,F],60,[11,0,4,5],[2,0,0,1,2,1] 174 | 175 | ------------------ 176 | -- DIATONIC 2+3 -- 177 | ------------------ 178 | 179 | -- diatonic modes 2+3 180 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 181 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 182 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 183 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 184 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 185 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 186 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 187 | 188 | -- interval vector 2 189 | [3,3,5,4,4,2] 190 | 191 | ------------------ 192 | -- PENTATONIC 3 -- 193 | ------------------ 194 | 195 | -- pentatonic set 3 196 | [2,4,5,8,11] 197 | [D,E,F,Ab,B] 198 | 199 | -- dissonance level 3 200 | 91 201 | 202 | -- tunings 3 203 | ("N/A","n/a") 204 | 205 | -- interval vector 3 206 | [1,1,4,1,1,2] 207 | 208 | -- related pentatonic scales (through substitution of one note) 209 | D_kumoi,[D,E,F,A,B] 210 | 211 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 212 | E_maj,[E,Ab,B],6,[4,8,11],[0,0,1,1,1,0] 213 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 214 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 215 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 216 | E_majb9no5,[E,F,Ab],22,[4,5,8],[1,0,1,1,0,0] 217 | F_minmaj7no5,[F,E,Ab],22,[5,4,8],[1,0,1,1,0,0] 218 | Ab_6#5no3,[Ab,E,F],22,[8,4,5],[1,0,1,1,0,0] 219 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 220 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 221 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 222 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 223 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 224 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 225 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 226 | D_sus2b5,[D,E,Ab],34,[2,4,8],[0,1,0,1,0,1] 227 | E_7no5,[E,D,Ab],34,[4,2,8],[0,1,0,1,0,1] 228 | Ab_#11#5no3,[Ab,D,E],34,[8,2,4],[0,1,0,1,0,1] 229 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 230 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 231 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 232 | 233 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 234 | E_7,[E,D,Ab,B],42,[4,2,8,11],[0,1,2,1,1,1] 235 | D_6sus2b5,[D,E,Ab,B],43,[2,4,8,11],[0,1,2,1,1,1] 236 | Ab_mb5#5,[Ab,D,E,B],43,[8,2,4,11],[0,1,2,1,1,1] 237 | B_m6add11no5,[B,D,E,Ab],43,[11,2,4,8],[0,1,2,1,1,1] 238 | E_b9,[E,F,Ab,B],50,[4,5,8,11],[1,0,2,1,1,1] 239 | F_mmaj7b5,[F,E,Ab,B],51,[5,4,8,11],[1,0,2,1,1,1] 240 | Ab_m6#5,[Ab,E,F,B],51,[8,4,5,11],[1,0,2,1,1,1] 241 | B_6sus4b5,[B,E,F,Ab],51,[11,4,5,8],[1,0,2,1,1,1] 242 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 243 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 244 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 245 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 246 | D_mb5add9,[D,E,F,Ab],58,[2,4,5,8],[1,1,2,1,0,1] 247 | E_7b9no5,[E,D,F,Ab],58,[4,2,5,8],[1,1,2,1,0,1] 248 | F_m6maj7no5,[F,D,E,Ab],58,[5,2,4,8],[1,1,2,1,0,1] 249 | Ab_6b5#5no3,[Ab,D,E,F],58,[8,2,4,5],[1,1,2,1,0,1] 250 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 251 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 252 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 253 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 254 | 255 | ------------------ 256 | -- DIATONIC 3+1 -- 257 | ------------------ 258 | 259 | -- diatonic modes 3+1 260 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 261 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 262 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 263 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 264 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 265 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 266 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 267 | 268 | -- interval vector 3+1 269 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_50.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,5,9,11] 25 | [C,D,F,A,B] 26 | 27 | -- dissonance level 1 28 | 72 29 | 30 | -- tunings 1 31 | ("DGDGA","DGDABb") 32 | 33 | -- interval vector 1 34 | [1,2,3,1,2,1] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | F_major,[F,G,A,C,D] 38 | B_iwato,[B,C,E,F,A] 39 | D_kumoi,[D,E,F,A,B] 40 | 41 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 42 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 43 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 44 | D_7no3,[D,C,A],12,[2,0,9],[0,1,1,0,1,0] 45 | D_6no3,[D,A,B],12,[2,9,11],[0,1,1,0,1,0] 46 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 47 | C_6sus2no5,[C,D,A],13,[0,2,9],[0,1,1,0,1,0] 48 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 49 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 50 | A_minadd11no5,[A,C,D],13,[9,0,2],[0,1,1,0,1,0] 51 | A_sus2/4no5,[A,D,B],13,[9,2,11],[0,1,1,0,1,0] 52 | B_min7no5,[B,D,A],13,[11,2,9],[0,1,1,0,1,0] 53 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 54 | C_6maj7no3no5,[C,A,B],28,[0,9,11],[1,1,1,0,0,0] 55 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 56 | A_minadd9no5,[A,C,B],28,[9,0,11],[1,1,1,0,0,0] 57 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 58 | B_7b9no3no5,[B,C,A],28,[11,0,9],[1,1,1,0,0,0] 59 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 60 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 61 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 62 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 63 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 64 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 65 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 66 | 67 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 68 | D_m7,[D,C,F,A],19,[2,0,5,9],[0,1,2,1,2,0] 69 | C_6sus2/4no5,[C,D,F,A],20,[0,2,5,9],[0,1,2,1,2,0] 70 | F_6,[F,C,D,A],20,[5,0,2,9],[0,1,2,1,2,0] 71 | A_m#5add11,[A,C,D,F],20,[9,0,2,5],[0,1,2,1,2,0] 72 | D_67no3,[D,C,A,B],40,[2,0,9,11],[1,2,2,0,1,0] 73 | C_6maj7sus2no5,[C,D,A,B],41,[0,2,9,11],[1,2,2,0,1,0] 74 | A_madd9/11no5,[A,C,D,B],41,[9,0,2,11],[1,2,2,0,1,0] 75 | B_m7b9no5,[B,C,D,A],41,[11,0,2,9],[1,2,2,0,1,0] 76 | D_m6,[D,F,A,B],42,[2,5,9,11],[0,1,2,1,1,1] 77 | F_6b5,[F,D,A,B],43,[5,2,9,11],[0,1,2,1,1,1] 78 | A_sus2/4#5,[A,D,F,B],43,[9,2,5,11],[0,1,2,1,1,1] 79 | B_m7b5,[B,D,F,A],43,[11,2,5,9],[0,1,2,1,1,1] 80 | C_6maj7sus4no5,[C,F,A,B],55,[0,5,9,11],[1,1,1,1,1,1] 81 | F_#11,[F,C,A,B],55,[5,0,9,11],[1,1,1,1,1,1] 82 | A_m#5add9,[A,C,F,B],55,[9,0,5,11],[1,1,1,1,1,1] 83 | B_7b5b9no3,[B,C,F,A],55,[11,0,5,9],[1,1,1,1,1,1] 84 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 85 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 86 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 87 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 88 | 89 | ------------------ 90 | -- DIATONIC 1+2 -- 91 | ------------------ 92 | 93 | -- diatonic modes 1+2 94 | C_Ionian,[C,D,E,F,G,A,B] 95 | D_Dorian,[D,C,E,F,G,A,B] 96 | E_Phrygian,[E,C,D,F,G,A,B] 97 | F_Lydian,[F,C,D,E,G,A,B] 98 | G_Mixolydian,[G,C,D,E,F,A,B] 99 | A_Aeolian,[A,C,D,E,F,G,B] 100 | B_Locrian,[B,C,D,E,F,G,A] 101 | 102 | -- interval vector 1 103 | [2,5,4,3,6,1] 104 | 105 | ------------------ 106 | -- PENTATONIC 2 -- 107 | ------------------ 108 | 109 | -- pentatonic set 2 110 | [0,4,5,7,11] 111 | [C,E,F,G,B] 112 | 113 | -- dissonance level 2 114 | 74 115 | 116 | -- tunings 2 117 | ("DGDGA","n/a") 118 | 119 | -- interval vector 2 120 | [2,1,1,2,3,1] 121 | 122 | -- related pentatonic scales (through substitution of one note) 123 | C_okina,[C,E,F,G,B] 124 | B_iwato,[B,C,E,F,A] 125 | Gb_iwato,[Gb,G,B,C,E] 126 | 127 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 128 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 129 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 130 | C_sus4,[C,F,G],9,[0,5,7],[0,1,0,0,2,0] 131 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 132 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 133 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 134 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 135 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 136 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 137 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 138 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 139 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 140 | E_minb9no5,[E,F,G],28,[4,5,7],[1,1,1,0,0,0] 141 | F_maj7sus2no5,[F,E,G],28,[5,4,7],[1,1,1,0,0,0] 142 | G_67no3no5,[G,E,F],28,[7,4,5],[1,1,1,0,0,0] 143 | F_sus2b5,[F,G,B],34,[5,7,11],[0,1,0,1,0,1] 144 | G_7no5,[G,F,B],34,[7,5,11],[0,1,0,1,0,1] 145 | B_#11#5no3,[B,F,G],34,[11,5,7],[0,1,0,1,0,1] 146 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 147 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 148 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 149 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 150 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 151 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 152 | 153 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 154 | C_maj7,[C,E,G,B],25,[0,4,7,11],[1,0,1,2,2,0] 155 | E_mb13,[E,C,G,B],25,[4,0,7,11],[1,0,1,2,2,0] 156 | G_6add11no5,[G,C,E,B],26,[7,0,4,11],[1,0,1,2,2,0] 157 | B_sus4#5b9,[B,C,E,G],26,[11,0,4,7],[1,0,1,2,2,0] 158 | C_add11,[C,E,F,G],31,[0,4,5,7],[1,1,1,1,2,0] 159 | E_m#5b9,[E,C,F,G],32,[4,0,5,7],[1,1,1,1,2,0] 160 | F_maj7sus2,[F,C,E,G],32,[5,0,4,7],[1,1,1,1,2,0] 161 | G_67sus4no5,[G,C,E,F],32,[7,0,4,5],[1,1,1,1,2,0] 162 | C_maj7sus4,[C,F,G,B],51,[0,5,7,11],[1,1,0,1,2,1] 163 | F_sus2#11,[F,C,G,B],52,[5,0,7,11],[1,1,0,1,2,1] 164 | G_7add11no5,[G,C,F,B],52,[7,0,5,11],[1,1,0,1,2,1] 165 | B_b5#5b9no3,[B,C,F,G],52,[11,0,5,7],[1,1,0,1,2,1] 166 | E_mb9,[E,F,G,B],54,[4,5,7,11],[1,1,1,1,1,1] 167 | F_maj7sus2b5,[F,E,G,B],55,[5,4,7,11],[1,1,1,1,1,1] 168 | G_67no5,[G,E,F,B],55,[7,4,5,11],[1,1,1,1,1,1] 169 | B_sus4b5#5,[B,E,F,G],55,[11,4,5,7],[1,1,1,1,1,1] 170 | E_b9b13no3,[E,C,F,B],59,[4,0,5,11],[2,0,0,1,2,1] 171 | C_maj7add11no5,[C,E,F,B],60,[0,4,5,11],[2,0,0,1,2,1] 172 | F_maj7#11no3,[F,C,E,B],60,[5,0,4,11],[2,0,0,1,2,1] 173 | B_sus4b5b9,[B,C,E,F],60,[11,0,4,5],[2,0,0,1,2,1] 174 | 175 | ------------------ 176 | -- DIATONIC 2+3 -- 177 | ------------------ 178 | 179 | -- diatonic modes 2+3 180 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 181 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 182 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 183 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 184 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 185 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 186 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 187 | 188 | -- interval vector 2 189 | [3,3,5,4,4,2] 190 | 191 | ------------------ 192 | -- PENTATONIC 3 -- 193 | ------------------ 194 | 195 | -- pentatonic set 3 196 | [2,4,5,8,11] 197 | [D,E,F,Ab,B] 198 | 199 | -- dissonance level 3 200 | 91 201 | 202 | -- tunings 3 203 | ("N/A","n/a") 204 | 205 | -- interval vector 3 206 | [1,1,4,1,1,2] 207 | 208 | -- related pentatonic scales (through substitution of one note) 209 | D_kumoi,[D,E,F,A,B] 210 | 211 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 212 | E_maj,[E,Ab,B],6,[4,8,11],[0,0,1,1,1,0] 213 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 214 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 215 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 216 | E_majb9no5,[E,F,Ab],22,[4,5,8],[1,0,1,1,0,0] 217 | F_minmaj7no5,[F,E,Ab],22,[5,4,8],[1,0,1,1,0,0] 218 | Ab_6#5no3,[Ab,E,F],22,[8,4,5],[1,0,1,1,0,0] 219 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 220 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 221 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 222 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 223 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 224 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 225 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 226 | D_sus2b5,[D,E,Ab],34,[2,4,8],[0,1,0,1,0,1] 227 | E_7no5,[E,D,Ab],34,[4,2,8],[0,1,0,1,0,1] 228 | Ab_#11#5no3,[Ab,D,E],34,[8,2,4],[0,1,0,1,0,1] 229 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 230 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 231 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 232 | 233 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 234 | E_7,[E,D,Ab,B],42,[4,2,8,11],[0,1,2,1,1,1] 235 | D_6sus2b5,[D,E,Ab,B],43,[2,4,8,11],[0,1,2,1,1,1] 236 | Ab_mb5#5,[Ab,D,E,B],43,[8,2,4,11],[0,1,2,1,1,1] 237 | B_m6add11no5,[B,D,E,Ab],43,[11,2,4,8],[0,1,2,1,1,1] 238 | E_b9,[E,F,Ab,B],50,[4,5,8,11],[1,0,2,1,1,1] 239 | F_mmaj7b5,[F,E,Ab,B],51,[5,4,8,11],[1,0,2,1,1,1] 240 | Ab_m6#5,[Ab,E,F,B],51,[8,4,5,11],[1,0,2,1,1,1] 241 | B_6sus4b5,[B,E,F,Ab],51,[11,4,5,8],[1,0,2,1,1,1] 242 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 243 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 244 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 245 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 246 | D_mb5add9,[D,E,F,Ab],58,[2,4,5,8],[1,1,2,1,0,1] 247 | E_7b9no5,[E,D,F,Ab],58,[4,2,5,8],[1,1,2,1,0,1] 248 | F_m6maj7no5,[F,D,E,Ab],58,[5,2,4,8],[1,1,2,1,0,1] 249 | Ab_6b5#5no3,[Ab,D,E,F],58,[8,2,4,5],[1,1,2,1,0,1] 250 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 251 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 252 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 253 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 254 | 255 | ------------------ 256 | -- DIATONIC 3+1 -- 257 | ------------------ 258 | 259 | -- diatonic modes 3+1 260 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 261 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 262 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 263 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 264 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 265 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 266 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 267 | 268 | -- interval vector 3+1 269 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_6.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,4,5,9] 25 | [C,D,E,F,A] 26 | 27 | -- dissonance level 1 28 | 47 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,2,2,2,3,0] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | C_major,[C,D,E,G,A] 38 | F_major,[F,G,A,C,D] 39 | F_okina,[F,A,Bb,C,E] 40 | B_iwato,[B,C,E,F,A] 41 | E_iwato,[E,F,A,Bb,D] 42 | D_kumoi,[D,E,F,A,B] 43 | 44 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 45 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 46 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 47 | A_min,[A,C,E],7,[9,0,4],[0,0,1,1,1,0] 48 | A_sus4,[A,D,E],10,[9,2,4],[0,1,0,0,2,0] 49 | D_7no3,[D,C,A],12,[2,0,9],[0,1,1,0,1,0] 50 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 51 | C_6sus2no5,[C,D,A],13,[0,2,9],[0,1,1,0,1,0] 52 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 53 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 54 | A_minadd11no5,[A,C,D],13,[9,0,2],[0,1,1,0,1,0] 55 | C_majadd9no5,[C,D,E],18,[0,2,4],[0,2,0,1,0,0] 56 | D_7sus2no5,[D,C,E],18,[2,0,4],[0,2,0,1,0,0] 57 | E_7#5no3,[E,C,D],18,[4,0,2],[0,2,0,1,0,0] 58 | C_majadd11no5,[C,E,F],19,[0,4,5],[1,0,0,1,1,0] 59 | E_b9#5no3,[E,C,F],19,[4,0,5],[1,0,0,1,1,0] 60 | E_sus4b9no5,[E,F,A],19,[4,5,9],[1,0,0,1,1,0] 61 | F_maj7no3,[F,C,E],19,[5,0,4],[1,0,0,1,1,0] 62 | F_maj7no5,[F,E,A],19,[5,4,9],[1,0,0,1,1,0] 63 | A_b13no3,[A,E,F],19,[9,4,5],[1,0,0,1,1,0] 64 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 65 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 66 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 67 | 68 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 69 | D_m7,[D,C,F,A],19,[2,0,5,9],[0,1,2,1,2,0] 70 | C_6sus2/4no5,[C,D,F,A],20,[0,2,5,9],[0,1,2,1,2,0] 71 | F_6,[F,C,D,A],20,[5,0,2,9],[0,1,2,1,2,0] 72 | A_m#5add11,[A,C,D,F],20,[9,0,2,5],[0,1,2,1,2,0] 73 | D_7sus2,[D,C,E,A],23,[2,0,4,9],[0,2,1,1,2,0] 74 | C_6add9no5,[C,D,E,A],24,[0,2,4,9],[0,2,1,1,2,0] 75 | E_7sus4#5,[E,C,D,A],24,[4,0,2,9],[0,2,1,1,2,0] 76 | A_madd11,[A,C,D,E],24,[9,0,2,4],[0,2,1,1,2,0] 77 | C_6add11no5,[C,E,F,A],26,[0,4,5,9],[1,0,1,2,2,0] 78 | E_sus4#5b9,[E,C,F,A],26,[4,0,5,9],[1,0,1,2,2,0] 79 | F_maj7,[F,C,E,A],26,[5,0,4,9],[1,0,1,2,2,0] 80 | A_mb13,[A,C,E,F],26,[9,0,4,5],[1,0,1,2,2,0] 81 | D_madd9,[D,E,F,A],31,[2,4,5,9],[1,1,1,1,2,0] 82 | E_7sus4b9no5,[E,D,F,A],32,[4,2,5,9],[1,1,1,1,2,0] 83 | F_6maj7no5,[F,D,E,A],32,[5,2,4,9],[1,1,1,1,2,0] 84 | A_sus4b13,[A,D,E,F],32,[9,2,4,5],[1,1,1,1,2,0] 85 | C_add9/11no5,[C,D,E,F],39,[0,2,4,5],[1,2,1,1,1,0] 86 | D_m7add9no5,[D,C,E,F],39,[2,0,4,5],[1,2,1,1,1,0] 87 | E_7#5b9no3,[E,C,D,F],39,[4,0,2,5],[1,2,1,1,1,0] 88 | F_6maj7no3,[F,C,D,E],39,[5,0,2,4],[1,2,1,1,1,0] 89 | 90 | ------------------ 91 | -- DIATONIC 1+2 -- 92 | ------------------ 93 | 94 | -- diatonic modes 1+2 95 | C_Ionian,[C,D,E,F,G,A,B] 96 | D_Dorian,[D,C,E,F,G,A,B] 97 | E_Phrygian,[E,C,D,F,G,A,B] 98 | F_Lydian,[F,C,D,E,G,A,B] 99 | G_Mixolydian,[G,C,D,E,F,A,B] 100 | A_Aeolian,[A,C,D,E,F,G,B] 101 | B_Locrian,[B,C,D,E,F,G,A] 102 | 103 | -- interval vector 1 104 | [2,5,4,3,6,1] 105 | 106 | ------------------ 107 | -- PENTATONIC 2 -- 108 | ------------------ 109 | 110 | -- pentatonic set 2 111 | [0,2,5,7,11] 112 | [C,D,F,G,B] 113 | 114 | -- dissonance level 2 115 | 68 116 | 117 | -- tunings 2 118 | ("DGDGA","DGDABb") 119 | 120 | -- interval vector 2 121 | [1,2,2,1,3,1] 122 | 123 | -- related pentatonic scales (through substitution of one note) 124 | F_major,[F,G,A,C,D] 125 | Bb_major,[Bb,C,D,F,G] 126 | F_kumoi,[F,G,Ab,C,D] 127 | G_okina,[G,B,C,D,Gb] 128 | C_okina,[C,E,F,G,B] 129 | 130 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 131 | G_maj,[G,D,B],7,[7,2,11],[0,0,1,1,1,0] 132 | C_sus4,[C,F,G],9,[0,5,7],[0,1,0,0,2,0] 133 | G_sus4,[G,C,D],10,[7,0,2],[0,1,0,0,2,0] 134 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 135 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 136 | D_minadd11no5,[D,F,G],13,[2,5,7],[0,1,1,0,1,0] 137 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 138 | F_6sus2no5,[F,D,G],13,[5,2,7],[0,1,1,0,1,0] 139 | G_7no3,[G,D,F],13,[7,2,5],[0,1,1,0,1,0] 140 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 141 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 142 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 143 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 144 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 145 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 146 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 147 | F_sus2b5,[F,G,B],34,[5,7,11],[0,1,0,1,0,1] 148 | G_7no5,[G,F,B],34,[7,5,11],[0,1,0,1,0,1] 149 | B_#11#5no3,[B,F,G],34,[11,5,7],[0,1,0,1,0,1] 150 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 151 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 152 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 153 | 154 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 155 | C_sus2/4,[C,D,F,G],22,[0,2,5,7],[0,2,1,0,3,0] 156 | D_m7add11no5,[D,C,F,G],23,[2,0,5,7],[0,2,1,0,3,0] 157 | F_6sus2,[F,C,D,G],23,[5,0,2,7],[0,2,1,0,3,0] 158 | G_7sus4,[G,C,D,F],23,[7,0,2,5],[0,2,1,0,3,0] 159 | C_maj7sus2,[C,D,G,B],31,[0,2,7,11],[1,1,1,1,2,0] 160 | D_67sus4no5,[D,C,G,B],32,[2,0,7,11],[1,1,1,1,2,0] 161 | G_add11,[G,C,D,B],32,[7,0,2,11],[1,1,1,1,2,0] 162 | B_m#5b9,[B,C,D,G],32,[11,0,2,7],[1,1,1,1,2,0] 163 | D_m6add11no5,[D,F,G,B],43,[2,5,7,11],[0,1,2,1,1,1] 164 | F_6sus2b5,[F,D,G,B],43,[5,2,7,11],[0,1,2,1,1,1] 165 | G_7,[G,D,F,B],43,[7,2,5,11],[0,1,2,1,1,1] 166 | B_mb5#5,[B,D,F,G],43,[11,2,5,7],[0,1,2,1,1,1] 167 | C_maj7sus4,[C,F,G,B],51,[0,5,7,11],[1,1,0,1,2,1] 168 | F_sus2#11,[F,C,G,B],52,[5,0,7,11],[1,1,0,1,2,1] 169 | G_7add11no5,[G,C,F,B],52,[7,0,5,11],[1,1,0,1,2,1] 170 | B_b5#5b9no3,[B,C,F,G],52,[11,0,5,7],[1,1,0,1,2,1] 171 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 172 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 173 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 174 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 175 | 176 | ------------------ 177 | -- DIATONIC 2+3 -- 178 | ------------------ 179 | 180 | -- diatonic modes 2+3 181 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 182 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 183 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 184 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 185 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 186 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 187 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 188 | 189 | -- interval vector 2 190 | [3,3,5,4,4,2] 191 | 192 | ------------------ 193 | -- PENTATONIC 3 -- 194 | ------------------ 195 | 196 | -- pentatonic set 3 197 | [2,4,5,8,11] 198 | [D,E,F,Ab,B] 199 | 200 | -- dissonance level 3 201 | 91 202 | 203 | -- tunings 3 204 | ("N/A","n/a") 205 | 206 | -- interval vector 3 207 | [1,1,4,1,1,2] 208 | 209 | -- related pentatonic scales (through substitution of one note) 210 | D_kumoi,[D,E,F,A,B] 211 | 212 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 213 | E_maj,[E,Ab,B],6,[4,8,11],[0,0,1,1,1,0] 214 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 215 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 216 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 217 | E_majb9no5,[E,F,Ab],22,[4,5,8],[1,0,1,1,0,0] 218 | F_minmaj7no5,[F,E,Ab],22,[5,4,8],[1,0,1,1,0,0] 219 | Ab_6#5no3,[Ab,E,F],22,[8,4,5],[1,0,1,1,0,0] 220 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 221 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 222 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 223 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 224 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 225 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 226 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 227 | D_sus2b5,[D,E,Ab],34,[2,4,8],[0,1,0,1,0,1] 228 | E_7no5,[E,D,Ab],34,[4,2,8],[0,1,0,1,0,1] 229 | Ab_#11#5no3,[Ab,D,E],34,[8,2,4],[0,1,0,1,0,1] 230 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 231 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 232 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 233 | 234 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 235 | E_7,[E,D,Ab,B],42,[4,2,8,11],[0,1,2,1,1,1] 236 | D_6sus2b5,[D,E,Ab,B],43,[2,4,8,11],[0,1,2,1,1,1] 237 | Ab_mb5#5,[Ab,D,E,B],43,[8,2,4,11],[0,1,2,1,1,1] 238 | B_m6add11no5,[B,D,E,Ab],43,[11,2,4,8],[0,1,2,1,1,1] 239 | E_b9,[E,F,Ab,B],50,[4,5,8,11],[1,0,2,1,1,1] 240 | F_mmaj7b5,[F,E,Ab,B],51,[5,4,8,11],[1,0,2,1,1,1] 241 | Ab_m6#5,[Ab,E,F,B],51,[8,4,5,11],[1,0,2,1,1,1] 242 | B_6sus4b5,[B,E,F,Ab],51,[11,4,5,8],[1,0,2,1,1,1] 243 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 244 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 245 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 246 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 247 | D_mb5add9,[D,E,F,Ab],58,[2,4,5,8],[1,1,2,1,0,1] 248 | E_7b9no5,[E,D,F,Ab],58,[4,2,5,8],[1,1,2,1,0,1] 249 | F_m6maj7no5,[F,D,E,Ab],58,[5,2,4,8],[1,1,2,1,0,1] 250 | Ab_6b5#5no3,[Ab,D,E,F],58,[8,2,4,5],[1,1,2,1,0,1] 251 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 252 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 253 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 254 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 255 | 256 | ------------------ 257 | -- DIATONIC 3+1 -- 258 | ------------------ 259 | 260 | -- diatonic modes 3+1 261 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 262 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 263 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 264 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 265 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 266 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 267 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 268 | 269 | -- interval vector 3+1 270 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /output/analysis_7.txt: -------------------------------------------------------------------------------- 1 | ------------------ 2 | ---- FULL SET ---- 3 | ------------------ 4 | 5 | -- total tones 1+2+3 6 | 8 7 | 8 | -- omitted tones 1+2+3 9 | [1,3,6,10] 10 | [Db,Eb,Gb,Bb] 11 | 12 | -- included tones 1+2+3 13 | [0,2,4,5,7,8,9,11] 14 | [C,D,E,F,G,Ab,A,B] 15 | 16 | -- interval vector 1+2+3 17 | [4,5,6,5,6,2] 18 | 19 | ------------------ 20 | -- PENTATONIC 1 -- 21 | ------------------ 22 | 23 | -- pentatonic set 1 24 | [0,2,4,7,11] 25 | [C,D,E,G,B] 26 | 27 | -- dissonance level 1 28 | 46 29 | 30 | -- tunings 1 31 | ("DGDGA","n/a") 32 | 33 | -- interval vector 1 34 | [1,2,2,2,3,0] 35 | 36 | -- related pentatonic scales (through substitution of one note) 37 | C_major,[C,D,E,G,A] 38 | G_okina,[G,B,C,D,Gb] 39 | C_okina,[C,E,F,G,B] 40 | Gb_iwato,[Gb,G,B,C,E] 41 | G_major,[G,A,B,D,E] 42 | 43 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 44 | C_maj,[C,E,G],6,[0,4,7],[0,0,1,1,1,0] 45 | E_min,[E,G,B],6,[4,7,11],[0,0,1,1,1,0] 46 | G_maj,[G,D,B],7,[7,2,11],[0,0,1,1,1,0] 47 | G_sus4,[G,C,D],10,[7,0,2],[0,1,0,0,2,0] 48 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 49 | D_sus2/4no5,[D,E,G],13,[2,4,7],[0,1,1,0,1,0] 50 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 51 | E_min7no5,[E,D,G],13,[4,2,7],[0,1,1,0,1,0] 52 | G_6no3,[G,D,E],13,[7,2,4],[0,1,1,0,1,0] 53 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 54 | C_majadd9no5,[C,D,E],18,[0,2,4],[0,2,0,1,0,0] 55 | C_maj7no3,[C,G,B],18,[0,7,11],[1,0,0,1,1,0] 56 | D_7sus2no5,[D,C,E],18,[2,0,4],[0,2,0,1,0,0] 57 | E_7#5no3,[E,C,D],18,[4,0,2],[0,2,0,1,0,0] 58 | E_b13no3,[E,C,B],18,[4,0,11],[1,0,0,1,1,0] 59 | C_maj7no5,[C,E,B],19,[0,4,11],[1,0,0,1,1,0] 60 | G_majadd11no5,[G,C,B],19,[7,0,11],[1,0,0,1,1,0] 61 | B_sus4b9no5,[B,C,E],19,[11,0,4],[1,0,0,1,1,0] 62 | B_b9#5no3,[B,C,G],19,[11,0,7],[1,0,0,1,1,0] 63 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 64 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 65 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 66 | 67 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 68 | E_m7,[E,D,G,B],19,[4,2,7,11],[0,1,2,1,2,0] 69 | D_6sus2/4no5,[D,E,G,B],20,[2,4,7,11],[0,1,2,1,2,0] 70 | G_6,[G,D,E,B],20,[7,2,4,11],[0,1,2,1,2,0] 71 | B_m#5add11,[B,D,E,G],20,[11,2,4,7],[0,1,2,1,2,0] 72 | C_add9,[C,D,E,G],23,[0,2,4,7],[0,2,1,1,2,0] 73 | D_7sus2/4no5,[D,C,E,G],24,[2,0,4,7],[0,2,1,1,2,0] 74 | E_m7#5,[E,C,D,G],24,[4,0,2,7],[0,2,1,1,2,0] 75 | G_6sus4,[G,C,D,E],24,[7,0,2,4],[0,2,1,1,2,0] 76 | C_maj7,[C,E,G,B],25,[0,4,7,11],[1,0,1,2,2,0] 77 | E_mb13,[E,C,G,B],25,[4,0,7,11],[1,0,1,2,2,0] 78 | G_6add11no5,[G,C,E,B],26,[7,0,4,11],[1,0,1,2,2,0] 79 | B_sus4#5b9,[B,C,E,G],26,[11,0,4,7],[1,0,1,2,2,0] 80 | C_maj7sus2,[C,D,G,B],31,[0,2,7,11],[1,1,1,1,2,0] 81 | D_67sus4no5,[D,C,G,B],32,[2,0,7,11],[1,1,1,1,2,0] 82 | G_add11,[G,C,D,B],32,[7,0,2,11],[1,1,1,1,2,0] 83 | B_m#5b9,[B,C,D,G],32,[11,0,2,7],[1,1,1,1,2,0] 84 | E_7b13no3,[E,C,D,B],38,[4,0,2,11],[1,2,1,1,1,0] 85 | C_maj7add9no5,[C,D,E,B],39,[0,2,4,11],[1,2,1,1,1,0] 86 | D_67sus2no5,[D,C,E,B],39,[2,0,4,11],[1,2,1,1,1,0] 87 | B_madd11b9no5,[B,C,D,E],39,[11,0,2,4],[1,2,1,1,1,0] 88 | 89 | ------------------ 90 | -- DIATONIC 1+2 -- 91 | ------------------ 92 | 93 | -- diatonic modes 1+2 94 | C_Ionian,[C,D,E,F,G,A,B] 95 | D_Dorian,[D,C,E,F,G,A,B] 96 | E_Phrygian,[E,C,D,F,G,A,B] 97 | F_Lydian,[F,C,D,E,G,A,B] 98 | G_Mixolydian,[G,C,D,E,F,A,B] 99 | A_Aeolian,[A,C,D,E,F,G,B] 100 | B_Locrian,[B,C,D,E,F,G,A] 101 | 102 | -- interval vector 1 103 | [2,5,4,3,6,1] 104 | 105 | ------------------ 106 | -- PENTATONIC 2 -- 107 | ------------------ 108 | 109 | -- pentatonic set 2 110 | [0,2,5,9,11] 111 | [C,D,F,A,B] 112 | 113 | -- dissonance level 2 114 | 72 115 | 116 | -- tunings 2 117 | ("DGDGA","DGDABb") 118 | 119 | -- interval vector 2 120 | [1,2,3,1,2,1] 121 | 122 | -- related pentatonic scales (through substitution of one note) 123 | F_major,[F,G,A,C,D] 124 | B_iwato,[B,C,E,F,A] 125 | D_kumoi,[D,E,F,A,B] 126 | 127 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 128 | D_min,[D,F,A],6,[2,5,9],[0,0,1,1,1,0] 129 | F_maj,[F,C,A],7,[5,0,9],[0,0,1,1,1,0] 130 | D_7no3,[D,C,A],12,[2,0,9],[0,1,1,0,1,0] 131 | D_6no3,[D,A,B],12,[2,9,11],[0,1,1,0,1,0] 132 | C_sus2/4no5,[C,D,F],13,[0,2,5],[0,1,1,0,1,0] 133 | C_6sus2no5,[C,D,A],13,[0,2,9],[0,1,1,0,1,0] 134 | D_min7no5,[D,C,F],13,[2,0,5],[0,1,1,0,1,0] 135 | F_6no3,[F,C,D],13,[5,0,2],[0,1,1,0,1,0] 136 | A_minadd11no5,[A,C,D],13,[9,0,2],[0,1,1,0,1,0] 137 | A_sus2/4no5,[A,D,B],13,[9,2,11],[0,1,1,0,1,0] 138 | B_min7no5,[B,D,A],13,[11,2,9],[0,1,1,0,1,0] 139 | C_maj7sus2no5,[C,D,B],28,[0,2,11],[1,1,1,0,0,0] 140 | C_6maj7no3no5,[C,A,B],28,[0,9,11],[1,1,1,0,0,0] 141 | D_67no3no5,[D,C,B],28,[2,0,11],[1,1,1,0,0,0] 142 | A_minadd9no5,[A,C,B],28,[9,0,11],[1,1,1,0,0,0] 143 | B_minb9no5,[B,C,D],28,[11,0,2],[1,1,1,0,0,0] 144 | B_7b9no3no5,[B,C,A],28,[11,0,9],[1,1,1,0,0,0] 145 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 146 | F_majb5,[F,A,B],34,[5,9,11],[0,1,0,1,0,1] 147 | A_sus2#5,[A,F,B],34,[9,5,11],[0,1,0,1,0,1] 148 | B_7b5no3,[B,F,A],34,[11,5,9],[0,1,0,1,0,1] 149 | C_maj7sus4no5,[C,F,B],41,[0,5,11],[1,0,0,0,1,1] 150 | F_#11no3,[F,C,B],41,[5,0,11],[1,0,0,0,1,1] 151 | B_b9b5no3,[B,C,F],41,[11,0,5],[1,0,0,0,1,1] 152 | 153 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 154 | D_m7,[D,C,F,A],19,[2,0,5,9],[0,1,2,1,2,0] 155 | C_6sus2/4no5,[C,D,F,A],20,[0,2,5,9],[0,1,2,1,2,0] 156 | F_6,[F,C,D,A],20,[5,0,2,9],[0,1,2,1,2,0] 157 | A_m#5add11,[A,C,D,F],20,[9,0,2,5],[0,1,2,1,2,0] 158 | D_67no3,[D,C,A,B],40,[2,0,9,11],[1,2,2,0,1,0] 159 | C_6maj7sus2no5,[C,D,A,B],41,[0,2,9,11],[1,2,2,0,1,0] 160 | A_madd9/11no5,[A,C,D,B],41,[9,0,2,11],[1,2,2,0,1,0] 161 | B_m7b9no5,[B,C,D,A],41,[11,0,2,9],[1,2,2,0,1,0] 162 | D_m6,[D,F,A,B],42,[2,5,9,11],[0,1,2,1,1,1] 163 | F_6b5,[F,D,A,B],43,[5,2,9,11],[0,1,2,1,1,1] 164 | A_sus2/4#5,[A,D,F,B],43,[9,2,5,11],[0,1,2,1,1,1] 165 | B_m7b5,[B,D,F,A],43,[11,2,5,9],[0,1,2,1,1,1] 166 | C_6maj7sus4no5,[C,F,A,B],55,[0,5,9,11],[1,1,1,1,1,1] 167 | F_#11,[F,C,A,B],55,[5,0,9,11],[1,1,1,1,1,1] 168 | A_m#5add9,[A,C,F,B],55,[9,0,5,11],[1,1,1,1,1,1] 169 | B_7b5b9no3,[B,C,F,A],55,[11,0,5,9],[1,1,1,1,1,1] 170 | C_maj7sus2/4no5,[C,D,F,B],57,[0,2,5,11],[1,1,2,0,1,1] 171 | D_m76no5,[D,C,F,B],57,[2,0,5,11],[1,1,2,0,1,1] 172 | F_6#11no3,[F,C,D,B],57,[5,0,2,11],[1,1,2,0,1,1] 173 | B_mb5b9,[B,C,D,F],57,[11,0,2,5],[1,1,2,0,1,1] 174 | 175 | ------------------ 176 | -- DIATONIC 2+3 -- 177 | ------------------ 178 | 179 | -- diatonic modes 2+3 180 | C_Ionian_#5,[C,D,E,F,Ab,A,B] 181 | D_Dorian_#4,[D,C,E,F,Ab,A,B] 182 | E_Phrygian_nat.3,[E,C,D,F,Ab,A,B] 183 | F_Lydian_#2,[F,C,D,E,Ab,A,B] 184 | Ab_Altered_bb7,[Ab,C,D,E,F,A,B] 185 | A_Harmonic_Minor,[A,C,D,E,F,Ab,B] 186 | B_Locrian_nat.6,[B,C,D,E,F,Ab,A] 187 | 188 | -- interval vector 2 189 | [3,3,5,4,4,2] 190 | 191 | ------------------ 192 | -- PENTATONIC 3 -- 193 | ------------------ 194 | 195 | -- pentatonic set 3 196 | [2,4,5,8,11] 197 | [D,E,F,Ab,B] 198 | 199 | -- dissonance level 3 200 | 91 201 | 202 | -- tunings 3 203 | ("N/A","n/a") 204 | 205 | -- interval vector 3 206 | [1,1,4,1,1,2] 207 | 208 | -- related pentatonic scales (through substitution of one note) 209 | D_kumoi,[D,E,F,A,B] 210 | 211 | -- available triads (name, pitches, dissonance level, pitchclasses, interval vector 212 | E_maj,[E,Ab,B],6,[4,8,11],[0,0,1,1,1,0] 213 | E_7no3,[E,D,B],12,[4,2,11],[0,1,1,0,1,0] 214 | D_6sus2no5,[D,E,B],13,[2,4,11],[0,1,1,0,1,0] 215 | B_minadd11no5,[B,D,E],13,[11,2,4],[0,1,1,0,1,0] 216 | E_majb9no5,[E,F,Ab],22,[4,5,8],[1,0,1,1,0,0] 217 | F_minmaj7no5,[F,E,Ab],22,[5,4,8],[1,0,1,1,0,0] 218 | Ab_6#5no3,[Ab,E,F],22,[8,4,5],[1,0,1,1,0,0] 219 | D_minadd9no5,[D,E,F],28,[2,4,5],[1,1,1,0,0,0] 220 | E_7b9no3no5,[E,D,F],28,[4,2,5],[1,1,1,0,0,0] 221 | F_6maj7no3no5,[F,D,E],28,[5,2,4],[1,1,1,0,0,0] 222 | D_dim,[D,F,Ab],32,[2,5,8],[0,0,2,0,0,1] 223 | F_dim,[F,Ab,B],32,[5,8,11],[0,0,2,0,0,1] 224 | Ab_dim,[Ab,D,B],32,[8,2,11],[0,0,2,0,0,1] 225 | B_dim,[B,D,F],32,[11,2,5],[0,0,2,0,0,1] 226 | D_sus2b5,[D,E,Ab],34,[2,4,8],[0,1,0,1,0,1] 227 | E_7no5,[E,D,Ab],34,[4,2,8],[0,1,0,1,0,1] 228 | Ab_#11#5no3,[Ab,D,E],34,[8,2,4],[0,1,0,1,0,1] 229 | E_b9no3,[E,F,B],40,[4,5,11],[1,0,0,0,1,1] 230 | F_maj7b5no3,[F,E,B],41,[5,4,11],[1,0,0,0,1,1] 231 | B_sus4b5,[B,E,F],41,[11,4,5],[1,0,0,0,1,1] 232 | 233 | -- available 4 note chords (name, pitches, dissonance level, pitchclasses, interval vector 234 | E_7,[E,D,Ab,B],42,[4,2,8,11],[0,1,2,1,1,1] 235 | D_6sus2b5,[D,E,Ab,B],43,[2,4,8,11],[0,1,2,1,1,1] 236 | Ab_mb5#5,[Ab,D,E,B],43,[8,2,4,11],[0,1,2,1,1,1] 237 | B_m6add11no5,[B,D,E,Ab],43,[11,2,4,8],[0,1,2,1,1,1] 238 | E_b9,[E,F,Ab,B],50,[4,5,8,11],[1,0,2,1,1,1] 239 | F_mmaj7b5,[F,E,Ab,B],51,[5,4,8,11],[1,0,2,1,1,1] 240 | Ab_m6#5,[Ab,E,F,B],51,[8,4,5,11],[1,0,2,1,1,1] 241 | B_6sus4b5,[B,E,F,Ab],51,[11,4,5,8],[1,0,2,1,1,1] 242 | E_7b9no3,[E,D,F,B],56,[4,2,5,11],[1,1,2,0,1,1] 243 | D_m6add9no5,[D,E,F,B],57,[2,4,5,11],[1,1,2,0,1,1] 244 | F_6maj7b5no3,[F,D,E,B],57,[5,2,4,11],[1,1,2,0,1,1] 245 | B_mb5add11,[B,D,E,F],57,[11,2,4,5],[1,1,2,0,1,1] 246 | D_mb5add9,[D,E,F,Ab],58,[2,4,5,8],[1,1,2,1,0,1] 247 | E_7b9no5,[E,D,F,Ab],58,[4,2,5,8],[1,1,2,1,0,1] 248 | F_m6maj7no5,[F,D,E,Ab],58,[5,2,4,8],[1,1,2,1,0,1] 249 | Ab_6b5#5no3,[Ab,D,E,F],58,[8,2,4,5],[1,1,2,1,0,1] 250 | D_m6b5,[D,F,Ab,B],64,[2,5,8,11],[0,0,4,0,0,2] 251 | F_m6b5,[F,D,Ab,B],64,[5,2,8,11],[0,0,4,0,0,2] 252 | Ab_m6b5,[Ab,D,F,B],64,[8,2,5,11],[0,0,4,0,0,2] 253 | B_m6b5,[B,D,F,Ab],64,[11,2,5,8],[0,0,4,0,0,2] 254 | 255 | ------------------ 256 | -- DIATONIC 3+1 -- 257 | ------------------ 258 | 259 | -- diatonic modes 3+1 260 | C_Harmonic_Major,[C,D,E,F,G,Ab,B] 261 | D_Dorian_b5,[D,C,E,F,G,Ab,B] 262 | E_Phrygian_b4,[E,C,D,F,G,Ab,B] 263 | F_Lydian_b3,[F,C,D,E,G,Ab,B] 264 | G_Mixolydian_b2,[G,C,D,E,F,Ab,B] 265 | Ab_Lydian_Augmented_#2,[Ab,C,D,E,F,G,B] 266 | B_Locrian_bb7,[B,C,D,E,F,G,Ab] 267 | 268 | -- interval vector 3+1 269 | [3,3,5,4,4,2] -------------------------------------------------------------------------------- /package.yaml: -------------------------------------------------------------------------------- 1 | name: theHarmonicAlgorithm 2 | version: 2.0.0 3 | github: "OscarSouth/theHarmonicAlgorithm" 4 | license: BSD3 5 | author: "Oscar South" 6 | maintainer: "info@oscarsouth.com" 7 | copyright: "2024 (c) Oscar South" 8 | 9 | extra-source-files: 10 | - README.md 11 | - ChangeLog.md 12 | 13 | # Metadata used when publishing your package 14 | # synopsis: Short description of your package 15 | # category: Academic 16 | 17 | # To avoid duplicated efforts in documentation and dealing with the 18 | # complications of embedding Haddock markup inside cabal files, it is 19 | # common to point users to the README.md file. 20 | description: Please see the README on GitHub at 21 | 22 | dependencies: 23 | - base >= 4.8 && < 5 24 | - parallel 25 | 26 | library: 27 | exposed-modules: Lib 28 | source-dirs: src 29 | other-modules: 30 | - Overtone 31 | - Markov 32 | - MusicData 33 | - Analysis 34 | - Utility 35 | - GraphDB 36 | - Arranger 37 | dependencies: 38 | - containers 39 | - split 40 | 41 | 42 | executables: 43 | theHarmonicAlgorithm-exe: 44 | main: Main.hs 45 | source-dirs: app 46 | ghc-options: 47 | - -threaded 48 | - -rtsopts 49 | - -with-rtsopts=-N 50 | dependencies: 51 | - theHarmonicAlgorithm 52 | - containers 53 | - mtl 54 | - inline-r 55 | - split 56 | - tidal 57 | - hasbolt 58 | - text 59 | - data-default 60 | - aeson 61 | - bytestring 62 | 63 | tests: 64 | theHarmonicAlgorithm-test: 65 | main: Spec.hs 66 | source-dirs: test 67 | ghc-options: 68 | - -threaded 69 | - -rtsopts 70 | - -with-rtsopts=-N 71 | dependencies: 72 | - theHarmonicAlgorithm 73 | - hspec 74 | - QuickCheck 75 | -------------------------------------------------------------------------------- /scripts/import.R: -------------------------------------------------------------------------------- 1 | library(tidyverse) 2 | 3 | bach <- read_csv( 4 | "/home/oscarsouth/.stack/global-project/data/jsbach_chorals_harmony.data", 5 | col_names = c( 6 | "seq", "event", 7 | "0", "1", "2", "3", "4", "5", 8 | "6", "7", "8", "9", "10", "11", 9 | "fund", "acc", "label" 10 | ), cols( 11 | seq = col_character(), 12 | event = col_integer(), 13 | `0` = col_character(), 14 | `1` = col_character(), 15 | `2` = col_character(), 16 | `3` = col_character(), 17 | `4` = col_character(), 18 | `5` = col_character(), 19 | `6` = col_character(), 20 | `7` = col_character(), 21 | `8` = col_character(), 22 | `9` = col_character(), 23 | `10` = col_character(), 24 | `11` = col_character(), 25 | fund = col_character(), 26 | acc = col_integer(), 27 | label = col_character() 28 | ) 29 | ) 30 | 31 | bach <- 32 | bach %>% 33 | select(seq, event, fund, acc, label) %>% 34 | add_column(pitch = bach %>% 35 | select(`0`:`11`) %>% 36 | t() %>% 37 | as.data.frame() %>% 38 | unname() %>% 39 | map(function(x) str_which(x, "YES")-1) 40 | ) %>% 41 | select(pitch, fund) 42 | 43 | # bachMatrix <<- 44 | # reduce(bach$pitch, 45 | # rbind, 46 | # matrix(,0,bach$pitch %>% 47 | # map(length) %>% 48 | # rapply(c) %>% 49 | # max() 50 | # ) 51 | # ) %>% 52 | # unname() 53 | # 54 | # bachFund <<- bach$fund 55 | 56 | noteNameToPitchClass <- function(pitch) { 57 | pcMap <- list( 58 | "C" = 0, "C#" = 1, "D-" = 1, "Db" = 1, 59 | "D" = 2, "D#" = 3, "E-" = 3, "Eb" = 3, 60 | "E" = 4, "E#" = 5, "F-" = 4, "Fb" = 4, 61 | "F" = 5, "F#" = 6, "G-" = 6, "Gb" = 6, 62 | "G" = 7, "G#" = 8, "A-" = 8, "Ab" = 8, 63 | "A" = 9, "A#" = 10, "B-" = 10, "Bb" = 10, 64 | "B" = 11, "B#" = 0, "C-" = 11, "Cb" = 11 65 | ) 66 | return(pcMap[[pitch]]) 67 | } 68 | 69 | pitchClassToNoteNameSharp <- function(pitch) { 70 | pc = (pitch %% 12) %>% as.character() 71 | noteMap <- list( 72 | "0" = "C", "1" = "C#", "2" = "D", 73 | "3" = "D#", "4" = "E", "5" = "F", 74 | "6" = "F#", "7" = "G", "8" = "G#", 75 | "9" = "A", "10" = "A#", "11" = "B" 76 | ) 77 | return(noteMap[[pc]]) 78 | } 79 | 80 | parseAndOrderPitches <- function(noteString) { 81 | notes <- unlist(strsplit(noteString, " ")) 82 | noteNames <- gsub("[0-9]", "", notes) 83 | registers <- as.integer(gsub("[^0-9]", "", notes)) 84 | pitchClasses <- sapply(noteNames, noteNameToPitchClass) 85 | pcRegister <- pitchClasses + (registers * 12) 86 | sortedPitchClasses <- pitchClasses[order(pcRegister)] %>% unname() 87 | return(sortedPitchClasses) 88 | } 89 | 90 | removeDupsFromRight <- function(vec) { 91 | result <- c() 92 | seen <- c() 93 | for (val in rev(vec)) { 94 | if (!(val %in% seen)) { 95 | result <- c(val, result) 96 | seen <- c(seen, val) 97 | } 98 | } 99 | return(result) 100 | } 101 | 102 | # main_path <- "/home/oscarsouth/Desktop/musicdata/YCACL" 103 | # 104 | # csv_files <- list.files(path = main_path, pattern = "\\.csv$", 105 | # recursive = TRUE, full.names = TRUE) 106 | # 107 | # read_and_select <- function(file) { 108 | # read_csv(file, col_names = c("offset", "noteNames")) %>% 109 | # select(offset, noteNames) 110 | # } 111 | # 112 | # data <- map_dfr(csv_files, read_and_select) 113 | 114 | data <- read_csv("/home/oscarsouth/.stack/global-project/data/YCACL.csv") 115 | 116 | #data <- data[1:10000,]#keep only first 10000 rows 117 | 118 | data <- 119 | data %>% 120 | filter(str_count(noteNames, " ") >= 2) 121 | 122 | data$noteNames <- 123 | data$noteNames %>% 124 | str_replace_all("--", "-") %>% 125 | str_replace_all("#-", "#") 126 | 127 | data$orderedPitches <- 128 | data$noteNames %>% 129 | lapply(parseAndOrderPitches) %>% 130 | lapply(removeDupsFromRight) 131 | 132 | data <- data[lengths(data$orderedPitches) >= 3, ] 133 | 134 | data$fundamental <- 135 | data$orderedPitches %>% 136 | lapply(function(pitches) { 137 | pitchClassToNoteNameSharp(pitches[1]) 138 | }) %>% 139 | unlist() 140 | 141 | data <- 142 | data %>% 143 | select(orderedPitches, fundamental) 144 | 145 | # bach <- 146 | # bach %>% 147 | # select(pitch, fund) 148 | 149 | colnames(bach) <- colnames(data) 150 | 151 | data <- rbind(data, bach) 152 | data <- rbind(data, bach) 153 | data <- rbind(data, bach) 154 | data <- rbind(data, bach) 155 | data <- rbind(data, bach) 156 | data <- rbind(data, bach) 157 | data <- rbind(data, bach) 158 | data <- rbind(data, bach) 159 | data <- rbind(data, bach) 160 | data <- rbind(data, bach) 161 | 162 | max_length <- max(sapply(data$orderedPitches, length)) 163 | pitchMatrix <- matrix(NA, nrow = length(data$orderedPitches), 164 | ncol = max_length) 165 | for (i in seq_along(data$orderedPitches)) { 166 | row_data <- data$orderedPitches[[i]] 167 | pitchMatrix[i, 1:length(row_data)] <- row_data 168 | 169 | if (length(row_data) < max_length) { 170 | pitchMatrix[i, (length(row_data) + 1):max_length] <- 171 | rep(row_data, length.out = max_length - length(row_data)) 172 | } 173 | } 174 | 175 | pitchMatrix <- unname(pitchMatrix) 176 | 177 | fund <- unlist(data$fundamental) 178 | 179 | write.csv(pitchMatrix, file = 180 | "/home/oscarsouth/.stack/global-project/data/pitchMatrix.csv", 181 | row.names = FALSE) 182 | 183 | write.csv(fund, file = 184 | "/home/oscarsouth/.stack/global-project/data/fund.csv", 185 | row.names = FALSE) 186 | 187 | 188 | 189 | 190 | 191 | 192 | 193 | 194 | 195 | 196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | # main_path <- "/home/oscarsouth/Desktop/musicdata/YCACL" 208 | # 209 | # csv_files <- list.files(path = main_path, pattern = "\\.csv$", 210 | # recursive = TRUE, full.names = TRUE) 211 | # 212 | # read_and_select <- function(file) { 213 | # read_csv(file, col_names = c("offset", "noteNames")) %>% 214 | # select(offset, noteNames) 215 | # } 216 | # 217 | # data <- map_dfr(csv_files, read_and_select) 218 | # 219 | # write_csv(data, "/home/oscarsouth/.stack/global-project/data/YCACL.csv") 220 | 221 | 222 | 223 | -------------------------------------------------------------------------------- /src/GraphDB.hs: -------------------------------------------------------------------------------- 1 | -- {-# LANGUAGE OverloadedStrings #-} 2 | 3 | module GraphDB where 4 | 5 | -- import Markov 6 | 7 | -------------------------------------------------------------------------------- /src/Lib.hs: -------------------------------------------------------------------------------- 1 | module Lib ( 2 | ------------ 3 | -- |MusicData 4 | MusicData, 5 | PitchClass (P), 6 | NoteName, 7 | EnharmonicFunction, 8 | Chord (Chord), 9 | Cadence, 10 | CadenceState (CadenceState), 11 | Progression (Progression), 12 | i, 13 | pitchClass, 14 | readNoteName, 15 | mostConsonant, 16 | possibleTriads'', 17 | toTriad, 18 | flatTriad, 19 | sharpTriad, 20 | flatChord, 21 | sharpChord, 22 | flat, 23 | sharp, 24 | showTriad, 25 | dissonanceLevel, 26 | toCadence, 27 | initCadenceState, 28 | cadenceStateEnharm, 29 | fromCadenceState, 30 | getCadenceState, 31 | orderVoicing, 32 | harmony, 33 | smoothBass, 34 | normaliseRegister, 35 | chordScale, 36 | --modeNames, 37 | pc, 38 | pcSet, 39 | simpleInversions, 40 | zeroForm, 41 | compactForm, 42 | intervalVector, 43 | fromCadence, 44 | fromCadence', 45 | movementFromCadence, 46 | toMovement, 47 | fromMovement, 48 | fromMovement', 49 | movementFromCadence', 50 | transposeCadence, 51 | rootNote, 52 | rootNote', 53 | toMode, 54 | basePenta, 55 | sortPcSet, 56 | fromChord, 57 | rootNoteFromChord, 58 | bassNoteFromChord, 59 | progRoots', 60 | toEnhTriad, 61 | --progression, 62 | ---------- 63 | -- experimental stuff 64 | -- Movement, 65 | -- Functionality, 66 | constructCadence, 67 | deconstructCadence, 68 | ------------ 69 | -- |Arranger 70 | extractCadenceState, 71 | initProgression, 72 | initProgression', 73 | --sliceProgression, 74 | toProgression, 75 | fuseProgression, 76 | fuse, 77 | rotateProgression, 78 | rotate, 79 | insertProgression, 80 | insert, 81 | cloneProgression, 82 | clone, 83 | switchProgression, 84 | switch, 85 | extractProgression, 86 | extract, 87 | reverseProgression, 88 | showProgression, 89 | ----------- 90 | -- |Analysis 91 | prog3ecbc, pentaPatterns, -- temp 92 | fullSet3title, 93 | pentatonicSet1title, 94 | pentatonicSet2title, 95 | pentatonicSet3title, 96 | diatonicSet12title, 97 | diatonicSet23title, 98 | diatonicSet31title, 99 | generateScale, 100 | triadSets, 101 | chordSets, 102 | vocab'', 103 | allModes, 104 | majorPentaChr, 105 | okinaPentaChr, 106 | iwatoPentaChr, 107 | (?>),(<)) 7 | 8 | import Data.Map (Map) 9 | import qualified Data.Map as Map (empty, insertWith, lookup) 10 | import qualified Data.Map.Merge.Strict as Map' (merge, preserveMissing, 11 | zipWithMatched) 12 | import qualified Data.Map.Strict as Strict (Map) 13 | import qualified Data.Map.Strict as Map' (difference, elems, empty, 14 | fromList, insert, insertWith, 15 | keys, lookup, member, toList) 16 | import qualified Data.Maybe as Maybe (fromMaybe) 17 | import qualified Data.Set as Set (fromList, size, toList) 18 | 19 | import Control.Parallel.Strategies (parMap, rseq) 20 | import qualified Data.Map.Strict as StrictMap 21 | import qualified Data.Set as Set 22 | 23 | -- |representation of bigrams and containing deterministic cadence sequences 24 | type Bigram = (Cadence, Cadence) 25 | 26 | -- |representation of counts for each trigram 27 | type TransitionCounts = Strict.Map Bigram Double 28 | 29 | -- -- |representations of the Markov transition matrix 30 | -- type TransitionMatrix = Matrix R 31 | 32 | -- |representation of markov transition matrix as key-value pairs 33 | type MarkovMap = Map Cadence [(Cadence, Double)] 34 | 35 | -- |mapping from list of events into list of existing preceding bigrams 36 | bigrams :: [a] -> [(a, a)] 37 | bigrams (x:xs) 38 | | length (x:xs) < 2 = [] 39 | | otherwise = bigram (x:xs) : bigrams xs 40 | where bigram (x:y:ys) = (\a b -> (a, b)) x y 41 | 42 | -- |lifted 'shortcut' `toCadence` which operates on a list of integer lists 43 | toCadences :: (Integral a, Num a) => [[a]] -> [Cadence] 44 | toCadences xs = toCadence <$> bigrams (flatTriad <$> xs) 45 | 46 | -- |mapping from input data into all theoretically possible bigrams 47 | pairs :: [Cadence] -> [Bigram] 48 | pairs xs = 49 | let cs = unique xs 50 | in [ (x, y) | x <- cs, y <- cs ] 51 | 52 | -- |mapping from input data into all possible trigrams with counts of zero 53 | zeroCounts :: [Cadence] -> TransitionCounts 54 | zeroCounts xs = 55 | let mInsert acc key = Map'.insert key 0 acc 56 | in foldl mInsert Map'.empty $ pairs xs 57 | 58 | -- |mapping from input data to counts of all occurring transitions 59 | cadenceCounts :: [Cadence] -> TransitionCounts 60 | cadenceCounts xs = 61 | let mInsert acc key = Map'.insertWith (+) key 1 acc 62 | in foldl mInsert Map'.empty $ bigrams xs 63 | 64 | ---- |mapping from input to counts of cadences, including 'stationary' movements 65 | --transitionCounts :: [Cadence] -> TransitionCounts 66 | --transitionCounts xs = mergeMaps (foldl mInsert cadences (Map'.keys diff)) zeros 67 | -- where diff = Map'.difference zeros cadences 68 | -- zeros = zeroCounts xs 69 | -- cadences = cadenceCounts xs 70 | -- mergeMaps m1 m2 = Map'.merge Map'.preserveMissing Map'.preserveMissing 71 | -- (Map'.zipWithMatched (\k x y -> x)) m1 m2 72 | -- keys k = [ (fst k, nxt) | nxt <- unique xs ] 73 | -- newKey k = (fst k, fst k) 74 | -- member k = sequenceA [ f ks | f <- [Map'.member], ks <- keys k ] (cadences) 75 | -- mInsert acc key 76 | -- | all (\x -> x == False) (member key) == True = 77 | -- Map'.insert (newKey key) 1 acc 78 | -- | otherwise = 79 | -- Map'.insert key (Maybe.fromMaybe 0 $ Map'.lookup key $ cadences) acc 80 | 81 | transitionCounts :: [Cadence] -> TransitionCounts 82 | transitionCounts xs = 83 | let bigrams = parMap rseq (\x -> (x, 1)) $ Markov.bigrams xs 84 | bigramMap = StrictMap.fromListWith (+) bigrams 85 | zeroCounts = StrictMap.fromList $ zip (pairs xs) (repeat 0) 86 | in StrictMap.unionWith (+) bigramMap zeroCounts 87 | 88 | -- |helper function for probabilityList which generates probability sublists 89 | transitionProbs :: [Cadence] -> [Double] -> [[Double]] 90 | transitionProbs _ [] = [] 91 | transitionProbs xs ys = 92 | let j = Set.size $ Set.fromList xs 93 | i = j^2 94 | xx = take j ys 95 | recurse = drop j ys 96 | in fmap (/ sum xx) xx : transitionProbs xs recurse 97 | 98 | -- |mapping from list of Cadences into list of transitions with probabilities 99 | probabilityMap :: [Cadence] -> Map Bigram Double 100 | probabilityMap xs = Map'.fromList $ zip (Map'.keys $ zeroCounts xs) $ concat 101 | . transitionProbs xs $ Map'.elems $ transitionCounts xs 102 | 103 | -- -- |mapping from list of cadences into transition matrix 104 | -- transitionMatrix :: [Cadence] -> TransitionMatrix 105 | -- transitionMatrix xs = 106 | -- let n = Set.size $ Set.fromList xs 107 | -- in (n> MarkovMap 111 | markovMap xs = foldl mInsert Map.empty $ pairs xs 112 | where mInsert acc key = Map.insertWith (++) (fst key) (pList key) acc 113 | pList key = [(snd key, Maybe.fromMaybe 0 $ Map.lookup key pMap)] 114 | pMap = probabilityMap xs -------------------------------------------------------------------------------- /src/Overtone.hs: -------------------------------------------------------------------------------- 1 | module Overtone where 2 | 3 | import MusicData 4 | import Utility 5 | 6 | import qualified Data.Char as Char (isNumber, toLower) 7 | import qualified Data.List as List (isInfixOf) 8 | 9 | -- |mapping from String to Integral list representing overtones present in a tuning 10 | parseTuning' :: (Num a, Integral a) => Int -> String -> [a] 11 | parseTuning' n str = unique $ pitchList n str [] 12 | where 13 | pitchList n str = 14 | let 15 | xs = words $ Char.toLower <$> str 16 | o k = (`mod` 12) . (+k) <$> (take n [0,7,4,10,2]) 17 | ys ?? z = if any (`elem` ys) $ xs 18 | then (mappend z) 19 | else (mappend mempty) 20 | chain = 21 | [["*","all","chr"]?? [0..11] 22 | ,["c","b#","dbb"]?? o 0 23 | ,["c#","db","b*","b##"]?? o 1 24 | ,["d","c*","c##","ebb"]?? o 2 25 | ,["d#","eb","fbb"]?? o 3 26 | ,["e","d*","d##","fb"]?? o 4 27 | ,["f","e#","gbb"]?? o 5 28 | ,["f#","gb","e*","e##"]?? o 6 29 | ,["g","f*","f##","abb"]?? o 7 30 | ,["g#","ab"]?? o 8 31 | ,["a","g*","g##","bbb"]?? o 9 32 | ,["a#","bb","cbb"]?? o 10 33 | ,["b","a*","a##","cb"]?? o 11 34 | ,["c'","b#'","dbb'"]?? [0] 35 | ,["c#'","db'","b*'","b##'"]?? [1] 36 | ,["d'","c*'","c##'","ebb'"]?? [2] 37 | ,["d#'","eb'","fbb'"]?? [3] 38 | ,["e'","d*'","d##'","fb'"]?? [4] 39 | ,["f'","e#'","gbb'"]?? [5] 40 | ,["f#'","gb'","e*'","e##'"]?? [6] 41 | ,["g'","f*'","f##'","abb'"]?? [7] 42 | ,["g#'","ab'"]?? [8] 43 | ,["a'","g*'","g##'","bbb'"]?? [9] 44 | ,["a#'","bb'","cbb'"]?? [10] 45 | ,["b'","a*'","a##'","cb'"]?? [11] 46 | ] 47 | in foldr (.) id chain 48 | 49 | -- |mapping from String to Integral list representing tones present in a key 50 | parseKey' :: (Num a, Integral a) => Int -> String -> [a] 51 | parseKey' n str = unique $ pitchList n str [] 52 | where 53 | pitchList n str = 54 | let 55 | xs = words $ Char.toLower <$> str 56 | k n = ((`mod`12) . (+n*5 `mod` 12) <$> [0,2,4,5,7,9,11]) 57 | ys ?? z = if any (`elem` ys) $ xs 58 | then (mappend z) 59 | else (mappend mempty) 60 | chain = 61 | [["*","all","chr"]?? [0..11] 62 | ,["0b","0#","0","c","b#","am"]?? k 0 63 | ,["1b","b","11#","###########","f","e#","dm"]?? k 1 64 | ,["2b","bb","10#","##########","a#","gm"]?? k 2 65 | ,["3b","bbb","9#","#########","eb","d#","cm","b#m"]?? k 3 66 | ,["4b","bbbb","8#","########","ab","g#","fm","e#m"]?? k 4 67 | ,["5b","bbbbb","7#","#######","db","c#","bbm","a#m"]?? k 5 68 | ,["6b","bbbbbb","6#","######","gb","f#","ebm","d#m"]?? k 6 69 | ,["7b","bbbbbbb","5#","#####","cb","b","abm","g#m"]?? k 7 70 | ,["8b","bbbbbbbb","4#","####","fb","e","dbm","c#m"]?? k 8 71 | ,["9b","bbbbbbbbb","3#","###","a","gbm","f#m"]?? k 9 72 | ,["10b","bbbbbbbbbb","2#","##","d","cbm","bm"]?? k 10 73 | ,["11b","bbbbbbbbbbb","1#","#","g","fbm","em"]?? k 11 74 | ] 75 | in foldr (.) id chain 76 | 77 | -- |mapping from String to Integral list representing fundamental tones 78 | parseFunds' :: (Num a, Integral a) => Int -> String -> [a] 79 | parseFunds' n string = unique $ pitchList n string [] 80 | where 81 | pitchList n str = 82 | let 83 | xs = words $ Char.toLower <$> str 84 | k transpose = ((`mod`12) . (+transpose*5 `mod` 12) <$> [0,2,4,5,7,9,11]) 85 | ys ?? z = if any (`elem` ys) xs 86 | then mappend z 87 | else mappend mempty -- make same syntax fixes to other functions 88 | chain = 89 | [["*","all","chr"]?? [0..11] 90 | ,["c","b#","dbb"]?? [0] 91 | ,["c#","db","b*","b##"]?? [1] 92 | ,["d","c*","c##","ebb"]?? [2] 93 | ,["d#","eb","fbb"]?? [3] 94 | ,["e","d*","d##","fb"]?? [4] 95 | ,["f","e#","gbb"]?? [5] 96 | ,["f#","gb","e*","e##"]?? [6] 97 | ,["g","f*","f##","abb"]?? [7] 98 | ,["g#","ab"]?? [8] 99 | ,["a","g*","g##","bbb"]?? [9] 100 | ,["a#","bb","cbb"]?? [10] 101 | ,["b","a*","a##","cb"]?? [11] 102 | ,["0b","0#","0"]?? k 0 103 | ,["1b","11#","###########"]?? k 1 104 | ,["2b","10#","##########"]?? k 2 105 | ,["3b","bbb","9#","#########"]?? k 3 106 | ,["4b","bbbb","8#","########"]?? k 4 107 | ,["5b","bbbbb","7#","#######"]?? k 5 108 | ,["6b","bbbbbb","6#","######"]?? k 6 109 | ,["7b","bbbbbbb","5#","#####"]?? k 7 110 | ,["8b","bbbbbbbb","4#","####"]?? k 8 111 | ,["9b","bbbbbbbbb","3#","###"]?? k 9 112 | ,["10b","bbbbbbbbbb","2#","##"]?? k 10 113 | ,["11b","bbbbbbbbbbb","1#","#"]?? k 11 114 | ] 115 | in foldr (.) id chain 116 | 117 | -- |generalised 'one shot' filtering function incorporating the above three 118 | parseOvertones' :: (Num a, Integral a) => Int -> String -> [a] 119 | parseOvertones' n str = unique $ pitchList n str [] 120 | where 121 | pitchList n str = 122 | let 123 | xs = words $ Char.toLower <$> str 124 | o k = (`mod` 12) . (+k) <$> (take n [0,7,4,10,2]) 125 | k n = ((`mod`12) . (+n*5 `mod` 12) <$> [0,2,4,5,7,9,11]) 126 | ys ?? z = if any (`elem` ys) $ xs 127 | then (mappend z) 128 | else (mappend mempty) 129 | chain = 130 | [["*","all","chr"]?? [0..11] 131 | ,["c","b#","dbb"]?? o 0 132 | ,["c#","db","b*","b##"]?? o 1 133 | ,["d","c*","c##","ebb"]?? o 2 134 | ,["d#","eb","fbb"]?? o 3 135 | ,["e","d*","d##","fb"]?? o 4 136 | ,["f","e#","gbb"]?? o 5 137 | ,["f#","gb","e*","e##"]?? o 6 138 | ,["g","f*","f##","abb"]?? o 7 139 | ,["g#","ab"]?? o 8 140 | ,["a","g*","g##","bbb"]?? o 9 141 | ,["a#","bb","cbb"]?? o 10 142 | ,["b","a*","a##","cb"]?? o 11 143 | ,["c'","b#'","dbb'"]?? [0] 144 | ,["c#'","db'","b*'","b##'"]?? [1] 145 | ,["d'","c*'","c##'","ebb'"]?? [2] 146 | ,["d#'","eb'","fbb'"]?? [3] 147 | ,["e'","d*'","d##'","fb'"]?? [4] 148 | ,["f'","e#'","gbb'"]?? [5] 149 | ,["f#'","gb'","e*'","e##'"]?? [6] 150 | ,["g'","f*'","f##'","abb'"]?? [7] 151 | ,["g#'","ab'"]?? [8] 152 | ,["a'","g*'","g##'","bbb'"]?? [9] 153 | ,["a#'","bb'","cbb'"]?? [10] 154 | ,["b'","a*'","a##'","cb'"]?? [11] 155 | ,["0b","0#","0"]?? k 0 156 | ,["1b","b","11#","###########"]?? k 1 157 | ,["2b","bb","10#","##########"]?? k 2 158 | ,["3b","bbb","9#","#########"]?? k 3 159 | ,["4b","bbbb","8#","########"]?? k 4 160 | ,["5b","bbbbb","7#","#######"]?? k 5 161 | ,["6b","bbbbbb","6#","######"]?? k 6 162 | ,["7b","bbbbbbb","5#","#####"]?? k 7 163 | ,["8b","bbbbbbbb","4#","####"]?? k 8 164 | ,["9b","bbbbbbbbb","3#","###"]?? k 9 165 | ,["10b","bbbbbbbbbb","2#","##"]?? k 10 166 | ,["11b","bbbbbbbbbbb","1#","#"]?? k 11 167 | ] 168 | in foldr (.) id chain 169 | 170 | -- |shortcut to tuning parsing function which 3 overtones pre-defined 171 | parseTuning :: (Num a, Integral a) => String -> [a] 172 | parseTuning = parseTuning' 3 173 | 174 | -- |shortcut to key parsing function which 3 overtones pre-defined 175 | parseKey :: (Num a, Integral a) => String -> [a] 176 | parseKey = parseKey' 3 177 | 178 | -- |shortcut to fundamentals parsing function which 3 overtones pre-defined 179 | parseFunds :: (Num a, Integral a) => String -> [a] 180 | parseFunds = parseFunds' 3 181 | 182 | -- |shortcut to generalised parsing function with 3 overtones pre-defined 183 | parseOvertones :: (Num a, Integral a) => String -> [a] 184 | parseOvertones = parseOvertones' 3 185 | 186 | -- |shortcut to generalised parsing function with 1 notes pre-defined 187 | parseNotes :: (Num a, Integral a) => String -> [a] 188 | parseNotes = parseOvertones' 1 189 | 190 | -- |mapping from user defined input requirements into list of Chords 191 | chordList :: (MusicData a, Num b, Integral b) => 192 | (PitchClass -> NoteName) -> 193 | b -> [a] -> String -> [Chord] 194 | chordList f n roots str = 195 | let integralSets = overtoneSets n (i' roots) $ parseOvertones str 196 | in toTriad f <$> integralSets 197 | 198 | -- |prime version for usage with the command line interface markov loop 199 | chordList' :: (Num a, Integral a) => 200 | a -> [a] -> [a] -> (PitchClass -> NoteName) -> [Chord] 201 | chordList' n roots overtones f = 202 | let integralSets = overtoneSets n roots overtones 203 | in toTriad f <$> integralSets 204 | 205 | -- |helper to generate the 'chordList' function in the interpreter 206 | harmonicContext :: String -> String -> String -> ((PitchClass -> NoteName) -> [Chord]) 207 | harmonicContext tuning key funds = 208 | let overtones = parseOvertones tuning 209 | -- structures = filter (\x -> x `elem` parseKey key) overtones 210 | structures = filter (\x -> x `elem` parseFunds key) overtones 211 | roots = parseFunds funds 212 | in chordList' 3 roots structures -------------------------------------------------------------------------------- /src/Utility.hs: -------------------------------------------------------------------------------- 1 | module Utility where 2 | 3 | import Data.Map (fromListWith, toList) 4 | import Data.Set (Set) 5 | import qualified Data.Set as Set (fromList, toList, empty, member, insert) 6 | import qualified Data.List as List (sort, concat) 7 | 8 | -- |nCr utility function 9 | choose :: (Num a, Eq a) => a -> [b] -> [[b]] 10 | choose 0 _ = [[]] 11 | choose k [] = [] 12 | choose k (x:xs) = map (x:) (choose (k-1) xs) ++ choose k xs 13 | 14 | -- |helper function to replace 15 | begins :: Eq a => [a] -> [a] -> Maybe [a] 16 | begins string [] = Just string 17 | begins (x : xs) (y : ys) | x == y = begins xs ys 18 | begins _ _ = Nothing 19 | 20 | -- |replace occurences in a String 21 | replace :: Eq a => [a] -> [a] -> [a] -> [a] 22 | replace from to string = 23 | case begins string from of 24 | Just remains -> to ++ remains 25 | Nothing -> case string of 26 | [] -> [] 27 | x : xs -> x : replace from to xs 28 | 29 | -- |function to reduce data down to ordered list of unique instances 30 | unique :: Ord a => [a] -> [a] 31 | unique = rmdups' Set.empty where 32 | rmdups' _ [] = [] 33 | rmdups' a (b : c) = if Set.member b a 34 | then rmdups' a c 35 | else b : rmdups' (Set.insert b a) c 36 | 37 | -- uniqueAnalysis :: Ord a => [a] -> [a] 38 | -- uniqueAnalysis :: (Ord a0, Ord a1, Ord b0, Ord c0, Ord d0, Ord a2, Ord b1, Ord b2, Ord f0) 39 | -- => [((a0, [[a1]]), b0, c0, d0, ((a2, b1), b2), f0)] 40 | -- -> [((a0, [[a1]]), b0, c0, d0, ((a2, b1), b2), f0)] 41 | 42 | -- |function to produce sequence of pairs from a list 43 | seqPairs :: [a] -> [(a, a)] 44 | seqPairs xs = zip xs (tail xs) 45 | 46 | -- |function to count elements in a list 47 | countElem :: Eq a => [a] -> a -> Int 48 | countElem xs x = (length . filter (== x)) xs 49 | 50 | -- |mapping from a list to association list of counts of elements 51 | frequency :: (Ord a) => [a] -> [(a, Int)] 52 | frequency xs = toList (fromListWith (+) [(x, 1) | x <- xs]) 53 | 54 | -- |definition for zip12 55 | zip12 :: [a] -> [b] -> [c] -> [d] -> [e] -> [f] -> [g] -> [h] -> [i] -> [j] -> [k] -> [l] -> [(a, b, c, d, e, f, g, h, i, j, k, l)] 56 | zip12 (a:as) (b:bs) (c:cs) (d:ds) (e:es) (f:fs) (g:gs) (h:hs) (i:is) (j:js) (k:ks) (l:ls) = (a, b, c, d, e, f, g, h, i, j, k, l) : zip12 as bs cs ds es fs gs hs is js ks ls 57 | zip12 _ _ _ _ _ _ _ _ _ _ _ _ = [] 58 | 59 | -- uniqueAnalysis :: Analysis -> Analysis 60 | -- uniqueAnalysis analysis = analysis 61 | -- where 62 | 63 | 64 | -- testData :: Analysis 65 | -- testData = [((53,68,71),([0,1,3,8,10],[0,1,5,7,10],[0,1,4,7,8]),([1,3,2,1,3,0],[1,2,2,1,3,1],[2,0,2,3,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,3,5,7,8,10],[0,1,4,5,7,8,10],[0,1,3,4,7,8,10])), 66 | -- ((46,68,71),([0,3,7,8,10],[0,1,5,7,10],[0,1,4,7,8]),([1,2,2,2,3,0],[1,2,2,1,3,1],[2,0,2,3,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,3,5,7,8,10],[0,1,4,5,7,8,10],[0,1,3,4,7,8,10])), 67 | -- ((46,47,71),([0,3,7,8,10],[0,1,5,8,10],[0,1,4,7,8]),([1,2,2,2,3,0],[1,2,2,2,3,0],[2,0,2,3,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,3,5,7,8,10],[0,1,4,5,7,8,10],[0,1,3,4,7,8,10])), 68 | -- ((52,71,71),([0,2,7,9,11],[0,3,6,7,11],[0,4,6,7,9]),([1,3,2,1,3,0],[2,0,2,3,2,1],[1,2,3,1,2,1]),(8,[1,5,8,10]),((191,[0,2,3,4,6,7,9,11]),[4,5,6,5,6,2]),([0,2,3,6,7,9,11],[0,3,4,6,7,9,11],[0,2,4,6,7,9,11])), 69 | -- ((52,71,71),([0,2,7,9,11],[0,4,6,7,9],[0,3,6,7,11]),([1,3,2,1,3,0],[1,2,3,1,2,1],[2,0,2,3,2,1]),(8,[1,5,8,10]),((191,[0,2,3,4,6,7,9,11]),[4,5,6,5,6,2]),([0,2,4,6,7,9,11],[0,3,4,6,7,9,11],[0,2,3,6,7,9,11])), 70 | -- ((52,53,71),([0,5,7,8,10],[0,1,3,8,10],[0,1,4,7,8]),([1,3,2,1,3,0],[1,3,2,1,3,0],[2,0,2,3,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,3,5,7,8,10],[0,1,3,4,7,8,10],[0,1,4,5,7,8,10])), 71 | -- ((52,71,71),([0,5,7,8,10],[0,1,3,7,10],[0,1,4,7,8]),([1,3,2,1,3,0],[1,2,3,1,2,1],[2,0,2,3,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,3,5,7,8,10],[0,1,3,4,7,8,10],[0,1,4,5,7,8,10])), 72 | -- ((52,71,71),([0,5,7,8,10],[0,1,4,7,8],[0,1,3,7,10]),([1,3,2,1,3,0],[2,0,2,3,2,1],[1,2,3,1,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,4,5,7,8,10],[0,1,3,4,7,8,10],[0,1,3,5,7,8,10])), 73 | -- ((52,68,71),([0,5,7,8,10],[1,3,7,8,10],[0,1,4,7,8]),([1,3,2,1,3,0],[1,2,2,1,3,1],[2,0,2,3,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,3,5,7,8,10],[0,1,3,4,7,8,10],[0,1,4,5,7,8,10])), 74 | -- ((68,68,71),([0,1,5,7,10],[1,3,7,8,10],[0,1,4,7,8]),([1,2,2,1,3,1],[1,2,2,1,3,1],[2,0,2,3,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,3,5,7,8,10],[0,1,3,4,7,8,10],[0,1,4,5,7,8,10])), 75 | -- ((46,68,71),([0,4,7,9,11],[0,2,6,7,9],[0,3,6,7,11]),([1,2,2,2,3,0],[1,2,2,1,3,1],[2,0,2,3,2,1]),(8,[1,5,8,10]),((191,[0,2,3,4,6,7,9,11]),[4,5,6,5,6,2]),([0,2,4,6,7,9,11],[0,2,3,6,7,9,11],[0,3,4,6,7,9,11])), 76 | -- ((47,71,71),([0,1,5,8,10],[0,1,3,7,10],[0,1,4,7,8]),([1,2,2,2,3,0],[1,2,3,1,2,1],[2,0,2,3,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,3,5,7,8,10],[0,1,3,4,7,8,10],[0,1,4,5,7,8,10])), 77 | -- ((47,71,71),([0,1,5,8,10],[0,1,4,7,8],[0,1,3,7,10]),([1,2,2,2,3,0],[2,0,2,3,2,1],[1,2,3,1,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,4,5,7,8,10],[0,1,3,4,7,8,10],[0,1,3,5,7,8,10])), 78 | -- ((47,68,71),([0,1,5,8,10],[1,3,7,8,10],[0,1,4,7,8]),([1,2,2,2,3,0],[1,2,2,1,3,1],[2,0,2,3,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,3,5,7,8,10],[0,1,3,4,7,8,10],[0,1,4,5,7,8,10])), 79 | -- ((68,68,71),([1,3,7,8,10],[0,1,5,7,10],[0,1,4,7,8]),([1,2,2,1,3,1],[1,2,2,1,3,1],[2,0,2,3,2,1]),(8,[2,6,9,11]),((191,[0,1,3,4,5,7,8,10]),[4,5,6,5,6,2]),([0,1,3,5,7,8,10],[0,1,4,5,7,8,10],[0,1,3,4,7,8,10]))] 80 | 81 | -------------------------------------------------------------------------------- /stack.yaml: -------------------------------------------------------------------------------- 1 | # This file was automatically generated by 'stack init' 2 | # 3 | # Some commonly used options have been documented as comments in this file. 4 | # For advanced use and comprehensive documentation of the format, please see: 5 | # https://docs.haskellstack.org/en/stable/yaml_configuration/ 6 | 7 | # Resolver to choose a 'specific' stackage snapshot or a compiler version. 8 | # A snapshot resolver dictates the compiler version and the set of packages 9 | # to be used for project dependencies. For example: 10 | # 11 | # resolver: lts-3.5 12 | # resolver: nightly-2015-09-21 13 | # resolver: ghc-7.10.2 14 | # resolver: ghcjs-0.1.0_ghc-7.10.2 15 | # 16 | # The location of a snapshot can be provided as a file or url. Stack assumes 17 | # a snapshot provided as a file might change, whereas a url resource does not. 18 | # 19 | # resolver: ./custom-snapshot.yaml 20 | # resolver: https://example.com/snapshots/2018-01-01.yaml 21 | 22 | resolver: lts-18.28 23 | 24 | # User packages to be built. 25 | # Various formats can be used as shown in the example below. 26 | # 27 | # packages: 28 | # - some-directory 29 | # - https://example.com/foo/bar/baz-0.0.2.tar.gz 30 | # - location: 31 | # git: https://github.com/commercialhaskell/stack.git 32 | # commit: e7b331f14bcffb8367cd58fbfc8b40ec7642100a 33 | # - location: https://github.com/commercialhaskell/stack/commit/e7b331f14bcffb8367cd58fbfc8b40ec7642100a 34 | # subdirs: 35 | # - auto-update 36 | # - wai 37 | 38 | packages: 39 | - . 40 | 41 | # Dependency packages to be pulled from upstream that are not in the resolver 42 | # using the same syntax as the packages field. 43 | # (e.g., acme-missiles-0.3) 44 | extra-deps: 45 | - tidal-1.8.1 46 | - hosc-0.19 47 | # - hosc-0.20 48 | # - tidal-1.9.4 49 | # - tidal-link-1.0.2 50 | - hasbolt-0.1.7.0 51 | # - inline-r-0.10.5 52 | - inline-r-1.0.0 53 | # - singletons-2.7 54 | #- split-0.2.3.4 55 | # - hasbolt-extras-0.0.1.6 56 | #- vector-0.12.0.1 57 | 58 | # Override default flag values for local packages and extra-deps 59 | # flags: {} 60 | 61 | # Extra package databases containing global packages 62 | # extra-package-dbs: [] 63 | 64 | # Control whether we use the GHC we find on the path 65 | system-ghc: true 66 | # 67 | # Require a specific version of stack, using version ranges 68 | # require-stack-version: -any # Default 69 | # require-stack-version: ">=1.7" 70 | # 71 | # Override the architecture used by stack, especially useful on Windows 72 | # arch: i386 73 | # arch: x86_64 74 | # 75 | # Extra directories used by stack for building 76 | # extra-include-dirs: [/path/to/dir] 77 | # extra-lib-dirs: [/path/to/dir] 78 | # 79 | # Allow a newer minor version of GHC than the snapshot specifies 80 | # compiler-check: newer-minor 81 | -------------------------------------------------------------------------------- /stack.yaml.lock: -------------------------------------------------------------------------------- 1 | # This file was autogenerated by Stack. 2 | # You should not edit this file by hand. 3 | # For more information, please see the documentation at: 4 | # https://docs.haskellstack.org/en/stable/lock_files 5 | 6 | packages: 7 | - completed: 8 | hackage: tidal-1.8.1@sha256:fdf7d757177042094d9b5253e0a85987c76731e250cf95297e4cb86e7da0dd56,4344 9 | pantry-tree: 10 | sha256: 6d0f293199125ef8ea3419bd6396d2b14e586d6c064378c727bcb51836090556 11 | size: 3429 12 | original: 13 | hackage: tidal-1.8.1 14 | - completed: 15 | hackage: hosc-0.19@sha256:fb479b50a66b259eeffc7dbdfdaa9f966dc9d34f6b4299af571cee029b2e38d1,1958 16 | pantry-tree: 17 | sha256: 5ee1f3ce3a5c9cb1f22d50fd7e43a22c3599a4a329be0b236f26eb03e48bb787 18 | size: 1371 19 | original: 20 | hackage: hosc-0.19 21 | - completed: 22 | hackage: hasbolt-0.1.7.0@sha256:48e523eddb921972d58a6ecaa228af27e216b6015442faffb6e5404b12cff21f,4254 23 | pantry-tree: 24 | sha256: 398a2694abfa196402ac85237d1bc03833af64cefa772541b220b368cb2021ea 25 | size: 1332 26 | original: 27 | hackage: hasbolt-0.1.7.0 28 | - completed: 29 | hackage: inline-r-1.0.0@sha256:b475cfec476d50ad54118f36936a9a7e684e16cea6bceef8c408cb438d7c9e43,8712 30 | pantry-tree: 31 | sha256: 678260a1e860175b7c8ff52972bd4077b2c545a1f0c870fc6862d10806f7f502 32 | size: 4506 33 | original: 34 | hackage: inline-r-1.0.0 35 | snapshots: 36 | - completed: 37 | sha256: 428ec8d5ce932190d3cbe266b9eb3c175cd81e984babf876b64019e2cbe4ea68 38 | size: 590100 39 | url: https://raw.githubusercontent.com/commercialhaskell/stackage-snapshots/master/lts/18/28.yaml 40 | original: lts-18.28 41 | -------------------------------------------------------------------------------- /temp/test_1.txt: -------------------------------------------------------------------------------- 1 | one -------------------------------------------------------------------------------- /temp/test_2.txt: -------------------------------------------------------------------------------- 1 | two -------------------------------------------------------------------------------- /temp/test_3.txt: -------------------------------------------------------------------------------- 1 | three -------------------------------------------------------------------------------- /test/Spec.hs: -------------------------------------------------------------------------------- 1 | main :: IO () 2 | main = putStrLn "Test suite not yet implemented" -------------------------------------------------------------------------------- /theHarmonicAlgorithm.cabal: -------------------------------------------------------------------------------- 1 | cabal-version: 1.12 2 | 3 | -- This file has been generated from package.yaml by hpack version 0.37.0. 4 | -- 5 | -- see: https://github.com/sol/hpack 6 | 7 | name: theHarmonicAlgorithm 8 | version: 2.0.0 9 | description: Please see the README on GitHub at 10 | homepage: https://github.com/OscarSouth/theHarmonicAlgorithm#readme 11 | bug-reports: https://github.com/OscarSouth/theHarmonicAlgorithm/issues 12 | author: Oscar South 13 | maintainer: info@oscarsouth.com 14 | copyright: 2024 (c) Oscar South 15 | license: BSD3 16 | license-file: LICENSE 17 | build-type: Simple 18 | extra-source-files: 19 | README.md 20 | ChangeLog.md 21 | 22 | source-repository head 23 | type: git 24 | location: https://github.com/OscarSouth/theHarmonicAlgorithm 25 | 26 | library 27 | exposed-modules: 28 | Lib 29 | other-modules: 30 | Overtone 31 | Markov 32 | MusicData 33 | Analysis 34 | Utility 35 | GraphDB 36 | Arranger 37 | hs-source-dirs: 38 | src 39 | build-depends: 40 | base >=4.8 && <5 41 | , containers 42 | , parallel 43 | , split 44 | default-language: Haskell2010 45 | 46 | executable theHarmonicAlgorithm-exe 47 | main-is: Main.hs 48 | other-modules: 49 | Paths_theHarmonicAlgorithm 50 | hs-source-dirs: 51 | app 52 | ghc-options: -threaded -rtsopts -with-rtsopts=-N 53 | build-depends: 54 | aeson 55 | , base >=4.8 && <5 56 | , bytestring 57 | , containers 58 | , data-default 59 | , hasbolt 60 | , inline-r 61 | , mtl 62 | , parallel 63 | , split 64 | , text 65 | , theHarmonicAlgorithm 66 | , tidal 67 | default-language: Haskell2010 68 | 69 | test-suite theHarmonicAlgorithm-test 70 | type: exitcode-stdio-1.0 71 | main-is: Spec.hs 72 | other-modules: 73 | Paths_theHarmonicAlgorithm 74 | hs-source-dirs: 75 | test 76 | ghc-options: -threaded -rtsopts -with-rtsopts=-N 77 | build-depends: 78 | QuickCheck 79 | , base >=4.8 && <5 80 | , hspec 81 | , parallel 82 | , theHarmonicAlgorithm 83 | default-language: Haskell2010 84 | --------------------------------------------------------------------------------