Ejemplo n.º 1
0
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
Ejemplo n.º 2
0
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
Ejemplo n.º 3
0
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
Ejemplo n.º 4
0
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