Flatiron Software

Project Image for EXP
EXP

The EXP C++ library is an efficient N-body simulation toolkit that implements basis-function methods using hybrid CPU and GPU code alongside Python bindings.

View Project
Project Image for Pyia
Pyia

Pyia is a Python package for interacting and working with data from the Gaia Mission.

View Project
Project Image for Astrometry.net
Astrometry.net

We are building an “astrometry engine” to create correct, standards-compliant astrometric meta data for every useful astronomical image ever taken, past and future, in any state of archival disarray. The astrometry engine will take any image and return the astrometry world coordinate system (WCS)—ie, a standards-based description of the (usually nonlinear) transformation between image coordinates and sky coordinates—with absolutely no “false positives” (but maybe some “no answers”). It will do its best, even when the input image has no—or totally incorrect—meta-data. We intend to install the engine for real-time operation on the web, at observatories, at plate-scanning projects, and at data archives.

View Project
Project Image for celerite
celerite

celerite is a library for fast and scalable Gaussian Process (GP) Regression in one dimension with implementations in C++, Python, and Julia. The Python implementation is the most stable and it exposes the most features but it relies on the C++ implementation for computational efficiency. This documentation won’t teach you the fundamentals of GP modeling but the best resource for learning about this is available for free online: Rasmussen & Williams (2006).

View Project
Project Image for DAFT
DAFT

Daft is a Python package that uses matplotlib to render pixel-perfect probabilistic graphical models for publication in a journal or on the internet. With a short Python script and an intuitive model-building syntax you can design directed (Bayesian Networks, directed acyclic graphs) and undirected (Markov random fields) models and save them in any formats that matplotlib supports (including PDF, PNG, EPS and SVG).

View Project
Project Image for emcee
emcee

emcee is an MIT licensed pure-Python implementation of Goodman & Weare’s Affine Invariant Markov chain Monte Carlo (MCMC) Ensemble sampler and these pages will show you how to use it. This documentation won’t teach you too much about MCMC but there are a lot of resources available for that (try this one). We also published a paper explaining the emcee algorithm and implementation in detail.

View Project
Project Image for George
George

George is a fast and flexible Python library for Gaussian Process Regression. It capitalizes on the Hierarchical Off-Diagonal Low-Rank formalism to make controlled approximations for fast execution.

View Project
Project Image for STARRY
STARRY

starry enables the computation of fast and precise light curves for various applications in astronomy: transits and secondary eclipses of exoplanets, light curves of eclipsing binaries, rotational phase curves of exoplanets, light curves of planet-planet and planet-moon occultations, and more.

View Project
Project Image for MESA
MESA

MESA is a suite of open-source, robust, efficient, thread-safe libraries extensively used in computational stellar astrophysics. Its wide-ranging capabilities allow the simulation of diverse stellar evolution scenarios, from low-mass to massive stars, including advanced evolutionary stages and binary interactions. It uses adaptive mesh refinement and sophisticated timestep controls and supports shared memory parallelism based on OpenMP. State-of-the-art modules provide equations of state, opacity, nuclear reaction rates, element diffusion data, and atmosphere boundary conditions. Each module is constructed as a separate Fortran 95 library with its own explicitly defined public interface to facilitate independent development.

View Project
Project Image for Gala
Gala

Galactic Dynamics is the study of the formation, history, and evolution of galaxies using the orbits of objects — numerically-integrated trajectories of stars, dark matter particles, star clusters, or galaxies themselves. Gala is an Astropy-affiliated Python package that aims to provide efficient tools for performing common tasks needed in Galactic Dynamics research. Much of this code uses Python for flexible, user-friendly interfaces that interact with wrappers around low-level code (primarily C) to enable fast computations. Common operations include gravitational potential and force evaluations, orbit integrations, dynamical coordinate transformations, and computing chaos indicators for nonlinear dynamics. Gala heavily uses the units and astronomical coordinate systems defined in the Astropy core package.

View Project
Project Image for jaxoplanet
jaxoplanet

jaxoplanet is a functional-programming-forward implementation of many features from the exoplanet and starry packages built on top of JAX.

View Project
Project Image for nuance
nuance

nuance uses linear models and Gaussian processes (using the JAX-based tinygp) to simultaneously search for planetary transits while modeling correlated noises (e.g. stellar variability) in a tractable way.

View Project
Project Image for wobble
wobble

wobble is an open-source python package for analyzing time-series spectra. It was designed with stabilized extreme precision radial velocity (EPRV) spectrographs in mind, but is highly flexible and extensible to a variety of applications. It takes a data-driven approach to deriving radial velocities and requires no a priori knowledge of the stellar spectrum or telluric features.

View Project
Advancing Research in Basic Science and MathematicsSubscribe to Flatiron Institute announcements and other foundation updates