dmj-pub-uf.zip ============== Included files: dmj-exam.upr Example parameters using these formulas dmj-pub.txt This file dmj.ucl Coloring formulas dmj.ufm Fractal formulas dmj.uxf Transformation formulas More information can be found at this web site: http://www.fractalus.com/ultrafractal/dmj-pub-uf.htm You can always download a current version of these formulas from here: ftp://ftp.fractalus.com/pub/extras/dmj-pub-uf.zip You can read about re-use guidelines here: http://www.fractalus.com/ultrafractal/dmj-pub-uf-reuse.htm This covers re-use for both the formulas and images. There has been a lot of confusion about this in the past, so PLEASE take a moment and review the above web page if you have not already done so. Changes in v2.1 --------------- All files, all formulas: + Cleaned up and expanded some comments. dmj.ufm + Added Orbit Boost types for Mandelbrot/Julia and Nova Mandelbrot/ Julia fractals. These perform normal iteration except within a "boost" region, which alters the iteration value in a variety of ways. + Added a "Coloring Only" option to all +fBm types, which applies the fBm distortion only to the orbit value passed to the coloring algorithm. The actual fractal orbit is unchanged. + Added SlopeJulia2. This is like the other Slope formulas, but with the Julia2 fractal type. + Added (cough) Slope (LambdaJulia). It was erroneously left out. + Fixed SlopeTrap (Mandelbrot) so that it works; fixed both SlopeTrap formulas so that they compile without warnings. + Reset default height value for Slope (Julia) to "distance estimator". This is now consistent with the other Slope types. dmj.ucl + Orbit Traps now has a new option: Repeat Center. This can be used to change where the repeating is centered in the complex plane. + Added fBm II coloring, which calculates an fBm value at every iteration and totals them up for the entire orbit. dmj.uxf + General Inversion now has an alternate "line" mode which inverts only a single axis. This is especially useful for certain perspective effects. + Added fBm Clipping. This allows you to clip a region based on fBm texture. + LowRes now has a "rotate" parameter that lets you set the angle of the low resolution grid. + Added Mosaic. This can turn an image into a group of mosaic tiles. + Added Spots. This can make an image appear as though it's been drawn with spots. + Added Forces. This sprinkles the image with attractive and repelling points, which push and pull parts of the image. dmj-exam.upr + Added "Tordu" and "Cloud Nine". Changes in v2.0 --------------- All files, all formulas: + Hooks for online help for all of the formulas and parameters have been added. I am in the process of writing this help, but several people urged me NOT to delay the release of the formulas, so you have the formulas now, and the documentation will follow later. Until then, the ? help icon won't do you any good, but hint text (which you get by just pointing to the parameter entry field) does still work. dmj.ufm + Added Lambda in Mandelbrot and Julia forms. This simply iterates the equation z[n+1] = r*z[n]*(1-z[n]), the classical logistics equation, with complex numbers. + Added Slope (Lambda) in Mandelbrot and Julia forms. This is the Lyapunov type, set up to work with the Lighting coloring formula. + Added SlopeTrap in Mandelbrot and Julia forms. Think of it this way: what Slope did with smooth colorings, SlopeTrap does with orbit trap methods. + Added DoubleMandel and DoubleJulia. These are the classical Mandelbrot/Julia fractals but with a second term in the equation. They are to Mandelbrot/Julia fractals as DoubleNova is to Nova. + Added Markus-Lyapunov. This is a version of the forced-periodic growth logistics equation iterator. Use with Markus-Lyapunov coloring. This is a slow formula. + Added Mandelbrot+fBm and Julia+fBm. These types uses the fBm noise algorithm to perturb the orbit of Mandelbrot and Julia sets at each iteration. These are slow formulas. + Added Nova+fBm in Mandelbrot and Julia forms. These are like the other +fBm formulas, but using the Nova equation instead of the classic Mandelbrot/Julia equation. These are slow formulas. + Added PhoenixDoubleHalleyNova, in Mandelbrot and Julia forms. These add an inductive term to DoubleHalleyNova types. + Added Torus (Julibrot), which renders toroidal sections of 4D Julibrot space. With certain parameters, these images are tileable. + Added Torus (Nova), which renders toroidal sections of 4D NovaM/J space. With certain parameters, these images are tileable. I will add more parameters to these torus types in the future, but I thought people might want to play with these now. + Added Bifurcation fractal types. These emulate the bifurcation family of plots from FractInt. These plots do not really fit very well into the Ultra Fractal rendering model, I include them only because they are helpful in explaining certain mathematical properties of chaos, and as an example of writing formulas that render these types of plots. + Added StutterMandel, which iterates the Mandelbrot set but periodically "resets" the c value to the current z value. (There is no Julia type for this.) + Added ManyJulia and ManyNova. These types can be used to render many Julia or NovaJulia fractals into the same image, using a tile-based grid. + Added Simurgh in Mandelbrot and Julia forms. This is a doubly- inductive type, in that each iteration depends on the values of the past three iterations. It is an extension of the Phoenix type (in fact, you can render all Phoenix fractals with this formula if you set Simurgh Distortion 2 to zero). dmj.ucl + Added a new trap shape to both Orbit Traps and Twin Traps: radial ripples. These complement the ring ripples type. + Added new trap shapes to both Orbit Traps and Twin Traps: radial waves and radial waves 2. These wrap one or two sine waves around a point. Use Trap Frequency to adjust the frequency of the waves; use Trap Order to adjust the height of the waves; use Diameter to adjust the diameter of the circle the waves are centered on. + Added transfer functions for trap distances to Orbit Traps, and pre- and post-scaling factors. I'll add these to Twin Traps later. + Added an option to use a solid color for points outside the "trap" areas, for Orbit Traps and Twin Traps. + Added A and B trap weighting parameters to Twin Traps. You can use this to give a "preference" to one trap over another. The default weights of 1.0 will reproduce the old, unweighted behavior. + Added Fractional Brownian Motion coloring (fBm). This can be used to create zoomable clouds and bumpy textures. + Added new modes (angle, real, imaginary) to Distance Estimator coloring. + Added Markus-Lyapunov coloring, for use with Markus-Lyapunov fractal type. + Lyapunov coloring (not to be confused with Markus-Lyapunov) has a new option: Smooth Coloring. If set, uses the same smoothing algorithm as Triangle Inequality Coloring to interpolate between iteration values for a smoother result. This works best for the Mandelbrot and Julia and derived types. + Added Bifurcation coloring, for bifurcation plots. + Added Sampling coloring, which works by checking the distance of the orbit to the pixel at each iteration. Not only can the discrete points in the orbit be tested, but also the full line-segment path traced by the orbit points. dmj.uxf + Added fBm Glass 1, which can be used to apply one-dimensional turbulence (linear or radial) to an image. + Added Triangle Inequality Average Glass 1, which does the same thing as fBm Glass 1, but using Mandelbrot-based TIA coloring as the basis for the turbulence. + Added Rectangular to Polar, which converts Cartesian coordinates to polar coordinates. + Added Polar to Rectangular, which converts polar coordinates back to Cartesian coordinates. + Added Mirror, which can be used to reflect an image along an arbitrary axis. + Added Offset, which can be used to move a fractal. You can accomplish the same thing by changing location, but this transform allows you to accomplish the same shifting within a sequence of transformations, and also to adjust the scale of the movement without having to compute coordinates yourself. + Added Stretch, which can be used to stretch the image horizontally or vertically. This transform is geared towards being easily added to a fractal after it has already been zoomed. + Added Blob Clipping, which allows clipping shapes to be set up based on 2D blobs. Up to eight blobs per transform may be used. dmj-exam.upr + "9", "April Pond", "In Defiance of Vision" (2nd Place, Limited Color, Fractal-Art '99 Contest), "Inescapable Problems", "New Box of Crayons", and "Turbulence Cubed" added. These all (except for "Problems") use at least one of the fBm formulas in some fashion. Changes in v1.8 --------------- dmj.ufm + All Nova and HalleyNova types have a new parameter, "Relaxation". This can be used to slow down convergence and reduce the amount of chaos in the image. Of course, it can also be used to increase the chaos as well. The default value of 1.0 will produce the old behavior (so your old parameters will work). Values below 1.0 will produce less chaotic images, and values above 1.0 will produce more chaotic images. Complex values are totally illogical, but very interesting. + Added PhoenixNova and PhoenixHalleyNova types, in both Mandelbrot and Julia form. These use an "inductive" term like Phoenix fractals, but with the Nova and HalleyNova formulas. + Added Mandelbrot-Nova type. This formula alternates between Mandelbrot and Nova formulas at each iteration. You can adjust the frequency with which it switches formulas as well. dmj.ucl + The "Diameter" setting in Orbit Traps now can be negative. This is mostly useful with the waves trap shapes. + Minor speed optimizations to funky average 3 and 6 trap modes. + Twin Traps coloring added. This is based loosely on the ideas of Kerry Mitchell, coupled with my own illogical extrapolations. The concept is simple: use two trap shapes, and combine the distances to those traps at each step to get a single distance, which is then processed in the normal trap mode fashion. Some of the more esoteric parameters from Orbit Traps were not included in this formula, to keep it a bit more manageable. dmj-exam.upr + "Evil Lurks", "Fractal Ear", and "Las Vegas" added. Changes in v1.71 ---------------- This is just a bug-fix release. dmj.uxf + "Screen-Relative" coordinates in the "Clipping" transform will now work as expected if your fractal is rotated, and "Allow Rotation" is disabled. Thanks to Janet Preslar for spotting this problem. Changes in v1.7 --------------- dmj.ucl + "Waves" trap shapes added. These are similar to the "lines" trap shape, except that the lines are sine waves. Use Trap Order to adjust the height of the waves, and Diameter to change the distance between them. + A new trap parameter, "Trap Frequency", was added to control the frequency of the wave trap types. It also works for the ripple types, too, and has the inverse effect of modifying Diameter for ripple types. + New trap parameters "Skew" and "Skew Step" were added. These are like the Rotation and Rotation Step parameters, except they skew instead of rotate. + New trap parameters "Start Iteration", "Trap Iterations", and "Skip Iterations" were added. You can use these to omit certain iterations from being considered for orbit trap behavior. For example, if Start Iteration is 200, then the first 200 iterations will be ignored as far as orbit traps are concerned. If Trap Iterations and Skip Iterations are both set to 1, then alternate iterations will be used (one checked, one ignored). + New trap coloring "angle to origin 2" duplicates the atan coloring scheme in the obsolete coloring method ReallyCool that came with beta versions of UF. You can convert your old ReallyCool images to Orbit Traps by using trap shape hypercross, trap mode closest, and this new coloring. + Trap shapes and coloring modes were reordered to a more sensible progression. dmj.uxf + "Clipping" transformation was added. This is similar in purpose to Luke Plant's "Scissors" transformation, but its interface is a bit simpler: point and click selects the control points of the clipping shape. You can clip either the inside or outside of the shape. + The "Strict Bailout" in the "Select (Mandelbrot)" transformation now works. This adjusts the bailout differently for each pixel and overrides the Bailout setting. + "Select" types for Julia, Phoenix Julia, and Nova Julia were added. + "Julia", "Phoenix Julia", and "Nova Julia" transforms were added. These allow you to warp the fractal with a few iterations of these fractal types. dmj-exam.upr + "Atlas", "Melt-O-Waves", and "Gorgon" added. Changes in v1.6 --------------- My apologies for making another release so quickly, but Janet Preslar had some excellent ideas and timing was important. dmj.ucl + "Egg" orbit trap shape was added. Use Trap Order to change the egginess, and trap Diameter to tweak the spacing between egg foci. dmj.uxf + Egg Scissors transform was added. You can use this to isolate an egg-shaped area of your fractal, in much the same way as Luke Plant's general Scissors transform does. Changes in v1.5 --------------- dmj.ufm + Added SinNova types. These are the Nova form of the equation sin(z)^n - 1 = 0. Both Mandelbrot and Julia types are available. + Added DoubleNova types. These are the Nova form of the equation az^m + bz^n - 1 = 0. Both Mandelbrot and Julia types are available. + Added DoubleHalleyNova types. These are the HalleyNova form of the equation az^m + bz^n - 1 = 0. Both Mandelbrot and Julia types are available. + All Julia types can now toggle back to their Mandelbrot types. dmj.ucl + Added Finite Attractor coloring for Inside points. This is similar to the default coloring method based on iterations, except it counts how many iterations before the orbit settles into a periodic cycle. This is a discrete coloring method (it always produces bands). + Added Curvature Average coloring. This produces results similar, but not identical, to Triangle Inequality Average. dmj.uxf + General Inversion was added. This extends the concept of inversion to include other curves besides circles. + Mandelbrot transform was added. This applies a few iterations of the Mandelbrot equation, and is useful for warping convergent fractals (like Newtons and Newton-derivatives). dmj-exam.upr + Added "Ethereal", "Lure", and "Promise of Spring". Changes in v1.4 --------------- In accordance with the new naming convention, all the formula files have been renamed without the "-pub" suffix. If you have not already modified your parameter files to work with the new scheme, you will need to do so. dmj.ufm + HalleyNova formulas were added. These are fractals similar to the Nova family, but they use Halley's method instead of Newton's method. dmj.ucl + The "heart" trap shape was added. Use "Trap Order" to adjust the "fatness" of the hearts. + The "ripples" trap shapes were added. Use "Diameter" to adjust the spacing between ripples; use "Trap Order" to adjust the fade-out range of the ripples. + If you use the "Trap Center Moves" option, the "Trap Center" value is now an offset from the pixel location. Previously it had no effect when "Moves" was enabled. If your images using "Moves" do not render correctly, reset their "Trap Center" values to zero. + More optimizations of "Orbit Traps" were done. + "Triangle Inequality Average" now has some new parameters that let you alter values before they are averaged. The default settings for these parameters produce the old behavior. Changes in v1.3 --------------- dmj-exam.upr + Several additions and removals, made at the suggestion of Frederik Slijkerman. This file was not previously included in the distribution. It replaces the dmj-exam.upr that comes with Ultra Fractal. dmj-pub.ucl + Minor optimizations made to "Orbit Traps"; it should run a little bit faster. + Two new trap modes were added to "Orbit Traps", named "funky average 6" and "trap only". "Trap only" lets you see the trap regardless of iteration, which can be useful for examining different traps and the effects of various parameters on the trap shape. + Astroid trap shapes were added to "Orbit Traps". You can use the "Trap Order" (formerly "Pinch Order") to set the exponent used to calculate the astroid curve. Use 0.666667 for the classic astroid shape; other values can produce interesting results. + "Lyapunov" coloring added; this colors based on the Lyapunov exponent. + "Spiral" coloring added; this colors with spiral gradients like Kai's Power Tools. Note this only works for the classic Mandelbrot set at the moment. dmj-pub.ufm + Added "Mandelbrot (Inverted)" type. This is the Mandelbrot set, but using an inverted z. This will give interesting results for coloring algorithms which expect a converging z, and will also allow inverted orbit trap shapes. A Julia version was added as well. + Julia2 and Julia3 were modified to allow a "pattern" string. This pattern indicates when each seed should be used. Previously, seeds could only alternate. Now you can make one seed be used for three iterations, then the other (pattern "1112")--just as an example. + Added "Nova-I" types, Mandelbrot and Julia. These are the Nova formulas, but using an inverted z. This will give interesting results for coloring algorithms which expect a diverging z, and will also allow inverted orbit trap shapes. Note this does not make these types work with Smoothed Iterations and methods which rely on it, except for the Julia flavor when c=(0,0) (which gives a classic Newton fractal). + Fixed a problem with NovaJulia2-Step1a not working correctly. + Added "smallest |atan(z)|" to "Slope" types. This gives height values based on the smallest angle of z. dmj-pub.uxf + Added "Low Resolution", which you can use to reduce the resolution of a fractal arbitrarily on each axis. This can produce interesting tile effects when used with reversible transformations (the same transformation, but in an opposite direction). + Added "Unspiral", which you can use to straighten the arms of a fractal spiral (these are usually logarithmic spirals). You can also use it to ADD such a spiral effect to a fractal.