L-Py: an L-System simulation framework for modeling plant development based on a dynamic language
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...
Main Authors: | , , , , |
---|---|
Format: | Article |
Language: | English |
Published: |
Frontiers Media S.A.
2012-05-01
|
Series: | Frontiers in Plant Science |
Subjects: | |
Online Access: | http://journal.frontiersin.org/Journal/10.3389/fpls.2012.00076/full |
id |
doaj-5cf4036e0115419b9ffebc523f3f8dd5 |
---|---|
record_format |
Article |
spelling |
doaj-5cf4036e0115419b9ffebc523f3f8dd52020-11-24T23:08:04ZengFrontiers Media S.A.Frontiers in Plant Science1664-462X2012-05-01310.3389/fpls.2012.0007621069L-Py: an L-System simulation framework for modeling plant development based on a dynamic languageFrederic eBoudon0Christophe ePradal1Thomas eCokelaer2Przemyslaw ePrusinkiewicz3Christophe eGodin4CIRADCIRADINRIA (French National Institute for Computer Science and Automatics)University of CalgaryINRIA (French National Institute for Computer Science and Automatics)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.http://journal.frontiersin.org/Journal/10.3389/fpls.2012.00076/fulldevelopmentmodularityvirtual plantspythonDesign patternsFunctional Structural Plant Models |
collection |
DOAJ |
language |
English |
format |
Article |
sources |
DOAJ |
author |
Frederic eBoudon Christophe ePradal Thomas eCokelaer Przemyslaw ePrusinkiewicz Christophe eGodin |
spellingShingle |
Frederic eBoudon Christophe ePradal Thomas eCokelaer Przemyslaw ePrusinkiewicz Christophe eGodin L-Py: an L-System simulation framework for modeling plant development based on a dynamic language Frontiers in Plant Science development modularity virtual plants python Design patterns Functional Structural Plant Models |
author_facet |
Frederic eBoudon Christophe ePradal Thomas eCokelaer Przemyslaw ePrusinkiewicz Christophe eGodin |
author_sort |
Frederic eBoudon |
title |
L-Py: an L-System simulation framework for modeling plant development based on a dynamic language |
title_short |
L-Py: an L-System simulation framework for modeling plant development based on a dynamic language |
title_full |
L-Py: an L-System simulation framework for modeling plant development based on a dynamic language |
title_fullStr |
L-Py: an L-System simulation framework for modeling plant development based on a dynamic language |
title_full_unstemmed |
L-Py: an L-System simulation framework for modeling plant development based on a dynamic language |
title_sort |
l-py: an l-system simulation framework for modeling plant development based on a dynamic language |
publisher |
Frontiers Media S.A. |
series |
Frontiers in Plant Science |
issn |
1664-462X |
publishDate |
2012-05-01 |
description |
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. |
topic |
development modularity virtual plants python Design patterns Functional Structural Plant Models |
url |
http://journal.frontiersin.org/Journal/10.3389/fpls.2012.00076/full |
work_keys_str_mv |
AT fredericeboudon lpyanlsystemsimulationframeworkformodelingplantdevelopmentbasedonadynamiclanguage AT christopheepradal lpyanlsystemsimulationframeworkformodelingplantdevelopmentbasedonadynamiclanguage AT thomasecokelaer lpyanlsystemsimulationframeworkformodelingplantdevelopmentbasedonadynamiclanguage AT przemyslaweprusinkiewicz lpyanlsystemsimulationframeworkformodelingplantdevelopmentbasedonadynamiclanguage AT christopheegodin lpyanlsystemsimulationframeworkformodelingplantdevelopmentbasedonadynamiclanguage |
_version_ |
1725615496488812544 |