Class: Musa::Scales::BebopMajorScaleKind Private
- Defined in:
- lib/musa-dsl/music/scale_kinds/bebop/bebop_major_scale_kind.rb
Overview
This class is part of a private API. You should avoid using this class if possible, as it may be removed or be changed in the future.
Bebop major scale kind.
BebopMajorScaleKind defines the bebop major scale, an eight-note scale that adds a chromatic passing tone (#5) to the major scale. This allows chord tones to fall on downbeats during eighth-note runs.
Pitch Structure
8 degrees plus extended:
Scale Degrees (uppercase for major quality):
- I (tonic): Root (0 semitones)
- II (supertonic): Major second (2 semitones)
- III (mediant): Major third (4 semitones)
- IV (subdominant): Perfect fourth (5 semitones)
- V (dominant): Perfect fifth (7 semitones)
- V# (passing): Augmented fifth (8 semitones) ← PASSING TONE
- VI (submediant): Major sixth (9 semitones)
- VII (leading): Major seventh (11 semitones)
Bebop Principle
The added #5 chromatic note ensures that:
- Chord tones (1, 3, 5, 7) fall on strong beats
- Non-chord tones fall on weak beats
- Smooth chromatic connection between 5 and 6
Musical Character
The bebop major scale:
- Used over major 7th and major 6th chords
- Creates flowing eighth-note lines
- Common in bebop and jazz standards
Usage
c_bebop_maj = Scales[:et12][440.0][:bebop_major][60]
c_bebop_maj[4].pitch # G (67) - perfect 5th
c_bebop_maj[5].pitch # G# (68) - augmented 5th (passing)
c_bebop_maj[6].pitch # A (69) - major 6th
Constant Summary collapse
- @@pitches =
This classvariable is part of a private API. You should avoid using this classvariable if possible, as it may be removed or be changed in the future.
[{ functions: %i[I _1 tonic first], pitch: 0 }, { functions: %i[II _2 supertonic second], pitch: 2 }, { functions: %i[III _3 mediant third], pitch: 4 }, { functions: %i[IV _4 subdominant fourth], pitch: 5 }, { functions: %i[V _5 dominant fifth], pitch: 7 }, { functions: %i[V# _6 sixth], pitch: 8 }, { functions: %i[VI _7 submediant seventh], pitch: 9 }, { functions: %i[VII _8 leading eighth], pitch: 11 }, { functions: %i[VIII _9 ninth], pitch: 12 }, { functions: %i[IX _10 tenth], pitch: 12 + 2 }, { functions: %i[X _11 eleventh], pitch: 12 + 4 }, { functions: %i[XI _12 twelfth], pitch: 12 + 5 }, { functions: %i[XII _13 thirteenth], pitch: 12 + 7 }, { functions: %i[XII# _14 fourteenth], pitch: 12 + 8 }, { functions: %i[XIII _15 fifteenth], pitch: 12 + 9 }, { functions: %i[XIV _16 sixteenth], pitch: 12 + 11 }].freeze
Class Method Summary collapse
- .grades ⇒ Object private
- .id ⇒ Object private
- .pitches ⇒ Object private
Constructor Details
This class inherits a constructor from Musa::Scales::ScaleKind
Class Method Details
.grades ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
98 99 100 |
# File 'lib/musa-dsl/music/scale_kinds/bebop/bebop_major_scale_kind.rb', line 98 def grades 8 end |
.id ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
102 103 104 |
# File 'lib/musa-dsl/music/scale_kinds/bebop/bebop_major_scale_kind.rb', line 102 def id :bebop_major end |
.pitches ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
94 95 96 |
# File 'lib/musa-dsl/music/scale_kinds/bebop/bebop_major_scale_kind.rb', line 94 def pitches @@pitches end |