def make_subwindows(nr, nwin, st, st0, st1, nsamp): import numpy as np from subroutine_CLEAN_3c import tap xt = np.zeros((3, nr, nwin, nsamp)) for i in range(nr): for j in range(nwin): xt[0, i, j] = st[i][j * nsamp / 2:(j + 2) * nsamp / 2] xt[1, i, j] = st0[i][j * nsamp / 2:(j + 2) * nsamp / 2] xt[2, i, j] = st1[i][j * nsamp / 2:(j + 2) * nsamp / 2] xt[0, i, j] -= np.mean(xt[0, i, j]) xt[1, i, j] -= np.mean(xt[1, i, j]) xt[2, i, j] -= np.mean(xt[2, i, j]) xt[0, i, j] = tap(xt[0, i, j], nsamp) xt[1, i, j] = tap(xt[1, i, j], nsamp) xt[2, i, j] = tap(xt[2, i, j], nsamp) return xt
def make_subwindows(nr, nwin, st, st0, st1, nsamp): import numpy as np from subroutine_CLEAN_3c import tap xt = np.zeros((3, nr, nwin, nsamp)) for i in range(nr): for j in range(nwin): xt[0, i, j] = st[i][j * nsamp / 2 : (j + 2) * nsamp / 2] xt[1, i, j] = st0[i][j * nsamp / 2 : (j + 2) * nsamp / 2] xt[2, i, j] = st1[i][j * nsamp / 2 : (j + 2) * nsamp / 2] xt[0, i, j] -= np.mean(xt[0, i, j]) xt[1, i, j] -= np.mean(xt[1, i, j]) xt[2, i, j] -= np.mean(xt[2, i, j]) xt[0, i, j] = tap(xt[0, i, j], nsamp) xt[1, i, j] = tap(xt[1, i, j], nsamp) xt[2, i, j] = tap(xt[2, i, j], nsamp) return xt
def make_subwindows_PSAR(nr, nwin, pdic, st, st0, st1, nsamp): import numpy as np from subroutine_CLEAN_3c import tap xt = np.zeros((3, nr, nwin, nsamp)) for i in range(nr): for j in range(nwin): theta = pdic[st0[i].stats.station] / 180. * np.pi xt[0, i, j] = st[i][j * nsamp / 2:(j + 2) * nsamp / 2] xt[1, i, j] = st0[i][j * nsamp / 2:(j + 2) * nsamp / 2] * np.cos( theta) - st1[i][j * nsamp / 2: (j + 2) * nsamp / 2] * np.sin(theta) xt[2, i, j] = st0[i][j * nsamp / 2:(j + 2) * nsamp / 2] * np.sin( theta) + st1[i][j * nsamp / 2: (j + 2) * nsamp / 2] * np.cos(theta) xt[0, i, j] -= np.mean(xt[0, i, j]) xt[1, i, j] -= np.mean(xt[1, i, j]) xt[2, i, j] -= np.mean(xt[2, i, j]) xt[0, i, j] = tap(xt[0, i, j], nsamp) xt[1, i, j] = tap(xt[1, i, j], nsamp) xt[2, i, j] = tap(xt[2, i, j], nsamp) return xt
def make_subwindows_PSAR(nr, nwin, pdic, st, st0, st1, nsamp): import numpy as np from subroutine_CLEAN_3c import tap xt = np.zeros((3, nr, nwin, nsamp)) for i in range(nr): for j in range(nwin): theta = pdic[st0[i].stats.station] / 180.0 * np.pi xt[0, i, j] = st[i][j * nsamp / 2 : (j + 2) * nsamp / 2] xt[1, i, j] = st0[i][j * nsamp / 2 : (j + 2) * nsamp / 2] * np.cos(theta) - st1[i][ j * nsamp / 2 : (j + 2) * nsamp / 2 ] * np.sin(theta) xt[2, i, j] = st0[i][j * nsamp / 2 : (j + 2) * nsamp / 2] * np.sin(theta) + st1[i][ j * nsamp / 2 : (j + 2) * nsamp / 2 ] * np.cos(theta) xt[0, i, j] -= np.mean(xt[0, i, j]) xt[1, i, j] -= np.mean(xt[1, i, j]) xt[2, i, j] -= np.mean(xt[2, i, j]) xt[0, i, j] = tap(xt[0, i, j], nsamp) xt[1, i, j] = tap(xt[1, i, j], nsamp) xt[2, i, j] = tap(xt[2, i, j], nsamp) return xt