Class: Musa::Scales::PhrygianScaleKind Private

Inherits:
ScaleKind show all
Defined in:
lib/musa-dsl/music/scale_kinds/modes/phrygian_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.

Phrygian mode (third mode of major scale).

PhrygianScaleKind defines the Phrygian mode, a minor mode with a characteristic lowered second degree. It's built on the third degree of the major scale and has a dark, exotic, Spanish/Middle Eastern quality.

Pitch Structure

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

Scale Degrees (Roman numerals, lowercase for minor):

  • 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): Perfect fifth (7 semitones)
  • vi (submediant): Minor sixth (8 semitones)
  • vii (subtonic): Minor seventh (10 semitones)

Key Difference from Natural Minor

The ii degree is lowered from 2 semitones (major second) to 1 semitone (minor second), creating:

  • A dark, exotic quality
  • The characteristic "Phrygian color"
  • Strong association with Spanish/Flamenco music

Musical Character

The Phrygian mode:

  • Maintains minor quality (minor third)
  • Has a lowered 2nd that creates tension
  • Common in flamenco, metal, and Middle Eastern music
  • The half-step from ii to i creates strong resolution

Usage

e_phrygian = Scales[:et12][440.0][:phrygian][64]
e_phrygian.tonic  # E (64)
e_phrygian.ii     # F (65) - minor second (characteristic)

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: 1 },
             { functions: %i[iii _3 mediant third],
pitch: 3 },
             { functions: %i[iv _4 subdominant fourth],
pitch: 5 },
             { functions: %i[v _5 dominant fifth],
pitch: 7 },
             { 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 + 7 },
             { 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

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.

Number of diatonic degrees.

Returns:

  • (Integer)

    7



97
98
99
# File 'lib/musa-dsl/music/scale_kinds/modes/phrygian_scale_kind.rb', line 97

def grades
  7
end

.idSymbol

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.

Scale kind identifier.

Returns:

  • (Symbol)

    :phrygian



103
104
105
# File 'lib/musa-dsl/music/scale_kinds/modes/phrygian_scale_kind.rb', line 103

def id
  :phrygian
end

.pitchesArray<Hash>

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.

Pitch structure.

Returns:

  • (Array<Hash>)

    pitch definitions with functions and offsets



91
92
93
# File 'lib/musa-dsl/music/scale_kinds/modes/phrygian_scale_kind.rb', line 91

def pitches
  @@pitches
end