Adrian Ayala

Satellite-to-Ground Line-of-Sight Geometry

Senior design project (team) for Xairos (industry sponsor), Fall 2025 – Spring 2026 · Python

Try the interactive demo →

What it is

The project's goal was to send polarized light for a quantum communication link between a satellite and a ground station. As the satellite moves across the sky, the polarization frame rotates relative to the ground, so the system has to correct for it. The team built a simulation of that correction.

My role

I owned the first stage, the geometry. My Python code puts the satellite and the ground station in the same Earth-fixed (ECEF) coordinate frame, traces the line of sight between them, and computes the angles (elevation, azimuth, and parallactic / polarization-angle geometry) that feed the polarization-control stage. I derived the geometry by hand over winter break and wrote all four geometry notebooks. I was also the team's liaison with the sponsor and kept records of all team meetings.

The rest of the team led the quantum optics, Stokes/Mueller polarization modeling, Monte Carlo simulation and waveplate control.

Method (my four notebooks)

Notebook What it does
Altitude_Azimuth_angles Takes a satellite's orbit (TLE), propagates it with SGP4, converts it to ECEF, and computes elevation, azimuth and the line-of-sight vector from Boulder, CO
ThetaAngleCalculation Plots the orbit on a 3D globe and computes the elevation θ from Boulder, with a below-horizon check
Parallactic_angle Computes the parallactic angle q (how far the polarization frame rotates) for any azimuth/elevation
Static_ECEFto_theta_psi Turns satellite and ground ECEF positions into elevation θ and an angle ψ for the parallactic / polarization-angle geometry (WGS-84)

Results

Figures

Satellite orbit in ECEF Satellite orbit around Earth in Earth-fixed coordinates.

Elevation vs time Satellite elevation seen from Boulder over 600 minutes; above 0° means visible.

Sky track Sky track of the passes above the horizon (north up, azimuth clockwise).

Line of sight and theta Side view of the line of sight and elevation angle θ at maximum elevation.

Code

Only my own geometry work is described here; team and sponsor code is not included.