A computer program manages large, hierarchical sets of input and output (I/O) parameters (typically, sequences of alpha- numeric data) involved in computational simulations in a variety of technological disciplines. This program represents sets of parameters as structures coded in object-oriented but otherwise standard American National Standards Institute C language. Each structure contains a group of I/O parameters that “make sense” as a unit in the simulation program with which this program is used. The addition of options and/or elements to sets of parameters amounts to the addition of new elements to data structures. By association of child data generated in response to a particular user input, a hierarchical ordering of input parameters can be achieved. Associated with child data structures are the creation and description mechanisms within the parent data structures. Child data structures can spawn further child data structures. In this program, the creation and representation of a sequence of data structures is effected by one line of code that looks for children of a sequence of structures until there are no more children to be found. A linked list of structures is created dynamically and is completely represented in the data structures themselves. Such hierarchical data presentation can guide users through otherwise complex setup procedures and it can be integrated within a variety of graphical representations.

This program was written by Gerhard Klimeck of Caltech for NASA’s Jet Propulsion Laboratory.

This software is available for commercial licensing. Please contact Don Hart of the California Institute of Technology at (818) 393- 3425. Refer to NPO-30835.



This Brief includes a Technical Support Package (TSP).
Document cover
Program for User-Friendly Management of Input and Output Data Sets

(reference NPO-30835) is currently available for download from the TSP library.

Don't have an account?



Magazine cover
NASA Tech Briefs Magazine

This article first appeared in the November, 2003 issue of NASA Tech Briefs Magazine (Vol. 27 No. 11).

Read more articles from the archives here.


Overview

The document outlines a technical support package for a computer program developed by Gerhard Klimeck at NASA's Jet Propulsion Laboratory (JPL) aimed at improving the management of input and output data sets for scientific and engineering simulations. The program addresses common challenges faced by users, particularly novice users, who often struggle with unstructured and cryptic ASCII input lists that require extensive knowledge of all available options to run simulations effectively.

The program introduces a hierarchical data management system that organizes input parameters into structured, object-oriented data structures. This organization allows for a more intuitive user experience, as parameters are grouped logically, making it easier for users to understand and manipulate the data. The hierarchical structure also enables the creation of child data structures that can spawn further child structures, facilitating a dynamic and comprehensive representation of data.

One of the key benefits of this program is its ability to simplify the input process through a graphical user interface (GUI) that does not require duplication of the science code. This means that when parameters or options are added to the simulation code, they do not need to be manually updated in the GUI, significantly reducing the complexity of code maintenance and the risk of discrepancies between the science code and the GUI. This streamlined approach enhances collaboration within development teams and improves the overall efficiency of the simulation setup process.

The document emphasizes the importance of user-friendly management of data sets, particularly in the context of advanced simulators that may otherwise present a steep learning curve for users. By providing a structured and integrated approach to data management, the program aims to alleviate common user concerns, such as the need to understand interdependencies between different options in the input files.

Overall, this technical support package highlights the innovative solutions being developed at JPL to enhance the usability of scientific simulations, making them more accessible to a broader range of users while maintaining the integrity and complexity required for advanced computational tasks. The software is available for commercial licensing, indicating its potential for widespread application in various technological disciplines.