Create a linear combination of functionsΒΆ

In this example we are going to build a linear combination of several functions.

f = \sum \alpha_i f_i

Here

f_1(x) = [x_1^2+x_2,x_1+x_2+x_3]

f_2(x) = [x_1 + 2 * x_2 + x_3,x_1+x_2+x_3]

with coefficients

a_1 = 2, a_2 = 4

[1]:
from __future__ import print_function
import openturns as ot
import math as m
[2]:
# assume a list of functions to combine
functions = list()
functions.append(ot.SymbolicFunction(['x1', 'x2', 'x3'],
                                     ['x1^2 + x2', 'x1 + x2 + x3']))
functions.append(ot.SymbolicFunction(['x1', 'x2', 'x3'],
                                     ['x1 + 2 * x2 + x3', 'x1 + x2 - x3']))
[3]:
# create the combination function
coefficients = [2.0, 4.0]
function = ot.LinearCombinationFunction(functions, coefficients)
[4]:
# evaluate the function
x = [1.0, 2.0, 3.0]
y = function(x)
print('x=', x, 'y=', y)
x= [1.0, 2.0, 3.0] y= [38,12]