Fractint L-Systems Definition

A tutorial by William McWorter
mcworter@midohio.net
version 1.4
January 1997

Back to Tutorial Index




WHAT ARE L-SYSTEMS


An L-system is an automaton designed by Aristid Lindenmayer in 1968 to model cell development. Cells are represented by symbols and cell subdivision is modeled by replacing these symbols with strings of symbols. Here is a simple L-system with two cell types represented by the letters A and B. Cell A subdivides into two cells represented by the string AB. Cell B subdivides into two cells represented by the string BA. The ordering of the symbols is relevant in an L-system. The abstract organism this L-system models grows by repeated cell subdivision. At birth the organism is the single cell A. After one subdivision the organism is two cells represented by the string AB. After two subdivisions, each cell subdividing according to the subdivision rules above, the organism has four cells given by the string ABBA. After three subdivisions the organism is represented by the string ABBABAAB and after four subdivisions the organism has 16 cells represented by the string ABBABAABBAABABBA.

FRACTINT requires this information in separate lines of text in the form:

Thue {    ; The L-system's name followed by "{" 
          ; to signal the beginning of its description
  Axiom A ; Provide the birth string for the organism
  A=AB    ; Give the replacement string for the cell A
  B=BA    ; Give the replacement string for the cell B
  }       ; Signal the end of the organism's description with a "}"

The order of an L-system is the number of times cell subdivision occurs.

Of course all this is meaningless unless the symbols are interpreted in some way. This particular L-system is given a mathematical meaning in an article by Cobham in Mathematical Systems Theory, Vol. 6, 1972, pp. 164-192. This article also investigates mathematical properties of L-systems in general.

FRACTINT regards each symbol as a graphic command. FRACTINT reads the symbol string from left to right executing a command for each symbol it encounters.

L-systems as interpreted by FRACTINT can be very striking and complex. Many examples will be given here of tilings, space-filling curves, and plant simulations. Let's begin with modeling plants.



On to The next chapter or back to the Tutorial Index

or back to The Fractint Home Page. or back to The Fractint Index Page.

This page maintained by

Noel Giffin,
noel@triumf.ca