RootlessChordClass

class tonalanalysistools.RootlessChordClass(quality_string='major', extent='triad', inversion='root')

A rootless chord class.

Major triad in root position:

>>> tonalanalysistools.RootlessChordClass('major')
MajorTriadInRootPosition('P1', '+M3', '+P5')

Dominant seventh in root position:

>>> tonalanalysistools.RootlessChordClass('dominant', 7)
DominantSeventhInRootPosition('P1', '+M3', '+P5', '+m7')

German augmented sixth in root position:

>>> tonalanalysistools.RootlessChordClass('German', 'augmented sixth')
GermanAugmentedSixthInRootPosition('P1', '+M3', '+m3', '+aug2')

Lineage

digraph InheritanceGraph { graph [background=transparent, bgcolor=transparent, color=lightslategrey, fontname=Arial, outputorder=edgesfirst, overlap=prism, penwidth=2, rankdir=LR, root="__builtin__.object", splines=spline, style="dotted, rounded", truecolor=true]; node [colorscheme=pastel19, fontname=Arial, fontsize=12, penwidth=2, style="filled, rounded"]; edge [color=lightsteelblue2, penwidth=2]; subgraph cluster_abctools { graph [label=abctools]; "abjad.tools.abctools.AbjadObject.AbjadObject" [color=1, group=0, label=AbjadObject, shape=box]; "abjad.tools.abctools.AbjadObject.AbstractBase" [color=1, group=0, label=AbstractBase, shape=box]; "abjad.tools.abctools.AbjadObject.AbstractBase" -> "abjad.tools.abctools.AbjadObject.AbjadObject"; } subgraph cluster_datastructuretools { graph [label=datastructuretools]; "abjad.tools.datastructuretools.TypedCollection.TypedCollection" [color=3, group=2, label=TypedCollection, shape=oval, style=bold]; "abjad.tools.datastructuretools.TypedTuple.TypedTuple" [color=3, group=2, label=TypedTuple, shape=box]; "abjad.tools.datastructuretools.TypedCollection.TypedCollection" -> "abjad.tools.datastructuretools.TypedTuple.TypedTuple"; } subgraph cluster_pitchtools { graph [label=pitchtools]; "abjad.tools.pitchtools.IntervalSegment.IntervalSegment" [color=4, group=3, label=IntervalSegment, shape=box]; "abjad.tools.pitchtools.Segment.Segment" [color=4, group=3, label=Segment, shape=oval, style=bold]; "abjad.tools.pitchtools.Segment.Segment" -> "abjad.tools.pitchtools.IntervalSegment.IntervalSegment"; } subgraph cluster_tonalanalysistools { graph [label=tonalanalysistools]; "abjad.tools.tonalanalysistools.RootlessChordClass.RootlessChordClass" [color=black, fontcolor=white, group=4, label=<<B>RootlessChordClass</B>>, shape=box, style="filled, rounded"]; } subgraph cluster_builtins { graph [label=builtins]; "builtins.object" [color=2, group=1, label=object, shape=box]; } "abjad.tools.abctools.AbjadObject.AbjadObject" -> "abjad.tools.datastructuretools.TypedCollection.TypedCollection"; "abjad.tools.datastructuretools.TypedTuple.TypedTuple" -> "abjad.tools.pitchtools.Segment.Segment"; "abjad.tools.pitchtools.IntervalSegment.IntervalSegment" -> "abjad.tools.tonalanalysistools.RootlessChordClass.RootlessChordClass"; "builtins.object" -> "abjad.tools.abctools.AbjadObject.AbstractBase"; }

Attribute summary

cardinality Cardinality of rootless chord-class.
count(item) Changes item to item.
extent Extent of rootless chord-class.
extent_name Extent name of rootless chord class.
from_interval_class_segment(segment) Makes new rootless chord-class from segment.
from_selection(class_, selection[, item_class]) Makes interval segment from component selection.
has_duplicates True if segment has duplicate items.
index(item) Changes item to item.
inversion Inversion of rootless chord-class.
item_class Item class to coerce items into.
items Gets collection items.
position Position of rootless chord-class.
quality_string Quality string of rootless chord class.
rotate(n) Rotates interval segment by n.
rotation Rotation of rootless chord-class.
slope Slope of interval segment.
spread Spread of interval segment.
__add__(expr) Adds typed tuple to expr.
__contains__(item) Change item to item and return true if item exists in collection.
__eq__(expr) Is true when expr is a typed collection with items that compare equal to those of this typed collection.
__format__([format_specification]) Formats Abjad object.
__getitem__(i) Gets i from type tuple.
__getslice__(start, stop) Gets slice from start to stop in typed tuple.
__hash__() Hashes typed tuple.
__illustrate__(\*\*kwargs) Illustrates segment.
__iter__() Iterates typed collection.
__len__() Length of typed collection.
__mul__(expr) Multiplies typed tuple by expr.
__ne__(expr) Is true when expr is not a typed collection with items equal to this typed collection.
__radd__(expr) Right-adds expr to typed tuple.
__repr__() Gets interpreter representation of rootless chord-class.
__rmul__(expr) Multiplies expr by typed tuple.
__str__() Gets string representation of segment.

Read-only properties

RootlessChordClass.cardinality

Cardinality of rootless chord-class.

Returns nonnegative integer.

RootlessChordClass.extent

Extent of rootless chord-class.

Returns nonnegative integer.

RootlessChordClass.extent_name

Extent name of rootless chord class.

(IntervalSegment).has_duplicates

True if segment has duplicate items. Otherwise false.

>>> intervals = 'm2 M3 -aug4 m2 P5'
>>> segment = pitchtools.IntervalSegment(intervals)
>>> segment.has_duplicates
True
>>> intervals = 'M3 -aug4 m2 P5'
>>> segment = pitchtools.IntervalSegment(intervals)
>>> segment.has_duplicates
False

Returns true or false.

RootlessChordClass.inversion

Inversion of rootless chord-class.

Returns nonnegative integer.

(TypedCollection).item_class

Item class to coerce items into.

(TypedCollection).items

Gets collection items.

RootlessChordClass.position

Position of rootless chord-class.

Returns string.

RootlessChordClass.quality_string

Quality string of rootless chord class.

Returns string.

RootlessChordClass.rotation

Rotation of rootless chord-class.

Returns nonnegative integer.

(IntervalSegment).slope

Slope of interval segment.

The slope of a interval segment is the sum of its intervals divided by its length:

>>> pitchtools.IntervalSegment([1, 2]).slope
Multiplier(3, 2)

Returns multiplier.

(IntervalSegment).spread

Spread of interval segment.

The maximum interval spanned by any combination of the intervals within a numbered interval segment.

>>> pitchtools.IntervalSegment([1, 2, -3, 1, -2, 1]).spread
NumberedInterval(4)
>>> pitchtools.IntervalSegment([1, 1, 1, 2, -3, -2]).spread
NumberedInterval(5)

Returns numbered interval.

Methods

(TypedTuple).count(item)

Changes item to item.

Returns count in collection.

(TypedTuple).index(item)

Changes item to item.

Returns index in collection.

(IntervalSegment).rotate(n)

Rotates interval segment by n.

Returns new interval segment.

Class & static methods

static RootlessChordClass.from_interval_class_segment(segment)

Makes new rootless chord-class from segment.

Returns new rootless chord-class.

(IntervalSegment).from_selection(class_, selection, item_class=None)

Makes interval segment from component selection.

>>> staff = Staff("c'8 d'8 e'8 f'8 g'8 a'8 b'8 c''8")
>>> pitchtools.IntervalSegment.from_selection(
...     staff, item_class=pitchtools.NumberedInterval)
IntervalSegment([2, 2, 1, 2, 2, 2, 1])

Returns interval segment.

Special methods

(TypedTuple).__add__(expr)

Adds typed tuple to expr.

Returns new typed tuple.

(TypedTuple).__contains__(item)

Change item to item and return true if item exists in collection.

Returns none.

(TypedCollection).__eq__(expr)

Is true when expr is a typed collection with items that compare equal to those of this typed collection. Otherwise false.

Returns true or false.

(AbjadObject).__format__(format_specification='')

Formats Abjad object.

Set format_specification to ‘’ or ‘storage’. Interprets ‘’ equal to ‘storage’.

Returns string.

(TypedTuple).__getitem__(i)

Gets i from type tuple.

Returns item.

(TypedTuple).__getslice__(start, stop)

Gets slice from start to stop in typed tuple.

Returns new typed tuple.

(TypedTuple).__hash__()

Hashes typed tuple.

Returns integer.

(Segment).__illustrate__(**kwargs)

Illustrates segment.

Returns LilyPond file.

(TypedCollection).__iter__()

Iterates typed collection.

Returns generator.

(TypedCollection).__len__()

Length of typed collection.

Returns nonnegative integer.

(TypedTuple).__mul__(expr)

Multiplies typed tuple by expr.

Returns new typed tuple.

(TypedCollection).__ne__(expr)

Is true when expr is not a typed collection with items equal to this typed collection. Otherwise false.

Returns true or false.

(TypedTuple).__radd__(expr)

Right-adds expr to typed tuple.

RootlessChordClass.__repr__()

Gets interpreter representation of rootless chord-class.

Returns string.

(TypedTuple).__rmul__(expr)

Multiplies expr by typed tuple.

Returns new typed tuple.

(Segment).__str__()

Gets string representation of segment.

Returns string.