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 631 records · Page 35

Control And Optimization Modular Modeling Application For Nuclear Deployment

The purpose of the COMMAND code is to provide a flexible, scalable tool for use in developing, integrating, and testing the technologies necessary for achieving autonomous operations of advanced nuclear reactors. The code enables users to efficiently implement custom simulations and experiments by combining key methods from different software modules. These modules are focused on: modeling and simulation tools, such as nuclear simulation tools used for high-fidelity modeling (e.g., Reactor Excursion and Leak Analysis Program [RELAP5-3D] and Monte Carlo N-Particle [MCNP]); machine learning and optimization tools (e.g., anomaly detection and data-driven modeling techniques); advanced control in its digital, high-performance, and supervisory control forms (e.g., proportional integral derivative (PID) control and model predictive control (MPC); and integration with hardware through industrial communication protocols. To ensure flexibility and scalability, COMMAND was designed to be both modular—the software “pieces” all inherit from generic building blocks and can be combined and connected to create complicated simulations—and high performing—designed for parallel processing, enabling simulations and experiments to take advantage of multi-core computers, servers, and nodes. The code is written in the Python programming language due to the language's popularity, active community, and open-source and cross-platform nature. Maintaining consistency with other simulation tools used within the nuclear energy community, users implement simulations and experiments through text input files, which define components, parameters, connections, etc., through lines of text. Given that COMMAND is written in Python, these input files are native Python scripts, and so use the standard Python structure and formatting. This also enables users to take advantage of Python's extensive package library to develop custom capabilities for their specific use cases.

Faber, Jacob [Idaho National Laboratory (INL), Ida↗

Accessible Content Optimization for Research Needs (ACORN)

ACORN employs a set of automated processes for informing and/or enforcing defined content schemas to create standardized and highly structured data. Because of its standardized data source, ACORN easily applies computer automation to generate communication assets such as PDFs, Powerpoint presentations, and web pages. Built using the memory-safe Rust programming language, ACORN is portable and accessible for use on any Windows, Mac, or Linux machine.

Wohlgemuth, JasonHoward [Oak Ridge National Labora↗

ORNL/Restricted-Alternating-Anderson-Picard

Implementation in the programming language Julia of the Restricted Alternating Anderson Picard (AAP) acceleration for (non)-linear fixed point iterations.

Barnafi, NicolásAlejandro [Pontifica Universidad C↗

PALS Python v0.1.0

This is a Python implementation for the Particle Accelerator Lattice Standard (PALS). To define the PALS schema, Pydantic is used to map to Python objects, perform automatic validation, and serialize/deserialize data classes to/from many modern file formats. Various modern file formats (e.g., YAML, JSON, TOML, XML, etc.) are supported, which makes the implementation of the schema-following files in any modern programming language easy (e.g., Python, Julia, C++, LUA, Javascript, etc.). Here, we do Python.

Huebl, Axel [Lawrence Berkeley National Laboratory↗

Regional Oil and gas Aerial Methane Synthesis model (Analytica) (ROAMS Analytica) v1.5.2

The Regional Oil and gas Aerial Methane Synthesis model (Analytica) is a tool to convert the results of wide-area, source-resolved aerial methane remote sensing surveys of oil and natural gas infrastructure in a given region into methane emissions inventories (estimates of the magnitude and breakdown of methane emissions from the surveyed infrastructure). This version is written in the Analytica programming language, and this version accompanies a correction in preparation for submission to Sherwin et al. 2024 (Nature). The tool leverages databases of source-resolved methane emissions detected in aerial surveys, aerial survey coverage information (which areas were measured and when), data summarizing surveyed oil and natural gas infrastructure and production (derived from third-party databases), as well as state-of-the-art mechanistic emissions simulation tools to characterize emissions too small for the aerial system to see. The regional methane emissions estimates produced by this tool are much more granular in both space and asset type than common satellite- or flux tower-based regional estimates. Unlike other tools for converting site-level measurements into regional emissions estimates, our unique geostatistical approach integrates aerially measured emissions with limited need for statistical extrapolation, which can be highly sensitive to modeler assumptions. As a result, ROAMS-based estimates of regional methane emissions from oil and gas activity are widely viewed as highly credible, as evidenced by the success of Dr. Sherwin's recent paper in Nature.

Sherwin, Evan [Lawrence Berkeley National Laborato↗

Open Source Software Prevalence Ingest Tool

The OSSP Ingest Tool accepts user-input organizational information, ingests IT/OT asset lists in Excel format, and ingests the associated CycloneDX SBOM's. It then performs analytics demonstrating the ability to answer the follow research questions: o RQ1. Ability to identify all OSS services running on, and all OSS components present within, an OT device o RQ1a: Ability to differentiate multiple versions of the same OSS component within each OT device. o RQ1b: Ability to differentiate running from not-running OSS components. o RQ1c: Ability to differentiate based on the originator of the component, because a supplier may have modified it after retrieval from the upstream software source. o RQ2. Ability to correlate the identity of a single OSS component across multiple OT devices, mitigating common name variations such as differences in capitalization, '-' vs '_', and so on. o RQ3. Ability to perform subset analysis of OSS components across multiple OT devices o RQ3a: Ability to perform subset analysis across OSS libraries, generating density & distribution graphs to identify commonly-used libraries and outliers. o RQ3b: Ability to perform subset analysis of a single OSS library, generating density & distribution by CI sector, by device type, by device make/model, and/or by firmware version. o RQ3c: Ability to perform subset analysis by grouping OSS libraries according to programming language, then overlay with RQ4b. o RQ3d: Ability to perform subset analysis by OSS upstream source, providing insight into degree of modifications performed by suppliers. o RQ4. Ability to identify dependencies (transitive and direct) of each differentiated OSS library within each OT device, and enable RQ1,2,3 iteratively for dependencies. o RQ1. Ability to identify all OSS services running on, and all OSS components present within, an OT device o RQ1a: Ability to differentiate multiple versions of the same OSS component within each OT device. o RQ1b: Ability Page

Kapadia, Shayna [Lawrence Livermore National Labor↗

pymcnp v1

This is a software package that makes it easier to handle MCNP, a neutron transport simulation toolkit, simulations. It helps with reading and writing output from MCNP and modifying the input files programmatically. Furthermore, it also allows the visualization of input geometry and of the results. Pymcnp provides access to these features using the Python programming language.

Persaud, Arun↗

Methods for evaluation and treatment of data shift

This is a code repository for a set of tools for detecting and mitigating data shifts in machine learning. The goal of the tools is to provide capabilities for determining when new data sets differ from training data sets and for adapting existing models to new data or correcting data shifts (via domain adaptation). The components will be written in Python, a high-level programming language that takes advantage of the Python ecosystem of high-quality open-source packages for machine learning and signal processing.

Parikh, Nidhi↗

Flutter

The following repositories are a set of libraries that are needed for applications that are being developed for users of the Accelerator control system. The programming language used is Dart and for the user interface use the Flutter framework. URL for code repositories: - https://github.com/fermi-ad/flutter-controls-core - https://github.com/fermi-ad/flutter-controls-plotting - https://github.com/fermi-ad/flutter-controls-auth - https://github.com/fermi-ad/flutter-gql-acsys - https://github.com/fermi-ad/flutter-gql-faas - https://github.com/fermi-ad/dart-gql-acsys - https://github.com/fermi-ad/dart-explicit-imports - https://github.com/fermi-ad/dart-gql-faas - https://github.com/fermi-ad/design-system

Neswold, Rich [Fermi National Accelerator Laborato↗

DRB-ML-Dataset

This datastet contains kernels extracted from OpenMP microbenchmarks collected in DataRaceBench. The purpose of this dataset is to serve as training data for machine learning with programming language processing (PLP).

Lin, Pei-Hung↗

Representation of U.S. Warm Temperature Extremes in Global Climate Model Ensembles

Extreme temperature events can have considerable negative impacts on sectors such as health, agriculture, and transportation. Observational evidence indicates the severity and frequency of warm extremes are increasing over much of the United States, but there are sizeable challenges both in estimating extreme temperature changes and in quantifying the relevant associated uncertainties. This study provides a simple statistical framework using a block maxima approach to analyze the representation of warm temperature extremes in several recent global climate model ensembles. Uncertainties due to structural model differences, grid resolution, and internal variability are characterized and discussed. Results show that models and ensembles differ greatly in the representation of extreme temperature over the United States, and variability in tail events is dependent on time and anthropogenic warming, which can influence estimates of return periods and distribution parameter estimates using generalized extreme value (GEV) distributions. These effects can considerably influence the uncertainty of model hindcasts and projections of extremes. Several idealized regional applications are highlighted for evaluating ensemble skill and trends, based on quantile analysis and root-mean-square errors in the overall sample and the upper tail. The results are relevant to regional climate assessments that use global model outputs and that are sensitive to extreme warm temperature. Accompanying this manuscript is a simple toolkit using the R statistical programming language for characterizing extreme events in gridded datasets.

54 ENVIRONMENTAL SCIENCES↗

Emulator-Based Bayesian Calibration of the CISNET Colorectal Cancer Models

Purpose To calibrate Cancer Intervention and Surveillance Modeling Network (CISNET)'s SimCRC, MISCAN-Colon, and CRC-SPIN simulation models of the natural history colorectal cancer (CRC) with an emulator-based Bayesian algorithm and internally validate the model-predicted outcomes to calibration targets.Methods We used Latin hypercube sampling to sample up to 50,000 parameter sets for each CISNET-CRC model and generated the corresponding outputs. We trained multilayer perceptron artificial neural networks (ANNs) as emulators using the input and output samples for each CISNET-CRC model. We selected ANN structures with corresponding hyperparameters (i.e., number of hidden layers, nodes, activation functions, epochs, and optimizer) that minimize the predicted mean square error on the validation sample. We implemented the ANN emulators in a probabilistic programming language and calibrated the input parameters with Hamiltonian Monte Carlo-based algorithms to obtain the joint posterior distributions of the CISNET-CRC models' parameters. We internally validated each calibrated emulator by comparing the model-predicted posterior outputs against the calibration targets.Results The optimal ANN for SimCRC had 4 hidden layers and 360 hidden nodes, MISCAN-Colon had 4 hidden layers and 114 hidden nodes, and CRC-SPIN had 1 hidden layer and 140 hidden nodes. The total time for training and calibrating the emulators was 7.3, 4.0, and 0.66 h for SimCRC, MISCAN-Colon, and CRC-SPIN, respectively. The mean of the model-predicted outputs fell within the 95% confidence intervals of the calibration targets in 98 of 110 for SimCRC, 65 of 93 for MISCAN, and 31 of 41 targets for CRC-SPIN.Conclusions Using ANN emulators is a practical solution to reduce the computational burden and complexity for Bayesian calibration of individual-level simulation models used for policy analysis, such as the CISNET CRC models. In this work, we present a step-by-step guide to constructing emulators for calibrating 3 realistic CRC individual-level models using a Bayesian approach.

artificial neural networks↗

Managing code transformations for better performance portability

Code optimization is an intricate task that is getting more complex as computing systems evolve. Managing the program optimization process, including the implementation and evaluation of code variants, is tedious, inefficient, and errors are likely to be introduced in the process. Moreover, because each platform typically requires a different sequence of transformations to fully harness its computing power, the optimization process complexity grows as new platforms are adopted. To address these issues, systems and frameworks have been proposed to automate the code optimization process. They, however, have not been widely adopted and are primarily used by experts with deep knowledge about underlying architecture and compiler intricacies. This article describes the requirements that we believe necessary for making automatic performance tuning more broadly used, especially in complex, long-lived high-performance computing applications. Besides discussing limitations of current systems and strategies to overcome these, we describe the design of a system that is able to semi-automatically generate efficient platform-specific code. In the proposed system, the code optimization is programmer-guided, separately from application code, on an external file in what we call optimization programming. The language to program the optimization process is able to represent complex collections of transformations and, as a result, generate efficient platform-specific code. A database manages different optimized versions of code regions, providing a pragmatic approach to performance portability, and the framework itself has separate components, allowing the optimized code to be used on systems without installing all of the modules required for the code generation. We present experiments on two different platforms to illustrate the generation of efficient platform-specific code that performs comparable to hand-optimized, vendor-provided code.

Computer Science↗

Biclique: an R package for maximal biclique enumeration in bipartite graphs

Bipartite graphs are widely used to model relationships between pairs of heterogeneous data types. Maximal bicliques are foundational structures in such graphs, and their enumeration is an important task in systems biology, epidemiology and many other problem domains. Thus, there is a need for an efficient, general purpose, publicly available tool to enumerate maximal bicliques in bipartite graphs. The statistical programming language R is a logical choice for such a tool, but until now no R package has existed for this purpose. Our objective is to provide such a package, so that the research community can more easily perform this computationally demanding task. Biclique is an R package that takes as input a bipartite graph and produces a listing of all maximal bicliques in this graph. Input and output formats are straightforward, with examples provided both in this paper and in the package documentation. Biclique employs a state-of-the-art algorithm previously developed for basic research in functional genomics.

97 MATHEMATICS AND COMPUTING↗

SEGUID v2: Extending SEGUID checksums for circular, linear, single- and double-stranded biological sequences

Background Synthetic biology involves combining different DNA fragments, each containing functional biological parts, to address specific problems. Fundamental gene-function research often requires cloning and propagating DNA fragments, such as those from the iGEM Parts Registry or Addgene, typically distributed as circular plasmids. Addgene’s repository alone offers around 150,000 plasmids. To ensure data integrity, cryptographic checksums can be calculated for the sequences. Each sequence has a unique checksum, making checksums useful for validation and quick lookups of associated annotations. For example, the SEGUID checksum uniquely identifies protein sequences with a 27-character string. Objectives The original SEGUID, while effective for protein sequences and single-stranded DNA (ssDNA), is not suitable for circular DNA since there is no natural starting position nor for double-stranded DNA (dsDNA) since two separate sequences are present. Challenges include how to uniquely represent linear dsDNA, circular ssDNA, and circular dsDNA. To meet these needs, we propose SEGUID v2, which extends the original SEGUID to handle additional types of sequences. Conclusions SEGUID v2 produces orientation and rotation invariant checksums for single-stranded, double-stranded, possibly staggered, linear, and circular DNA and RNA sequences. Customizable alphabets allow for other types of sequences. In contrast to the original SEGUID, which uses Base64, SEGUID v2 uses Base64url to encode the SHA-1 hash. This ensures SEGUID v2 checksums can be used as-is in filenames, regardless of platform, and in URLs, with minimal friction. Availability SEGUID v2 is readily available for major programming languages, distributed under the MIT license. JavaScript package seguid is available on npm, Python package seguid on PyPi, R package seguid on CRAN, and a Tcl script on GitHub. These tools, along with documentation, examples, and an online SEGUID Calculator , can be found at https://www.seguid.org .

Pereira, Humberto↗

Community Based Data of Uranium Adsorption onto Quartz

This data upload includes a compilation of experiments for quantifying uranium adsorption onto quartz. The provided .csv file has been compiled from the literature in a findable, accessible, interoperable, reusable (FAIR) data format. This was accomplished using the Lawrence Livermore National Laboratory Surface Complexation Database Converter (SCDC) code written in the R programming language (free licensing available at https://ipo.llnl.gov/technologies/software/llnl-surface-complexation-database-converter-scdc). This constitutes all current data compiled on uranium-quartz interactions in the L-SCIE (LLNL Surface Complexation/Ion Exchange) database (as of 02/28/2022). This data was used to develop surface complexation models that fit the global community dataset (https://doi.org/10.1021/acs.est.1c07109). The FAIR-formatted dataset also enables the implementation of alternative machine-learning approaches that can be explored in the future.

54 ENVIRONMENTAL SCIENCES↗

Community Based Data of Potentiometric Titration of Iron Oxides: Ferrihydrite (HFO), Goethite, Hematite, Magnetite

This data release includes experimental data of potentiometric titration for iron oxides. The data in the provided .csv files is not our own experimental data but have been compiled from the multiple literature sources. The master database is L-SCIE (LLNL Surface Complexation/Ion Exchange) database, and the provided .csv files are extracted data from L-SCIE. The .csv files were obtained by using the Lawrence Livermore National Laboratory Surface Complexation Database Converter (SCDC) code written in the R programming language (free licensing available at https://ipo.llnl.gov/technologies/software/llnl-surface-complexation-database-converter-scdc).The released data was used for developing a comprehensive community data-driven surface complexation modeling (SCM) framework for simulating potentiometric titration of mineral surfaces. Compiled community data for ferrihydrite, goethite, hematite, and magnetite are fit to produce representative protolysis constants that can reproduce potentiometric titration data collected from multiple literature sources.

54 ENVIRONMENTAL SCIENCES↗

Classification of River Catchments in the Contiguous United States: Code, Dataset, Similarity Patterns, and Resulting Classes

This dataset serves as supplementary information for the paper by Ciulla F. and Varadharajan C. A Network Approach for Multiscale Catchment Classification using Traits (see reference 1). It contains environmental and physical catchment traits, such as temperatures, precipitation, land use and human interference, from 9067 sites across the contiguous United States (CONUS). The purpose of this dataset is to provide information for a better trait-based categorization of river catchments in the CONUS using networks as an analytical tool. The traits variables match the ones present in the GAGES-II dataset and the preprocessing steps are described in the Methods section (processed_dataset.csv). Additionally we include the topologies (nodes, edges and clusters, also referred as classes) of the catchment network and traits network generated by said dataset (csv and json files). A series of tables support the information carried by the network providing more detailed descriptions of cluster components (SI1.pdf). A summary of all the plots of clusters of catchments with at least 50 nodes is provided (SI2.pdf). The characteristic traits for each cluster of catchments is presented as z-score (traits_categories_zscores_per_catchment_class.csv). The link to the hydrological behavior of clusters of catchments is displayed by boxplots, each describing a particular river discharge index (SI3.pdf). Both csv and json files can be read by common text editors but the data contained into them can be better handled using programming languages like python and database oriented libraries like pandas. Pdf files can be read by any pdf reader software.[02-23-2024] Update: The code and datasets necessary to reproduce the results of the study are available as a zipped repository (code_datasets_catchments_similarity.zip).

54 ENVIRONMENTAL SCIENCES↗