Skip to content

Instantly share code, notes, and snippets.

View cbassa's full-sized avatar

Cees Bassa cbassa

  • ASTRON Netherlands Institute for Radio Astronomy
  • Netherlands
View GitHub Profile
@cbassa
cbassa / iss_transit_skyfield.py
Created November 25, 2019 22:40
Reproducing the ISS->Venus->Solar transit of June 8, 2004 (Skyfield)
#!/usr/bin/env python3
import numpy as np
from skyfield.api import Topos, load
from skyfield.api import EarthSatellite
import matplotlib.pyplot as plt
from matplotlib.patches import Circle
import astropy.units as u
from astropy.wcs import wcs
if __name__ == "__main__":
@cbassa
cbassa / iss_transit_astropy.py
Created November 25, 2019 22:42
Reproducing the ISS->Venus->Solar transit of June 8, 2004 (Astropy)
#!/usr/bin/env python3
import numpy as np
import matplotlib.pyplot as plt
from matplotlib.patches import Circle
import astropy.units as u
from astropy.time import Time
from astropy.coordinates import get_body, solar_system_ephemeris
from astropy.coordinates import EarthLocation, GCRS, FK5
from astropy.coordinates import SkyCoord, PrecessedGeocentric, CartesianRepresentation
from astropy.wcs import wcs
@cbassa
cbassa / satnogs_waterfall_plotter.py
Created December 17, 2019 14:44
Waterfall plotter
#!/usr/bin/env python
from __future__ import print_function
import numpy as np
import matplotlib
#matplotlib.use("Agg")
import matplotlib.pyplot as plt
import sys
# Get filename
fname=sys.argv[1]
@cbassa
cbassa / starlink_tles_for_turin.txt
Created December 20, 2019 17:14
Simulated Starlink TLEs for Turin, March 20, 2020 from 19:00UTC to 19:30UTC.
@cbassa
cbassa / compare_sgp4_cysgp4.py
Created January 5, 2020 17:55
Comparing the results of sgp4 and cysgp4
#!/usr/bin/env python3
import numpy as np
from sgp4.earth_gravity import wgs84
from sgp4.io import twoline2rv
from astropy.time import Time
import astropy.units as u
from cysgp4 import PyTle, PyObserver, propagate_many, Satellite, PyDateTime
if __name__ == "__main__":
# TLE
@cbassa
cbassa / tle_swap.py
Created January 19, 2020 21:21
Code for plotting orbital parameters
#!/usr/bin/env python3
from __future__ import print_function, division
from spacetrack import SpaceTrackClient
import os
import json
import ephem
from sgp4.earth_gravity import wgs84
from sgp4.io import twoline2rv
import numpy as np
import matplotlib.pyplot as plt
@cbassa
cbassa / rtl_capture.sh
Last active November 22, 2021 16:45
Capture spectra with STRF and an RLT SDR
#!/bin/bash
# Settings
SKY_FREQ=2242.5e6
LO_FREQ=1833e6
RATE=1e6
OUTPUT=${HOME}/satobs
FIFO=${HOME}/satobs/fifo
GAIN=30
@cbassa
cbassa / digitize_example.py
Last active April 9, 2020 08:37
Example on redigitizing floating point values to scaled and offset integers
#!/usr/bin/env python3
import numpy as np
import matplotlib.pyplot as plt
def digitize(x, smin, smax, nbits, signed=False, zeromean=False):
# Stats
xmean = x.mean()
xstd = x.std()
if zeromean:
@cbassa
cbassa / faketle.py
Last active November 22, 2021 16:45
Generate a TLE for an object above the horizon for a given observer and a given time
#!/usr/bin/env python3
import ephem
import datetime
import math
# Compute checksum
def set_checksum(line):
s = 0
for c in line[:-1]:
if c.isdigit():
@cbassa
cbassa / upload_missing_waterfalls.py
Last active May 30, 2020 12:46
Upload missing waterfalls
#!/usr/bin/env python3
import os
import glob
import requests
import shutil
import argparse
from datetime import datetime
if __name__ == "__main__":
# Parse input arguments