#!/usr/bin/env python3 import sys sys.path.append('../') from LoLIM import utilities import numpy as np import pandas as pd from stokesIO import read_polarization_data from stokes import stokes_plotter timeID = "D20190424T210306.154Z" utilities.default_processed_data_loc = "/home/student4/Marten/processed_files" rd = read_polarization_data(timeID) pulseID = 1477200 data = rd.read_PE(pulseID) data = data.values stokes_plot = stokes_plotter(plot=['polarization_ellipse']) stokes_plot.plot_polarization_ellipse(data, errors=True) stokes_plot.showPlots()
if __name__ == "__main__": #station_names = natural_sort(station_timing_offsets.keys()) data_folder = processed_data_folder + "/polarization_data/Lightning Phenomena/K changes" pName = "KC13" #phenomena name Zlimit = 50 #max zenith angle for which antenna model should hold! δlimit = 0.8 #lower limit for the degree of polarization (pulses below this limit are observed to have large errorbars due to local interference or pulses are mixed together in time) with open(data_folder + '/' + "source_info_{}.json".format(pName), 'r') as f: source_info = json.load(f) with open(data_folder + '/' + "pulseIDs_{}.pkl".format(pName), 'rb') as f: pulseIDs = pickle.load(f) rd = read_polarization_data(timeID, alt_loc=data_folder + '/' + "{}_data".format(pName)) sv = save_acceleration_vector(timeID, fname="a_vectors_{}".format(pName), alt_loc=data_folder + '/' + "{}_data".format(pName)) pbar = tqdm(pulseIDs, ascii=True, unit_scale=True, dynamic_ncols=True, position=0) for pulseID in pbar: pbar.set_description("Processing pulse {}".format(pulseID)) """ sort station names according to zenith angle (Z) and impose a Z requirement
""" for i in range(sort_indices.size): print("{} : {} deg".format(station_names[i],Z[i])) """ # Zlimit = 50 station_names = [station_names[i] for i in np.where(Z<=Zlimit)[0]] with open(data_folder + "/pulseIDs_" + pName + ".pkl", 'rb') as f: pulseIDs = pickle.load(f) rd = read_polarization_data(timeID, alt_loc="polarization_data/Lightning Phenomena/K changes/" + pName + "_data") for pulseID in pulseIDs: if pulseID == 1481534: τ = np.array([]) τ_err = np.array([]) r = np.empty((0,3)) df = rd.read_PE(pulseID) if df.empty: continue #max_stations = 3 #station_select = 21 #i = 0