Engineering Papers⌕ Search

SEARCH · Engineering Papers

Results for “programming language”

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 1,027 records · Page 57

In-Situ Resource Utilization Modeling of a Lunar Water Processing System

A key element of achieving a sustained surface presence, such as defined in NASA’s Artemis plan, is In-Situ Resource Utilization (ISRU). ISRU is the practice of using local resources to provide mission consumables that reduce system launch mass requirements, and regenerate resources (chiefly, water and oxygen) for propulsion and life support supporting both Lunar and Martian missions. ISRU systems require multiple complex processes, such as excavation, chemical reactors, and electrolysis subsystems that must operate in harmony to optimize the overall system process from beginning to end. The Mission Analysis and Integration Tool (MAIT) was previously developed with MATLAB in FY22 to connect individual subsystem models into a customized, flexible framework for the purpose of technology downselect, optimization, and end-to-end process planning. Beginning in FY24, MAIT was leveraged and evolved using MATLAB/Simulink due to its ability to communicate with a vast number of other programming languages and makes up the backbone of data flow between inputs and outputs to the subsystem models. MAIT initially evaluated a suite of ISRU-related technologies, including the water processing Lunar Auger Dryer for ISRU (LADI) system with integrated upstream excavation and downstream electrolysis subsystems. With individual models consolidated, the MAIT tool generated over 60,000 cases during its parametric sweeps; these system iterations produced valuable insight into the optimal LADI geometry for minimizing energy demands, estimating carbothermal reactor and radiator mass relationships, and calculated the power dynamics of the electrolysis unit. Advanced efforts with advanced models will include examining multiple production targets to demonstrate the ability to scale ISRU technologies supporting the Space Technology Mission Directorate’s (STMD) commercialization strategy, and increase the MAIT software capability to handle a wide array of ISRU system models beyond the Lunar environment, e.g. production of propellant for a Martian lander.

Avery Carlson↗

A General Procedure to Formulate 3D Elements for Finite Element Applications

This paper presents a general procedure to formulate and implement 3D elements of arbitrary order in meshes with multiple element types. This procedure includes obtaining shape functions and integration quadrature and establishing an approach for checking the generated element’s compatibility with adjacent elements’ surfaces. This procedure was implemented in Matlab, using its symbolic and graphics toolbox, and complied as a GUI interface named ShapeGen3D to provide finite element users with a tool to tailor elements according to their analysis needs. ShapeGen3D also outputs files with the element formulation needed to enable users to implement the generated elements in other programming languages or through user elements in commercial finite element software. Currently, finite element (FE) users are limited to employing element formulation available in the literature, commercial software, or existing element libraries. Thus, the developed procedure implemented in ShapeGen3D offers FEM users the possibility to employ elements beyond those readily available. The procedure was tested by generating the formulation for a brick element, a brick transition element, and higher-order hexahedron and tetrahedron elements that can be used in a spectral finite element analysis. The formulation obtained for the 20-node element was in perfect agreement with the formulation available in the literature. In addition, the results showed that the interpolation condition was met for all the generated elements, which provides confidence in the implementation of the process. Researchers and educators can use this procedure to efficiently develop and illustrate three-dimensional elements.

higher-order elements↗

In-Situ Resource Utilization Modeling of a Lunar Water Processing System

A key element of achieving a sustained surface presence, such as defined in NASA’s Artemis plan, is In-Situ Resource Utilization (ISRU). ISRU is the practice of using local resources to provide mission consumables that reduce system launch mass requirements, and regenerate resources (chiefly, water and oxygen) for propulsion and life support supporting both Lunar and Martian missions. ISRU systems require multiple complex processes, such as excavation, chemical reactors, and electrolysis subsystems that must operate in harmony to optimize the overall system process from beginning to end. The Mission Analysis and Integration Tool (MAIT) was previously developed with MATLAB in FY22 to connect individual subsystem models into a customized, flexible framework for the purpose of technology downselect, optimization, and end-to-end process planning. Beginning in FY24, MAIT was updated and became the capital program in the Systems Engineering and Integration (SE&I) ISRU Modeling and Analysis (SIMA) project. Prior work was leveraged and evolved using MATLAB/Simulink due to its ability to communicate with a vast number of other programming languages and makes up the backbone of data flow between inputs and outputs to the subsystem models. MAIT initially evaluated a suite of ISRU-related technologies, including the water processing Lunar Auger Dryer for ISRU (LADI) system with integrated upstream excavation and downstream electrolysis subsystems. With individual models consolidated, the MAIT tool generated over 5,000 cases during its first round of parametric sweeps on the water processing architecture at multiple production targets; the system analysis produced valuable insight into the optimal LADI geometry that minimized energy demands, estimated effects to cold trap size and radiator requirements, and calculated the power dynamics of the electrolysis unit and liquid oxygen storage volume. Additional efforts are being made to demonstrate the ability to scale ISRU technologies supporting the Space Technology Mission Directorate’s (STMD) commercialization strategy and increase the MAIT software capability. Work is ongoing to handle a wide array of ISRU system models beyond the Lunar environment, e.g. production of propellant for a Martian lander.

Avery Carlson↗

Final Technical Report for CMSC 838L

This paper describes Rahul Vishnoi’s final project supporting in his Graduate School curriculum CMSC 838L, Advanced Topics in Programming Languages and Computer Architecture. This project was selected to intersect with his work as a Pathways Intern supporting Code 583, the Ground Software Systems Branch, at NASA’s Goddard Space Flight Center (GSFC). In this project, Field Programmable Gate Array (FPGA) hardware from Xilinx is used to replace and offload processor and memory-intensive computations from a microcontroller/Processing System (PS) to the FPGA Programmable Logic (PL). An interface between the PL and PS in the form of a C library allows for this bridging of capability.

Microcontroller, FPGA, Embedded Development, Xilin↗

In-Situ Resource Utilization Modeling of a Lunar Water Processing System

A key element of achieving a sustained surface presence, such as defined in NASA’s Artemis plan, is In-Situ Resource Utilization (ISRU). ISRU is the practice of using local resources to provide mission consumables that reduce system launch mass requirements, and regenerate resources (chiefly, water and oxygen) for propulsion and life support supporting both Lunar and Martian missions. ISRU systems require multiple complex processes, such as excavation, chemical reactors, and electrolysis subsystems that must operate in harmony to optimize the overall system process from beginning to end. The Mission Analysis and Integration Tool (MAIT) was previously developed with MATLAB in FY22 to connect individual subsystem models into a customized, flexible framework for the purpose of technology downselect, optimization, and end-to-end process planning. Beginning in FY24, MAIT was updated and became the capital program in the Systems Engineering and Integration (SE&I) ISRU Modeling and Analysis (SIMA) project. Prior work was leveraged and evolved using MATLAB/Simulink due to its ability to communicate with a vast number of other programming languages and makes up the backbone of data flow between inputs and outputs to the subsystem models. MAIT initially evaluated a suite of ISRU-related technologies, including the water processing Lunar Auger Dryer for ISRU (LADI) system with integrated upstream excavation and downstream electrolysis subsystems. With individual models consolidated, the MAIT tool generated over 5,000 cases during its first round of parametric sweeps on the water processing architecture at multiple production targets; the system analysis produced valuable insight into the optimal LADI geometry that minimized energy demands, estimated effects to cold trap size and radiator requirements, and calculated the power dynamics of the electrolysis unit and liquid oxygen storage volume. Additional efforts are being made to demonstrate the ability to scale ISRU technologies supporting the Space Technology Mission Directorate’s (STMD) commercialization strategy and increase the MAIT software capability. Work is ongoing to handle a wide array of ISRU system models beyond the Lunar environment, e.g. production of propellant for a Martian lander.

Avery Carlson↗

Dynamic Event Tree Analysis Through RAVEN

Conventional Event-Tree (ET) based methodologies are extensively used as tools to perform reliability and safety assessment of complex and critical engineering systems. One of the disadvantages of these methods is that timing/sequencing of events and system dynamics is not explicitly accounted for in the analysis. In order to overcome these limitations several techniques, also know as Dynamic Probabilistic Risk Assessment (D-PRA), have been developed. Monte-Carlo (MC) and Dynamic Event Tree (DET) are two of the most widely used D-PRA methodologies to perform safety assessment of Nuclear Power Plants (NPP). In the past two years, the Idaho National Laboratory (INL) has developed its own tool to perform Dynamic PRA: RAVEN (Reactor Analysis and Virtual control ENvironment). RAVEN has been designed in a high modular and pluggable way in order to enable easy integration of different programming languages (i.e., C++, Python) and coupling with other application including the ones based on the MOOSE framework, developed by INL as well. RAVEN performs two main tasks: 1) control logic driver for the new Thermo-Hydraulic code RELAP-7 and 2) post-processing tool. In the first task, RAVEN acts as a deterministic controller in which the set of control logic laws (user defined) monitors the RELAP-7 simulation and controls the activation of specific systems. Moreover, RAVEN also models stochastic events, such as components failures, and performs uncertainty quantification. Such stochastic modeling is employed by using both MC and DET algorithms. In the second task, RAVEN processes the large amount of data generated by RELAP-7 using data-mining based algorithms. This paper focuses on the first task and shows how it is possible to perform the analysis of dynamic stochastic systems using the newly developed RAVEN DET capability. As an example, the Dynamic PRA analysis, using Dynamic Event Tree, of a simplified pressurized water reactor for a Station Black-Out scenario is presented.

42 ENGINEERING↗

Los Alamos National Laboratory 4D Database

4D is an integrated development platform - a single product comprised of the components you need to create and distribute professional applications. You get a graphical design environment, SQL database, a programming language, integrated PHP execution, HTTP server, application server, executable generator, and much more. 4D offers multi-platform development and deployment, meaning whatever you create on a Mac can be used on Windows, and vice-versa. Beyond productive development, 4D is renowned for its great flexibility in maintenance and modification of existing applications, and its extreme ease of implementation in its numerous deployment options. Your professional application can be put into production more quickly, at a lower cost, and will always be instantly scalable. 4D makes it easy, whether you're looking to create a classic desktop application, a client-server system, a distributed solution for Web or mobile clients - or all of the above!

97 MATHEMATICS AND COMPUTING↗

Modernization Enhancements in SCALE 6.2

SCALE is a widely used suite of tools for nuclear systems modeling and simulation that provides comprehensive, verified and validated, user-friendly capabilities for criticality safety, reactor physics, radiation shielding, and sensitivity and uncertainty analysis. For more than 30 years, regulators, industry, and research institutions around the world have used SCALE for nuclear safety analysis and design. However, the underlying architecture of SCALE is based on a 40-year old design with dozens of independent functional modules and control programs, primarily implemented in the Fortran programming language, with extensive use of customized intermediate files to control the logical flow of the analysis. Data are passed between individual computational codes using custom binary files that are read from and written to the hard disk. The SCALE modernization plan provides a progression towards SCALE 7, which will provide an object-oriented parallel-enabled software infrastructure with state-of-the-art methods implemented as reusable components. This paper provides a brief overview of the goals of SCALE modernization and details some modernized features available with SCALE 6.2.

modern↗

The Particle Accelerator Simulation Code PyORBIT

The particle accelerator simulation code PyORBIT is presented. The structure, implementation, history, parallel and simulation capabilities, and future development of the code are discussed. The PyORBIT code is a new implementation and extension of algorithms of the original ORBIT code that was developed for the Spallation Neutron Source accelerator at the Oak Ridge National Laboratory. The PyORBIT code has a two level structure. The upper level uses the Python programming language to control the flow of intensive calculations performed by the lower level code implemented in the C++ language. The parallel capabilities are based on MPI communications. The PyORBIT is an open source code accessible to the public through the Google Open Source Projects Hosting service.

Accelerator Simulation↗

Stonix, Version 0.x

STONIX is a program for configuring UNIX and Linux computer operating systems. It applies configurations based on the guidance from publicly accessible resources such as: NSA Guides, DISA STIGs, the Center for Internet Security (CIS), USGCB and vendor security documentation. STONIX is written in the Python programming language using the QT4 and PyQT4 libraries to provide a GUI. The code is designed to be easily extensible and customizable.

Source record↗

Adaptive Dynamic Event Tree in RAVEN code

RAVEN is a software tool that is focused on performing statistical analysis of stochastic dynamic systems. RAVEN has been designed in a high modular and pluggable way in order to enable easy integration of different programming languages (i.e., C++, Python) and coupling with other applications (system codes). Among the several capabilities currently present in RAVEN, there are five different sampling strategies: Monte Carlo, Latin Hyper Cube, Grid, Adaptive and Dynamic Event Tree (DET) sampling methodologies. The scope of this paper is to present a new sampling approach, currently under definition and implementation: an evolution of the DET me

Dynamic Event Tree↗

j5 v2.8.4

j5 automates and optimizes the design of the molecular biological process of cloning/constructing DNA. j5 enables users to benefit from (combinatorial) multi-part scar-less SLIC, Gibson, CPEC, Golden Gate assembly, or variants thereof, for which automation software does not currently exist, without the intense labor currently associated with the process. j5 inputs a list of the DNA sequences to be assembled, along with a Genbank, FASTA, jbei-seq, or SBOL v1.1 format sequence file for each DNA source. Given the list of DNA sequences to be assembled, j5 first determines the cost-minimizing assembly strategy for each part (direct synthesis, PCR/SOE, or oligo-embedding), designs DNA oligos with Primer3, adds flanking homology sequences (SLIC, Gibson, and CPEC; optimized with Primer3 for CPEC) or optimized overhang sequences (Golden Gate) to the oligos and direct synthesis pieces, and utilizes BLAST to check against oligo mis-priming and assembly piece incompatibility events. After identifying DNA oligos that are already contained within a local collection for reuse, the program estimates the total cost of direct synthesis and new oligos to be ordered. In the instance that j5 identifies putative assembly piece incompatibilities (multiple pieces with high flanking sequence homology), the program suggests hierarchical subassemblies where possible. The program outputs a comma-separated value (CSV) file, viewable via Excel or other spreadsheet software, that contains assembly design information (such as the PCR/SOE reactions to perform, their anticipated sizes and sequences, etc.) as well as a properly annotated genbank file containing the sequence resulting from the assembly, and appends the local oligo library with the oligos to be ordered j5 condenses multiple independent assembly projects into 96-well format for high-throughput liquid-handling robotics platforms, and generates configuration files for the PR-PR biology-friendly robot programming language. j5 thus provides a new way to design DNA assembly procedures much more productively and efficiently, not only in terms of time, but also in terms of cost. To a large extent, however, j5 does not allow people to do something that could not be done before by hand given enough time and effort. An exception to this is that, since the very act of using j5 to design the DNA assembly process standardizes the experimental details and workflow, j5 enables a single person to concurrently perform the independent DNA construction tasks of an entire group of researchers. Currently, this is not readily possible, since separate researchers employ disparate design strategies and workflows, and furthermore, their designs and workflows are very infrequently fully captured in an electronic format which is conducive to automation.

Hillson, Nathan↗

Python GST Implementation v. 0.9 beta

PyGSTi is an implementation of Gate Set Tomography in the python programming language. Gate Set Tomography (GST) is a theory and protocol for simultaneously estimating the state preparation, gate operations, and measurement effects of a physical system of one or many quantum bits (qubits). These estimates are based entirely on the statistics of experimental measurements, and their interpretation and analysis can provide a detailed understanding of the types of errors/imperfections in the physical system. In this way, GST provides not only a means of certifying the "goodness" of qubits but also a means of debugging (i.e. improving) them.

Nielsen, Erik↗

Mads.jl

Mads.jl (Model analysis and decision support in Julia) is a code that streamlines the process of using data and models for analysis and decision support. It is based on another open-source code developed at LANL and written in C/C++ (MADS; http://mads.lanl.gov; LA-CC-11- 035). Mads.jl can work with external models of arbitrary complexity as well as built-in models of flow and transport in porous media. It enables a number of data- and model-based analyses including model calibration, sensitivity analysis, uncertainty quantification, and decision analysis. The code also can use a series of alternative adaptive computational techniques for Bayesian sampling, Monte Carlo, and Bayesian Information-Gap Decision Theory. The code is implemented in the Julia programming language, and has high-performance (parallel) and memory management capabilities. The code uses a series of third party modules developed by others. The code development will also include contributions to the existing third party modules written in Julia; this contributions will be important for the efficient implementation of the algorithm used by Mads.jl. The code also uses a series of LANL developed modules that are developed by Dan O'Malley; these modules will be also a part of the Mads.jl release. Mads.jl will be released under GPL V3 license. The code will be distributed as a Git repo at gitlab.com and github.com. Mads.jl manual and documentation will be posted at madsjulia.lanl.gov.

Vesselinov, Velimir↗

toyplot

Toyplot integrates high quality interactive, animated plotting capabilities into web browsers using the Python programming language.

Shead, Timothy M.↗

PcapDB: Search Optimized Packet Capture, Version 0.1.0.0

PcapDB is a packet capture system designed to optimize the captured data for fast search in the typical (network incident response) use case. The technology involved in this software has been submitted via the IDEAS system and has been filed as a provisional patent. It includes the following primary components: capture: The capture component utilizes existing capture libraries to retrieve packets from network interfaces. Once retrieved the packets are passed to additional threads for sorting into flows and indexing. The sorted flows and indexes are passed to other threads so that they can be written to disk. These components are written in the C programming language. search: The search components provide a means to find relevant flows and the associated packets. A search query is parsed and represented as a search tree. Various search commands, written in C, are then used resolve this tree into a set of search results. The tree generation and search execution management components are written in python. interface: The PcapDB web interface is written in Python on the Django framework. It provides a series of pages, API's, and asynchronous tasks that allow the user to manage the capture system, perform searches, and retrieve results. Web page components are written in HTML,CSS and Javascript.

Ferrell, Paul↗

A Latency Tolerant Runtime System for Mass Market Computer Systems

Grappa is a latency tolerant runtime system for mass market computer systems comprised of multiple nodes having x86 multicore processors and infiniband interconnect. Grappa is designed to enable in-memory irregular applications written in the C++ programming language to scale up on multiprocessor systems. Grappa addresses the load balance, communication, and synchronization challenges posed by running applications that do not partition evenly across large systems. Two mechanisms are essential to its success: fast task switching and message aggregation. Fast task switching enables processors to tolerate communication and synchronization delays; aggregation sustains high bandwidth on low injection rate networks.

Source record↗

Laterally Primed Adaptive Resonance Theory

LAPART is an artificial neural network algorithm written in the Python programming language. The algorithm can learn patterns using multi-dimensional hyper boxes. It can also perfrom regression and classification calculations based on learned associations.

Jones, Christian Birk↗