A collection of computational pipelines bridging theoretical astrophysics, atmospheric science, and statistical inference.
This repository documents a series of analysis projects focused on modeling physical systems from first principles. The work utilizes robust statistical methods—including MCMC, Maximum Likelihood estimation, and Monte Carlo simulations—to extract physical parameters from noisy observational data.
| Domain | Project Title | Key Techniques |
|---|---|---|
| Astrophysics | Galaxy Cluster Dark Matter Analysis | Virial Theorem, Sigma-Clipping, GMM, Cosmology |
| Atmospheric Science | Exoplanet Atmosphere Reconstruction | Hydrostatic Equilibrium, Radiative Transfer, Numerical Integration |
| Comp. Modeling | Monte Carlo & Statistical Inference | Stochastic Simulation, Hypothesis Testing, |
View Project Directory | Read Technical Report
A computational pipeline designed to estimate the dynamical mass of the galaxy cluster ACO 2670. By analyzing the redshift-space distortions and projected separation of 98 member galaxies, this project isolates the cluster from the background field and applies the Virial Theorem to quantify its dark matter content.
- Core Physics: Virialization, Dark Matter Halo Modeling, Cosmological Redshift.
-
Key Result: Calculated a Mass-to-Light ratio of
$291 \pm 60 M_{\odot}/L_{\odot}$ , providing kinematic evidence that >95% of the cluster's mass is non-luminous.
Redshift distribution analysis. The data favors a single Gaussian profile (red) over a mixture model, indicating the cluster is likely virialized and not currently undergoing a major merger.
A numerical reconstruction of the thermodynamic profile of a high-gravity (
- Core Physics: Thermodynamics, Fluid Dynamics, Radiative Transfer.
-
Key Result: Identified a stable troposphere with a global precipitation rate of
$0.086 \text{ mm/hr}$ , recovering missing sensor data through physical law inversion.
Reconstructed temperature profiles validating hydrostatic equilibrium across multiple probes.
An exploration of stochastic processes and non-linear parameter estimation. This project builds Monte Carlo simulations from scratch to verify fundamental statistical theorems (CLT) and models particle transport through absorbing media, demonstrating how random walks converge to deterministic physical laws.
- Core Physics: Diffusion, Particle Physics (Attenuation), Error Propagation.
-
Key Result: Empirically verified the Beer-Lambert law via discrete particle transport and validated variance scaling laws (
$1/\sqrt{N}$ ).
Simulating radiative transfer processes via inverse transform sampling.
The analyses in this portfolio are built using a standard scientific Python stack, emphasizing vectorization and reproducibility.
- Language: Python 3.12+
- Data Structures:
Pandas,NumPy - Scientific Computing:
SciPy(Optimization, Integration, Stats),Astropy(Cosmology, Units) - Visualization:
Matplotlib,Seaborn - DevOps & CI/CD: GitHub Actions (Automated Notebook Regression Testing via
nbmake) - Environment: Jupyter Notebooks (Managed via
uv)
Note: This repository utilizes a Continuous Integration (CI) pipeline. Every Pull Request triggers a full regression test where all notebooks are re-executed from scratch to ensure results remain reproducible.
To reproduce the analysis for any project in this portfolio:
-
Clone the repository:
git clone https://github.com/JacksonFergusonDev/data-science-portfolio.git cd data-science-portfolio -
Environment Setup:
Modern (Recommended): This project is managed with uv. This will automatically handle Python versioning and virtual environments.
# Sync dependencies and build the environment uv syncLegacy (pip): If you do not have
uvinstalled, you can use standard pip:pip install -r requirements.txt
-
Launch the Lab:
# Launch Jupyter Lab within the managed environment uv run jupyter lab
Jackson Ferguson
Astrophysics Undergraduate, University of Victoria
This project is licensed under the MIT License - see the LICENSE file for details.


