예제 #1
0
        uz1d     =    u_z[k, l, :] # data structure is (r, theta, z)
        uzF1d    =   u_zF[k, l, :]
        omegaZ1d = omegaZ[k, l, :]
        pi1d     =     pi[k, l, :]

        # isolate high-speed/low-speed streaks in the 1d velocity subset
        uzp1d = np.where(uz1d > 0, uz1d, 0) # only high-speed, zero elsewhere
        uzn1d = np.where(uz1d < 0, uz1d, 0) # only low-speed, zero elsewhere

        # isolate forward/backward flux events in the 1d flux subset
        pip1d = np.where(pi1d > 0, pi1d, 0) # only forward, zero elsewhere
        pin1d = np.where(pi1d < 0, pi1d, 0) # only backward, zero elsewhere

        # compute correlations and sum up azimuthal (spatial) and temporal (ensemble) statistics
        import crossCorrelation as c 
        acUz        = acUz        + c.corr1d(uz1d,     uz1d)     # auto-correlations
        acUzF       = acUzF       + c.corr1d(uzF1d,    uzF1d)
        acOmegaZ    = acOmegaZ    + c.corr1d(omegaZ1d, omegaZ1d)
        acPi        = acPi        + c.corr1d(pi1d,     pi1d)
        ccUzPi      = ccUzPi      + c.corr1d(uz1d,     pi1d)     # cross-correlations full flux
        ccUzFPi     = ccUzFPi     + c.corr1d(uzF1d,    pi1d)
        ccOmegaZPi  = ccOmegaZPi  + c.corr1d(omegaZ1d, pi1d)
        ccUzPip     = ccUzPip     + c.corr1d(uz1d,     pip1d)    # cross-correlations forward flux
        ccUzFPip    = ccUzFPip    + c.corr1d(uzF1d,    pip1d)
        ccOmegaZPip = ccOmegaZPip + c.corr1d(omegaZ1d, pip1d)
        ccUzPin     = ccUzPin     + c.corr1d(uz1d,     pin1d)    # cross-correlations backward flux
        ccUzFPin    = ccUzFPin    + c.corr1d(uzF1d,    pin1d)
        ccOmegaZPin = ccOmegaZPin + c.corr1d(omegaZ1d, pin1d)
        ccUzpPi     = ccUzpPi     + c.corr1d(uzp1d,    pi1d)     # cross-correlations high-speed streaks
        ccUznPi     = ccUznPi     + c.corr1d(uzn1d,    pi1d)     # cross-correlations low-speed streaks
예제 #2
0
            if (uz1d[i] < 0) and (ur1d[i] > 0):
                q3[i] = ur1d[i] * uz1d[
                    i]  # inward interaction:   low-speed fluid towards   wall
            if (uz1d[i] > 0) and (ur1d[i] > 0):
                q4[i] = ur1d[i] * uz1d[
                    i]  # sweep event:         high-speed fluid towards   wall
        ioi = q1 - q3  # unify inward interactions (Q3 being negativ) and outward interactions (Q1 being positive) in one array
        see = q2 - q4  # unify sweep events (Q4 being negativ) and ejection events (Q2 being positiv) in one array

        # isolate forward/backward flux events in the 1d velocity subset
        pip1d = np.where(pi1d > 0, pi1d, 0)  # only positive, zero elsewhere
        pin1d = np.where(pi1d < 0, pi1d, 0)  # only negative, zero elsewhere

        # compute correlations and sum up axial (spatial) and temporal (ensemble) statistics
        import crossCorrelation as c
        acQ1 = acQ1 + c.corr1d(q1, q1)  # auto-correlations
        acQ2 = acQ2 + c.corr1d(q2, q2)
        acQ3 = acQ3 + c.corr1d(q3, q3)
        acQ4 = acQ4 + c.corr1d(q4, q4)
        acPi = acPi + c.corr1d(pi1d, pi1d)
        ccQ1Pi = ccQ1Pi + c.corr1d(q1, pi1d)  # cross-correlations full flux
        ccQ2Pi = ccQ2Pi + c.corr1d(q2, pi1d)
        ccQ3Pi = ccQ3Pi + c.corr1d(q3, pi1d)
        ccQ4Pi = ccQ4Pi + c.corr1d(q4, pi1d)
        ccQ1Pip = ccQ1Pip + c.corr1d(q1,
                                     pip1d)  # cross-correlations forward flux
        ccQ2Pip = ccQ2Pip + c.corr1d(q2, pip1d)
        ccQ3Pip = ccQ3Pip + c.corr1d(q3, pip1d)
        ccQ4Pip = ccQ4Pip + c.corr1d(q4, pip1d)
        ccQ1Pin = ccQ1Pin + c.corr1d(q1,
                                     pin1d)  # cross-correlations backward flux