1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
|
#! /usr/bin/env python
import openturns as ot
ot.TESTPREAMBLE()
dimension = 2
# Create the orthogonal basis
enumerateFunction = ot.LinearEnumerateFunction(dimension)
productBasis = ot.OrthogonalProductPolynomialFactory(
[ot.LegendreFactory(), ot.HermiteFactory()], enumerateFunction
)
print(productBasis)
print("print() :")
for i in range(20):
p = productBasis.build(i)
print("type = ", type(p))
print(p)
print(p._repr_html_())
# Test build from multi-index
for i in range(20):
index = enumerateFunction(i)
termBasis2 = productBasis.build(index)
# Test getMarginal
enumerateFunction = ot.LinearEnumerateFunction(5)
productBasis = ot.OrthogonalProductPolynomialFactory(
[
ot.LegendreFactory(),
ot.HermiteFactory(),
ot.LegendreFactory(),
ot.HermiteFactory(),
ot.HermiteFactory(),
],
enumerateFunction,
)
productBasisMarginal = productBasis.getMarginal([0, 2, 4])
for i in range(20):
function = productBasisMarginal.build(i)
# Test isTensorProduct()
assert productBasis.isTensorProduct()
|