FieldToPointFunction

class FieldToPointFunction(*args)

Function mapping a field into a point.

Parameters:
inputMeshMesh

The input mesh

inputDimpositive int

Dimension of the input field values d

outputDimpositive int

Dimension of the output vector d’

Notes

Field to point functions act on fields to produce points:

f: \left| \begin{array}{rcl}
            \cM_N \times (\Rset^d)^N & \rightarrow &\Rset^{d'} \\
            F & \mapsto & \vect{v}'
          \end{array} \right.

with \cM_N a mesh of \cD \subset \Rset^n.

A field is represented by a collection (\vect{t}_i, \vect{v}_i)_{1 \leq i \leq N} of elements of \cM_N \times (\Rset^d)^N where \vect{t}_i is a vertex of \cM_N and \vect{v}_i the associated value in \Rset^d.

The two first constructors build an object which evaluation operator is not defined (it throws a NotYetImplementedException). The instantiation of such an object is used to extract an actual FieldToPointFunction from a Study.

Examples

>>> import openturns as ot

Use the class OpenTURNSPythonFieldToPointFunction to create a function that acts on fields of input dimension n=1 and input dimension d=2 and returns their spatial mean vector of dimension d'=2.

Using the class OpenTURNSPythonFieldToPointFunction allows one to define a persistent state between the evaluations of the function.

>>> class FUNC(ot.OpenTURNSPythonFieldToPointFunction):
...     def __init__(self):
...         # first argument:
...         mesh = ot.RegularGrid(0.0, 0.1, 11)
...         super(FUNC, self).__init__(mesh, 2, 2)
...         self.setInputDescription(['R', 'S'])
...         self.setOutputDescription(['T', 'U'])  
...     def _exec(self, X):
...         Xs = ot.Sample(X)
...         Y = Xs.computeMean()
...         return Y
>>> F = FUNC()

Create the associated FieldToPointFunction:

>>> myFunc = ot.FieldToPointFunction(F)

It is also possible to create a FieldToPointFunction from a python function as follows:

>>> def myPyFunc(X):
...     Xs = ot.Sample(X)
...     Y = Xs.computeMean()
...     return Y
>>> inputDim = 2
>>> outputDim = 2
>>> mesh = ot.RegularGrid(0.0, 0.1, 11)
>>> myFunc = ot.PythonFieldToPointFunction(mesh, inputDim, outputDim, myPyFunc)

Evaluate the function on a field:

>>> myField = ot.Field(mesh, ot.Normal(2).getSample(11))
>>> Y = myFunc(myField)

Methods

__call__(*args)

Call self as a function.

getCallsNumber()

Get the number of calls of the function.

getClassName()

Accessor to the object's name.

getId()

Accessor to the object's id.

getImplementation()

Accessor to the underlying implementation.

getInputDescription()

Get the description of the input field values.

getInputDimension()

Get the dimension of the input field values.

getInputMesh()

Get the mesh associated to the input domain.

getMarginal(*args)

Get the marginal(s) at given indice(s).

getName()

Accessor to the object's name.

getOutputDescription()

Get the description of the output vector.

getOutputDimension()

Get the dimension of the output vector.

setInputDescription(inputDescription)

Set the description of the input field values.

setName(name)

Accessor to the object's name.

setOutputDescription(outputDescription)

Set the description of the output vector.

__init__(*args)
getCallsNumber()

Get the number of calls of the function.

Returns:
callsNumberint

Counts the number of times the function has been called since its creation.

getClassName()

Accessor to the object’s name.

Returns:
class_namestr

The object class name (object.__class__.__name__).

getId()

Accessor to the object’s id.

Returns:
idint

Internal unique identifier.

getImplementation()

Accessor to the underlying implementation.

Returns:
implImplementation

A copy of the underlying implementation object.

getInputDescription()

Get the description of the input field values.

Returns:
inputDescriptionDescription

Description of the input field values.

getInputDimension()

Get the dimension of the input field values.

Returns:
dint

Dimension d of the input field values.

getInputMesh()

Get the mesh associated to the input domain.

Returns:
inputMeshMesh

The input mesh \cM_{N'}.

getMarginal(*args)

Get the marginal(s) at given indice(s).

Parameters:
iint or list of ints, 0 \leq i < d

Indice(s) of the marginal(s) to be extracted.

Returns:
functionFieldToPointFunction

The initial function restricted to the concerned marginal(s) at the indice(s) i.

getName()

Accessor to the object’s name.

Returns:
namestr

The name of the object.

getOutputDescription()

Get the description of the output vector.

Returns:
outputDescriptionDescription

Description of the output vector.

getOutputDimension()

Get the dimension of the output vector.

Returns:
d’int

Dimension d' of the output vector.

setInputDescription(inputDescription)

Set the description of the input field values.

Parameters:
inputDescriptionsequence of str

Description of the input field values.

setName(name)

Accessor to the object’s name.

Parameters:
namestr

The name of the object.

setOutputDescription(outputDescription)

Set the description of the output vector.

Parameters:
outputDescriptionsequence of str

Description of the output vector.

Examples using the class

Estimate Sobol indices on a field to point function

Estimate Sobol indices on a field to point function