Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “API,”

Search indexed NASA NTRS and DOE OSTI research on propulsion, heat transfer, battery materials and energy systems. Follow report and document links to the original sources.

Quote a phrase for an exact phrase match. Source license links do not imply unrestricted reuse.

At least 91 records · Page 5

Antecedent precipitation index determined from CST estimates of rainfall

This paper deals with an experimental calculation of a satellite-based antecedent precipitation index (API). The index is also derived from daily rain images produced from infrared images using an improved version of GSFC's Convective/Stratiform Technique (CST). API is a measure of soil moisture, and is based on the notion that the amount of moisture in the soil at a given time is related to precipitation at earlier times. Four different CST programs as well as the Geostationary Operational Enviroment Satellite (GOES) Precipitation Index developed by Arkin in 1979 are compared to experimental results, for the Mississippi Valley during the month of July. Rain images are shown for the best CST code and the ARK program. Comparisons are made as to the accuracy and detail of the results for the two codes. This project demonstrates the feasibility of running the CST on a synoptic scale. The Mississippi Valley case is well suited for testing the feasibility of monitoring soil moisture by means of CST. Preliminary comparisons of CST and ARK indicate significant differences in estimates of rain amount and distribution.

Martin, David W.↗

A new programming metaphor for image processing procedures

Most image processing systems, besides an Application Program Interface (API) which lets users write their own image processing programs, also feature a higher level of programmability. Traditionally, this is a command or macro language, which can be used to build large procedures (scripts) out of simple programs or commands. This approach, a legacy of the teletypewriter has serious drawbacks. A command language is clumsy when (and if! it attempts to utilize the capabilities of a multitasking or multiprocessor environment, it is but adequate for real-time data acquisition and processing, it has a fairly steep learning curve, and the user interface is very inefficient,. especially when compared to a graphical user interface (GUI) that systems running under Xll or Windows should otherwise be able to provide. ll these difficulties stem from one basic problem: a command language is not a natural metaphor for an image processing procedure. A more natural metaphor - an image processing factory is described in detail. A factory is a set of programs (applications) that execute separate operations on images, connected by pipes that carry data (images and parameters) between them. The programs function concurrently, processing images as they arrive along pipes, and querying the user for whatever other input they need. From the user's point of view, programming (constructing) factories is a lot like playing with LEGO blocks - much more intuitive than writing scripts. Focus is on some of the difficulties of implementing factory support, most notably the design of an appropriate API. It also shows that factories retain all the functionality of a command language (including loops and conditional branches), while suffering from none of the drawbacks outlined above. Other benefits of factory programming include self-tuning factories and the process of encapsulation, which lets a factory take the shape of a standard application both from the system and the user's point of view, and thus be used as a component of other factories. A bare-bones prototype of factory programming was implemented under the PcIPS image processing system, and a complete version (on a multitasking platform) is under development.

Smirnov, O. M.↗

PCIPS 2.0: Powerful multiprofile image processing implemented on PCs

Over the years, the processing power of personal computers has steadily increased. Now, 386- and 486-based PC's are fast enough for many image processing applications, and inexpensive enough even for amateur astronomers. PCIPS is an image processing system based on these platforms that was designed to satisfy a broad range of data analysis needs, while requiring minimum hardware and providing maximum expandability. It will run (albeit at a slow pace) even on a 80286 with 640K memory, but will take full advantage of bigger memory and faster CPU's. Because the actual image processing is performed by external modules, the system can be easily upgraded by the user for all sorts of scientific data analysis. PCIPS supports large format lD and 2D images in any numeric type from 8-bit integer to 64-bit floating point. The images can be displayed, overlaid, printed and any part of the data examined via an intuitive graphical user interface that employs buttons, pop-up menus, and a mouse. PCIPS automatically converts images between different types and sizes to satisfy the requirements of various applications. PCIPS features an API that lets users develop custom applications in C or FORTRAN. While doing so, a programmer can concentrate on the actual data processing, because PCIPS assumes responsibility for accessing images and interacting with the user. This also ensures that all applications, even custom ones, have a consistent and user-friendly interface. The API is compatible with factory programming, a metaphor for constructing image processing procedures that will be implemented in future versions of the system. Several application packages were created under PCIPS. The basic package includes elementary arithmetics and statistics, geometric transformations and import/export in various formats (FITS, binary, ASCII, and GIF). The CCD processing package and the spectral analysis package were successfully used to reduce spectra from the Nordic Telescope at La Palma. A photometry package is also available, and other packages are being developed. A multitasking version of PCIPS that utilizes the factory programming concept is currently under development. This version will remain compatible (on the source code level) with existing application packages and custom applications.

Smirnov, O. M.↗

Coordinating complex decision support activities across distributed applications

Knowledge-based technologies have been applied successfully to automate planning and scheduling in many problem domains. Automation of decision support can be increased further by integrating task-specific applications with supporting database systems, and by coordinating interactions between such tools to facilitate collaborative activities. Unfortunately, the technical obstacles that must be overcome to achieve this vision of transparent, cooperative problem-solving are daunting. Intelligent decision support tools are typically developed for standalone use, rely on incompatible, task-specific representational models and application programming interfaces (API's), and run on heterogeneous computing platforms. Getting such applications to interact freely calls for platform independent capabilities for distributed communication, as well as tools for mapping information across disparate representations. Symbiotics is developing a layered set of software tools (called NetWorks! for integrating and coordinating heterogeneous distributed applications. he top layer of tools consists of an extensible set of generic, programmable coordination services. Developers access these services via high-level API's to implement the desired interactions between distributed applications.

Adler, Richard M.↗

A Geometry Based Infra-Structure for Computational Analysis and Design

The computational steps traditionally taken for most engineering analysis suites (computational fluid dynamics (CFD), structural analysis, heat transfer and etc.) are: (1) Surface Generation -- usually by employing a Computer Assisted Design (CAD) system; (2) Grid Generation -- preparing the volume for the simulation; (3) Flow Solver -- producing the results at the specified operational point; (4) Post-processing Visualization -- interactively attempting to understand the results. For structural analysis, integrated systems can be obtained from a number of commercial vendors. These vendors couple directly to a number of CAD systems and are executed from within the CAD Graphical User Interface (GUI). It should be noted that the structural analysis problem is more tractable than CFD; there are fewer mesh topologies used and the grids are not as fine (this problem space does not have the length scaling issues of fluids). For CFD, these steps have worked well in the past for simple steady-state simulations at the expense of much user interaction. The data was transmitted between phases via files. In most cases, the output from a CAD system could go to Initial Graphics Exchange Specification (IGES) or Standard Exchange Program (STEP) files. The output from Grid Generators and Solvers do not really have standards though there are a couple of file formats that can be used for a subset of the gridding (i.e. PLOT3D data formats). The user would have to patch up the data or translate from one format to another to move to the next step. Sometimes this could take days. Specifically the problems with this procedure are:(1) File based -- Information flows from one step to the next via data files with formats specified for that procedure. File standards, when they exist, are wholly inadequate. For example, geometry from CAD systems (transmitted via IGES files) is defined as disjoint surfaces and curves (as well as masses of other information of no interest for the Grid Generator). This is particularly onerous for modern CAD systems based on solid modeling. The part was a proper solid and in the translation to IGES has lost this important characteristic. STEP is another standard for CAD data that exists and supports the concept of a solid. The problem with STEP is that a solid modeling geometry kernel is required to query and manipulate the data within this type of file. (2) 'Good' Geometry. A bottleneck in getting results from a solver is the construction of proper geometry to be fed to the grid generator. With 'good' geometry a grid can be constructed in tens of minutes (even with a complex configuration) using unstructured techniques. Adroit multi-block methods are not far behind. This means that a million node steady-state solution can be computed on the order of hours (using current high performance computers) starting from this 'good' geometry. Unfortunately, the geometry usually transmitted from the CAD system is not 'good' in the grid generator sense. The grid generator needs smooth closed solid geometry. It can take a week (or more) of interaction with the CAD output (sometimes by hand) before the process can begin. One way Communication. (3) One-way Communication -- All information travels on from one phase to the next. This makes procedures like node adaptation difficult when attempting to add or move nodes that sit on bounding surfaces (when the actual surface data has been lost after the grid generation phase). Until this process can be automated, more complex problems such as multi-disciplinary analysis or using the above procedure for design becomes prohibitive. There is also no way to easily deal with this system in a modular manner. One can only replace the grid generator, for example, if the software reads and writes the same files. Instead of the serial approach to analysis as described above, CAPRI takes a geometry centric approach. This makes the actual geometry (not a discretized version) accessible to all phases of the analysis. The connection to the geometry is made through an Application Programming Interface (API) and NOT a file system. This API isolates the top-level applications (grid generators, solvers and visualization components) from the geometry engine. Also this allows the replacement of one geometry kernel with another, without effecting these top-level applications. For example, if UniGraphics is used as the CAD package then Parasolid (UG's own geometry engine) can be used for all geometric queries so that no solid geometry information is lost in a translation. This is much better than STEP because when the data is queried, the same software is executed as used in the CAD system. Therefore, one analyzes the exact part that is in the CAD system. CAPRI uses the same idea as the commercial structural analysis codes but does not specify control. Software components of the CAD system are used, but the analysis suite, not the CAD operator, specifies the control of the software session. This also means that the license issues (may be) minimized and individuals need not have to know how to operate a CAD system in order to run the suite.

Haimes, Robert↗

Late Pleistocene and Holocene Glacial Evolution and Isotasy in the Antarctic Peninsula

Employing a numerical model of Payne et al. that simulates the late-Pleistocene evolution of the former Antarctic Peninsula Ice Sheet (APIS) as a basis, we compute the present-day postglacial vertical isostasy of this region. The region may also experience significant mid-to late-Holocene glacial mass changes. Climate and oceanographic studies indicate that the ice mass imbalance of this region may be of larger magnitude that elsewhere in Antarctica. We compute the crustal response to these more recent ice mass changes and Holocene fluctuations with a simple gravitating Earth model consisting of an elastic lithosphere and a viscoelastic mantle (half-space). The calculations demonstrate that the present-day response could be significant, possibly at the level of about 4 - 11 mm/yr. Such significant crustal motion could be driven by glacial mass changes integrated over the last 1000 years if the regional mantle viscosity is below about 2 x 10(exp 20) Pa sec. In this lower viscosity range, present-day crustal motion has a significant phase-lagged character and the composite lithosphere/mantle viscoelastic response to late-Holocene events dominates over purely elastic (instantaneous) responses to present-day ice mass changes. For a higher mantle viscosity, greater than about 5 x 10(exp 20) Pa sec, the predicted present-day vertical isostasy is dominated by gravitational response to glacial unloading during the 18 - 6 kyr BP collapse of the APIS, and is analogous to that known to be occurring in the Gulf of Bothnia and Hudson Bay.

Ivins, E. R.↗

Soil Moisture and Mesoscale Convective Complex Development During the 1993 US Midwest Flood: Results from the MM5-PLACE Atmosphere/Land-Surface Model

The 1993 US Midwest Flood produced record levels of flooding, in the Mississippi River Basin. This flooding resulted from repeated frontal passages and mesoscale convective complexes (MCCs) during the months of June and July. A better understanding of processes that influenced MCC development during the 1993 Flood may lead to improved forecasts of heavy precipitation and flooding. Here, we consider the impact of soil moisture on MCC development during a two-day period (June 23-24) of the 1993 US Midwest Flood. The purpose of this study is to assess the importance of soil moisture distribution on the timing, intensity, and location of heavy precipitation. In this study, the MM5-PLACE Atmosphere/Land-Surface Model is utilized. The atmospheric component consists of the Penn State/NCAR MM5 mesoscale model, and the land-surface component consists of the Goddard Parameterization for Land Atmosphere-Cloud Exchange (PLACE). Initial soil moisture is provided from two sources: 1) NCEP reanalysis, and 2) Antecedent Precipitation Index (API) using NOAA rain gauge measurements as a proxy for soil moisture. NCEP reanalysis provides coarse resolution initial soil moisture (2.5 degree), while API provides high resolution initial soil moisture (10-200 km depending on NOAA rain gauge spacing). Initial results indicate that the distribution of soil moisture has a significant impact on the timing and location of heavy precipitation during this two-day flood event. Precipitation in simulations with high resolution initial soil moisture agrees more closely with observed precipitation. These results suggest that high resolution soil moisture observations are necessary to accurately predict severe storm development, heavy precipitation, and subsequent flooding.

Baker, R. David↗

Reducing costs of managing and accessing navigation and ancillary data by relying on the extensive capabilities of NASA's spice system

The SPICE system of navigation and ancillary data possesses a number of traits that make its use in modern space missions of all types highly cost efficient. The core of the system is a software library providing API interfaces for storing and retrieving such data as trajectories, orientations, time conversions, and instrument geometry parameters. Applications used at any stage of a mission life cycle can call SPICE APIs to access this data and compute geometric quantities required for observation planning, engineering assessment and science data analysis. SPICE is implemented in three different languages, supported on 20+ computer environments, and distributed with complete source code and documentation. It includes capabilities that are extensively tested by everyday use in many active projects and are applicable to all types of space missions - flyby, orbiters, observatories, landers and rovers. While a customer's initial SPICE adaptation for the first mission or experiment requires a modest effort, this initial effort pays off because adaptation for subsequent missions/experiments is just a small fraction of the initial investment, with the majority of tools based on SPICE requiring no or very minor changes.

ancillary data↗

The Virtual Solar Observatory and the Heliophysics Meta-Virtual Observatory

The Virtual Solar Observatory (VSO) has survived its infancy and provides metadata search and data identification for measurements from 45 instrument data sets held at 12 online archives, as well as flare and coronal mass ejection (CME) event lists. Like any toddler, the VSO is good at getting into anything and everything, and is now extending its grasp to more data sets, new missions, and new access methods using its application programming interface (API). We discuss and demonstrate recent changes, including developments for STEREO and SDO, and an IDL-callable interface for the VSO API. We urge the heliophysics community to help civilize this obstreperous youngster by providing input on ways to make the VSO even more useful for system science research in its role as part of the growing cluster of Heliophysics Virtual Observatories.

Gurman, J. B.↗

Registered File Support for Critical Operations Files at (Space Infrared Telescope Facility) SIRTF

The SIRTF Science Center's (SSC) Science Operations System (SOS) has to contend with nearly one hundred critical operations files via comprehensive file management services. The management is accomplished via the registered file system (otherwise known as TFS) which manages these files in a registered file repository composed of a virtual file system accessible via a TFS server and a file registration database. The TFS server provides controlled, reliable, and secure file transfer and storage by registering all file transactions and meta-data in the file registration database. An API is provided for application programs to communicate with TFS servers and the repository. A command line client implementing this API has been developed as a client tool. This paper describes the architecture, current implementation, but more importantly, the evolution of these services based on evolving community use cases and emerging information system technology.

file management services↗

A First Approach to Global Runoff Simulation using Satellite Rainfall Estimation

Many hydrological models have been introduced in the hydrological literature to predict runoff but few of these have become common planning or decision-making tools, either because the data requirements are substantial or because the modeling processes are too complicated for operational application. On the other hand, progress in regional or global rainfall-runoff simulation has been constrained by the difficulty of measuring spatiotemporal variability of the primary causative factor, i.e. rainfall fluxes, continuously over space and time. Building on progress in remote sensing technology, researchers have improved the accuracy, coverage, and resolution of rainfall estimates by combining imagery from infrared, passive microwave, and space-borne radar sensors. Motivated by the recent increasing availability of global remote sensing data for estimating precipitation and describing land surface characteristics, this note reports a ballpark assessment of quasi-global runoff computed by incorporating satellite rainfall data and other remote sensing products in a relatively simple rainfall-runoff simulation approach: the Natural Resources Conservation Service (NRCS) runoff Curve Number (CN) method. Using an Antecedent Precipitation Index (API) as a proxy of antecedent moisture conditions, this note estimates time-varying NRCS-CN values determined by the 5-day normalized API. Driven by multi-year (1998-2006) Tropical Rainfall Measuring Mission (TRMM) Multi-satellite Precipitation Analysis, quasi-global runoff was retrospectively simulated with the NRCS-CN method and compared to Global Runoff Data Centre data at global and catchment scales. Results demonstrated the potential for using this simple method when diagnosing runoff values from satellite rainfall for the globe and for medium to large river basins. This work was done with the simple NRCS-CN method as a first-cut approach to understanding the challenges that lie ahead in advancing the satellite-based inference of global runoff. We expect that the successes and limitations revealed in this study will lay the basis for applying more advanced methods to capture the dynamic variability of the global hydrologic process for global runoff monlto~ngin real time. The essential ingredient in this work is the use of global satellite-based rainfall estimation.

Hong, Yang↗

[Interview Questions]

The Goddard Mission Services Evolution Center, or GMSEC, was started in 2001 to create a new standard approach for managing GSFC missions. Standardized approaches in the past involved selecting and then integrating the most appropriate set of functional tools. Assumptions were made that "one size fits all" and that tool changes would not be necessary for many years. GMSEC took a very different approach and has proven to be very successful. The core of the GMSEC architecture consists of a publish/subscribe message bus, standardized message formats, and an Applications Programming Interface (API). The API supports multiple operating systems, programming languages and messaging middleware products. We use a GMSEC-developed free middleware for low-cost development. A high capacity, robust middleware is used for operations and a messaging system with a very small memory footprint is used for on-board flight software. Software components can use the standard message formats or develop adapters to convert from their native formats to the GMSEC formats. We do not want vendors to modify their core products. Over 50 software components are now available for use with the GMSEC architecture. Most available commercial telemetry and command systems, including the GMV hifly Satellite Control System, have been adapted to run in the GMSEC labs.

Smith, Dan↗

Updates to the NASA Space Telecommunications Radio System (STRS) Architecture

This paper describes an update of the Space Telecommunications Radio System (STRS) open architecture for NASA space based radios. The STRS architecture has been defined as a framework for the design, development, operation and upgrade of space based software defined radios, where processing resources are constrained. The architecture has been updated based upon reviews by NASA missions, radio providers, and component vendors. The STRS Standard prescribes the architectural relationship between the software elements used in software execution and defines the Application Programmer Interface (API) between the operating environment and the waveform application. Modeling tools have been adopted to present the architecture. The paper will present a description of the updated API, configuration files, and constraints. Minimum compliance is discussed for early implementations. The paper then closes with a summary of the changes made and discussion of the relevant alignment with the Object Management Group (OMG) SWRadio specification, and enhancements to the specialized signal processing abstraction.

Kacpura, Thomas J.↗

Callable Virtual Observatory Functionality: Sample Use Cases

A virtual observatory with an Application Programming Interface (API) can become a powerful tool in analysis and modeling. In particular, an API that integrates time selection on such criteria as "most recent" and closest to a given absolute time simplifies the user-end programming considerably. We examine three types of use cases (nowcasting, data assimilation input, and user-defined sampling rates) for such functionality in the Virtual Solar Observatory (VSO).

Gurman, Joseph B.↗

Design of a Model Execution Framework: Repetitive Object-Oriented Simulation Environment (ROSE)

The ROSE framework was designed to facilitate complex system analyses. It completely divorces the model execution process from the model itself. By doing so ROSE frees the modeler to develop a library of standard modeling processes such as Design of Experiments, optimizers, parameter studies, and sensitivity studies which can then be applied to any of their available models. The ROSE framework accomplishes this by means of a well defined API and object structure. Both the API and object structure are presented here with enough detail to implement ROSE in any object-oriented language or modeling tool.

Gray, Justin S.↗

OTF Proof of Concept: CCSDS Mission Operations Alert Services

Conclusions: Use of multiple vendor frameworks within a component creates thread lockups and fragility conflicts over the control of the main thread. Avoid closed vendor messaging frameworks. The MAL layer does isolate the data elements from the messaging framework but application work dispatch is heavily dominated by the framework chosen. API Language is a major factor in implementation. Message APIs with timeouts seem unavoidable in some environments (GUI). Language environment needs to support callbacks (or threads) from the messaging framework to deal with pub/sub management messages and status. Statusing of application communications demand a local broker agent per physical system or else the use of the AMSstyle registrar heartbeat.

Reynolds, Walt↗

Perl Modules for Constructing Iterators

The Iterator Perl Module provides a general-purpose framework for constructing iterator objects within Perl, and a standard API for interacting with those objects. Iterators are an object-oriented design pattern where a description of a series of values is used in a constructor. Subsequent queries can request values in that series. These Perl modules build on the standard Iterator framework and provide iterators for some other types of values. Iterator::DateTime constructs iterators from DateTime objects or Date::Parse descriptions and ICal/RFC 2445 style re-currence descriptions. It supports a variety of input parameters, including a start to the sequence, an end to the sequence, an Ical/RFC 2445 recurrence describing the frequency of the values in the series, and a format description that can refine the presentation manner of the DateTime. Iterator::String constructs iterators from string representations. This module is useful in contexts where the API consists of supplying a string and getting back an iterator where the specific iteration desired is opaque to the caller. It is of particular value to the Iterator::Hash module which provides nested iterations. Iterator::Hash constructs iterators from Perl hashes that can include multiple iterators. The constructed iterators will return all the permutations of the iterations of the hash by nested iteration of embedded iterators. A hash simply includes a set of keys mapped to values. It is a very common data structure used throughout Perl programming. The Iterator:: Hash module allows a hash to include strings defining iterators (parsed and dispatched with Iterator::String) that are used to construct an overall series of hash values.

Tilmes, Curt↗

Application-Program-Installer Builder

A computer program builds application programming interfaces (APIs) and related software components for installing and uninstalling application programs in any of a variety of computers and operating systems that support the Java programming language in its binary form. This program is partly similar in function to commercial (e.g., Install-Shield) software. This program is intended to enable satisfaction of a quasi-industry-standard set of requirements for a set of APIs that would enable such installation and uninstallation and that would avoid the pitfalls that are commonly encountered during installation of software. The requirements include the following: 1) Properly detecting prerequisites to an application program before performing the installation; 2) Properly registering component requirements; 3) Correctly measuring the required hard-disk space, including accounting for prerequisite components that have already been installed; and 4) Correctly uninstalling an application program. Correct uninstallation includes (1) detecting whether any component of the program to be removed is required by another program, (2) not removing that component, and (3) deleting references to requirements of the to-be-removed program for components of other programs so that those components can be properly removed at a later time.

Wolgast, Paul↗