Excito
Unified seismic analysis toolkit modernizing a Fortran 77 codebase into a portable, scriptable Python CLI.
Overview
Excito is a unified seismic analysis toolkit for earthquake ground-motion workflows at X-Energy. The core is a modernization of a legacy Fortran 77 codebase — RSPMatch, Abrahamson (1993), Al Atik (2009) — wrapped behind a clean Python CLI so engineers can script ground-motion processing into broader analysis pipelines.
Architecture
- Compute kernel: Original Fortran 77 time-domain spectral matching, compiled with gfortran and called from Python.
- Python wrapper: Clean, scriptable CLI with structured input/output. Each subcommand maps to a workflow stage (read input motion, target spectrum, match, write output).
- Integration: Plugs directly into the pyStrata / Strata equivalent-linear pipeline used for site-response analysis. Outputs feed the next stage without manual format conversion.
- Planned modules: Site response, ground-motion selection, hazard disaggregation — all designed to share the same input/output contract so workflows compose end-to-end.
Why it matters
The previous workflow ran Fortran binaries by hand, copy-pasting numeric output into Excel before feeding it forward into site-response runs. Excito turns the same numerics into a Python toolchain that runs unattended, integrates with existing pyStrata work, and ports cleanly across engineer workstations — no Fortran expertise required at the consumption surface.
Stack
- Numerics: Fortran 77 (RSPMatch, Abrahamson 1993, Al Atik 2009), gfortran
- Interface: Python CLI with structured args, typed I/O, and clear error messaging
- Integration: pyStrata / Strata equivalent-linear site-response
- Domain: Earthquake ground-motion spectral matching, site-response analysis, hazard disaggregation
Source is internal to X-Energy. Architecture described here at the level of the resume.