Retrograde

class pitchtools.Retrograde(period=None)

Retrograde operator.

>>> Retrograde()
Retrograde()

Object model of twelve-tone retrograde operator.

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.AbjadValueObject.AbjadValueObject" [color=1, group=0, label=AbjadValueObject, shape=box]; "abjad.tools.abctools.AbjadObject.AbjadObject" -> "abjad.tools.abctools.AbjadValueObject.AbjadValueObject"; "abjad.tools.abctools.AbjadObject.AbstractBase" -> "abjad.tools.abctools.AbjadObject.AbjadObject"; } subgraph cluster_pitchtools { graph [label=pitchtools]; "abjad.tools.pitchtools.Retrograde.Retrograde" [color=black, fontcolor=white, group=2, label=<<B>Retrograde</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.AbjadValueObject.AbjadValueObject" -> "abjad.tools.pitchtools.Retrograde.Retrograde"; "builtins.object" -> "abjad.tools.abctools.AbjadObject.AbstractBase"; }

Bases

Attribute summary

period Gets optional period of retrograde.
__add__(operator) Composes retrograde and operator.
__call__(argument) Calls retrograde on argument.
__copy__(*arguments) Copies Abjad value object.
__eq__(argument) Is true when all initialization values of Abjad value object equal the initialization values of argument.
__format__([format_specification]) Formats Abjad object.
__hash__() Hashes Abjad value object.
__ne__(argument) Is true when Abjad object does not equal argument.
__repr__() Gets interpreter representation of Abjad object.
__str__() Gets string representation of operator.

Read-only properties

Retrograde.period

Gets optional period of retrograde.

Todo

Deprecated. Use Expression followed by Retrograde instead.

>>> retrograde = Retrograde(period=3)
>>> retrograde.period
3

Returns integer or none.

Special methods

Retrograde.__add__(operator)

Composes retrograde and operator.

Example segment:

>>> items = [0, 2, 4, 5]
>>> segment = PitchClassSegment(items=items)
>>> show(segment) 

Example operators:

>>> retrograde = Retrograde()
>>> transposition = Transposition(n=3)

Transposition followed by retrograde:

>>> operator = retrograde + transposition
>>> str(operator)
'RT3'
>>> segment_ = operator(segment)
>>> show(segment_) 

Same as above because retrograde and transposition commute:

>>> operator = transposition + retrograde
>>> str(operator)
'T3R'
>>> segment_ = operator(segment)
>>> show(segment_) 

Returns compound operator:

>>> f(operator)
pitchtools.CompoundOperator(
    operators=[
        pitchtools.Retrograde(),
        pitchtools.Transposition(
            n=3,
            ),
        ],
    )
Retrograde.__call__(argument)

Calls retrograde on argument.

Gets retrograde pitch classes:

>>> retrograde = Retrograde()
>>> segment = PitchClassSegment([0, 1, 4, 7])
>>> retrograde(segment)
PitchClassSegment([7, 4, 1, 0])

Does not retrograde single pitches or pitch-classes:

>>> retrogresion = Retrograde()
>>> pitch_class = NumberedPitchClass(6)
>>> retrograde(pitch_class)
NumberedPitchClass(6)

Periodic retrograde:

Todo

Deprecated.

>>> retrograde = Retrograde(period=3)
>>> segment = PitchSegment("c' d' e' f' g' a' b' c''")
>>> retrograde(segment)
PitchSegment("e' d' c' a' g' f' c'' b'")

Returns new object with type equal to that of argument.

(AbjadValueObject).__copy__(*arguments)

Copies Abjad value object.

Returns new Abjad value object.

(AbjadValueObject).__eq__(argument)

Is true when all initialization values of Abjad value object equal the initialization values of argument.

Returns true or false.

(AbjadObject).__format__(format_specification='')

Formats Abjad object.

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

Returns string.

(AbjadValueObject).__hash__()

Hashes Abjad value object.

Returns integer.

(AbjadObject).__ne__(argument)

Is true when Abjad object does not equal argument. Otherwise false.

Returns true or false.

(AbjadObject).__repr__()

Gets interpreter representation of Abjad object.

Returns string.

Retrograde.__str__()

Gets string representation of operator.

>>> str(Retrograde())
'R'