pychord icon indicating copy to clipboard operation
pychord copied to clipboard

Perhaps wrong implementation of some chord qualities as 13th chords

Open koto-wheel opened this issue 3 years ago • 2 comments

Observation

  • I'm using pychord-0.5.1

  • In constant QUALITY_DICT, 13th quality does not have the same number of degrees. 11th degree or 9th degree is sometimes missing. While writing this message I can see similar situation with 11th chords. Here follow some examples:

Quality degree 1 degree 3 degree 5 degree 7 degree 9 degree 11 degree 13 Comments
7b9b13 0 4 7 10 13 17 20 Correct
13 0 4 7 10 14 21 WRONG: 11th degree is missing
13-9 & 13b9 0 4 7 10 13 21 WRONG: 11th degree is missing
13+9 & 13#9 0 4 7 10 15 21 WRONG: 11th degree is missing
13+11 & 13#11 0 4 7 10 18 21 WRONG: 9th degree is missing
7-13 & 7b13 0 4 7 10 20 WRONG: 9th degree & 11th degree are missing
11 0 7 10 14 17 X WRONG: 3rd degree is missing
7+11 & 7#11 0 4 7 10 18 X WRONG: 9th degree is missing

Suggestion

  • I think that basically:

    • a 7th chord has 4 notes (b5#5 is an exception)
    • a 9th chord has 5 notes (b9#9 is an exception)
    • a 11th chord has 6 notes
    • a 13th chord has 7 notes
  • Could you please take these observation into account and fix things that may be fixed ?

  • I can make these changes by myself and make a pull request but I need to know how I can contribute to your project on github.

Cheers, Serge.

koto-wheel avatar Feb 17 '21 09:02 koto-wheel

Hi,

Thank you for clarifying these. I don't remember exact reason why I omit a note from 11th and 13th chords, but I think I referred some web pages to confirm these (like the following pages).

https://en.wikipedia.org/wiki/Eleventh_chord

However, since the major diatonic eleventh would create a dissonant minor ninth interval with the third of the chord, including the third is a rare phenomenon.

https://en.wikipedia.org/wiki/Thirteenth

It is customary to omit the eleventh on dominant or major thirteenth chords because the eleventh conflicts with the third

I'm not sure whether PyChord should use customary chord or not. Adding the capability for the users to modify the QUALITY_DICT can be an option.

7-13 & 7b13 means 7(b13). In my understanding, 7(b13) means b13th is appended on 7th chord (same for 7+11 & 7#11).

https://www.oolimo.com/guitarchords/G7(b13)

G7(b13) theoretically consists of the tones G (1), B (3), D (5), F (7) and Eb (b13),

yuma-m avatar Feb 18 '21 13:02 yuma-m

I'm sure of what I'm saying. 13th chords are 7 notes chords. You cannot jump to the 13th degree without using the 11th degree. G7(b13) means G(1), B(3), D(5), F(7), A(9), C(11) and Eb(b13). That does not mean that you have to play every notes. Theorically you are on a 7 notes chord. On piano for example, G13 are often played as G(1), F(7), B(10), E(13) since these degrees are the most "significant" degrees. You just need to listen to it to understand that it sounds very interesting. Usually the other degrees are played by other instruments or are so usual so people can hear them in their mind even if you do not play them.

koto-wheel avatar Feb 18 '21 13:02 koto-wheel