Keywords

R, Python, OMS3, NetLogo

Start Date

26-6-2018 9:00 AM

End Date

26-6-2018 10:20 AM

Abstract

OMS3 is an environmental modeling framework designed to support and ease scientific environmental models development. It is implemented in Java, programming language that makes the framework flexible and non-invasive. Java is consequently the natural language for developing OMS-compliant components. However, OMS3 ensures longevity of old models implementations providing C/C++ and Fortran bindings that allow for connecting slightly modified legacy software to fresh developed Java components.

Recently, three scientific programming languages drew the modeling community’s attention: R and Python, and NetLogo. They have a flat learning curve and the lack of declared data types makes them the flawless solution for fast scripting. Furthermore, they rely on a active developer community that keep releasing and improving open source scientific packages. This is a relevant aspect when it comes to facilitate and speed up the implementation of scientific algorithms. OMS3 functionalities have been enhanced to provide R, Python, and NetLogo bindings. As a result, multi-language modeling solutions are fully interoperable. Thanks to the framework non-invasiveness, R, Python and NetLogo scripts must only be slightly modified with source code annotations to become OMS-compliant components. The resulting components are nevertheless still executable from within the original environments. This contribution shows two actual applications of R and Python bindings: the Regional Urban Growth (RUG) implemented in R and TRansportation ANalysis SIMulation System (TRANSIMS) models which requires RTE python module.

To avoid the burden of installing required software stacks, OMS3 has been bundled into a Docker image.The enhanced flexibility in the workflow is established.

Stream and Session

Stream A, Session A4

Share

COinS
 
Jun 26th, 9:00 AM Jun 26th, 10:20 AM

R and Python Annotation Bindings for OMS

OMS3 is an environmental modeling framework designed to support and ease scientific environmental models development. It is implemented in Java, programming language that makes the framework flexible and non-invasive. Java is consequently the natural language for developing OMS-compliant components. However, OMS3 ensures longevity of old models implementations providing C/C++ and Fortran bindings that allow for connecting slightly modified legacy software to fresh developed Java components.

Recently, three scientific programming languages drew the modeling community’s attention: R and Python, and NetLogo. They have a flat learning curve and the lack of declared data types makes them the flawless solution for fast scripting. Furthermore, they rely on a active developer community that keep releasing and improving open source scientific packages. This is a relevant aspect when it comes to facilitate and speed up the implementation of scientific algorithms. OMS3 functionalities have been enhanced to provide R, Python, and NetLogo bindings. As a result, multi-language modeling solutions are fully interoperable. Thanks to the framework non-invasiveness, R, Python and NetLogo scripts must only be slightly modified with source code annotations to become OMS-compliant components. The resulting components are nevertheless still executable from within the original environments. This contribution shows two actual applications of R and Python bindings: the Regional Urban Growth (RUG) implemented in R and TRansportation ANalysis SIMulation System (TRANSIMS) models which requires RTE python module.

To avoid the burden of installing required software stacks, OMS3 has been bundled into a Docker image.The enhanced flexibility in the workflow is established.