Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/help/rest/periodicity.txt
diff options
context:
space:
mode:
Diffstat (limited to 'help/rest/periodicity.txt')
-rw-r--r--help/rest/periodicity.txt44
1 files changed, 44 insertions, 0 deletions
diff --git a/help/rest/periodicity.txt b/help/rest/periodicity.txt
new file mode 100644
index 0000000..8f700b2
--- /dev/null
+++ b/help/rest/periodicity.txt
@@ -0,0 +1,44 @@
+.. _periodicity:
+
+.. index::
+ pair: menu item; Periodicity checking
+ pair: command line option; periodicity
+ pair: command; periodicity
+
+Periodicity checking
+====================
+
+**Syntax**:(periodicity bool)
+
+Periodicity checking is one way to speed up the calculation. Areas inside the
+set always need :ref:`maxiter <maxiter>` iterations to determine that the point
+is probably inside the set (while it is rare for areas outside to need anywhere
+near that much). Often the orbital trajectory falls into a periodic, repeating
+cycle; if that can be detected, the calculation can be stopped early, as
+there's no way that the orbit can ever leave the cycle again (hence it cannot
+diverge, hence the point must be inside the set).
+
+Implementing this method efficiently is quite problematic. It slows down the
+cases where cycles are not found, because cycle-checking is quite hard work and
+has to take place for all points, even those that don't become cyclic. Because
+of the inexactness of floating-point calculations, the cycles are never exact,
+so you need to use an error value. Higher error values mean that cycles will be
+detected sooner, while lower error values increase the exactness of the
+calculation. Higher values can introduce serious errors, especially at the
+front of the Mandelbrot set. XaoS detects this automatically and corrects for
+it in most cases, but sometimes it might be wrong. Also, other optimizations in
+XaoS (such as boundary tracing) don't give this method much of a chance to run,
+since areas inside the set are usually not calculated at all.
+
+That's why the advantages of this optimization are questionable. You should
+probably experiment with enabling and disabling it. Sometimes XaoS is faster
+with this enabled, sometimes when disabled. Also, this method works only when
+:ref:`incoloring <incoloring>` methods are disabled, and only for some fractal
+types (some fractal types, e.g. newton, don't have any concept of an area
+'inside the set' at all.)
+
+The tutorial chapter ":tutor:`Escape time fractals <escape.xaf>`" has
+more information on fractal calculation in XaoS, and there is a lengthy section
+in the hacker's manual (xaosdev.texinfo) devoted to the subject.
+
+**Available as**: menu item, command line option, command