|
|
|
@ -13,7 +13,6 @@ from scipy.signal import butter, lfilter
|
|
|
|
|
from .utils import timeit |
|
|
|
|
|
|
|
|
|
data = num.load(op.join(op.dirname(__file__), "data", "data-DAS-gfz2020wswf.npy")) |
|
|
|
|
data = num.load("/home/marius/Downloads/sample_data.npy").astype(num.float32) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def butter_bandpass_filter(data, lowcut, highcut, fs, order=4): |
|
|
|
@ -96,7 +95,7 @@ def normalize_diff(data, filtered_data):
|
|
|
|
|
return Normalize()(data) - Normalize()(filtered_data) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def plot_goldstein(): |
|
|
|
|
def plot_goldstein(data): |
|
|
|
|
def r(data): |
|
|
|
|
v = num.std(data) |
|
|
|
|
return -v, v |
|
|
|
@ -111,15 +110,13 @@ def plot_goldstein():
|
|
|
|
|
|
|
|
|
|
imshow_kwargs = dict(aspect=5, cmap="viridis", vmin=-1.0, vmax=1.0) |
|
|
|
|
|
|
|
|
|
data_bp = butter_bandpass_filter(data, 1.0, 10.0, 50.0).astype(num.float32) |
|
|
|
|
|
|
|
|
|
fig, (ax1, ax3, ax4) = plt.subplots(1, 3, sharex=True, sharey=True) |
|
|
|
|
ax1.imshow(data, **imshow_kwargs) |
|
|
|
|
# image_python = ax2.imshow(data, **imshow_kwargs) |
|
|
|
|
image_rust = ax3.imshow(data, **imshow_kwargs) |
|
|
|
|
image_diff = ax4.imshow(data, **imshow_kwargs) |
|
|
|
|
|
|
|
|
|
ax_slider = plt.axes((0.25, 0.1, 0.65, 0.03)) |
|
|
|
|
ax_slider = plt.axes((0.25, 0.05, 0.65, 0.03)) |
|
|
|
|
|
|
|
|
|
ax1.set_title("Data Input") |
|
|
|
|
# ax2.set_title("Data Filtered (Python)") |
|
|
|
@ -151,11 +148,12 @@ def plot_goldstein():
|
|
|
|
|
# image_python.set_norm(Normalize(*r(data_filtered))) |
|
|
|
|
|
|
|
|
|
image_rust.set_data(data_filtered) |
|
|
|
|
image_rust.set_norm(Normalize(*r(data_filtered))) |
|
|
|
|
image_rust.set_norm(None) |
|
|
|
|
|
|
|
|
|
norm_diff = normalize_diff(data, data_filtered) |
|
|
|
|
image_diff.set_data(norm_diff) |
|
|
|
|
image_diff.set_norm(Normalize(*r(norm_diff))) |
|
|
|
|
image_diff.set_norm(None) |
|
|
|
|
|
|
|
|
|
fig.canvas.draw_idle() |
|
|
|
|
|
|
|
|
|
update(exponent) |
|
|
|
@ -171,5 +169,13 @@ def plot_taper():
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if __name__ == "__main__": |
|
|
|
|
# print(goldstein_rust()) |
|
|
|
|
plot_goldstein() |
|
|
|
|
import argparse |
|
|
|
|
import pathlib |
|
|
|
|
|
|
|
|
|
parser = argparse.ArgumentParser() |
|
|
|
|
parser.add_argument("npy_file", type=pathlib.Path) |
|
|
|
|
|
|
|
|
|
args = parser.parse_args() |
|
|
|
|
data = num.load(args.npy_file).astype(num.float32) |
|
|
|
|
|
|
|
|
|
plot_goldstein(data) |