Horizon Simulation Framework: Picasso Interface
Tools: C#, Windows Forms, XML, Regular Expressions, MS Visual Studio
Systems toolkit interface for satellite modeling, including COE catalog, import tools, multi-threaded execution, scripting support, and result / state visualizations.
Artemis Application Engine
Tools: C++, OpenGL, SDL
Cross-platform application library for rapid development of programs with fast and high-quality graphics and interface requirements.
Tools: C++, SDL, Artemis Engine
Pacman, the iconic evildoer, has invaded the ancestral ghost lands for the last time. Use your arrow keys to hunt down Pacman with Blinky, Pinky, Inky, and Clyde, and eliminate him!
Fly (In Progress)
Tools: Aerodynamic Simulation, Dynamic Land Generation, C++, SDL, Artemis Engine (Networked)
Fly free over a world with dynamically generated landscapes, cavorting with the aerodynamics of your plane and with other players.
Mini and Me (In Progress)
Tools: Java, Android, Ouya,
A series of fun (and sometimes educational) co-op games designed for father-daughter (or any parent-child) enjoyment. Designed for the Ouya open-source game console.
MacCormacks Algorithm for Rocket Nozzles
Tools: Fluid Dynamics, Iterative Numerics, C++, Artemis engine
Simulates properties of supersonic flow in rocket nozzle with known geometry using iterative (MacCormack's) techniques in 1d, including 3d model of subject nozzle, real-time state plots, and user-controlled iteration.
MOC Nozzle Geometry
Tools: Fluid Dynamics, Method of Characteristics, C++, Artemis engine
Calculates optimal minimum-length nozzle geometry for a desired exit speed (corresponds to ideal environmental pressure).
Tools: C++, Artemis engine
Given boundary geometry, generates an interpolated grid of desired density for computational schemes.
LUCCA: Library of Utilities for C/C++ Astrodynamics
Tools: C/C++, Astrodynamics, Numerical Mathematics
The Library of Utilities for C/C++ Astrodynamics (LUCCA) is an open-source (MIT license) collection of methods and classes for solving both common and complex problems in aerospace engineering. It is designed and written in C/C++ for fast execution and near-universal platform support. Problems include a variety of propagation models, orbit determination, kinematics, launch models, and orbit controllers.
CUBEN: C/C++ Computational Numerics
Tools: C/C++, Numerical Mathematics
The C/C++ Computational Numerics library (CUBEN) is an open-source (MIT license) set of methods and classes for solving both common and complex problems in numerical mathematics. It is designed and written in C/C++ (leveraging the Eigen library for vector and matrix support) for fast execution and near-universal platform support. Problems include multiple root-finding algorithms, numerous methods for solving systems of equations, classes for modeling different categories of numerical functions, ODE and PDE solvers, pseudo-random number generation, least-squares tools, and many others.
QuX: Queried XML
Tools: C/C++, File I/O Data Interfaces, SQL, XMl
Queries XML (QuX) is an experimental proof-of-concept demonstrating an alternative to traditional XML interfaces for low-level languages like C++. I've found the traditional, official approaches to be very redundant, overly complex, heavy on resources, and overly abstract. Queries XML, or QuX, is a way to use traditional SQL-style SELECT, INSERT, and UPDATE queries to manipulate XML files and data structures. QuX is very useful for simple, lightweight serialization, state / data management, and other data-intensive operations that engineers frequently face. Developers needing to interface low-level code with XML data, like design requirements, will also find QuX useful.
'Kirke' Website CMS
Tools: PHP, MySQL, HTML, CSS
Lightweight and node-based website CMS for management of personal websites, with database support and node abstraction for content, users, and other custom forms of data.
Papers & Articles
Procedural Vignette Generation
Tools: Systems Engineering, Space Architecting, Scenarios and Vignettes
Outlines an approach designed to procedurally generate vignettes for arbitrary architectures and mission areas, specific to given threat sets and scenario-driven contexts.
Resilience as Stability
Tools: Systems Engineering, Space Architecting, Controls Engineering
Proposes a methodology by which resilience of complex architectures can be construed and approached as a problem of stability in the control of an architecture. Controls techniques are applied to the architecting process to ensure satisfaction of resilience requirements.
Controls Engineering Overview
Tools: Controls Engineering, LaTeX, Education
Article introducing the basic elements of controls engineering to other engineers.