pitchtypes.spelled.Spelled
- class pitchtypes.spelled.Spelled(value, is_pitch, is_class, **kwargs)
Bases:
AbstractBase
A common base class for spelled pitch and interval types. See below for a set of common operations.
- __init__(value, is_pitch, is_class, **kwargs)
Methods
__init__
(value, is_pitch, is_class, **kwargs)Return the number of semitones by which the interval is altered from its perfect or major variant.
compare
(other)Comparison between two spelled types.
convert_to
(other_type)create_subtypes
()degree
()Return the "relative scale degree" (0-6) to which the interval points (unison=0, 2nd=1, octave=0, 2nd down=6, etc.).
fifths
()Return the position of the interval on the line of fifths.
Return the internal octave representation of a pitch, which is dependent on the fifths.
interval_class_from_fifths
(fifths[, inverse])Return the interval class corresponding to the given number of steps along the line of fifths.
link_interval_class_type
([skip_name_check, ...])A decorator to link an interval class type to its base type.
link_interval_type
([skip_name_check, ...])A decorator to link an interval type to its base type.
link_pitch_class_type
([skip_name_check, ...])A decorator to link a pitch class type to its base type.
link_pitch_type
([skip_name_check, ...])A decorator to link a pitch type to its base type.
name
()The name of the pitch or interval in string notation
octaves
()For intervals, return the number of octaves the interval spans.
onehot
(**kwargs)Return a one-hot encoded tensor representing the object.
parse_interval
(s)Parse a string as a spelled interval or spelled interval class.
parse_pitch
(s)Parse a string as a spelled pitch or spelled pitch class.
pitch_class_from_fifths
(fifth_steps)Return the pitch class given the number of steps along the line of fifths
- Interval
alias of
SpelledInterval
- IntervalClass
alias of
SpelledIntervalClass
- Pitch
alias of
SpelledPitch
- PitchClass
alias of
SpelledPitchClass
- __eq__(other)
Return self==value.
- __ge__(other)
Return a >= b. Computed by @total_ordering from (not a < b).
- __getattr__(item)
This method is called when an attribute is not found in the instance’s __dict__. It allows to access the linked Pitch, Interval, PitchClass, and IntervalClass types via the base type.
- __gt__(other)
Return a > b. Computed by @total_ordering from (not a < b) and (a != b).
- __hash__ = None
- __le__(other)
Return a <= b. Computed by @total_ordering from (a < b) or (a == b).
- __lt__(other)
Return self<value.
- __repr__()
Return repr(self).
- __setattr__(key, value)
Implement setattr(self, name, value).
- __weakref__
list of weak references to the object
- alteration()
Return the number of semitones by which the interval is altered from its perfect or major variant. Positive alteration always indicates augmentation, negative alteration indicates diminution (minor or smaller) of the interval. For pitches, return the accidentals (positive=sharps, negative=flats, 0=natural).
- Returns:
alteration (integer)
- compare(other)
Comparison between two spelled types.
Returns 0 if the objects are equal, 1 if the first object (
self
) is greater, and -1 if the second object (other
) is greater.The respective ordering differs between types. Non-class pitches and intervals use diatonic ordering, interval/pitch classes use line-of-fifths ordering.
This method can be indirectly used through binary comparison operators (including
==
,<
etc.).- Parameters:
other – an object to compare to (same type as
self
)- Returns:
-1
/0
/1
(integer)
- degree()
Return the “relative scale degree” (0-6) to which the interval points (unison=0, 2nd=1, octave=0, 2nd down=6, etc.). For pitches, return the integer that corresponds to the letter (C=0, D=1, …).
- Returns:
degree (integer)
- fifths()
Return the position of the interval on the line of fifths.
- Returns:
fifth position (integer)
- internal_octaves()
Return the internal octave representation of a pitch, which is dependent on the fifths.
Only use this if you know what you are doing.
- Returns:
internal/dependent octave (integer)
- classmethod link_interval_class_type(skip_name_check=False, create_init=None, create_add=None, create_sub=None, create_mul=None, create_div=None, create_neg=None)
A decorator to link an interval class type to its base type. :type skip_name_check:
bool
:param skip_name_check: skip the name check and don’t raise :type create_init:Optional
[bool
] :param create_init: if True, create a default __init__ method :type create_add:Optional
[bool
] :param create_add: if True, create a default __add__ method :type create_sub:Optional
[bool
] :param create_sub: if True, create a default __sub__ method :type create_mul:Optional
[bool
] :param create_mul: if True, create a default __mul__ method :type create_div:Optional
[bool
] :param create_div: if True, create a default __truediv__ method :type create_neg:Optional
[bool
] :param create_neg: if True, create a default __neg__ method :meta private:
- classmethod link_interval_type(skip_name_check=False, create_init=None, create_add=None, create_sub=None, create_mul=None, create_div=None, create_neg=None, create_to_class=None)
A decorator to link an interval type to its base type. :type skip_name_check:
bool
:param skip_name_check: skip the name check and don’t raise :type create_init:Optional
[bool
] :param create_init: if True, create a default __init__ method :type create_add:Optional
[bool
] :param create_add: if True, create a default __add__ method :type create_sub:Optional
[bool
] :param create_sub: if True, create a default __sub__ method :type create_mul:Optional
[bool
] :param create_mul: if True, create a default __mul__ method :type create_div:Optional
[bool
] :param create_div: if True, create a default __truediv__ method :type create_neg:Optional
[bool
] :param create_neg: if True, create a default __neg__ method :type create_to_class:Optional
[bool
] :param create_to_class: if True, create a default to_class method :meta private:
- classmethod link_pitch_class_type(skip_name_check=False, create_init=None, create_add=None, create_sub=None)
A decorator to link a pitch class type to its base type. :type skip_name_check:
bool
:param skip_name_check: skip the name check and don’t raise :type create_init:Optional
[bool
] :param create_init: if True, create a default __init__ method :type create_add:Optional
[bool
] :param create_add: if True, create a default __add__ method :type create_sub:Optional
[bool
] :param create_sub: if True, create a default __sub__ method :return: a decorator that links the pitch class type to the base type :meta private:
- classmethod link_pitch_type(skip_name_check=False, create_init=None, create_add=None, create_sub=None, create_to_class=None)
A decorator to link a pitch type to its base type. :type skip_name_check:
bool
:param skip_name_check: skip the name check and don’t raise :type create_init:Optional
[bool
] :param create_init: if True, create a default __init__ method :type create_add:Optional
[bool
] :param create_add: if True, create a default __add__ method :type create_sub:Optional
[bool
] :param create_sub: if True, create a default __sub__ method :type create_to_class:Optional
[bool
] :param create_to_class: if True, create a default to_class method :meta private:
- name()
The name of the pitch or interval in string notation
- Returns:
the object’s notation name (string)
- octaves()
For intervals, return the number of octaves the interval spans. Negative intervals start with -1, decreasing. For pitches, return the absolute octave of the pitch.
- Returns:
external/independent octave (integer)
- onehot(**kwargs)
Return a one-hot encoded tensor representing the object. Specialized versions of this method take ranges for their respective dimensions.
- Returns:
one-hot encoding of the object (numpy array)