Math-PlanePath
view release on metacpan or search on metacpan
lib/Math/PlanePath/ComplexPlus.pm view on Meta::CPAN
touching.
=head2 Arms
For C<realpart =E<gt> 1>, an optional C<arms =E<gt> 2> adds a second copy of
the curve rotated 180 degrees and starting from X=0,Y=1. It meshes
perfectly to fill the plane. Each arm advances successively so N=0,2,4,etc
is the plain path and N=1,3,5,7,etc is the copy
arms=>2
60 62 28 30 5
56 58 24 26 4
52 54 44 46 20 22 12 14 3
48 50 40 42 16 18 8 10 2
36 38 3 1 4 6 35 33 1
32 34 7 5 0 2 39 37 <- Y=0
11 9 19 17 43 41 51 49 -1
15 13 23 21 47 45 55 53 -2
27 25 59 57 -3
31 29 63 61 -4
^
-6 -5 -4 -3 -2 -1 X=0 1 2 3 4 5 6
There's no C<arms> parameter for other C<realpart> values as yet, only for
i+1. Is there a good rotated arrangement for others? Do "norm" many copies
fill the plane in general?
=head1 FUNCTIONS
See L<Math::PlanePath/FUNCTIONS> for behaviour common to all path classes.
=over 4
=item C<$path = Math::PlanePath::ComplexPlus-E<gt>new ()>
Create and return a new path object.
=item C<($x,$y) = $path-E<gt>n_to_xy ($n)>
Return the X,Y coordinates of point number C<$n> on the path. Points begin
at 0 and if C<$n E<lt> 0> then the return is an empty list.
=back
=head2 Level Methods
=over
=item C<($n_lo, $n_hi) = $path-E<gt>level_to_n_range($level)>
Return C<(0, 2**$level - 1)>, or for 2 arms return C<(0, 2 * 2**$level -
1)>. With the C<realpart> option return C<(0, $norm**$level - 1)> where
norm=realpart^2+1.
=back
=head1 FORMULAS
Various formulas and pictures etc for the i+1 case can be found in the
author's long mathematical write-up (section "Complex Base i+1")
=over
L<http://user42.tuxfamily.org/dragon/index.html>
=back
=head1 OEIS
Entries in Sloane's Online Encyclopedia of Integer Sequences related to
this path include
=over
L<http://oeis.org/A290885> (etc)
=back
realpart=1 (i+1, the default)
A290885 -X
A290884 Y
A290886 norm X^2 + Y^2
A146559 dX at N=2^k-1 (step to next replication level)
A077950,A077870
location of ComplexMinus origin in ComplexPlus
(mirror horizontal even level, vertical odd level)
=head1 SEE ALSO
L<Math::PlanePath>,
L<Math::PlanePath::ComplexMinus>,
L<Math::PlanePath::ComplexRevolving>,
L<Math::PlanePath::DragonCurve>
=over
L<http://user42.tuxfamily.org/dragon/index.html>
=back
=head1 HOME PAGE
L<http://user42.tuxfamily.org/math-planepath/index.html>
=head1 LICENSE
Copyright 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Kevin Ryde
This file is part of Math-PlanePath.
Math-PlanePath is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the Free
Software Foundation; either version 3, or (at your option) any later
version.
Math-PlanePath is distributed in the hope that it will be useful, but
WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
more details.
( run in 1.100 second using v1.01-cache-2.11-cpan-df04353d9ac )