當前位置: 首頁>>代碼示例>>Python>>正文


Python numpy.trapz方法代碼示例

本文整理匯總了Python中numpy.trapz方法的典型用法代碼示例。如果您正苦於以下問題:Python numpy.trapz方法的具體用法?Python numpy.trapz怎麽用?Python numpy.trapz使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在numpy的用法示例。


在下文中一共展示了numpy.trapz方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: test_gamma

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def test_gamma():
    tsample = 0.005 / 1000

    with pytest.raises(ValueError):
        t, g = gamma(0, 0.1, tsample)
    with pytest.raises(ValueError):
        t, g = gamma(2, -0.1, tsample)
    with pytest.raises(ValueError):
        t, g = gamma(2, 0.1, -tsample)

    for tau in [0.001, 0.01, 0.1]:
        for n in [1, 2, 5]:
            t, g = gamma(n, tau, tsample)
            npt.assert_equal(np.arange(0, t[-1] + tsample / 2.0, tsample), t)
            if n > 1:
                npt.assert_equal(g[0], 0.0)

            # Make sure area under the curve is normalized
            npt.assert_almost_equal(np.trapz(np.abs(g), dx=tsample), 1.0,
                                    decimal=2)

            # Make sure peak sits correctly
            npt.assert_almost_equal(g.argmax() * tsample, tau * (n - 1)) 
開發者ID:pulse2percept,項目名稱:pulse2percept,代碼行數:25,代碼來源:test_base.py

示例2: posterior_mean

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def posterior_mean(self, x):
        r"""
        Computes the posterior mean by computing the first moment of the
        estimated posterior CDF.

        Arguments:

            x(np.array): Array of shape `(n, m)` containing `n` inputs for which
                         to predict the posterior mean.
        Returns:

            Array containing the posterior means for the provided inputs.
        """
        y_pred, qs = self.cdf(x)
        mus = y_pred[-1] - np.trapz(qs, x=y_pred)
        return mus 
開發者ID:atmtools,項目名稱:typhon,代碼行數:18,代碼來源:qrnn.py

示例3: integrate_column

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def integrate_column(y, x=None, axis=0):
    """Integrate array along an arbitrary axis.

    Note:
        This function is just a wrapper for :func:`numpy.trapz`.

    Parameters:
        y (ndarray): Data array.
        x (ndarray): Coordinate array.
        axis (int): Axis to integrate along for multidimensional input.

    Returns:
        float or ndarray: Column integral.

    Examples:
        >>> import numpy as np
        >>> x = np.linspace(0, 1, 5)
        >>> y = np.arange(5)
        >>> integrate_column(y)
        8.0
        >>> integrate_column(y, x)
        2.0
    """
    return np.trapz(y, x, axis=axis) 
開發者ID:atmtools,項目名稱:typhon,代碼行數:26,代碼來源:common.py

示例4: test_resample

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def test_resample(collection):
    coll = collection.clone()

    transform.ToDense(coll, 'parametric gain', output='pg_dense')
    pg = coll.variables['pg_dense']
    old_shape = pg.values.shape
    old_auc = np.trapz(np.abs(pg.values.values.squeeze()), dx=0.1)
    transform.Resample(coll, 'pg_dense', 1)
    pg = coll.variables['pg_dense']
    new_shape = pg.values.shape
    # Spacing (dx) is 10* larger when downsampled fro 10hz to 1hz
    new_auc = np.trapz(np.abs(pg.values.values.squeeze()), dx=1)

    # Shape from 10hz to 1hz
    assert new_shape[0] == old_shape[0] / 10

    # Assert that the auc is more or less the same (not exact, rounding error)
    # Values are around 0.25
    assert np.allclose(old_auc, new_auc, rtol=0.05) 
開發者ID:bids-standard,項目名稱:pybids,代碼行數:21,代碼來源:test_transformations.py

示例5: calc_spec

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def calc_spec(self, zi=None, loc='near', npad=1, estimate_ph_sp_dens=1):

        field = self.rad_field(zi=zi, loc=loc)
        axis = field.ndim - 1

        spec = np.abs(np.fft.fft(field, axis=axis))**2
        spec = np.fft.fftshift(spec, axes=axis)

        scale_ev = h_eV_s * speed_of_light * (np.fft.fftfreq(self.nSlices, d=self.s[1]-self.s[0]) + 1 / self.lambdaref)
        scale_ev = np.fft.fftshift(scale_ev)

        if estimate_ph_sp_dens:
            tt=np.trapz(spec, scale_ev, axis=axis)
            if axis==1:
                tt[tt==0] = np.inf
                spec *= (self.n_photons / tt)[:, np.newaxis]
            else:
                if tt==0:
                    tt = np.inf
                spec *= (self.n_photons[zi] / tt)

        return scale_ev, spec 
開發者ID:ocelot-collab,項目名稱:ocelot,代碼行數:24,代碼來源:genesis4.py

示例6: AUC

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def AUC(x, y):
    '''
    AUC - area under curve

    Note: area under curve wich had been computed by standard trapezial
          method (np.trapz)

    Args:

        x (numpy.ndarray): array of one metric rate (1D)
        y (numpy.ndarray): array of another metric rate (1D)

    Returns:

        float - area under curve

    '''

    return np.trapz(y, x) 
開發者ID:hydrogo,項目名稱:rainymotion,代碼行數:21,代碼來源:metrics.py

示例7: test_tlcorrection

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def test_tlcorrection(self):
        # testing long correction function
        x_for_long = np.array([20.,21.,22.,23.,24.,25.])
        y_for_long = np.array([1.0,1.0,1.0,1.0,1.0,1.0])

        nu0 = 1.0/(514.532)*1e9 #laser wavenumber at 514.532
        nu = 100.0*x_for_long # cm-1 to m-1
        T = 23.0+273.15 # the temperature in K

        x_long,long_res,eselong = rp.tlcorrection(x_for_long, y_for_long,23.0,514.532,correction = 'long',normalisation='area') # using the function
        t0 = nu0**3.0*nu/((nu0-nu)**4)
        t1= 1.0 - np.exp(-h*c*nu/(k*T)) # c in m/s  : t1 dimensionless
        long_calc= y_for_long*t0*t1 # pour les y
        long_calc = long_calc/np.trapz(long_calc,x_for_long) # area normalisation

        np.testing.assert_equal(long_res,long_calc)
        np.testing.assert_equal(x_for_long,x_long)

        x_long,long_res,eselong = rp.tlcorrection(x_for_long, y_for_long,23.0,514.532,correction = 'long',normalisation='no') # using the function
        t0 = nu0**3.0*nu/((nu0-nu)**4)
        t1= 1.0 - np.exp(-h*c*nu/(k*T)) # c in m/s  : t1 dimensionless
        long_calc= y_for_long*t0*t1 # pour les y

        np.testing.assert_equal(long_res,long_calc)
        np.testing.assert_equal(x_for_long,x_long) 
開發者ID:charlesll,項目名稱:rampy,代碼行數:27,代碼來源:test_tlcorrection.py

示例8: interpolate_basis

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def interpolate_basis(self, basis, dt, dt_max,
                          norm=True):
        # Interpolate basis at the resolution of the data
        L,B = basis.shape
        t_int = np.arange(0.0, dt_max, step=dt)
        t_bas = np.linspace(0.0, dt_max, L)

        ibasis = np.zeros((len(t_int), B))
        for b in np.arange(B):
            ibasis[:,b] = np.interp(t_int, t_bas, basis[:,b])

        # Normalize so that the interpolated basis has volume 1
        if norm:
            # ibasis /= np.trapz(ibasis,t_int,axis=0)
            ibasis /= (dt * np.sum(ibasis, axis=0))

        if not self.allow_instantaneous:
            # Typically, the impulse responses are applied to times
            # (t+1:t+R). That means we need to prepend a row of zeros to make
            # sure the basis remains causal
            ibasis = np.vstack((np.zeros((1,B)), ibasis))

        return ibasis 
開發者ID:slinderman,項目名稱:pyhawkes,代碼行數:25,代碼來源:basis.py

示例9: test_compute_rate

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def test_compute_rate():
    K = 1
    T = 100
    dt = 1.0
    network_hypers = {'c': np.zeros(K, dtype=np.int), 'p': 1.0, 'kappa': 10.0, 'v': 10*5.0}
    true_model = DiscreteTimeNetworkHawkesModelSpikeAndSlab(K=K, dt=dt,
                                                            network_hypers=network_hypers)
    S,R = true_model.generate(T=T)

    print("Expected number of events: ", np.trapz(R, dt * np.arange(T), axis=0))
    print("Actual number of events:   ", S.sum(axis=0))

    print("Lambda0:  ", true_model.bias_model.lambda0)
    print("W:        ", true_model.weight_model.W)
    print("")

    R_test = true_model.compute_rate()
    assert np.allclose(R, R_test) 
開發者ID:slinderman,項目名稱:pyhawkes,代碼行數:20,代碼來源:test_model.py

示例10: test_generate_statistics

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def test_generate_statistics():
    K = 1
    T = 100
    dt = 1.0
    network_hypers = {'c': np.zeros(K, dtype=np.int), 'p': 1.0, 'kappa': 10.0, 'v': 10*5.0}
    true_model = DiscreteTimeNetworkHawkesModelSpikeAndSlab(K=K, dt=dt,
                                                            network_hypers=network_hypers)
    S,R = true_model.generate(T=T)

    E_N = np.trapz(R, dt * np.arange(T), axis=0)
    std_N = np.sqrt(E_N)
    N = S.sum(axis=0)

    assert np.all(N >= E_N - 3*std_N), "N less than 3std below mean"
    assert np.all(N <= E_N + 3*std_N), "N more than 3std above mean"

    print("Expected number of events: ", E_N)
    print("Actual number of events:   ", S.sum(axis=0)) 
開發者ID:slinderman,項目名稱:pyhawkes,代碼行數:20,代碼來源:test_model.py

示例11: test_RTAP_to_diameter_callaghan

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def test_RTAP_to_diameter_callaghan(samples=10000):
    mu = [0, 0]
    lambda_par = 1.7
    diameter = 10e-6

    delta = np.tile(1e-10, samples)  # delta towards zero
    Delta = np.tile(1e10, samples)  # Delta towards infinity
    qvals_perp = np.linspace(0, 10e6, samples)
    n_perp = np.tile(np.r_[1., 0., 0.], (samples, 1))
    scheme = acquisition_scheme_from_qvalues(qvals_perp, n_perp, delta, Delta)

    callaghan = cylinder_models.C3CylinderCallaghanApproximation(
        mu=mu, lambda_par=lambda_par, diameter=diameter)

    E_callaghan = callaghan(scheme)

    rtap_callaghan = 2 * np.pi * np.trapz(
        E_callaghan * qvals_perp, x=qvals_perp
    )

    diameter_callaghan = 2 / np.sqrt(np.pi * rtap_callaghan)
    assert_almost_equal(diameter_callaghan, diameter, 7) 
開發者ID:AthenaEPI,項目名稱:dmipy,代碼行數:24,代碼來源:test_callaghan.py

示例12: test_RTPP_to_length_callaghan

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def test_RTPP_to_length_callaghan(samples=1000):
    length = 10e-6

    delta = 1e-10  # delta towards zero
    Delta = 1e10  # Delta towards infinity
    qvals_perp = np.linspace(0, 10e6, samples)
    n_perp = np.tile(np.r_[1., 0., 0.], (samples, 1))
    scheme = acquisition_scheme_from_qvalues(qvals_perp, n_perp, delta, Delta)

    plane = plane_models.P3PlaneCallaghanApproximation(diameter=length)
    E_callaghan = plane(scheme)

    rtpp_callaghan = 2 * np.trapz(E_callaghan, x=qvals_perp)

    length_callaghan = 1 / rtpp_callaghan
    assert_almost_equal(length_callaghan, length, 7) 
開發者ID:AthenaEPI,項目名稱:dmipy,代碼行數:18,代碼來源:test_callaghan.py

示例13: test_RTPP_to_diameter_soderman

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def test_RTPP_to_diameter_soderman(samples=1000):
    """This tests if the RTPP of the plane relates correctly to the diameter
    of the plane."""
    diameter = 10e-6

    delta = np.tile(1e-10, samples)  # delta towards zero
    Delta = np.tile(1e10, samples)  # Delta towards infinity
    qvals_perp = np.linspace(0, 10e6, samples)
    n_perp = np.tile(np.r_[1., 0., 0.], (samples, 1))
    scheme = acquisition_scheme_from_qvalues(
        qvals_perp, n_perp, delta, Delta)

    soderman = plane_models.P2PlaneStejskalTannerApproximation(
        diameter=diameter)

    E_soderman = soderman(scheme)

    rtpp_soderman = 2 * np.trapz(
        E_soderman, x=qvals_perp
    )

    diameter_soderman = 1 / rtpp_soderman

    assert_almost_equal(diameter_soderman, diameter, 7) 
開發者ID:AthenaEPI,項目名稱:dmipy,代碼行數:26,代碼來源:test_soderman.py

示例14: test_RTOP_to_diameter_soderman

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def test_RTOP_to_diameter_soderman(samples=1000):
    """This tests if the RTAP of the sphere relates correctly to the diameter
    of the sphere."""
    diameter = 10e-6

    delta = np.tile(1e-10, samples)  # delta towards zero
    Delta = np.tile(1e10, samples)  # Delta towards infinity
    qvals_perp = np.linspace(0, 10e6, samples)
    n_perp = np.tile(np.r_[1., 0., 0.], (samples, 1))
    scheme = acquisition_scheme_from_qvalues(
        qvals_perp, n_perp, delta, Delta)

    soderman = sphere_models.S2SphereStejskalTannerApproximation(
        diameter=diameter)

    E_soderman = soderman(scheme)

    rtop_soderman = 4 * np.pi * np.trapz(
        E_soderman * qvals_perp ** 2, x=qvals_perp
    )

    sphere_volume = 1. / rtop_soderman
    diameter_soderman = 2 * (sphere_volume / ((4. / 3.) * np.pi)) ** (1. / 3.)

    assert_almost_equal(diameter_soderman, diameter, 7) 
開發者ID:AthenaEPI,項目名稱:dmipy,代碼行數:27,代碼來源:test_soderman.py

示例15: _normalize_functions

# 需要導入模塊: import numpy [as 別名]
# 或者: from numpy import trapz [as 別名]
def _normalize_functions(y_values_list, t_values):
    """Normalize list of functions by their integral value

    Parameters
    ----------
    y_values_list : `list` of np.ndarray
        y values of the list of function we want to normalize

    t_values : `np.ndarray`
        t values shared by all functions given with y_values_list

    Returns
    -------
    normalized_y_values_list : `list` of np.ndarray
        Normalized y values of the given list of function

    normalizations : `np.ndarray`
        Normalization factors that have been used
    """
    y_values_list = np.array(y_values_list)
    normalizations = [
        1. / np.trapz(y_values, t_values) for y_values in y_values_list
    ]
    normalized_y_values_list = (y_values_list.T * normalizations).T
    return normalized_y_values_list, normalizations 
開發者ID:X-DataInitiative,項目名稱:tick,代碼行數:27,代碼來源:plot_hawkes.py


注:本文中的numpy.trapz方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。