Skip to content
View jacotay7's full-sized avatar

Organizations

@KeckObservatory @LUVS-Space-Telescopes

Block or report jacotay7

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
jacotay7/README.md

Welcome to My GitHub Profile! 🌌

Hello! I'm Jacob, a software and controls engineer specializing in adaptive optics, with a PhD in Astronomy and Astrophysics. I build real-time systems for astronomy and enjoy building and collaborating on open-source tools for the field.

Contact: jacobataylor7@gmail.com · ORCID: 0000-0002-6356-567X

Professional Credentials

AO Software Engineer, W. M. Keck Observatory · 2025–present

I lead the real-time control (RTC) platform for STRATA, the upcoming adaptive optics facility upgrade for the Keck I telescope. I also develop and maintain the software stacks for the Keck I and Keck II AO systems and their lasers, supporting the HAKA upgrade on Keck II and the KAPA upgrade on Keck I.

My work includes modernizing and sustaining complex, long-lived observatory systems, as well as integrating cameras, motion stages, filter wheels, and optomechanical hardware into AO systems. If it touches the AO system, and needs software, I'm there!

Education

PhD, Astronomy and Astrophysics, University of Toronto · 2024

My doctoral thesis focused on adaptive optics and real-time control, including adaptive-secondary-mirror calibration, AI-enhanced control, eAPD infrared camera characterization, and AO bench design.

Personal Projects

I’m passionate about building open-source tools that make adaptive optics and scientific software more accessible to the community. These projects grew from that work and are intended to be useful, approachable building blocks for others.

  • pyRTC — an open-source adaptive optics real-time control toolkit in Python, designed to combine a simple interface with high-performance control.
  • pyturb — fast, GPU-optional atmospheric turbulence and phase-screen generation for adaptive optics.
  • aobasis — a library for generating and working with adaptive-optics modal basis sets, including Zernike, KL, zonal, and Hadamard modes.
  • pyshmem — low-latency shared-memory streams for NumPy arrays and CUDA-backed PyTorch tensors.
  • shmpipeline — a framework for building and managing high-performance CPU/GPU shared-memory compute pipelines.
  • getframes — realistic synthetic camera frames for scientific imaging and image-processing pipelines.

Pinned Loading

  1. pyRTC pyRTC Public

    An object-oriented adaptive optics real-time control software written in Python. The goal is to be a universal and simple to use python package while maintaining enough real-time performance to be …

    Python 13 5

  2. pyturb pyturb Public

    Optimized, accurate, easy to use atmospheric phase screen generation.

    Python

  3. pyshmem pyshmem Public

    Shared-memory streams for NumPy arrays and CUDA-backed PyTorch pipelines, with explicit locking and predictable cross-process behavior.

    Python

  4. shmpipeline shmpipeline Public

    A tool for building and managing high performance CPU/GPU shared-memory compute pipelines. Ideal for real-time control and image processing applications

    Python

  5. KeckObservatory/pyTomoAO KeckObservatory/pyTomoAO Public

    A fast, flexible tool for generating tomographic reconstructors for LTAO and MOAO systems.

    Python 1

  6. getframes getframes Public

    Need some fake camera frames? This is the place to go.

    Python