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
#!/usr/bin/env python3
import os
import json
from spacetrack import SpaceTrackClient
from sgp4.earth_gravity import wgs84
from sgp4.io import twoline2rv
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.dates as mdates
from astropy.time import Time
@cbassa
cbassa / plot_hydrogen.py
Created July 27, 2021 15:27
Hydrogen plotting script
#!/usr/bin/env python3
import os
import re
import glob
import tqdm
from datetime import datetime
import numpy as np
import matplotlib.pyplot as plt
@cbassa
cbassa / parse_tle.py
Created July 24, 2021 19:56
Simple TLE parsing script
#!/usr/bin/env python3
from sgp4.api import Satrec
from sgp4.earth_gravity import wgs84
if __name__ == "__main__":
with open("iss.txt", "r") as fp:
lines = fp.readlines()
sats = []
for i in range(len(lines) - 1):
@cbassa
cbassa / preobs_uhf.sh
Created November 29, 2020 21:15
SatNOGS STRF pre-obs script
#!/usr/bin/bash
echo $1 $2 $3 $4 $5 $6
# Run strf
echo "Killing left over netcat"
ps aux | grep -e "nc" | grep -e "45360" | awk '{printf("kill -9 %s\n",$2)}' | sh
freq=`echo $3 | awk '{printf("%d\n",$1-100000)}'`
fmin=`echo $3 | awk '{printf("%d\n",$1-100000)}'`
fmax=`echo $3 | awk '{printf("%d\n",$1+100000)}'`
@cbassa
cbassa / plot_waterfall.py
Created November 27, 2020 08:20
Waterfall Plotting
#!/usr/bin/env python3
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
from matplotlib.colorbar import Colorbar
import sys
import warnings
with warnings.catch_warnings():
warnings.filterwarnings("ignore",category=FutureWarning)
import h5py
@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
@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 / 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 / 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 / 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