本文整理汇总了Python中numpy.polyval方法的典型用法代码示例。如果您正苦于以下问题:Python numpy.polyval方法的具体用法?Python numpy.polyval怎么用?Python numpy.polyval使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类numpy
的用法示例。
在下文中一共展示了numpy.polyval方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: fit_cubic
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def fit_cubic(y0, y1, g0, g1):
"""Fit cubic polynomial to function values and derivatives at x = 0, 1.
Returns position and function value of minimum if fit succeeds. Fit does
not succeeds if
1. polynomial doesn't have extrema or
2. maximum is from (0,1) or
3. maximum is closer to 0.5 than minimum
"""
a = 2 * (y0 - y1) + g0 + g1
b = -3 * (y0 - y1) - 2 * g0 - g1
p = np.array([a, b, g0, y0])
r = np.roots(np.polyder(p))
if not np.isreal(r).all():
return None, None
r = sorted(x.real for x in r)
if p[0] > 0:
maxim, minim = r
else:
minim, maxim = r
if 0 < maxim < 1 and abs(minim - 0.5) > abs(maxim - 0.5):
return None, None
return minim, np.polyval(p, minim)
示例2: calc_phase_delay
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def calc_phase_delay(coeff, w, w0):
"""
expression for the phase -- coeff[0] + coeff[1]*(w - w0)/1! + coeff[2]*(w - w0)**2/2! + coeff[3]*(w - w0)**3/3!
coeff is a list with
coeff[0] =: measured in [rad] --- phase
coeff[1] =: measured in [fm s ^ 1] --- group delay
coeff[2] =: measured in [fm s ^ 2] --- group delay dispersion (GDD)
coeff[3] =: measured in [fm s ^ 3] --- third-order dispersion (TOD)
...
"""
delta_w = w - w0
_logger.debug('calculating phase delay')
_logger.debug(ind_str + 'coeffs for compression = {}'.format(coeff))
coeff_norm = [ci / (1e15) ** i / factorial(i) for i, ci in enumerate(coeff)]
coeff_norm = list(coeff_norm)[::-1]
_logger.debug(ind_str + 'coeffs_norm = {}'.format(coeff_norm))
delta_phi = np.polyval(coeff_norm, delta_w)
_logger.debug(ind_str + 'delta_phi[0] = {}'.format(delta_phi[0]))
_logger.debug(ind_str + 'delta_phi[-1] = {}'.format(delta_phi[-1]))
_logger.debug(ind_str + 'done')
return delta_phi
示例3: get_minimum_energy_path
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def get_minimum_energy_path(self, pressure=None):
"""
Args:
pressure:
Returns:
"""
if pressure is not None:
raise NotImplemented()
v_min_lst = []
for c in self._coeff.T:
v_min = np.roots(np.polyder(c, 1))
p_der2 = np.polyder(c, 2)
p_val2 = np.polyval(p_der2, v_min)
v_m_lst = v_min[p_val2 > 0]
if len(v_m_lst) > 0:
v_min_lst.append(v_m_lst[0])
else:
v_min_lst.append(np.nan)
return np.array(v_min_lst)
示例4: interpolate_volume
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def interpolate_volume(self, volumes, fit_order=None):
"""
Args:
volumes:
fit_order:
Returns:
"""
if fit_order is not None:
self._fit_order = fit_order
new = self.copy()
new.volumes = volumes
new.energies = np.array([np.polyval(self._coeff, v) for v in volumes]).T
return new
示例5: contour_pressure
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def contour_pressure(self):
"""
Returns:
"""
try:
import pylab as plt
except ImportError:
import matplotlib.pyplot as plt
x, y = self.meshgrid()
p_coeff = np.polyfit(self.volumes, self.pressure.T, deg=self._fit_order)
p_grid = np.array([np.polyval(p_coeff, v) for v in self._volumes]).T
plt.contourf(x, y, p_grid)
plt.plot(self.get_minimum_energy_path(), self.temperatures)
plt.xlabel("Volume [$\AA^3$]")
plt.ylabel("Temperature [K]")
示例6: contour_entropy
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def contour_entropy(self):
"""
Returns:
"""
try:
import pylab as plt
except ImportError:
import matplotlib.pyplot as plt
s_coeff = np.polyfit(self.volumes, self.entropy.T, deg=self._fit_order)
s_grid = np.array([np.polyval(s_coeff, v) for v in self.volumes]).T
x, y = self.meshgrid()
plt.contourf(x, y, s_grid)
plt.plot(self.get_minimum_energy_path(), self.temperatures)
plt.xlabel("Volume [$\AA^3$]")
plt.ylabel("Temperature [K]")
示例7: detrend
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def detrend(x, deg=1):
"""
remove polynomial from data.
used by autocorr_noise_id()
Parameters
----------
x: numpy.array
time-series
deg: int
degree of polynomial to remove from x
Returns
-------
x_detrended: numpy.array
detrended time-series
"""
t = range(len(x))
p = np.polyfit(t, x, deg)
residual = x - np.polyval(p, t)
return residual
########################################################################
# Equivalent Degrees of Freedom
示例8: test_PVSystem_sapm_effective_irradiance
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def test_PVSystem_sapm_effective_irradiance(sapm_module_params, mocker):
system = pvsystem.PVSystem(module_parameters=sapm_module_params)
mocker.spy(pvsystem, 'sapm_effective_irradiance')
poa_direct = 900
poa_diffuse = 100
airmass_absolute = 1.5
aoi = 0
p = (sapm_module_params['A4'], sapm_module_params['A3'],
sapm_module_params['A2'], sapm_module_params['A1'],
sapm_module_params['A0'])
f1 = np.polyval(p, airmass_absolute)
expected = f1 * (poa_direct + sapm_module_params['FD'] * poa_diffuse)
out = system.sapm_effective_irradiance(
poa_direct, poa_diffuse, airmass_absolute, aoi)
pvsystem.sapm_effective_irradiance.assert_called_once_with(
poa_direct, poa_diffuse, airmass_absolute, aoi, sapm_module_params)
assert_allclose(out, expected, atol=0.1)
示例9: alt_sg_coeffs
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def alt_sg_coeffs(window_length, polyorder, pos):
"""This is an alternative implementation of the SG coefficients.
It uses numpy.polyfit and numpy.polyval. The results should be
equivalent to those of savgol_coeffs(), but this implementation
is slower.
window_length should be odd.
"""
if pos is None:
pos = window_length // 2
t = np.arange(window_length)
unit = (t == pos).astype(int)
h = np.polyval(np.polyfit(t, unit, polyorder), t)
return h
示例10: test_auto
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def test_auto(self):
# Test dfreqresp() real part calculation.
# 1st order low-pass filter: H(z) = 1 / (z - 0.2),
system = TransferFunction(1, [1, -0.2], dt=0.1)
w = [0.1, 1, 10, 100]
w, H = dfreqresp(system, w=w)
jw = np.exp(w * 1j)
y = np.polyval(system.num, jw) / np.polyval(system.den, jw)
# test real
expected_re = y.real
assert_almost_equal(H.real, expected_re)
# test imag
expected_im = y.imag
assert_almost_equal(H.imag, expected_im)
示例11: _nf
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def _nf(self, type_def, nf_model, nf_fit_coeff, gain_min, gain_flatmax, gain_target):
# if hybrid raman, use edfa_gain_flatmax attribute, else use gain_flatmax
#gain_flatmax = getattr(params, 'edfa_gain_flatmax', params.gain_flatmax)
pad = max(gain_min - gain_target, 0)
gain_target += pad
dg = max(gain_flatmax - gain_target, 0)
if type_def == 'variable_gain':
g1a = gain_target - nf_model.delta_p - dg
nf_avg = lin2db(db2lin(nf_model.nf1) + db2lin(nf_model.nf2) / db2lin(g1a))
elif type_def == 'fixed_gain':
nf_avg = nf_model.nf0
elif type_def == 'openroadm':
pin_ch = self.pin_db - lin2db(self.nch)
# model OSNR = f(Pin)
nf_avg = pin_ch - polyval(nf_model.nf_coef, pin_ch) + 58
elif type_def == 'advanced_model':
nf_avg = polyval(nf_fit_coeff, -dg)
else:
assert False, "Unrecognized amplifier type, this should have been checked by the JSON loader"
return nf_avg + pad, pad
示例12: _fractal_correlation_plot
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def _fractal_correlation_plot(r_vals, corr, d2):
fit = 2 ** np.polyval(d2, np.log2(r_vals))
plt.loglog(r_vals, corr, "bo")
plt.loglog(r_vals, fit, "r", label=r"$D2$ = %0.3f" % d2[0])
plt.title("Correlation Dimension")
plt.xlabel(r"$\log_{2}$(r)")
plt.ylabel(r"$\log_{2}$(c)")
plt.legend()
plt.show()
示例13: _fractal_dfa_trends
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def _fractal_dfa_trends(segments, window, order=1):
x = np.arange(window)
coefs = np.polyfit(x[:window], segments.T, order).T
# TODO: Could this be optimized? Something like np.polyval(x[:window], coefs)
trends = np.array([np.polyval(coefs[j], x) for j in np.arange(len(segments))])
return trends
示例14: _fractal_dfa_plot
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def _fractal_dfa_plot(windows, fluctuations, dfa):
fluctfit = 2 ** np.polyval(dfa, np.log2(windows))
plt.loglog(windows, fluctuations, "bo")
plt.loglog(windows, fluctfit, "r", label=r"$\alpha$ = %0.3f" % dfa[0])
plt.title("DFA")
plt.xlabel(r"$\log_{2}$(Window)")
plt.ylabel(r"$\log_{2}$(Fluctuation)")
plt.legend()
plt.show()
# =============================================================================
# Utils MDDFA
# =============================================================================
示例15: _fit_polynomial
# 需要导入模块: import numpy [as 别名]
# 或者: from numpy import polyval [as 别名]
def _fit_polynomial(y, X, order=2):
# Generating weights and model for polynomial function with a given degree
y_predicted = np.polyval(np.polyfit(X, y, order), X)
return y_predicted