.. _sffe:
.. _usrform:
.. _usrformInit:

.. index::
   pair: menu item; User formula
   pair: menu item; User initialization
   pair: command; usrform
   pair: command line option; usrform
   pair: command; usrformInit
   pair: command line option; usrformInit
   single: sffe

User Formulas
=============

XaoS supports entering your own custom formulas. Select User formula from the
Fractal menu to define a custom fractal formula. Select User initialization to
change the sequence starting point **z0**. By default **z0** is set to 0. User
formulas should be interpreted as functions in the form **Z(n+1) = formula
(Z(n), Z(n-1), C)**.

Variables
---------

In user formulas, as shown above, three variables are available:

z

    current sequance point Z(n)

c

    current plane 'point'

p

    previous sequence point Z(n-1)

Constants
---------

Format for complex numbers is **{re;im}** eg. {3;2} is complex number 3+2i.


Functions
---------

Available functions are listed below:

basic operations

    +, -, \*, /

basic trigonometry

    sin, cos, tan, cot asin, acos, atan, acot sinh, cosh, tanh, coth

Exponential and logarithmic functions

    exp log - natural logarithm log2, log10 logN (base, z) - logarithm of base
    N (where N is integer) logCN (base, z) - logarithm of base CN (where CN is
    complex)

power functions

    powi - power with integer exponent (fastest) powd - power with real
    exponent powdc - power with complex exponent pow - same as powd sqr -
    square

square functions

    sqrt - square root of a complex number rtni (z, n, i) - i-th root of n-th
    orgder

other functions

    rand (max) - random real number in range [0, max) inv - inverse abs -
    absolute value re - real part im - imaginary part
