Event manipulationΒΆ
In this example we are going to define an Event from a scalar variable in the form:
with a scalar threshold
[20]:
from __future__ import print_function
import openturns as ot
[21]:
# Create model f(x) = x1 + 2*x2
model = ot.SymbolicFunction(['x1', 'x2'], ['x1+2*x2'])
# Create the input distribution and random vector X
inputDist = ot.Normal(2)
inputDist.setDescription(['X1','X2'])
inputVector = ot.RandomVector(inputDist)
# Create the output random vector Y=f(X)
outputVector = ot.CompositeRandomVector(model, inputVector)
[22]:
# Create the event Y > 3
threshold = 3.0
event = ot.ThresholdEvent(outputVector, ot.Greater(), threshold)
[24]:
# Realization as a Bernoulli
print('realization=' , event.getRealization())
realization= [0]
[25]:
# Sample of 10 realizations as a Bernoulli
print('sample=' , event.getSample(10))
sample= [ y0 ]
0 : [ 0 ]
1 : [ 0 ]
2 : [ 1 ]
3 : [ 0 ]
4 : [ 1 ]
5 : [ 0 ]
6 : [ 0 ]
7 : [ 0 ]
8 : [ 0 ]
9 : [ 0 ]
[23]:
# Build a standard event based on an event
standardEvent = ot.StandardEvent(event)