def ascending(self): notes = [self.tonic] for i in range(3): notes.extend([intervals.major_second(notes[-1]), intervals.minor_third(notes[-1])]) notes.append(intervals.major_seventh(notes[0])) notes[-2] = intervals.major_sixth(notes[0]) return notes * self.octaves + [notes[0]]
def major_thirteenth(note): """Builds a major thirteenth chord on note. Example: {{{ >>> major_thirteenth('C') ['C', 'E', 'G', 'B', 'D', 'A'] }}}""" return major_ninth(note) + [intervals.major_sixth(note)]
def major_sixth(note): """Builds a major sixth chord on note. Example: {{{ >>> major_sixth("C") ['C', 'E', 'G', 'A'] }}}""" return major_triad(note) + [intervals.major_sixth(note)]
def to_minor(note): """Returns the minor of note. Example: {{{ >>> to_minor("C") 'A' }}}""" return intervals.major_sixth(note)
def major_sixth(note): """Build a major sixth chord on note. Example: >>> major_sixth('C') ['C', 'E', 'G', 'A'] """ return major_triad(note) + [intervals.major_sixth(note)]
def major_thirteenth(note): """Build a major thirteenth chord on note. Example: >>> major_thirteenth('C') ['C', 'E', 'G', 'B', 'D', 'A'] """ return major_ninth(note) + [intervals.major_sixth(note)]
def minor_thirteenth(note): """Build a minor thirteenth chord on note. Example: >>> minor_thirteenth('C') ['C', 'Eb', 'G', 'Bb', 'D', 'A'] """ return minor_ninth(note) + [intervals.major_sixth(note)]
def dominant_thirteenth(note): """Build a dominant thirteenth chord on note. Example: >>> dominant_thirteenth('C') ['C', 'E', 'G', 'Bb', 'D', 'A'] """ return dominant_ninth(note) + [intervals.major_sixth(note)]
def dominant_thirteenth(note): """Builds a dominant thirteenth chord on note. Example: {{{ >>> dominant_thirteenth('C') ['C', 'E', 'G', 'Bb', 'D', 'A'] }}}""" return dominant_ninth(note) + [intervals.major_sixth(note)]
def minor_thirteenth(note): """Builds a minor thirteenth chord on note. Example: {{{ >>> minor_thirteenth('C') ['C', 'Eb', 'G', 'Bb', 'D', 'A'] }}}""" return minor_ninth(note) + [intervals.major_sixth(note)]
def minor_sixth(note): """Builds a minor sixth chord on note. Example: {{{ >>> minor_sixth(\"C\") ['C', 'Eb', 'G', 'A'] }}}""" return minor_triad(note) + [intervals.major_sixth(note)]
def relative_minor(note): """Returns the minor of note. Example: {{{ >>> to_minor(\"C\") 'A' }}}""" return intervals.major_sixth(note)
def major_sixth(note): """Builds a major sixth chord on note. Example: {{{ >>> major_sixth(\"C\") ['C', 'E', 'G', 'A'] }}}""" return major_triad(note) + [intervals.major_sixth(note)]
def to_minor(note): """Returns the minor of note. Example: {{{ >>> to_minor(\"C\") 'A' }}}""" import intervals # Circular import return intervals.major_sixth(note)
def ascending(self): notes = [self.tonic] for i in range(3): notes.extend([ intervals.major_second(notes[-1]), intervals.minor_third(notes[-1]) ]) notes.append(intervals.major_seventh(notes[0])) notes[-2] = intervals.major_sixth(notes[0]) return notes * self.octaves + [notes[0]]
def diminished(note): """Returns the diminshed scale on note. Example: {{{ >>> diminished(\"C\") ['C', 'D', 'Eb', 'F', 'Gb', 'Ab', 'A', 'B'] }}}""" def whole_step_half_step(n): res = [intervals.major_second(n), intervals.minor_third(n)] return res res = [note] for i in range(3): res += whole_step_half_step(note) note = res[-1] res = res + [intervals.major_seventh(res[0])] res[-2] = intervals.major_sixth(res[0]) return res