Los Alamos National LaboratoryRichard P. Feynman Center for Innovation

Innovation protecting tomorrow

# Open Source Software

All open source software available through the Laboratory is listed below.

## Contact

**Intellectual Property Team**- Richard P. Feynman Center for Innovation
- (505) 665-9090

## Powered by GitHub

GitHub is the preferred platform for hosting Los Alamos open source software. For more information regarding how to access software from Los Alamos, contact the Software Team.

### Software

**BGK-MD, Version 1.0**

The software implements a heterogeneous multiscale method (HMM), which involves solving a classical molecular dynamics (MD) problem and then computes the entropy production in order to compute the relaxation times towards equilibrium for use in a Bhatnagar-Gross-Krook (BGK) solver.**Branchless Reproducible Floating Point Summation With Integers, Version 1.x.x**

Returns bitwise identical sums regardless of the order of the summands. Uses no branches and mostly integer operations. Designed to be vectorizable.**Branson**

This code solves the gray thermal radiative transfer (TRT) equations in parallel using simple opacities and Cartesian meshes. Although Branson solves the TRT equations it is not designed to model radiation transport: Branson contains simple physics and does not have a multigroup treatment, nor can it use physical material data.**brulilo, Version 0.x**

brulilo is a Python package for building and evolving thermonuclear reaction networks.**Build and Execute Environment (BEE), C17056**

The goal of BEE (Build and Execution Environment) is to create a unified software stack to containerize HPC applications.**Byfl: Compiler-based Application Analysis**

Byfl is a productivity tool that helps computational scientists analyze their code for accelerator-friendly and accelerator-unfriendly constructs.**CHROTRAN 1.X**

Contamination of groundwater with heavy metals (e.g., Cr, As, Zn, Pb, Mn, and Cu) is a critical public health problem for which, in most cases, in situ remediation is the only viable treatment option. For these types of interventions, a three-dimensional reactive transport model incorporating the relevant biogeochemical processes is invaluable.**CICE, the Los Alamos Sea Ice Model**

The Los Alamos sea ice model (CICE) is the result of an effort to develop a computationally efficient sea ice component for a fully coupled atmosphere–land–ocean–ice global climate model. It was originally designed to be compatible with the Parallel Ocean Program (POP), an ocean circulation model developed at Los Alamos National Laboratory for use on massively parallel computers.**Cinema Toolkit**

Cinema is a workflow and toolkit for capturing, storing and exploring extreme scale scientific data. It is a highly interactive image-based approach to data analysis and exploration that promotes investigation of large scientific datasets, and is easily integrated into existing workflows through extensions to widely used open source tools.**Clog, Version 1.0, C17026**

Clog is a library of charged particle stopping powers and related Coulomb logarithm processes in a plasma. The stopping power is a particularly useful quantity for plasma physics, as it measures the energy loss of per unit length of charged particle as it traverses a plasma. Clog's primary stopping power is the BPS (Brown-Preston-Singleton) theory.**Cloud Stack**

A PyQt application that will run (if the right libraries are installed) packer to create VMware, Virtualbox or Parallels virtual machines.**CLAMR (Compute Language Adaptive Mesh Refinement)**

CLAMR is being developed as a DOE mini-app, one of several applications being developed to help prepare for the Exascale class of heterogeneous hardware platforms.**Code Analysis and Refactoring with Clang Tools, Version 0.1**

Code Analysis and Refactoring with Clang Tools is a small set of example code that demonstrates techniques for applying tools distributed with the open source Clang compiler. Examples include analyzing where variables are used and replacing old data structures with standard structures.**CODY: Continuum Dynamics Evaluation and Test Suite**

CODY is a development framework and suite of small applications, or "mini-apps", characteristic of continuum dynamics applications that will be used for research in new programming models, software environments, and the evaluation of new computer architectures.**coNCePTuaL -- A Network Correctness and Performance Testing Language**

coNCePTuaL is a tool designed to facilitate rapidly generating programs that measure the performance and/or test the correctness of networks and network protocol layers**Contact Control, Version 1.0**

The contact control code is a generalized force control scheme meant to interface with a robotic arm being controlled using the Robot Operating System (ROS).**db, Version 0.2.x**

A set of programs and utilities for generating and manipulating data files in TSV (tab-separated value) or JSON format.**DeCE Version 1.2**

DeCE is a nuclear reaction database manipulation program, particularly for the data written in the ENDF (Evaluated Nuclear Data File) format.**DfnWorks, Version 2.0, C17035**

DFNWorks is a suite of software for generating and solving flow and transport physics on a Discrete Fracture Network (DFN).**Draco, Version 6.x.x**

Draco is an object-oriented component library geared towards numerically intensive, radiation (particle) transport applications built for parallel computing hardware.**Emulator Generation Gadget**

This software automates the production of standalone emulators for complex computer models. The end result of running the software is a piece of code called an emulator, a statistical approximation which predicts the output of complex computer simulation, but at a much faster speed.**Enabling the democratization of the genomics revolution with a fully integrated web-based bioinformatics platform (EDGE), Version 1.5 and 1.x.**

EDGE bioinformatics was developed to help biologists process Next Generation Sequencing data (in the form of raw FASTQ files), even if they have little to no bioinformatics expertise.**EOSlib, Version 3**

Equilibrium thermodynamics underpins many of the technologies used throughout theoretical physics, yet verification of the various theoretical models in the open literature remains challenging. EOSlib provides a single, consistent, verifiable implementation of these models, in a single, easy-to-use software package.**ExaSP2**

ExaSP2 is a reference implementation of typical linear algebra algorithms and workloads for a quantum molecular dynamics (QMD) electronic structure code. The algorithm is based on a recursive second-order Fermi-Operator expansion method (SP2) and is tailored for density functional based tight-binding calculations of material systems.**Fast Equilibration of Ocean Tracers Software**

The Fast Equilibration of Ocean Tracers Software (FEOTS) is a set of Fortran modules and programs for post-processing output from LANL's Parallel Ocean Program (POP). However, it is written so that it can be extended for use with other General Circulation Models.**FEHM V3.0-V3.X**

The numerical background of the FEHM computer code can be traced to the early 1970s when it was used to simulate geothermal and hot dry rock reservoirs. The primary use over a number of years was to assist in the understanding of flow fields and mass transport in the saturated and unsaturated zones below the potential Yucca Mountain repository.**FleCSPH**

FleCSPH is a multi-physics compact application that exercises FleCSI parallel data structures for tree-based particle methods. In particular, FleCSPH implements a smoothed-particle hydrodynamics (SPH) solver for the solution of Lagrangian problems in astrophysics and cosmology. FleCSPH includes support for gravitational forces using the fast multipole method (FMM).**Flexible Computer Science Infrastructure (FleCSI), Version 1.0**

A flexible computer science infrastructure tool for developing multi-physics application codes.**Galacticus HDF5 Example, Version 1.0, C17008**

An example of reading the Galacticus HDF5 file in R and a demonstration of some of the features of the data.**Genome Majority Vote**

The pipeline runs PRODIGAL gene predictions on all genomes, runs pan-reciprocal BLAST, and identifies ortholog sets.**GPULife, C16122**

The code runs the Game of Life among several processors. Each processor uses CUDA to set up the grid's buffer on the GPU, and that buffer is fed to other GPU languages to apply the rules of the game of life.**Gridder, Version, 3**

GRIDDER is a simple interactive grid generation tool for creating orthogonal, 2D quadrilateral or 3D hexahedral grids.**HASH v.1.x**

Described in the journal article and presentations, "Hash-Based Algorithms for Discretized Data," hash algorithms are to be distributed for starting points for optimization efforts.**HASH v.2.x**

Enhancements to hash version 1.x, with compact hash techniques and described in the journal article, "Compact Hash Algorithms for Computational Meshes."**HILO: Quasi Diffusion Accelerated Monte Carlo on Hybrid Architectures**

The Boltzmann transport equation provides high fidelity simulation of a diverse range of kinetic systems. We present a novel algorithm, Quasi-Diffusion Accelerated Monte Carlo (QDA-MC), which improves performance on heterogeneous CPU/GPU architectures.**HPSim, Version 1.0**

HPSim is a GPU-accelerated online multi-particle beam dynamics simulation tool for ion linacs.**Jali**

Jali is a parallel unstructured mesh infrastructure library designed for use by multi-physics simulations. It supports 2D and 3D arbitrary polyhedral meshes distributed over hundreds to thousands of nodes. Jali can read and write Exodus II meshes along with fields and sets on the mesh and support for other formats is partially implemented or is in the plans.**Kokkos Clang, Version 1.0**

A Clang-based compiler for compiling Kokkos code (with no syntactical differences) with the aim of generating optimized code for parallel targets such a multithreaded and GPU (NVIDIA/CUDA) and preserving domain awareness.**LaGriT V3.x**

Los Alamos Grid Toolbox (LaGriT) is a library of user callable tools that provide mesh generation, mesh optimization and dynamic mesh maintenance in two and three dimensions.**LANL Go Suite**

The LANL Go Suite is a collection of packages, libraries, utilities, and software patches related to Google's Go programming language. The LANL Go Suite largely takes a high-performance computing angle to Go.**Libparty, Version 1.x**

General particle library designed to run on next-generation hardware such as MICs and GPUs**Libristra**

libristra is a mathematical and computational utility and support library for codes. It includes utilities such as input parsing, commonly used mathematical routines, scientific units, etc.-
**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 Los Alamos National Laboratory and written in C/C++.

**MADSpython 1.x**MADSpython (Model analysis and decision support tools in Python) is a code in Python that streamlines the process of using data and models for analysis and decision support using the code MADS.

**MAMA Plugin-API**The Mama Plugin API enables the development of plugins for the Mama (Morphological Analysis for Material Attribution) software. Mama is an image analysis tool that provides robust and accurate quantification of morphological features in bulk material microscopy images (optical, SEM, etc.).**Model Analysis ToolKit (MATK), Version 0**

MATK provides basic functionality to facilitate model analysis within the Python computational environment.**MC3, Version 1**

The MC3 code is used to perform Monte Carlo simulations in the isothermal-isobaric ensemble (constant number of particles, temperature, and pressure) on molecular crystals.**McPhD**

McPhD is a research code designed to explore the applications of the Haskell programming language to Monte Carlo algorithms.**MeGAMerge, Version 1.0**

A novel method of merging of multiple genomic assembly or long read data sources for assembly.**mFUSE: Function Sequencer for MATLAB, Version 0.1.00**

mFUSE: Function Sequencer for MATLAB is a Java based graphical user interface for use with MATLAB.**Multi-Dimensional Hashed Indexed Metadata (MDHIM) System**

The MDHIM software is a revolutionary new software tool that performs more than a billion key/value inserts per second into a globally ordered key space.**Multi Infrastructure Control and Optimization Toolkit, Resilient Design Module (MICOT-RDT), Version 2.X**

MICOT is a tool for optimizing and controlling infrastructure systems. In includes modules for optimizing the operations of an infrastructure structure (for example optimal dispatch), designing infrastructure systems, restoring infrastructures systems, resiliency, preparing for natural disasters, interdicting networks, state estimation, sensor placement, and simulation of infrastructure systems.**Multi-BGK**

This code package solves the multi-species 1D-3V BGK kinetic model of Haack, Hauck, and Murillo [J. Stat. Phys., 168, 2017, Phys. Rev. E, submitted, 2017]. This model conserves mass, momentum, and energy and satisfies Boltzmann's H-Theorem, i.e. entropy dissipation. Additionally, the collision model matches either the momentum or temperature relaxation rate of the Boltzmann equation. It can be run in 0D-3V and 1D-3V modes.**MultiMatTest, Version 1.0**

MultiMatTest is a demonstration code to support a talk and paper titled A Comparative Study of Multi-material Data Structures for Computational Physics Applications. The application times basic operations for different representations of multi-material data structures.**Muon GUORE - Geant4 MACRO for nextGEN ovBB, C17032**

This code is made to model the effect of muons in afuture double beta decay array with the Geant4 software framework.**NHPP for FRBs Version 1.0, C17006**

This code implements the non-homogeneous poisson process model for estimating the rate of fast radio bursts. It includes modeling terms for the distribution of events in the Universe and the detection sensitivity of the radio telescopes and arrays used in observation. The model is described in LA-UR-16-26261.**NJOY2016, Version x, C16120**

NJOY2016 is used to convert evaluations in the Evaluated Nuclear Data Files (ENDF) format into forms useful for practical applications such as fission and fusion reactor analysis, criticality safety, radiation shielding, nuclear waste management, nuclear medicine procedures, and more.**NuT**

NuT is a Monte Carlo neutrino transport code for astrophysics simulations.**NuFlood, Version 1.x**

NUFLOOD Version 1.x is a surface-water hydrodynamic package designed for the simulation of overland flow of fluids.**OpenSHMEM, C16077**

OpenSHMEM is an effort to create a specification for a standardized API for parallel programming in the Partitioned Global Address Space.**Optimization, Inference and Learning for Advanced Networks**

This piece of software aims at providing an implementation of methods to perform efficient optimization, probabilistic inference and model selection and learning for various type of networked systems.**ParSplice, Version 1**The ParSplice code implements the Parallel Trajectory Splicing algorithm described in [1]. This method is part of the Accelerated Molecular Dynamics family of techniques developed in Los Alamos National Laboratory over the last 16 years. These methods aim at generating high-quality trajectories of ensembles of atoms in materials.

**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.

**Performance Prediction Toolkit, C17098**The Performance Prediction Toolkit (PPT), is a scalable co-design tool that contains the hardware and middle-ware models, which accept proxy applications as input in runtime prediction.**PENNANT**

PENNANT is a mini-app intended for use in advanced architecture research.**Phase Field Dislocation Dynamics (PFDD)**

Phase Field Dislocation Dynamics (PFDD) is a phase field approach for tracking the motion and interactions of individual dislocations in materials, mostly face-centered cubic (fcc) metals. The phase field approach relies on scalar order parameters or phase field variables to track a quantity of interest.**Pinyon, Version 0**

Pinyon is a tool that stores steps involved in creating a model derived from a collection of data. The main function of Pinyon is to store descriptions of calculations used to analyze or visualize the data in a database, and allow users to view the results of these calculations via a web interface. Additionally, users may also use the web interface to make adjustments to the calculations and rerun the entire collection of analysis steps automatically.**PISTON (Portable Data Parallel Visualization and Analysis)**

A Portable Cross-Platform Data-Parallel Visualization and Analysis Library**POD.1x**

Polyhedral Outer-Approximation and dynamic Discretization POD is based on a novel global algorithm that uses an adaptive convexification scheme and constraints programming methods to solve Mixed-Integer Non-Linear Programming problems (MINLPs) efficiently.**Portage, Version 1**

Portage is a software library system for physics remapping (mapping physics variables from one computational mesh to another) either within a single simulation code or between two disparate simulation codes. Portage is designed to utilize advanced-architecture compute platforms and to be easily extensible by third parties.**POSTMAX, Version 2.0**

POSTMAX is a small program developed to statistically analyze MACCS2 output to determine a 95th percentile value for atmospheric dispersion (x/Q) as a function of weather data and site boundary distance.**Progress Version 1.0**

Software library for parallel rapid order N and graph-based recursive electronic structure solvers with applications to material science, chemistry, and molecular biology.**PROSIG, Version 1.x**

PROSIG designs nucleic acid-based assays that detect specified target sequences and do not detect specific non-target sequences.**PYDislocDyn**

PyDislocDyn is a suite of python programs designed to perform various calculations for basic research in dislocation dynamics in metals with simple crystal symmetries in the continuum limit.**PyFEHM**

PyFEHM is an open-source Python library that provides classes and methods to support a scripting environment for the subsurface heat and mass transfer, and geomechanics code FEHM. It is inspired by a similar library, PyTOUGH, available for use with the TOUGH2 family of codes.**PyForecastTools, C17112**

The PyForecastTools package provides Python routines for calculating metrics for model validation, forecast verification and model comparison.**PyGeoTess 0.2.0**

PyGeoTess is a Python interface module to the GeoTess gridding and earth model library from Sandia National Laboratories. It provides simplified access to a subset of the GeoTess C++ library, and takes advantage of Python's interactive interpreter and inline documentation system.**PyVXI-11, Version 1.0**

PyVXI-11 is a Python extension to interface with electronics laboratory equipment such as oscilloscopes, network and spectrum analyzes, multimeters, etc., using the standard SCPI language and TCP/IP.**Quinoa 0.2, 17087**

Quinoa is a set of computational tools that enables research and numerical analysis in fluid dynamics. At this time it is a test-bed to experiment with various algorithms using fully asynchronous runtime systems.**ramdisk, Version 0.x**

The intent of the software is eventually to become a middleware library to provide a cross platform interface for creating and managing a ramdisk.**Remedy Application Statistics**

Remedy Application Statistics are a series of forms and workflow developed to collect additional statistical information not normally available in out of- the-box implementations of the Remedy Action Request System designed by BMC Software. This workflow is used to collect additional information about users accessing the Remedy application, such as operating system and browser type.**Resonant Ultrasound Spectroscopy Software**

Software to operate a Red Pitaya microcomputer as a Spectrometer.**Response Surface Modeling Tool Suite, Version 1.x**

The Response Surface Modeling (RSM) Tool Suite is a collection of three codes used to generate an empirical interpolation function for a collection of drag coefficient calculations computed with Test Particle Monte Carlo (TPMC) simulations.**Retro-Future, 1.0**

A system for processing network packet capture streams, extracting metadata and generating flow records (via Argus.)**Ring current Atmosphere interactions Model with Self-Consistent Magnetic field (RAM-SCB) Version 2.x**

The Ring current Atmosphere interactions Model with Self-Consistent magnetic field (B) is a unique code that combines a kinetic model of ring current plasma with a three dimensional force-balanced model of the terrestrial magnetic field. The kinetic portion, RAM, solves the kinetic equation to yield the bounce-averaged distribution function as a function of azimuth, radial distance, energy and pitch angle for three ion species (H+, He+, and O+) and, optionally, electrons.)**RMA- MT Benchmarks**

The RMA-MT benchmarks are a suite of performance tests for multi-threaded Message Passing Interface (MPI) Remote Memory Access (RMA) implementations. The suite includes tests for bandwidth and latency with any number of threads. This suite was originally developed and release by Sandia National Laboratory. LANL modifications to the suite include a complete re-write of much of the source code, bi-directional bandwidth, and message rate tests.**RuleBuilder**

RuleBuilder is a tool for drawing graphs represented by the BioNetGen rule-based modeling language (BNGL), a domain-specific language used to formulate mathematical models of biochemical interaction networks.**ROSSTEP, Version 1.3**

ROSSTEP is a system for sequentially running roslaunch, rosnode, and bash scripts automatically, for use in Robot Operating System (ROS) applications.**Sandal, Version 0.1, C16081**

Sandal is a mini-app of particle-mesh based simulation in terms of relational tables and queries. The physics simulated is rather simple, it propagates a set of particles in a constant, 2D wind field with Gaussian turbulence.**Seismoacoustic Software**

Addressing local and regional-scale seismological and infrasound problems through a combination of theory, data analysis and field deployments in support of United States treaty/explosion monitoring.**SHMTools**

SHMTools is a MATLAB package that facilitates the construction of structural health monitoring (SHM) processes.**ShiftNMFk 1.1**The code represents an unsupervised adaptive machine learning algorithm that allows efficient and high performance de-mixing and feature extraction of a multitude of non-negative signals mixed and recorded by a network of uncorrelated sensor arrays.

**SimApp 1.8.x.**System for converting DESIRE (Direct Executing Simulation in Real Time) simulation models to executable code models (C# / C++). These converted models are used as the basis for 2 products, one of which is the focus of this review: an engineering design interface for Fissile Solution Systems.**Simplified Interface to Complex Memory Hierarchies (SICM), 1.x**A simple, flexible way of identifying and working with memory pools is needed. Hence, we believe that a library for interacting with complex memory systems should expose two kinds of abstraction: First, a low-level, mechanism-based interface designed for the runtime or advanced user that wants complete control, with its focus on simplified representation but with all decisions left to the caller. Second, a high-level, policy-based interface designed for ease of use for the application developer, in which we aim for best-practice decisions based on application intent.**SNAP:SN (Discrete Ordinates) Application Proxy**

SNAP serves as a proxy application to model the performance of a modern discrete ordinates neutral particle transport application.**Spherical nanoindentation stress-strain analysis (Spin), Version 1.0**

Nanoindentation is a tool that allows the mechanical response of a variety of materials at the nano micron length scale to be measured.**STONIX, Version 0.x**

STONIX is a program for configuring UNIX and Linux computer operating systems.**Swiftbat Python Library**

Swiftbat is a set of Python library routines and command-line utilities that have been developed for the purpose of retrieving, analyzing, and displaying data from NASA's Swift spacecraft, especially the data from the Swift Burst Alert Telescope (BAT).**ThermonucleotideBLAST**

ThermonucleotideBLAST is a software program for searching a target database of nucleic acid sequences using an assay specific query.**Tight-binding model for materials at mesoscale (TBM3) Version 1.0**

TBM3 is an open source package for computational simulations of quantum materials at multiple scales in length and time. The project originated to investigate the multiferroic behavior in transition-metal oxide heterostructures.**Time Resolved Phonon Spectroscopy (TRPS), Version 1.0**

TRPS code was developed for the project "Time Resolved Phonon Spectroscopy'. Routines contained in this piece of software were specially created to model phonon generation and tracking within materials that interact with ionizing radiation, particularly applicable to the modeling of cryogenic radiation detectors for dark matter and neutrino research. These routines were created to link seamlessly with the open source Geant4 framework for the modeling of radiation transport in matter, with the explicit intent of open sourcing them for eventual integration into that code base.**tsk_get_files**

tsk_get_files is a script that uses "The Sleuth Kit" commands "fls" and "icat" to rebuild a file structure from a disk image.**Topness, Version 1.0**The code would be used in analyses of data from the LHC, to improve the sensitivity of their experiments to new exotic particles. The software minimizes a certain function, as defined in the above reference, for some input provided by the user. The output to the user is the global minimum of that function. The code finds the global minimum using the Nelder-Mead algorithm. All the codes for the minimization including the Nelder-Mead algorithm, is written by the author. The software is written in C++.

**TopN-Pareto Front Search (TopN-PFS)**The JMP Add-In TopN-PFS provides an automated tool for finding layered Pareto front to identify the top N solutions from an enumerated list of candidates subject to optimizing multiple criteria. The approach constructs the N layers of Pareto fronts, and then provides a suite of graphical tools to explore the alternatives based on different prioritizations of the criteria. The tool is designed to provide a set of alternatives from which the decision-maker can select the best option for their study goals.

**Total-Variation Regularized Numerical Differentiation (TVDiff), Version 1.0**

This code computes the derivative of a function specified by noisy data using regularization to suppress noise amplification.**TRuML**

This application, TRuML, translates models written in either Kappa or BNGL into the other language. While similar in many respects, key differences between the two languages makes translation sufficiently complex that automation becomes a useful tool.**Tusas, Version 1, C17003**

Tusas is a general / flexible software framework for solving coupled systems of nonlinear partial differential equations. Tusas was originally developed for phase-field simulation of solidification. In order for Tusas to be effective, the PDEs must be compatible with structured or unstructured Lagrange (nodal) finite element discretizations and explicit (Euler) or implicit (Euler, Trapezoid, BDF2) temporal discretizations.**Two Sample T-Test for Comparing Genetic Sequence Diversity**

Given two samples of sequences the program performs a t-test to see whether the two mean genetic distances are significantly different.**Tycho 2, Version 0.1**

This software implements the discrete ordinates method for kinetic transport equations. Specifically, it implements sweeps over an unstructured mesh. The purpose is to have a small, malleable code as a test bed for new numerical and computational optimization techniques.**Virtual Machine Builder**

Virtual Machine Builder is a graphical user interface for use and modification of virtual machine templates using Hashi Corp packer to perform virtual machine creation.**ZEM, Version 1.x**

Typically environmental management problems require analysis of large and complex data sets originating from concurrent data streams with different data collection frequencies and pedigree.**Zenoss**

The HPC monitoring project goal was to extend upon the Zenoss core produce to provide large scale system monitoring, data collection and reporting, and root cause isolation for high-performance computers and isolated infrastructure.