Lindenmayer Systems - Maple Programming Help

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Math Apps : Algebra and Geometry : Geometry : MathApps/LindenmayerSystems

 

Lindenmayer Systems

 

Main Concept

A Lindenmayer System (or L-System) consists of the following:

 

• 

an alphabet of symbols that can be used to make strings.

• 

production rules mapping each symbol into some larger string of symbols.

• 

an axiom: an initial string from which to begin construction.

• 

a rewriting system: a mechanism for translating the generated strings into geometric structures.

 

An L-System is constructed by starting with the axiom string, and then repeatedly applying the production rules in parallel to each symbol in the string. Symbols not having production rules are left alone. Each application of the production rules is called an iteration.

 

Each iterate string corresponds to a geometric structure via the rewriting system. The most basic rewriting system maps each symbol in the alphabet to a specific geometric action, and a geometric image results.  The same production rules are applied repeatedly in order to create this. As a result, the generated strings and corresponding images tend to have a repetitive, or self-similar internal structure. They are often described as fractals.

 

Example

Here is one example of an L-System that produces a version of the Koch curve:

Axiom:

A

Production Rules:

A : ↗BB

B: A↗↗A

Rewriting system:

A : draw forward 1

B : draw forward 1

↗ : turn 30° left

 : turn 30° right

1st iteration:

 BB

2nd iteration:

 A↗↗AA↗↗A

3rd iteration:

4th iteration:

6th iteration:

8th iteration:

 

Note: L-Systems often grow exponentially in length. The example above grows to a string with length 52n4 after n  iterations.

 

Set L-System parameters

 

Production Rule

Action

 

More MathApps

MathApps/AlgebraAndGeometry