diff --git a/swash/processing/post.py b/swash/processing/post.py index 81ac601..a9f6cb5 100644 --- a/swash/processing/post.py +++ b/swash/processing/post.py @@ -4,6 +4,7 @@ import pathlib import numpy as np import pandas as pd import matplotlib.pyplot as plt +import scipy.signal as sgl from .read_swash import * @@ -17,20 +18,39 @@ root = pathlib.Path(config.get("swash", "out")) bathy = pd.read_hdf(cache.joinpath("bathy.h5"), "bathy") n = bathy.index.size -# xp = read_nohead_scalar(root.joinpath("xp.dat"), n) botl = read_nohead_scalar(root.joinpath("botl.dat"), n) dep = np.maximum(0, read_nohead_scalar(root.joinpath("dep.dat"), n)) vel = read_nohead_vect(root.joinpath("vel.dat"), n) -# watl = read_nohead_scalar(root.joinpath("watl.dat"), n) +n_t = botl.shape[0] + +# Cospectral calculations +pos_x = n//10 + +eta = (dep - botl)[n_t//2:, pos_x] +u = vel[n_t//2:, 0, pos_x] + +phi_eta = np.abs(sgl.csd(eta, eta)[1]) +phi_u = np.abs(sgl.csd(u, u)[1]) +phi_eta_u = np.abs(sgl.csd(eta, u)[1]) + +R = np.sqrt((phi_eta + phi_u - 2*phi_eta_u)/(phi_eta + phi_u + 2*phi_eta_u)) + +# Plotting fig, (ax_dep, ax_vel) = plt.subplots(2) -ax_dep.plot((dep - botl)[:, n//2], label="dep", color="#0066ff") +ax_dep.plot((dep - botl)[:, pos_x], label="dep", color="#0066ff") ax_dep.set(xlabel="t (s)", ylabel="z (m)") -ax_vel.plot(vel[:, 0, n//2], label="vel") +ax_vel.plot(vel[:, 0, pos_x], label="vel") ax_vel.set(xlabel="t (s)", ylabel="U (m/s)") fig.tight_layout() -#fig.legend() + +fig_r, ax_r = plt.subplots() + +ax_r.plot(R) +ax_r.set(ylim=(0,1)) +ax_r.grid() + plt.show(block=True)