Class: Musa::Scales::LocrianScaleKind

Inherits:
ScaleKind show all
Defined in:
lib/musa-dsl/music/scale_kinds/modes/locrian_scale_kind.rb

Overview

Locrian mode (seventh mode of major scale).

LocrianScaleKind defines the Locrian mode, a diminished mode with a characteristic lowered second and fifth degrees. It's built on the seventh degree of the major scale and has an unstable, dissonant quality.

Pitch Structure

7 diatonic degrees plus extended harmony (8th-13th):

Scale Degrees (Roman numerals, lowercase for diminished):

  • i (tonic): Root (0 semitones)
  • ii (supertonic): Minor second (1 semitone) ← CHARACTERISTIC
  • iii (mediant): Minor third (3 semitones)
  • iv (subdominant): Perfect fourth (5 semitones)
  • v (dominant): Diminished fifth (6 semitones) ← CHARACTERISTIC
  • vi (submediant): Minor sixth (8 semitones)
  • vii (subtonic): Minor seventh (10 semitones)

Key Differences from Natural Minor

Two degrees are altered:

  • ii lowered from 2 to 1 semitone (minor second)
  • v lowered from 7 to 6 semitones (diminished fifth/tritone)

This creates:

  • A highly unstable, dissonant quality
  • No stable perfect fifth above the tonic
  • Rarely used as a tonal center

Musical Character

The Locrian mode:

  • Has diminished quality (minor third + diminished fifth)
  • The most unstable of the seven modes
  • Used sparingly, often for tension or dissonance
  • Common over half-diminished (m7b5) chords in jazz

Usage

b_locrian = Scales[:et12][440.0][:locrian][71]
b_locrian.tonic  # B (71)
b_locrian.ii     # C (72) - minor second (characteristic)
b_locrian.v      # F (77) - diminished fifth (characteristic)

Constant Summary collapse

@@pitches =
[{ functions: i[i _1 tonic first],
pitch: 0 },
             { functions: i[ii _2 supertonic second],
pitch: 1 },
             { functions: i[iii _3 mediant third],
pitch: 3 },
             { functions: i[iv _4 subdominant fourth],
pitch: 5 },
             { functions: i[v _5 dominant fifth],
pitch: 6 },
             { functions: i[vi _6 submediant sixth],
pitch: 8 },
             { functions: i[vii _7 subtonic seventh],
pitch: 10 },
             { functions: i[viii _8 eighth],
pitch: 12 },
             { functions: i[ix _9 ninth],
pitch: 12 + 1 },
             { functions: i[x _10 tenth],
pitch: 12 + 3 },
             { functions: i[xi _11 eleventh],
pitch: 12 + 5 },
             { functions: i[xii _12 twelfth],
pitch: 12 + 6 },
             { functions: i[xiii _13 thirteenth],
pitch: 12 + 8 }].freeze

Class Method Summary collapse

Constructor Details

This class inherits a constructor from Musa::Scales::ScaleKind

Class Method Details

.gradesInteger

Number of diatonic degrees.



100
101
102
# File 'lib/musa-dsl/music/scale_kinds/modes/locrian_scale_kind.rb', line 100

def grades
  7
end

.idSymbol

Scale kind identifier.



106
107
108
# File 'lib/musa-dsl/music/scale_kinds/modes/locrian_scale_kind.rb', line 106

def id
  :locrian
end

.pitchesArray<Hash>

Pitch structure.



94
95
96
# File 'lib/musa-dsl/music/scale_kinds/modes/locrian_scale_kind.rb', line 94

def pitches
  @@pitches
end