skip to main content

DOE PAGESDOE PAGES

This content will become publicly available on September 28, 2018

Title: The introspective may achieve more: Enhancing existing Geoscientific models with native-language emulated structural reflection

Geoscientific models manage myriad and increasingly complex data structures as trans-disciplinary models are integrated. They often incur significant redundancy with cross-cutting tasks. Reflection, the ability of a program to inspect and modify its structure and behavior at runtime, is known as a powerful tool to improve code reusability, abstraction, and separation of concerns. Reflection is rarely adopted in high-performance Geoscientific models, especially with Fortran, where it was previously deemed implausible. Practical constraints of language and legacy often limit us to feather-weight, native-language solutions. We demonstrate the usefulness of a structural-reflection-emulating, dynamically-linked metaObjects, gd. We show real-world examples including data structure self-assembly, effortless save/restart and upgrade to parallel I/O, recursive actions and batch operations. We share gd and a derived module that reproduces MATLAB-like structure in Fortran and C++. We suggest that both a gd representation and a Fortran-native representation are maintained to access the data, each for separate purposes. In conclusion, embracing emulated reflection allows generically-written codes that are highly re-usable across projects.
Authors:
 [1] ;  [1]
  1. The Pennsylvania State Univ., University Park, PA (United States)
Publication Date:
Grant/Contract Number:
SC0010620
Type:
Accepted Manuscript
Journal Name:
Computers and Geosciences
Additional Journal Information:
Journal Volume: 110; Related Information: Softwarehttp://water.engr.psu.edu/shen/software_page.html (under the title “Integrated generic data package”); Journal ID: ISSN 0098-3004
Publisher:
Elsevier
Research Org:
Pennsylvania State Univ., University Park, PA (United States)
Sponsoring Org:
USDOE Office of Science (SC), Biological and Environmental Research (BER) (SC-23)
Country of Publication:
United States
Language:
English
Subject:
58 GEOSCIENCES; Reflection; Geoscientific modeling; Efficient programming; FORTRAN; Generic data structure; Data I/O
OSTI Identifier:
1397240