Table of Contents

Struct SecondaryDominant

Namespace
Celeritas.Core
Assembly
Celeritas.dll

Secondary dominant chord (V or V7) targeting a diatonic degree. This is intentionally modeled as chromatic (non-diatonic) harmony.

public readonly record struct SecondaryDominant : IEquatable<SecondaryDominant>
Implements
Inherited Members

Constructors

SecondaryDominant(KeySignature, ScaleDegree, DiatonicChordType)

Secondary dominant chord (V or V7) targeting a diatonic degree. This is intentionally modeled as chromatic (non-diatonic) harmony.

public SecondaryDominant(KeySignature Key, ScaleDegree TargetDegree, DiatonicChordType Type)

Parameters

Key KeySignature

The home key.

TargetDegree ScaleDegree

The diatonic degree the dominant resolves to.

Type DiatonicChordType

Whether the dominant is a triad or a seventh chord.

Properties

Key

The home key.

public KeySignature Key { get; init; }

Property Value

KeySignature

RomanNumeral

Roman-numeral text (e.g. "V7/ii", "V7/V"). The target's case follows its diatonic quality in Key: lowercase for minor/diminished targets (ii, iii, vi, vii), uppercase for major targets (IV, V).

public string RomanNumeral { get; }

Property Value

string

Root

Root of the secondary dominant, a fifth above TargetRoot.

public PitchClass Root { get; }

Property Value

PitchClass

TargetDegree

The diatonic degree the dominant resolves to.

public ScaleDegree TargetDegree { get; init; }

Property Value

ScaleDegree

TargetRoot

Pitch class of the target degree's root in Key.

public PitchClass TargetRoot { get; }

Property Value

PitchClass

Type

Whether the dominant is a triad or a seventh chord.

public DiatonicChordType Type { get; init; }

Property Value

DiatonicChordType

Methods

Symbol(bool)

Chord symbol for this secondary dominant (e.g. "A7").

public string Symbol(bool preferSharps = true)

Parameters

preferSharps bool

Whether to spell accidentals as sharps rather than flats.

Returns

string