本文整理匯總了Python中numpy.polynomial.legendre.leg2poly方法的典型用法代碼示例。如果您正苦於以下問題:Python legendre.leg2poly方法的具體用法?Python legendre.leg2poly怎麽用?Python legendre.leg2poly使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類numpy.polynomial.legendre
的用法示例。
在下文中一共展示了legendre.leg2poly方法的6個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。
示例1: test_legfromroots
# 需要導入模塊: from numpy.polynomial import legendre [as 別名]
# 或者: from numpy.polynomial.legendre import leg2poly [as 別名]
def test_legfromroots(self):
res = leg.legfromroots([])
assert_almost_equal(trim(res), [1])
for i in range(1, 5):
roots = np.cos(np.linspace(-np.pi, 0, 2*i + 1)[1::2])
pol = leg.legfromroots(roots)
res = leg.legval(roots, pol)
tgt = 0
assert_(len(pol) == i + 1)
assert_almost_equal(leg.leg2poly(pol)[-1], 1)
assert_almost_equal(res, tgt)
示例2: test_leg2poly
# 需要導入模塊: from numpy.polynomial import legendre [as 別名]
# 或者: from numpy.polynomial.legendre import leg2poly [as 別名]
def test_leg2poly(self):
for i in range(10):
assert_almost_equal(leg.leg2poly([0]*i + [1]), Llist[i])
示例3: test_legfromroots
# 需要導入模塊: from numpy.polynomial import legendre [as 別名]
# 或者: from numpy.polynomial.legendre import leg2poly [as 別名]
def test_legfromroots(self) :
res = leg.legfromroots([])
assert_almost_equal(trim(res), [1])
for i in range(1, 5) :
roots = np.cos(np.linspace(-np.pi, 0, 2*i + 1)[1::2])
pol = leg.legfromroots(roots)
res = leg.legval(roots, pol)
tgt = 0
assert_(len(pol) == i + 1)
assert_almost_equal(leg.leg2poly(pol)[-1], 1)
assert_almost_equal(res, tgt)
示例4: test_leg2poly
# 需要導入模塊: from numpy.polynomial import legendre [as 別名]
# 或者: from numpy.polynomial.legendre import leg2poly [as 別名]
def test_leg2poly(self) :
for i in range(10) :
assert_almost_equal(leg.leg2poly([0]*i + [1]), Llist[i])
示例5: _setup
# 需要導入模塊: from numpy.polynomial import legendre [as 別名]
# 或者: from numpy.polynomial.legendre import leg2poly [as 別名]
def _setup(self, config):
torch.manual_seed(config['seed'])
self.model = HstackDiagProduct(size=config['size'])
self.optimizer = optim.Adam(self.model.parameters(), lr=config['lr'])
self.n_steps_per_epoch = config['n_steps_per_epoch']
size = config['size']
# Target: Legendre polynomials
P = np.zeros((size, size), dtype=np.float64)
for i, coef in enumerate(np.eye(size)):
P[i, :i + 1] = legendre.leg2poly(coef)
self.target_matrix = torch.tensor(P)
self.br_perm = bitreversal_permutation(size)
self.input = (torch.eye(size)[:, :, None, None] * torch.eye(2)).unsqueeze(-1)
self.input_permuted = self.input[:, self.br_perm]
示例6: legendre_transpose_mult_slow
# 需要導入模塊: from numpy.polynomial import legendre [as 別名]
# 或者: from numpy.polynomial.legendre import leg2poly [as 別名]
def legendre_transpose_mult_slow(v):
"""Naive multiplication P^T v where P is the matrix of coefficients of
Legendre polynomials.
Parameters:
v: (batch_size, n)
Return:
P^T v: (batch_size, n)
"""
n = v.shape[-1]
# Construct the coefficient matrix P for Legendre polynomials
P = np.zeros((n, n), dtype=np.float32)
for i, coef in enumerate(np.eye(n)):
P[i, :i + 1] = legendre.leg2poly(coef)
P = torch.tensor(P)
return v @ P