Frontiers in Plant Science (May 2012)

L-Py: an L-System simulation framework for modeling plant development based on a dynamic language

  • Frederic eBoudon,
  • Christophe ePradal,
  • Thomas eCokelaer,
  • Przemyslaw ePrusinkiewicz,
  • Christophe eGodin

DOI
https://doi.org/10.3389/fpls.2012.00076
Journal volume & issue
Vol. 3

Abstract

Read online

The study of plant development requires increasingly powerful modeling tools to help understand and simulate the growth and functioning of plants. In the last decade, the formalism of L-systems has emerged as a major paradigm for modeling plant development. Previous implementations of this formalism were made based on static languages, i.e. languages that require explicit definition of variable types before using them. These languages are often efficient but involve quite a lot of syntactic overhead, thus restricting the flexibility of use for modelers. In this work, we present an adaptation of L-systems to the Python language, a popular and powerful open-license dynamic language. We show that the use of dynamic language properties makes it possible to enhance the development of plant growth models: i) by keeping a simple syntax while allowing for high-level programming constructs, ii) by making code execution easy and avoiding compilation overhead iii) allowing a high level of model reusability and the building of complex modular models iv) and by providing powerful solutions to integrate MTG data-structures (that are a common way to represent plants at several scales) into L-systems and thus enabling to use a wide spectrum of computer tools based on MTGs developed for plant architecture. We then illustrate the use of L-Py in real applications to build complex models or to teach plant modeling in the classroom.

Keywords