| Portability | portable |
|---|---|
| Stability | unstable |
| Maintainer | claudiusmaximus@goto10.org |
Fractal.RUFF.Mandelbrot.Address
Description
External angles give rise to kneading sequences under the angle doublingmap. Internal addresses encode kneading sequences in human-readable form,when extended to angled internal addresses they distinguish hyperboliccomponents in a concise and meaningful way.
The algorithms are mostly based on Dierk Schleicher's paperInternal Addresses Of The Mandelbrot Set And Galois Groups Of Polynomials (version of February 5, 2008)http://arxiv.org/abs/math/9411238v2.
Synopsis
prettyAngle ::Angle ->StringSource
Convert to human readable form.
prettyAngles :: [Angle] ->StringSource
Convert to human readable form.
Elements of kneading sequences.
Kneading sequences. Note that theAperiodic case has an infinite list.
Constructors
| Aperiodic [Knead] | |
| PrePeriodic [Knead] [Knead] | |
| StarPeriodic [Knead] | |
| Periodic [Knead] |
prettyKneading ::Kneading ->StringSource
Kneading sequence as a string. TheAperiodic case is truncated arbitrarily.
period ::Kneading ->MaybeIntegerSource
The period of a kneading sequence, orNothing when it isn't periodic.
associated ::Kneading ->Maybe (Kneading,Kneading)Source
A star-periodic kneading sequence's upper and lower associated kneading sequences.
Internal addresses are a non-empty sequence of strictly increasing integers beginning with '1'.
Constructors
| InternalAddress [Integer] |
prettyInternalAddress ::InternalAddress ->StringSource
Internal address as a string.
internalAddress ::Kneading ->MaybeInternalAddressSource
Construct anInternalAddress from a kneading sequence.
internalFromList :: [Integer] ->MaybeInternalAddressSource
Construct a validInternalAddress, checking the precondition.
internalToList ::InternalAddress -> [Integer]Source
Extract the sequence of integers.
dataAngledInternalAddressSource
Angled internal addresses have angles between each integer in an internal address.
prettyAngledInternalAddress ::AngledInternalAddress ->StringSource
Angled internal address as a string.
angledInternalAddress ::Angle ->MaybeAngledInternalAddressSource
The angled internal address corresponding to an external angle.
angledFromList :: [(Integer,MaybeAngle)] ->MaybeAngledInternalAddressSource
Builds a validAngledInternalAddress from a list, checking the precondition that only the last 'Maybe Angle' should beNothing, and theInteger must be strictly increasing.
angledToList ::AngledInternalAddress -> [(Integer,MaybeAngle)]Source
Convert anAngledInternalAddress to a list.
externalAngles ::AngledInternalAddress ->Maybe (Rational,Rational)Source
The pair of external angles whose rays land at the root of the hyperbolic component described by the angled internal address.
stripAngles ::AngledInternalAddress ->InternalAddressSource
Discard angle information from an internal address.
splitAddress ::AngledInternalAddress -> (AngledInternalAddress, [Angle])Source
Split an angled internal address at the last island.
joinAddress ::AngledInternalAddress -> [Angle] ->AngledInternalAddressSource
The inverse ofsplitAddress.
addressPeriod ::AngledInternalAddress ->IntegerSource
The period of an angled internal address.
parseAngle ::String ->MaybeAngleSource
Parse an angle.
parseAngles ::String ->Maybe [Angle]Source
Parse a list of angles.
parseKnead ::String ->MaybeKneadSource
Parse a kneading element.
parseKneading ::String ->MaybeKneadingSource
Parse a non-aperiodic kneading sequence.
parseInternalAddress ::String ->MaybeInternalAddressSource
Parse an internal address.
parseAngledInternalAddress ::String ->MaybeAngledInternalAddressSource
Parse an angled internal address, accepting some unambiguous abbreviations.
Produced byHaddock version 2.9.2