Table of Contents

Class ModulationEvent

Namespace
Celeritas.Core.Analysis
Assembly
Celeritas.dll

Represents a detected key change or tonicization.

public sealed class ModulationEvent
Inheritance
ModulationEvent
Inherited Members

Properties

Confidence

Confidence in this modulation (0.0-1.0): how clearly the phrase's evidence chose ToKey over FromKey, scaled by how much of the stretch that established the new key it owns.

public required float Confidence { get; init; }

Property Value

float

Remarks

This is a margin, not a goodness-of-fit score, and it reads on the same modest scale as Confidence: a confident modulation to a closely related key lands between about 0.15 and 0.65 (to the dominant 0.40, the subdominant 0.33, the relative minor 0.62, measured on four-bar block-chord passages), and only a jump to a distant key approaches 1.0. Do not read 0.5 as the dividing line between unsure and sure.

Description

Description of the modulation.

public string? Description { get; init; }

Property Value

string

Duration

Duration of the new key area (if temporary).

public Rational? Duration { get; init; }

Property Value

Rational?

FromKey

Key before modulation.

public required KeySignature FromKey { get; init; }

Property Value

KeySignature

Offset

Starting offset of the modulation.

public required Rational Offset { get; init; }

Property Value

Rational

PivotChord

Pivot chord if applicable (in both key contexts).

public (RomanNumeralChord? FromContext, RomanNumeralChord? ToContext)? PivotChord { get; init; }

Property Value

(RomanNumeralChord? FromContext, RomanNumeralChord? ToContext)?

ToKey

Key after modulation.

public required KeySignature ToKey { get; init; }

Property Value

KeySignature

Type

Type of modulation.

public required ModulationType Type { get; init; }

Property Value

ModulationType